Abstract
This paper introduces a novel modular architecture for ROS2 that decouples the logic required to acquire, validate, and interpolate references from the control laws that track them. The design includes a dedicated component, named Reference Generator, that receives references, in the form of either single points or trajectories, from external nodes (e.g., planners), and writes single-point references at the controller's sampling period via the existing ros2_control chaining mechanism to downstream controllers. This separation removes duplicated reference-handling code from controllers and improves reusability across robot platforms. We implement two reference generators: one for handling joint-space references and one for Cartesian references, along with a set of new controllers (PD with gravity compensation, Cartesian pose, and admittance controllers) and validate the approach on simulated and real Universal Robots and Franka Emika manipulators. Results show that (i) references are tracked reliably in all tested scenarios, (ii) reference generators reduce duplicated reference-handling code across chained controllers to favor the construction and reuse of complex controller pipelines, and (iii) controller implementations remain focused only on control laws.
Abstract (translated)
本文介绍了一种用于ROS2的新颖模块化架构,该架构将获取、验证和插值参考所需的逻辑与跟踪这些参考的控制律分离。设计中包含了一个专门组件,名为“Reference Generator”(参考生成器),它从外部节点(例如规划器)接收单点或轨迹形式的参考,并通过现有的ros2_control链接机制在控制器的采样周期内写入单点参考到下游控制器。这种分离消除了控制器中的重复参考处理代码,并提高了机器人平台之间的可重用性。我们实现了两个参考生成器:一个用于处理关节空间参考,另一个用于处理笛卡尔参考,还实现了一组新的控制器(带重力补偿的PD、笛卡尔姿态和顺应性控制器),并在模拟和真实的Universal Robots及Franka Emika机械臂上验证了该方法的有效性。结果显示: (i) 在所有测试场景中都能可靠地跟踪参考, (ii) 参考生成器将链接控制器中的重复参考处理代码减少,有利于复杂控制器管道的构建与重用; (iii) 控制器实现仅专注于控制律。
URL
https://arxiv.org/abs/2601.08514