0
$\begingroup$

Gazebo Answers logo

Hi all,

I am trying to control my simulated robot arm using a ROS action client / action server environment. In this context I'll be given a FollowJointTrajectoryGoal with all the trajectory points and for every trajectory point the required acceleration, velocity and position for all joints.

I am not sure how to set and control all theses values together. Our real robot can directly work with all theses values. To control the wheels of my robot base I use a pid that uses velocity values only.

Thanks for your help,

Christoph


Originally posted by Christoph on Gazebo Answers with karma: 141 on 2013-09-11

Post score: 0

$\endgroup$

2 Answers 2

0
$\begingroup$

Gazebo Answers logo

You will need to write a plugin that controls the joints of your robot model.

Here is a simple example that will directly set the positions of joints:

https://bitbucket.org/osrf/gazebo/src/90e970a82d2944491430a0061d8aaa10a3ab20d7/plugins/JointTrajectoryPlugin.cc?at=default

Here is an example for a skid-steering robot plugin: https://bitbucket.org/osrf/gazebo/src/90e970a82d2944491430a0061d8aaa10a3ab20d7/plugins/SkidSteerDrivePlugin.cc?at=default

Here is an example of a plugin that connects to ROS: https://bitbucket.org/osrf/drcsim/src/1bd6dd0488ccda910866b13c544bfa31eaede523/ros/atlas_msgs/DRCVehicleROSPlugin.cpp?at=default


Originally posted by nkoenig with karma: 7676 on 2013-09-14

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by Christoph on 2013-09-23:
Hey Nate! I already have a working plugin that controls one of the parameters, in my case the joint position, but I would like to control/use the acceleration and velocity parameters too to get a thorough movement.

Comment by nkoenig on 2013-09-25:
You can modify your gazebo plugin to apply forces to a joint to achieve acceleration and velocity control. Check out this tutorial

$\endgroup$
0
$\begingroup$

Gazebo Answers logo

The ros_control project has a trajectory controller that includes an FollowJointTrajectoryGoal action server. It can then connect to your simulated robot using the gazebo_ros_control plugin by adding tags to your robot's URDF. This is documented here and the trajectory controller is documented here.


Originally posted by davetcoleman with karma: 369 on 2013-09-16

This answer was NOT ACCEPTED on the original site

Post score: 2


Original comments

Comment by Christoph on 2013-09-23:
Thanks Dave! I'll have a look on that. I already got some kind of action server, but that controls only one paramter at the moment. I want to use the other two as well.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.