@@ -23,16 +23,16 @@ applies a PWM command to the hardware interface.
2323 The output should resemble:
2424
2525 ``` bash
26- integral_sliding_mode_controller[ velocity_controllers/IntegralSlidingModeController] active
27- thruster_allocation_matrix_controller[ thruster_allocation_matrix_controller/ThrusterAllocationMatrixController] active
28- thruster_1_controller[ thruster_controllers/PolynomialThrustCurveController] active
29- thruster_2_controller[ thruster_controllers/PolynomialThrustCurveController] active
30- thruster_3_controller[ thruster_controllers/PolynomialThrustCurveController] active
31- thruster_4_controller[ thruster_controllers/PolynomialThrustCurveController] active
32- thruster_5_controller[ thruster_controllers/PolynomialThrustCurveController] active
33- thruster_6_controller[ thruster_controllers/PolynomialThrustCurveController] active
34- thruster_7_controller[ thruster_controllers/PolynomialThrustCurveController] active
35- thruster_8_controller[ thruster_controllers/PolynomialThrustCurveController] active
26+ adaptive_integral_terminal_sliding_mode_controller velocity_controllers/AdaptiveIntegralTerminalSlidingModeController active
27+ thruster_allocation_matrix_controller thruster_allocation_matrix_controller/ThrusterAllocationMatrixController active
28+ thruster_8_controller thruster_controllers/PolynomialThrustCurveController active
29+ thruster_7_controller thruster_controllers/PolynomialThrustCurveController active
30+ thruster_6_controller thruster_controllers/PolynomialThrustCurveController active
31+ thruster_5_controller thruster_controllers/PolynomialThrustCurveController active
32+ thruster_4_controller thruster_controllers/PolynomialThrustCurveController active
33+ thruster_3_controller thruster_controllers/PolynomialThrustCurveController active
34+ thruster_2_controller thruster_controllers/PolynomialThrustCurveController active
35+ thruster_1_controller thruster_controllers/PolynomialThrustCurveController active
3636 ```
3737
38383 . Verify that the hardware interfaces have been properly loaded by opening
@@ -46,57 +46,55 @@ applies a PWM command to the hardware interface.
4646
4747 ``` bash
4848 command interfaces
49- integral_sliding_mode_controller /rx/velocity [available] [unclaimed]
50- integral_sliding_mode_controller /ry/velocity [available] [unclaimed]
51- integral_sliding_mode_controller /rz/velocity [available] [unclaimed]
52- integral_sliding_mode_controller /x/velocity [available] [unclaimed]
53- integral_sliding_mode_controller /y/velocity [available] [unclaimed]
54- integral_sliding_mode_controller /z/velocity [available] [unclaimed]
55- thruster_1_controller/thruster_1_joint/effort [available] [claimed]
56- thruster_1_joint/effort [available] [claimed]
57- thruster_2_controller/thruster_2_joint/effort [available] [claimed]
58- thruster_2_joint/effort [available] [claimed]
59- thruster_3_controller/thruster_3_joint/effort [available] [claimed]
60- thruster_3_joint/effort [available] [claimed]
61- thruster_4_controller/thruster_4_joint/effort [available] [claimed]
62- thruster_4_joint/effort [available] [claimed]
63- thruster_5_controller/thruster_5_joint/effort [available] [claimed]
64- thruster_5_joint/effort [available] [claimed]
65- thruster_6_controller/thruster_6_joint/effort [available] [claimed]
66- thruster_6_joint/effort [available] [claimed]
67- thruster_7_controller/thruster_7_joint/effort [available] [claimed]
68- thruster_7_joint/effort [available] [claimed]
69- thruster_8_controller/thruster_8_joint/effort [available] [claimed]
70- thruster_8_joint/effort [available] [claimed]
71- thruster_allocation_matrix_controller/rx/effort [available] [claimed]
72- thruster_allocation_matrix_controller/ry/effort [available] [claimed]
73- thruster_allocation_matrix_controller/rz/effort [available] [claimed]
74- thruster_allocation_matrix_controller/x/effort [available] [claimed]
75- thruster_allocation_matrix_controller/y/effort [available] [claimed]
76- thruster_allocation_matrix_controller/z/effort [available] [claimed]
49+ adaptive_integral_terminal_sliding_mode_controller /rx/velocity [available] [unclaimed]
50+ adaptive_integral_terminal_sliding_mode_controller /ry/velocity [available] [unclaimed]
51+ adaptive_integral_terminal_sliding_mode_controller /rz/velocity [available] [unclaimed]
52+ adaptive_integral_terminal_sliding_mode_controller /x/velocity [available] [unclaimed]
53+ adaptive_integral_terminal_sliding_mode_controller /y/velocity [available] [unclaimed]
54+ adaptive_integral_terminal_sliding_mode_controller /z/velocity [available] [unclaimed]
55+ thruster_1_controller/thruster_1_joint/effort [available] [claimed]
56+ thruster_1_joint/pwm [available] [claimed]
57+ thruster_2_controller/thruster_2_joint/effort [available] [claimed]
58+ thruster_2_joint/pwm [available] [claimed]
59+ thruster_3_controller/thruster_3_joint/effort [available] [claimed]
60+ thruster_3_joint/pwm [available] [claimed]
61+ thruster_4_controller/thruster_4_joint/effort [available] [claimed]
62+ thruster_4_joint/pwm [available] [claimed]
63+ thruster_5_controller/thruster_5_joint/effort [available] [claimed]
64+ thruster_5_joint/pwm [available] [claimed]
65+ thruster_6_controller/thruster_6_joint/effort [available] [claimed]
66+ thruster_6_joint/pwm [available] [claimed]
67+ thruster_7_controller/thruster_7_joint/effort [available] [claimed]
68+ thruster_7_joint/pwm [available] [claimed]
69+ thruster_8_controller/thruster_8_joint/effort [available] [claimed]
70+ thruster_8_joint/pwm [available] [claimed]
71+ thruster_allocation_matrix_controller/rx/effort [available] [claimed]
72+ thruster_allocation_matrix_controller/ry/effort [available] [claimed]
73+ thruster_allocation_matrix_controller/rz/effort [available] [claimed]
74+ thruster_allocation_matrix_controller/x/effort [available] [claimed]
75+ thruster_allocation_matrix_controller/y/effort [available] [claimed]
76+ thruster_allocation_matrix_controller/z/effort [available] [claimed]
7777 state interfaces
78- rx/velocity
79- ry/velocity
80- rz/velocity
81- x/velocity
82- y/velocity
83- z/velocity
8478 ```
8579
86- 4 . State feedback can be provided to ISMC using the controller's state
80+ 4 . State feedback can be provided to AITSMC using the controller's state
8781 interfaces or a topic. To demonstrate the topic-based interface, run the
8882 following command:
8983
9084 ``` bash
85+ <<< <<< < HEAD
9186 ros2 topic pub /integral_sliding_mode_controller/system_state geometry_msgs/msg/Twist
87+ =======
88+ ros2 topic pub /adaptive_integral_terminal_sliding_mode_controller/system_state nav_msgs/msg/Odometry
89+ >>>>>>> c8d798e (Update auv_control_demos configurations (# 60))
9290 ` ` `
9391
94- 5 . The ISMC accepts reference commands sent over a topic or a reference
92+ 5. The AITSMC accepts reference commands sent over a topic or a reference
9593 interface. Run the following command in a separate terminal to provide the
9694 controller with a dummy reference input:
9795
9896 ` ` ` bash
99- ros2 topic pub /integral_sliding_mode_controller /reference geometry_msgs/msg/Twist " {linear: {x: 0.5, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.2}}"
97+ ros2 topic pub /adaptive_integral_terminal_sliding_mode_controller /reference geometry_msgs/msg/Twist " {linear: {x: 0.5, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.2}}"
10098 ` ` `
10199
1021006. Each of the implemented controllers publishes controller state information to
@@ -111,23 +109,23 @@ applies a PWM command to the hardware interface.
111109 ` ` ` bash
112110 header:
113111 stamp:
114- sec: 1710818346
115- nanosec: 252453476
112+ sec: 1748936962
113+ nanosec: 907678344
116114 frame_id: ' '
117115 dof_state:
118116 name: thruster_2_joint
119- reference: -39.79632414479818
117+ reference: -63.32823451272053
120118 feedback: 0.0
121119 feedback_dot: 0.0
122120 error: 0.0
123121 error_dot: 0.0
124- time_step: 0.033380572
122+ time_step: 0.033281545
125123 output: 1134.0
126124 ` ` `
127125
128126 This output indicates that the controller chaining was successful. In
129127 particular, we can see that the velocity commands sent to the
130- ` integral_sliding_mode_controller ` are converted to thrust values, which is
128+ ` adaptive_integral_terminal_sliding_mode_controller ` are converted to thrust values, which is
131129 reflected in the ` thruster_controller` output.
132130
133131# # Files used for this demo
@@ -136,14 +134,15 @@ applies a PWM command to the hardware interface.
136134 - [chaining.launch.py](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/launch/chaining.launch.py)
137135
138136- Controllers:
139- - [ Integral Sliding Mode Controller] ( https://github.com/Robotic-Decision-Making-Lab/auv_controllers/tree/main/velocity_controllers )
137+ - [Adaptive Integral Terminal Sliding Mode Controller](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/tree/main/velocity_controllers)
140138 - [Thruster Allocation Matrix Controller](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/tree/main/thruster_allocation_matrix_controller)
141139 - [Polynomial Thrust Curve Controller](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/tree/main/thruster_controllers)
142140
143141- Controller Config:
144- - [ chained_controllers .yaml] ( https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/config/chained_controllers.yaml )
142+ - [chained.controllers .yaml](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/config/chained_controllers.yaml)
145143
146144- Xacro Files:
147- - [ chained_config.xacro] ( https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/xacro/chained_config.xacro )
148- - [ chained_ros2_control.xacro] ( https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/xacro/chained_ros2_control.xacro )
149- - [ chained_urdf.xacro] ( https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/xacro/chained_urdf.xacro )
145+ - [chained.config.xacro](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/xacro/chained.config.xacro)
146+ - [chained.ros2_control.xacro](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/xacro/chained.ros2_control.xacro)
147+ - [chained.urdf.xacro](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/xacro/chained.urdf.xacro)
148+ - [chained.model.xacro](https://github.com/Robotic-Decision-Making-Lab/auv_controllers/blob/main/auv_control_demos/chained_controllers/xacro/chained.urdf.xacro)
0 commit comments