Ask Your Question

Revision history [back]

How to interface high level controllers i.e ros_control with low level controllers such as Arduino/Tiva-c?

I am building a 5-DOF robotic manipulator from scratch and using Moveit! for motion planning. I've completed initial setup of Moveit! but I'm stuck on sending joint trajectories to micro-controller for implementing the planned motion. I've done appropriate research about the same and concluded that it can be implemented in 3 ways-

(i) ros_control - Write a hardware interface to command the joints but unable to understand how exactly will it be interfaced with low level controllers. Sample codes will be hugely appreciated. I've read ros_control documentation and read about roscon 2014 talk about ros_control.

(ii) Using Moveit! - https://github.com/jesseweisberg/moveo_ros Don't see a hardware interface being used.

(iii) Writing custom controllers - https://github.com/BourbonCreams/braccio_arm/tree/master/braccio_controller
Controller code https://github.com/BourbonCreams/braccio_arm/tree/master/braccio_arduino Arduino Code

What method is to be preferred and also how to implement it?

Thanks in advance.