ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question

It's is possible to use SOEM to communicate directly to a AC Servo Drive using ROS?

asked 2019-02-26 08:12:22 -0500

Hyperion gravatar image

I need to develop a cartesian robot of 5 DOF without using a PLC. The AC servo drive that I have can communicate via CANopen or EtherCAT (and other protocols too). Choosing to use EtherCAT now I can, in the future, use CoE theorically. But, being a total beginner in ROS, I need to know if I am in the right way or using ROS with one of these protocols is impossible to archive sucess in this project?

Using a industrial PC with ubuntu 18.04 LTS and ROS Melodic.

ps.: sorry for my bad english.

edit retag flag offensive close merge delete


It's not ethercat, but for canopen, you could look at ros_canopen.

gvdhoorn gravatar image gvdhoorn  ( 2019-02-26 08:27:50 -0500 )edit

But checking the page of ROS-Industrial they say that SOEM is a open-source EtherCAT ( ). I'm wrong to believe it's possible to use EtherCAT to control servos with ROS?

Hyperion gravatar image Hyperion  ( 2019-02-26 08:33:14 -0500 )edit

I don't believe I commented on the state of ethercat support. I just wanted to make you aware of the canopen support.

gvdhoorn gravatar image gvdhoorn  ( 2019-02-26 08:34:07 -0500 )edit

Thank you! But one more question: can you indicate a good (or complete) tutorial to do that with CANopen?

Hyperion gravatar image Hyperion  ( 2019-02-26 08:37:26 -0500 )edit

No, I wouldn't know of any.

There are quite a few questions about ros_canopen on this site (ie: ROS Answers) though. Perhaps those can be of help.

Use Google to search for them (something like: ros_canopen

gvdhoorn gravatar image gvdhoorn  ( 2019-02-26 08:48:43 -0500 )edit

And if I choose to use Ethernet/IP, what you opinion about it? (Remember, I need to control servo drivers with a industrial PC)

Hyperion gravatar image Hyperion  ( 2019-02-28 12:33:20 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2019-03-12 01:57:02 -0500

mgruhler gravatar image

@Hyperion sorry for the very late answer.

Yes, you are totally on the right track with this. You can implement CoE using SOEM, e.g. There is a catkinized version of SOEM released into melodic, which should allow you to call sudo apt install ros-melodic-soem.

But I recommend to check out the Usage section of the ReadMe to make sure you don't run into include problems with the non-conform package layout the SOEM originally has...

edit flag offensive delete link more


Thanks for the answer, I will try!!! But one more question: I found the ArmorBlock 1732 of Allen-Bradley that works as a sensor hub and operates over Ethernet/IP. You know anything about if is possible to connect the ROS directly with the device? I saw that Ethernet/IP package in ROS seems to be depreciated. You think is worth a try?

Hyperion gravatar image Hyperion  ( 2019-03-12 07:10:09 -0500 )edit

sorry, can't help with that...

mgruhler gravatar image mgruhler  ( 2019-03-12 08:08:12 -0500 )edit

Don't worry, thanks for the help.

Hyperion gravatar image Hyperion  ( 2019-03-12 13:18:47 -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: 2019-02-26 08:12:22 -0500

Seen: 514 times

Last updated: Mar 12 '19