#################################### ##FILL ME IN #################################### ## links to any required tutorials ## note.0= [[actionlib_tutorials/Tutorials/SimpleActionClient|writing a simple action client]] ## descriptive title for the tutorial ## title = Running an Action Client and Server ## multi-line description to be displayed in search ## description = This tutorial covers running the Fibonacci server and client then visualizing the channel output and node graph. ## the next tutorial description ## next = ## links to next tutorial ## next.0.link= [[actionlib_tutorials/Tutorials/Calling Action Server without Action Client|Send a Goal to Action Server without Action Client]] ## what level user is this tutorial for ## level= BeginnerCategory #################################### <> <> <> == Viewing the Action Feedback == First, same as previous tutorials, run the Action server ([[actionlib_tutorials/Tutorials/SimpleActionServer(ExecuteCallbackMethod)#Running_the_Action_server|C++]] | [[actionlib_tutorials/Tutorials/Writing a Simple Action Server using the Execute Callback (Python)#Running_the_Action_Server|Python]]) and client ([[actionlib_tutorials/Tutorials/SimpleActionClient#Running_the_Action_client|C++]] | [[actionlib_tutorials/Tutorials/Writing a Simple Action Client (Python)#Running_the_Client|Python]]), along with `roscore`. In a new terminal, rostopic the feedback channel to see the feedback from the action server: {{{ $ rostopic echo /fibonacci/feedback }}} While the server is acting on the goal you will see something similar to: {{{ --- header: seq: 1 stamp: 1250813676611629000 frame_id: status: goal_id: stamp: 1250813676611339000 id: 1250813676611339000 status: 1 text: feedback: sequence: (0, 1, 1) --- header: seq: 2 stamp: 1250813677611559000 frame_id: status: goal_id: stamp: 1250813676611339000 id: 1250813676611339000 status: 1 text: feedback: sequence: (0, 1, 1, 2) --- header: seq: 3 stamp: 1250813678611635000 frame_id: status: goal_id: stamp: 1250813676611339000 id: 1250813676611339000 status: 1 text: feedback: sequence: (0, 1, 1, 2, 3) --- }}} == Viewing the Action Result == In a new terminal, rostopic the feedback channel to see the feedback from the action server: {{{ $ rostopic echo /fibonacci/result }}} After the goal is completed you will see something similar to: {{{ --- header: seq: 1 stamp: 1250813759950015000 frame_id: status: goal_id: stamp: 1250813739949752000 id: 1250813739949752000 status: 3 text: result: sequence: (0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946) }}} == Viewing the Action Node Graph == Alternatively you can look at the nodes while the server and client are running: {{{{{#!wiki version electric {{{ $ rxgraph }}} }}}}} {{{{{#!wiki version fuerte {{{ $ rxgraph }}} }}}}} {{{{{#!wiki version groovy {{{ rqt_graph }}} }}}}} {{attachment:fibonacci_client_server.png||width=100%}} == Starting the Client and Server == Start the action server: {{{ $ rosrun actionlib_tutorials fibonacci_server }}} When the action has completed it will print out an info message of succeeded. {{{ [ INFO] 1251489514.736936000: /fibonacci: Succeeded }}} And then run the action client: {{{ $ rosrun actionlib_tutorials fibonacci_client }}} When the client receives notification of the completion of the goal it will also print out an info message with the result of the action: {{{ [ INFO] 1251489514.737339000: Action finished: SUCCEEDED }}}