ros action and service manager

asked 2015-02-06 02:56:26 -0500

gpldecha gravatar image

I have implemented a few actions and services for the control of an lwr robot. These services and actions can currently be called by running the following line in a terminal:

$rosrun package_name executable.

This will launch the node of the action client or service.

I was about the write a console based service and action manager in which I can register all my actions and services. In this way I can easily call them from the terminal from one program. See below for an example:

In the terminal when I launch my console action manager I see 1)

service_manager::lwr$

Then when I press tab I see all the actions available 2)

service_manager::lwr$ goto grasp init home

Then I call a specific action with relevant arguments 3)

service_manager::lwr goto$ 0.4 0.0 1.0

My question: Is there something like this which has already been implemented. Either in rqt or some other ros program. I would just want to avoid reinventing the wheel.

Thanks for any suggestions

edit retag flag offensive close merge delete

Comments

Perhaps the moveit_commander package is similar to what you describe. It doesn't do complex things though (Actions can have arbitrary complexity).

gvdhoorn gravatar image gvdhoorn  ( 2015-02-06 03:37:43 -0500 )edit

@gvdhoorn could be an option, although the documentation seems very limited. I saw with rqt there is a plugin called Actions. However it is having trouble finding my action client executable. It is looking for them in the system and not my catkin workspace. Any ideas how to change this ?

gpldecha gravatar image gpldecha  ( 2015-02-06 03:56:26 -0500 )edit

Have you started your rqt plugin from an environment (terminal) where you've sourced your own workspace?

gvdhoorn gravatar image gvdhoorn  ( 2015-02-06 03:59:17 -0500 )edit

@gvdhoorn I launch rqt from the terminal in my catkin workspace. In my bash file I have : source path_to/catkin_ws/devel.setup.bash . Is this what you mean by sourced my own workspace ?

gpldecha gravatar image gpldecha  ( 2015-02-06 04:15:33 -0500 )edit

Yes, that is what I mean. I have not worked with rqt_action, so I'm unsure as to what you mean with 'it is having trouble finding my action client executable'?

gvdhoorn gravatar image gvdhoorn  ( 2015-02-06 04:33:00 -0500 )edit

On the page of rqt_action they state " Note that the actions shown on this plugin is the ones that are stored on your machine, not on the ROS core your rqt instance connects to." This seems to be core, but I don't understand what they mean.

gpldecha gravatar image gpldecha  ( 2015-02-06 05:26:20 -0500 )edit

I should make a new post for this problem since it is specific to rqt_action.

gpldecha gravatar image gpldecha  ( 2015-02-06 05:26:38 -0500 )edit