Implementing Dynamixel Controller Type [Accessing Joint From Controller]

asked 2016-01-26 05:22:18 -0600

maaft gravatar image


im currently trying to simulate the Dynamixel servo motors in Gazebo 6.5 (+ROS).

To control a joint through ROS, you normally need some controller type (e.g. effort_controllers/JointPositionController).

Also, to make the simulation fully compatible to the real robot, i want to implement some of the services which the ROS-Dynamixel driver offers. (For example a "set_speed" service, which sets the speed at which the servo has to move)

To my understanding you would do such thing by setting the velocity limit for the joint to the speed value.

The question now is: How can i access the joint inside the controller code? (E.g. effort_controllers/joint_position_controller.cpp)

I also found out, that there is already a hardware-interface named hardware_interface::PosVelJointInterface which should do what i want. The problem is however, that Gazebo doesnt seem to recognize this type of hardware_interface: "No matching hardware interface found for PosVelJointInterface. Could not initialize robot simulation interface."

Any Help appreciated! regards, Mawe

edit retag flag offensive close merge delete