ICube-Robotics / ethercat_driver_ros2

Hardware Interface for EtherCAT module integration with ros2_control
https://icube-robotics.github.io/ethercat_driver_ros2/
Apache License 2.0
152 stars 42 forks source link

Ethercat behavior is unstable #138

Open ghost opened 4 months ago

ghost commented 4 months ago

We have encountered an error in our library usage and would appreciate some feedback on how to solve it.

we have 16 EtherCAT units (7 drives and 9 I/O modules) we launch our application in mode of operation 9 (velocity) and in doing so when we launch one of the motors starts rotating in a random (or so it seems) direction., before we even give it a command. closing the EtherCAT master and restarting it didn't help but restarting the machine (jetson-orin) did work

JensVanhooydonck commented 4 months ago

Seems related to #125 ... Are u using CSP mode?

ghost commented 3 months ago

I have seen this issue, the problem is that we are using CSV, when I override the default velocity to 0 I cannot override it later and the motors stays put.

ammaraljodah commented 2 months ago

You need to ensure the controller that is claiming the velocity command interface sends zero at the start. First ensure your motors are disabled. Delay the launch of controllers after the state broadcaster has been launched. When enabling the motors, send a message to the velocity controller to command all joints to zero velocity, then enable the motors.