Ask Your Question

ROS and ADC/DAC Hardware

asked 2011-06-07 11:10:42 -0500

ljentoft gravatar image

updated 2011-06-17 12:27:48 -0500

kwc gravatar image

Three questions on ROS-hardware interface--

Has anyone used ROS with National Instruments DAQ Cards such as the PCI-6225? It appears to be possible to run it under linux using the Comedi drivers, but I don't have a good feel for how much work this would require.

In the same vein, does anyone have recommendations for library and/or hardware choices for motor controllers under ROS? There appear to be stacks for the EPOS/ELMO controlllers, but I'd be curious to hear any feedback on how hard they are to set up, and on any other options.

Finally, what sort of latency could one expect from passing messages between ROS nodes on a fairly good machine running data acquisition (say a couple dozen analog inputs) and a few standard processing pipelines? One user mentions seeing up to 9ms for a basic packet reflector, but also seems to think this is unexpectedly high. Is it reasonable to tweak ROS to give <1ms consistently for at least one or two important control loops?

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted

answered 2011-06-08 00:14:03 -0500

KoenBuys gravatar image

We use NI cards with Orocos so you could have a look how this is done. In Leuven we also provide a Ethercat library, which is a wrapper around the Simple Open Ethercat Master. Already a number of robots successfully use this for their motor drivers and also to have high speed sensor acquisition. This can be done in combination with ROS (as for example on the AMIGO robot). If you want to have low latency and real-time behaviour for your low level control, have a look at the orocos rtt toolchain. You can use this seamlessly with ROS and have low level real-time behaviour.

edit flag offensive delete link more

answered 2011-06-21 08:08:55 -0500

wmcmahan gravatar image


This isn't exactly relevant to your meat of your question, but it is relevant to the title of your question... so I hope it might be useful to others who search for you question.

I've recently put together a ROS wrapper for using the Sensoray 626. You can find it here:

This is a low level analog and digital I/O board, that includes motor encoder capabilities so you could use it to write your own motor controller.


edit flag offensive delete link more

answered 2011-06-08 02:34:33 -0500

Bemfica gravatar image

does anyone have recommendations for library and/or hardware choices for motor controllers under ROS?

The Care-o-Bot robot has motors controlled by the CAN protocol (Control Area Network). There is a ros package but isn't easy to use because you need to know your motor parameters to set up an INI file, and sometimes its aren't known.

I'm using the FAULHABER MCDC3003 drive motor and for now a simple Serial-CAN converter so I don't need any additional library (I'm not using the cob_base_drive). BUT, it isn't a cheap solution. Motor + MCDC3003 costs +- $500

Finally, I am guessing here, you don't have to be worried about the latency when you work with analogical signals because its physic nature is slower than your control loop.

edit flag offensive delete link more


Hi i have robot manipulator with mcdc3003/06s mcbl3003/06s and 3564k024b. There are 5 motors connected and coverter which converts from rs485 to rs 232.I need to make this thing move.I already make urdf file setup moveit and so on all simulations calculation.I just dont know how to setup

Chickenman gravatar image Chickenman  ( 2015-11-12 03:35:40 -0500 )edit

Comunication with these motors and encoders and makeit move. Can you give any ideas or help i would be very very grateful. Iwrote more about my problem here thank you for any help

Chickenman gravatar image Chickenman  ( 2015-11-12 03:38:28 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools


Asked: 2011-06-07 11:10:42 -0500

Seen: 1,632 times

Last updated: Jun 21 '11