TY - JOUR
T1 - Flexible Constraint-Based Controller Framework for Ros_Control
AU - Prada, Miguel
AU - Fernandez, Asier
AU - Remazeilles, Anthony
AU - McIntyre, Joseph
N1 - Publisher Copyright:
© 2025 by the authors.
PY - 2025/8
Y1 - 2025/8
N2 - Generating robot behaviors in dynamic real-world situations generally requires the programming of multiple, often redundant degrees of freedom to meet multiple goals governing the desired motions. In this work, we propose a constraint-based controller specification methodology. A novel declarative language is used to combine semantically specialized building blocks into composite controllers. This description is automatically transformed at runtime into an executable form, which can automatically leverage multiple threads to parallelize computations whenever possible. Enabling runtime definition of controller topologies out of declarative descriptions not only reduces the work required to develop such controllers, but it also allows one to dynamically synthesize new controllers based on higher-level task planners or by user interaction through Graphical User Interfaces (GUIs). Our solution adds new functionality to the Robot Operating System (ROS)/ros_control ecosystem, where robot behaviors are typically achieved by deploying single-objective, off-the-shelf controllers for tasks like following joint trajectories, executing interpolated point-to-point motions in Cartesian space, or for basic compliant behaviors. Our proposed constraint-based framework enhances ros_control by providing the means to easily construct composite controllers from existing primary elements using our design language. Building on top of the ros_control infrastructure facilitates the usage of our controller with a wide range of supported robots and enables quick integration with the existing ROS ecosystem.
AB - Generating robot behaviors in dynamic real-world situations generally requires the programming of multiple, often redundant degrees of freedom to meet multiple goals governing the desired motions. In this work, we propose a constraint-based controller specification methodology. A novel declarative language is used to combine semantically specialized building blocks into composite controllers. This description is automatically transformed at runtime into an executable form, which can automatically leverage multiple threads to parallelize computations whenever possible. Enabling runtime definition of controller topologies out of declarative descriptions not only reduces the work required to develop such controllers, but it also allows one to dynamically synthesize new controllers based on higher-level task planners or by user interaction through Graphical User Interfaces (GUIs). Our solution adds new functionality to the Robot Operating System (ROS)/ros_control ecosystem, where robot behaviors are typically achieved by deploying single-objective, off-the-shelf controllers for tasks like following joint trajectories, executing interpolated point-to-point motions in Cartesian space, or for basic compliant behaviors. Our proposed constraint-based framework enhances ros_control by providing the means to easily construct composite controllers from existing primary elements using our design language. Building on top of the ros_control infrastructure facilitates the usage of our controller with a wide range of supported robots and enables quick integration with the existing ROS ecosystem.
KW - constraint-based control
KW - optimization
KW - ROS
KW - ros_control
UR - https://www.scopus.com/pages/publications/105014255137
U2 - 10.3390/robotics14080109
DO - 10.3390/robotics14080109
M3 - Article
AN - SCOPUS:105014255137
SN - 2218-6581
VL - 14
JO - Robotics
JF - Robotics
IS - 8
M1 - 109
ER -