ros2-control

Solid

ros2_control: controller manager, hardware interfaces, URDF ros2_control tags, controller spawners.

AI & Automation 18 stars 3 forks Updated today Apache-2.0

Install

View on GitHub

Quality Score: 81/100

Stars 20%
43
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# ros2_control Development Instructions (Ubuntu 24.04 LTS & ROS 2 Jazzy) ## 1. Architecture `ros2_control` decouples hardware drivers (`hardware_interface::SystemInterface`, `ActuatorInterface`, `SensorInterface`) from controller logic (`diff_drive_controller`, `joint_trajectory_controller`). Interface names are exactly `position`, `velocity`, `effort` — verify which ones your controller requires before writing the URDF. ## 2. Documentation Entry Points | For | Entry point | | :--- | :--- | | Everything (Jazzy docs root — architecture, getting started, demos) | `https://control.ros.org/jazzy/index.html` | | Per-controller parameter reference | `https://control.ros.org/jazzy/doc/ros2_controllers/doc/controllers_index.html` | ## 3. Key Concepts & Patterns ### A. URDF `<ros2_control>` Tag Structure ```xml <ros2_control name="RobotSystem" type="system"> <hardware> <plugin>gz_ros2_control/GazeboSimSystem</plugin> </hardware> <joint name="left_wheel_joint"> <command_interface name="velocity"> <param name="min">-10</param> <param name="max">10</param> </command_interface> <state_interface name="position"/> <state_interface name="velocity"/> </joint> </ros2_control> ``` ### B. Controller Spawning via Launch ```python joint_state_broadcaster_spawner = Node( package="controller_manager", executable="spawner", arguments=["joint_state_broadcaster", "--controller-manager", "/controller_manager"], ) diff_drive_spawner = Node( ...

Details

Author
Leehyunbin0131
Repository
Leehyunbin0131/claude-ros2-skills
Created
5 days ago
Last Updated
today
Language
Python
License
Apache-2.0

Similar Skills

Semantically similar based on skill content — not just same category