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

Ethercat interface to elmo motor controllers

asked 2018-02-23 02:57:15 -0500

mgruhler gravatar image

updated 2018-12-17 08:30:05 -0500

Hi all,

I'd like to drive an Elmo DC Whistle motor controller via Ethercat in ROS.

I've look around quite a bit and found several questions like #q256404, #q240550 or #q199494 which are basically all: use SOEM; or #q226843 which relates to ros_ethercat. Actually, #q256404 and #q240550 are exact duplicats, but only answered with the generic "use soem" approach. (I am able to run the simple_test client provided with soem, so the system is operational)

I don't want to depend on Orocos, afair, this is required when you want to use rtt_soem which is in some answers as well.

However, I'd like to use ros_control, if possible, so ros_ethercat seems like a great start.

In the end, I do have problems about how to approach writing the driver, though. Does anyone now of an example how to use ros_ethercat with CustomHW and CoE? Any help would be highly appreciated.

(System: Ubuntu 16.04.3 with ROS Kinetic)

edit retag flag offensive close merge delete


@mgruhler have you come up with something shareable? I have got an Elmo DC Whistle too and I'll need to integrate it in ROS in the following months.

alextoind gravatar image alextoind  ( 2018-10-23 10:14:30 -0500 )edit

@alextoind Yes, I've been able to implement something. However, I cannot share the full code. I might be able to extract the relevant snippets though, if you are interested. However, I ended up using SOEM, not ros_ethercat (I was lost on that one)...

mgruhler gravatar image mgruhler  ( 2018-11-21 03:31:30 -0500 )edit

@mgruhler thanks for the feedback! I've not started to work on it yet, but I'll try with SOEM then and I'll let you know ;)

alextoind gravatar image alextoind  ( 2018-11-21 03:43:01 -0500 )edit

@mgruhler My hardware connection is like this: I have four Gold Solo Whistle and one Gold Maestro, connected in EOE. My current issue is the SOEM could find any slaves, I am asking do we need the standard configuration in Elmo Application Studio or any special configuration for ROS connection? Thank

Hao Deng gravatar image Hao Deng  ( 2018-12-18 20:53:43 -0500 )edit

@mgruhler I post my problem here. And hope you can notice and help me.

Hao Deng gravatar image Hao Deng  ( 2018-12-18 22:03:46 -0500 )edit

@alextoind I know this is now really late to the party, but I finally managed to upload a gist of an adapted simpletest file of SOEM to interface with two Elmo Gold DC Whistle. You should be able to work from there (but most probably have resorted to some other solution or figured it out by now :-) )

Note that the most critical thing was to get the PDO mappings right...

mgruhler gravatar image mgruhler  ( 2019-03-12 02:17:14 -0500 )edit

You are great! I had few delays in the project so it is perfectly on time :D And, as you said, the PDO mappings were the most scary things to test. Thank you very very much!

alextoind gravatar image alextoind  ( 2019-03-12 03:34:19 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2018-02-23 10:07:10 -0500

gvdhoorn gravatar image

It's not a real example (as in: intended to be one), but the sr-ronex-test pkgs appear to be using ros_ethercat to interface with RoNeX hw. Perhaps those could be used to learn from.

edit flag offensive delete link more


@gvdhoorn Great. I don't know why I did not stumble upon this one. This could help. It is actually the first package I've seen actually implementing a driver upon ros_ethercat. If you post as an answer, I'll accept that.

mgruhler gravatar image mgruhler  ( 2018-02-26 06:18:27 -0500 )edit

Question Tools



Asked: 2018-02-23 02:57:15 -0500

Seen: 903 times

Last updated: Feb 23 '18