[ros-users] [Discourse.ros.org] [Next Generation ROS] Ros_control in ROS2 wishlist
gavanderhoorn via Discourse.ros.org
ros.discourse at gmail.com
Mon Feb 11 13:13:04 UTC 2019
My first response would be: all of those, good suggestions (perhaps maybe the first two).
But thinking about it a bit more I would like to see:
1. maintain deterministic execution in everything (ie: hard real-time capability, not as a requirement (so keep components capable of running in deterministic environments, but don't require it: see executors below))
1. support chaining controllers natively (*probably* using topics for input/output?), no subclassing
1. support mimo setups (should be doable if the previous item lands)
1. support industry-standard trajectory generators (almost off-topic, but you asked about `joint_trajectory_controller`, so: trapezoidal / s-curve profiles / higher-order interpolation / jerk-limited, etc)
1. Cartesian controllers (would probably require a Cartesian msg set as well ..)
1. fully support managed nodes:
- distribution and scheduling of controllers and other infrastructure with executors
- full component life-cycle (error states, recovery mechanisms, etc) and management
1. usability: more clearly document controller hierarchy ("`position_controllers/JointPositionController` ignores my PID parameters?")
1. usability: don't call everything a "controller" (`joint_state_controller`)
And I'm sure I'm missing some things I've though of over the years. Others will post those probably.
[ros-controls/ros_control#174](https://github.com/ros-controls/ros_control/issues/174) has some previous discussion on using a message/port based framework underneath `ros_control` (ie: OROCOS).
MachineKit devs have done a bit of work with `ros_control` and MachineKit integration, perhaps @zultron and @machinekoder have some inputs.
[Visit Topic](https://discourse.ros.org/t/ros-control-in-ros2-wishlist/7803/3) or reply to this email to respond.
More information about the ros-users