ros-industrial / ros2_canopen

CANopen driver framework for ROS2
https://ros-industrial.github.io/ros2_canopen/manual/rolling/
143 stars 62 forks source link

Naming of "Quick stop" vs. "halt" #260

Open gsalinas opened 7 months ago

gsalinas commented 7 months ago

As best as I can tell from reading through the source code, the ~/halt service of a canopen_402_driver node is actually implemented by setting the Quick Stop bit of the control word. Reading the CIA402 specification, I understand that many CIA402 motion devices implement both a "quick stop" and a "halt" functionality - control word bit 2 and control word bit 8, respectively - so it's probably somewhat misleading that the ROS service calls itself "halt" when it's more properly a quick stop.

I think the best solution would be to rename the service to quick stop and introduce a new service called halt which actually implements halting by setting bit 8, although admittedly this could be a breaking change for any current users of halt. I'm not sure how to handle that part of it but I wanted to make you all aware of the discrepancy.

Thank you so much!