Skip to content

Commit a58243b

Browse files
authored
Update docs for diff drive controller (#751) (#753)
1 parent 4992fd4 commit a58243b

File tree

3 files changed

+30
-35
lines changed

3 files changed

+30
-35
lines changed

admittance_controller/doc/userdoc.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ The controller implements ``ChainedControllerInterface``, so it is possible to a
1111
The controller requires an external kinematics plugin to function. The `kinematics_interface <https://github.com/ros-controls/kinematics_interface>`_ repository provides an interface and an implementation that the admittance controller can use.
1212

1313

14-
ROS2 interface of the controller
14+
ROS 2 interface of the controller
1515
---------------------------------
1616

1717
Parameters

diff_drive_controller/doc/userdoc.rst

Lines changed: 28 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -6,71 +6,66 @@ diff_drive_controller
66
=====================
77

88
Controller for mobile robots with differential drive.
9-
Input for control are robot body velocity commands which are translated to wheel commands for the differential drive base.
10-
Odometry is computed from hardware feedback and published.
11-
12-
Velocity commands
13-
-----------------
149

15-
The controller works with a velocity twist from which it extracts the x component of the linear velocity and the z component of the angular velocity. Velocities on other components are ignored.
10+
As input it takes velocity commands for the robot body, which are translated to wheel commands for the differential drive base.
1611

17-
Hardware interface type
18-
-----------------------
19-
20-
The controller works with wheel joints through a velocity interface.
12+
Odometry is computed from hardware feedback and published.
2113

2214
Other features
2315
--------------
2416

25-
Realtime-safe implementation.
26-
Odometry publishing
27-
Task-space velocity, acceleration and jerk limits
28-
Automatic stop after command time-out
17+
+ Realtime-safe implementation.
18+
+ Odometry publishing
19+
+ Task-space velocity, acceleration and jerk limits
20+
+ Automatic stop after command time-out
2921

3022

31-
ros2_control Interfaces
32-
------------------------
23+
Description of controller's interfaces
24+
------------------------------------------------
3325

3426
References
35-
,,,,,,,,,,,
27+
,,,,,,,,,,,,,,,,,,
3628

29+
(the controller is not yet implemented as chainable controller)
3730

38-
States
39-
,,,,,,,
31+
Feedback
32+
,,,,,,,,,,,,,,
4033

34+
As feedback interface type the joints' position (``hardware_interface::HW_IF_POSITION``) or velocity (``hardware_interface::HW_IF_VELOCITY``,if parameter ``position_feedback=false``) are used.
4135

42-
Commands
36+
Output
4337
,,,,,,,,,
4438

39+
Joints' velocity (``hardware_interface::HW_IF_VELOCITY``) are used.
4540

46-
ROS2 Interfaces
47-
----------------
41+
42+
ROS 2 Interfaces
43+
------------------------
4844

4945
Subscribers
5046
,,,,,,,,,,,,
47+
5148
~/cmd_vel [geometry_msgs/msg/TwistStamped]
52-
Velocity command for the controller.
49+
Velocity command for the controller, if ``use_stamped_vel=true``. The controller extracts the x component of the linear velocity and the z component of the angular velocity. Velocities on other components are ignored.
5350

5451
~/cmd_vel_unstamped [geometry_msgs::msg::Twist]
55-
56-
~/cmd_vel_out []
57-
58-
52+
Velocity command for the controller, if ``use_stamped_vel=false``. The controller extracts the x component of the linear velocity and the z component of the angular velocity. Velocities on other components are ignored.
5953

6054

6155
Publishers
6256
,,,,,,,,,,,
63-
~/odom []
57+
~/odom [nav_msgs::msg::Odometry]
58+
This represents an estimate of the robot's position and velocity in free space.
6459

65-
/tf
60+
/tf [tf2_msgs::msg::TFMessage]
61+
tf tree. Published only if ``enable_odom_tf=true``
6662

67-
68-
Services
69-
,,,,,,,,,
63+
~/cmd_vel_out [geometry_msgs/msg/TwistStamped]
64+
Velocity command for the controller, where limits were applied. Published only if ``publish_limited_velocity=true``
7065

7166

7267
Parameters
73-
------------
68+
,,,,,,,,,,,,
7469

7570
Check `parameter definition file for details <https://github.com/ros-controls/ros2_controllers/blob/{REPOS_FILE_BRANCH}/diff_drive_controller/src/diff_drive_controller_parameter.yaml>`_.
7671

doc/writing_new_controller.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ The following is a step-by-step guide to create source files, basic tests, and c
2727

2828
3. **Adding declarations into header file (.hpp)**
2929

30-
1. Take care that you use header guards. ROS2-style is using ``#ifndef`` and ``#define`` preprocessor directives. (For more information on this, a search engine is your friend :) ).
30+
1. Take care that you use header guards. ROS 2-style is using ``#ifndef`` and ``#define`` preprocessor directives. (For more information on this, a search engine is your friend :) ).
3131

3232
2. include ``"controller_interface/controller_interface.hpp"`` and ``visibility_control.h`` if you are using one.
3333

0 commit comments

Comments
 (0)