ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

dynamixel torque controller does not move ax12 servo

asked 2013-03-22 08:10:16 -0500

GuiHome gravatar image


I would like to get torque control running on an AX-12 (final goal is to get a zero torque controller, so that the axle can be moved freely with less friction than the torque_disable mode)

Using dynamixel_tutorial with one single AX-12 servo connected to ttyUSB0 (through a CM-5 in toss mode) I edited the dynamixel_joint_controllers.yaml to read

    package: dynamixel_controllers
    module: join_torque_controller
    type: JointTorqueController
joint_name: pan_joint
joint_speed: 2.0
    id: 14
    init: 512
    min: 0
    max: 1023

and of course the spawner launch file to use this pan_controller.

Things start well, I can see the motor_state etc... but sending commands to the pan_controller/command topic will not move the motor at all (should move with non-null torques). I checked, speeds are well sent to the motor but it does not move. I also tested putting min and max to 0 for the position to get the "wheel" mode. torque_limit is high as well as speed_limit

motor moves nicely with the position controller but nothing happens with the torque controller

What do I do wrong ? Is it possible to control torque(speed) only on an AX-12 ?


edit retag flag offensive close merge delete


Did you managed to implement the driver? If so, would you share it or help me to implement it?

zweistein gravatar image zweistein  ( 2016-10-28 06:10:41 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2014-09-11 20:07:46 -0500

Craigstar gravatar image

The MX-64 and higher have direct torque control. The AX series do not.

You could try setting torque limit slightly higher than your demand torque, and punch limit slightly lower than our demand torque, as well as setting the position demand to a very high value in the direction you wish to push, but you would have to build your own torque compensation loop to generate the demand based on sensed feedback from the motor, and unfortunately the update rate will be quite slow.

cheers, C

edit flag offensive delete link more


Could you elaborate in more details what did you mean by closed loop compensation?

zweistein gravatar image zweistein  ( 2016-10-28 06:09:39 -0500 )edit

Question Tools



Asked: 2013-03-22 08:10:16 -0500

Seen: 1,883 times

Last updated: Mar 22 '13