Skip to content

Commit e4fa91e

Browse files
authored
Rearrange controllers overview page (#846) (#848)
1 parent 84bd61b commit e4fa91e

File tree

3 files changed

+32
-27
lines changed

3 files changed

+32
-27
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![Licence](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
44
[![codecov](https://codecov.io/gh/ros-controls/ros2_controllers/branch/iron/graph/badge.svg?token=KSdY0tsHm6)](https://codecov.io/gh/ros-controls/ros2_controllers)
55

6-
Commonly used and generalized controllers for ros2-control framework that are ready to use with many robots, MoveIt2 and Navigation2.
6+
Commonly used and generalized controllers for ros2-control framework that are ready to use with many robots, MoveIt2 and Nav2.
77

88
## Build status
99

doc/controllers_index.rst

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,24 +6,9 @@
66
ros2_controllers
77
#################
88

9-
`GitHub Repository <https://github.com/ros-controls/ros2_controllers>`_
10-
11-
12-
Nomenclature
13-
************
14-
15-
The ros2_control framework uses namespaces to sort controller according to the type of command interface they are using.
16-
The controllers are using `common hardware interface definitions`_.
17-
The controllers' namespaces are commanding the following command interface types:
18-
19-
- ``position_controllers``: ``hardware_interface::HW_IF_POSITION``
20-
- ``velocity_controller``: ``hardware_interface::HW_IF_VELOCITY``
21-
- ``effort_controllers``: ``hardware_interface::HW_IF_ACCELERATION``
22-
- ``effort_controllers``: ``hardware_interface::HW_IF_EFFORT``
23-
- ...
24-
25-
.. _common hardware interface definitions: https://github.com/ros-controls/ros2_control/blob/{REPOS_FILE_BRANCH}/hardware_interface/include/hardware_interface/types/hardware_interface_type_values.hpp
9+
Commonly used and generalized controllers for ros2_control framework that are ready to use with many robots, `MoveIt2 <https://moveit.picknik.ai/main/index.html>`_ and `Nav2 <https://navigation.ros.org/>`_.
2610

11+
`Link to GitHub Repository <https://github.com/ros-controls/ros2_controllers>`_
2712

2813

2914
Guidelines and Best Practices
@@ -36,34 +21,54 @@ Guidelines and Best Practices
3621
*
3722

3823

39-
Available Controllers
40-
*********************
24+
Controllers for Mobile Robots
25+
*****************************
4126

4227
.. toctree::
4328
:titlesonly:
4429

4530
Ackermann Steering Controller <../ackermann_steering_controller/doc/userdoc.rst>
46-
Admittance Controller <../admittance_controller/doc/userdoc.rst>
4731
Bicycle Steering Controller <../bicycle_steering_controller/doc/userdoc.rst>
4832
Differential Drive Controller <../diff_drive_controller/doc/userdoc.rst>
33+
Steering Controllers Library <../steering_controllers_library/doc/userdoc.rst>
34+
Tricycle Controller <../tricycle_controller/doc/userdoc.rst>
35+
Tricycle Steering Controller <../tricycle_steering_controller/doc/userdoc.rst>
36+
37+
Controllers for Manipulators and Other Robots
38+
*********************************************
39+
40+
The controllers are using `common hardware interface definitions`_, and may use namespaces depending on the following command interface types:
41+
42+
- ``position_controllers``: ``hardware_interface::HW_IF_POSITION``
43+
- ``velocity_controller``: ``hardware_interface::HW_IF_VELOCITY``
44+
- ``effort_controllers``: ``hardware_interface::HW_IF_ACCELERATION``
45+
- ``effort_controllers``: ``hardware_interface::HW_IF_EFFORT``
46+
47+
.. _common hardware interface definitions: https://github.com/ros-controls/ros2_control/blob/{REPOS_FILE_BRANCH}/hardware_interface/include/hardware_interface/types/hardware_interface_type_values.hpp
48+
49+
50+
.. toctree::
51+
:titlesonly:
52+
53+
Admittance Controller <../admittance_controller/doc/userdoc.rst>
4954
Effort Controllers <../effort_controllers/doc/userdoc.rst>
5055
Forward Command Controller <../forward_command_controller/doc/userdoc.rst>
5156
Gripper Controller <../gripper_controllers/doc/userdoc.rst>
5257
Joint Trajectory Controller <../joint_trajectory_controller/doc/userdoc.rst>
5358
Position Controllers <../position_controllers/doc/userdoc.rst>
54-
Steering Controllers Library <../steering_controllers_library/doc/userdoc.rst>
55-
Tricycle Controller <../tricycle_controller/doc/userdoc.rst>
56-
Tricycle Steering Controller <../tricycle_steering_controller/doc/userdoc.rst>
5759
Velocity Controllers <../velocity_controllers/doc/userdoc.rst>
5860

5961

60-
Available Broadcasters
62+
Broadcasters
6163
**********************
6264

65+
Broadcasters are used to publish sensor data from hardware components to ROS topics.
66+
In the sense of ros2_control, broadcasters are still controllers using the same controller interface as the other controllers above.
67+
6368
.. toctree::
6469
:titlesonly:
6570

6671
Force Torque Sensor Broadcaster <../force_torque_sensor_broadcaster/doc/userdoc.rst>
67-
Imu Sensor Broadcaster <../imu_sensor_broadcaster/doc/userdoc.rst>
72+
IMU Sensor Broadcaster <../imu_sensor_broadcaster/doc/userdoc.rst>
6873
Joint State Broadcaster <../joint_state_broadcaster/doc/userdoc.rst>
6974
Range Sensor Broadcaster <../range_sensor_broadcaster/doc/userdoc.rst>

forward_command_controller/doc/userdoc.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
forward_command_controller
66
==========================
77

8-
This is a base class implementing a feedforward controller. Specific implementations can be found in:
8+
This is a base class implementing a feedforward controller. Specific implementations of this base class can be found in:
99

1010
* :ref:`position_controllers_userdoc`
1111
* :ref:`velocity_controllers_userdoc`

0 commit comments

Comments
 (0)