Is your feature request related to a problem? Please describe.
Jazzy introduced the feature for 'overrun' handling. Meaning that if a control cycle takes longer than a predefined time, it will shift the whole interval a bit to align with the underlying system.
However, for our Franka robots this premise doesn't hold. Therefore, in ros-controls/ros2_control#2529 , a toggle flag was introduced in the controller_manager of ros2_control to turn on/off this feature - for our robots this is now always turned off.
Now we were exploring the new 'async' feature (which is great!) but we figured out that the realtime_tools also had this new overrun.manage mechanism - but the toggle was not introduced yet. In our franka_ros2 repo we therefore introduced this toggle to a adapted realtime_tools (see https://github.com/frankarobotics/franka_ros2/blob/f83b24056be1001452b165037e55090b7b619f86/realtime_tools/realtime_tools/include/realtime_tools/async_function_handler.hpp#L221) s.t. it doesn't create problems.
Describe the solution you'd like
Having a toggle to turn on/off the overrun mechanism in realtime_tools.
Describe alternatives you've considered
Having our own copy of realtime_tools - not preferred :)
Additional context
Without being able to turn this overrun mechanism off, the franka_ros2 user can't work with our robots - they eventually will run into a 'communication_constraint_violation' aka the control loop is broken.
Cheers and thank you already!
Andreas
Is your feature request related to a problem? Please describe.
Jazzy introduced the feature for 'overrun' handling. Meaning that if a control cycle takes longer than a predefined time, it will shift the whole interval a bit to align with the underlying system.
However, for our Franka robots this premise doesn't hold. Therefore, in ros-controls/ros2_control#2529 , a toggle flag was introduced in the
controller_managerof ros2_control to turn on/off this feature - for our robots this is now always turned off.Now we were exploring the new 'async' feature (which is great!) but we figured out that the
realtime_toolsalso had this newoverrun.managemechanism - but the toggle was not introduced yet. In ourfranka_ros2repo we therefore introduced this toggle to a adaptedrealtime_tools(see https://github.com/frankarobotics/franka_ros2/blob/f83b24056be1001452b165037e55090b7b619f86/realtime_tools/realtime_tools/include/realtime_tools/async_function_handler.hpp#L221) s.t. it doesn't create problems.Describe the solution you'd like
Having a toggle to turn on/off the overrun mechanism in
realtime_tools.Describe alternatives you've considered
Having our own copy of
realtime_tools- not preferred :)Additional context
Without being able to turn this overrun mechanism off, the franka_ros2 user can't work with our robots - they eventually will run into a 'communication_constraint_violation' aka the control loop is broken.
Cheers and thank you already!
Andreas