Ask Your Question

Revision history [back]

As Adolfo already explained, you can make a ros_control wrapper that talks to the dynamixel drivers via topics (at which point real-time guarantees do not hold anymore). We recently did this with a 3D printed dynamixel arm and it works surprisingly well. Code is available online: https://github.com/tu-darmstadt-ros-pkg/hector_small_arm_common

  • hector_small_arm_driver contains the launch files for the dynamixel driver (and some obsolete code for joint state publishing that you can ignore I think)
  • hector_small_arm_ros_control contains the ros_control hardware interface. This fakes the read() and write() method functionality by communicating with the dynamixel driver topics

The packages are not polished and prepared for public consumption, but they should give you some ideas of how you can approach the problem regardless. Note we for instance also have a fake 6th joint on the arm for example to be able to use standard KDL IK.

As Adolfo already explained, you can make a ros_control wrapper that talks to the dynamixel drivers via topics (at which point real-time guarantees do not hold anymore). We recently did this with a 3D printed dynamixel arm and it works surprisingly well. Code is available online: https://github.com/tu-darmstadt-ros-pkg/hector_small_arm_common

  • hector_small_arm_driver contains the launch files for the dynamixel driver (and some obsolete code for joint state publishing that you can ignore I think)
  • hector_small_arm_ros_control contains the ros_control hardware interface. This fakes the read() and write() method functionality by communicating with the dynamixel driver topics

The packages are not polished and prepared for public consumption, but they should give you some ideas of how you can approach the problem regardless. Note we for instance also have a fake 6th joint on the arm for example to be able to use standard KDL IK.