-
Notifications
You must be signed in to change notification settings - Fork 128
Position controller gains and parameters (so3_control)
Xu Liu edited this page Feb 24, 2022
·
7 revisions
Our position controller requires two parameters to be configured:
- Thrust/rpm and rpm/throttle parameters
- PID Gains
TODO: Alex could you write something/point to some resources about how to find these
You will need to update the following propeller parameters in SO3_command_to_mavros.launch (here)
(1) Thrust vs RPM parameters, according to the following equation: Thrust = a * RPM^2 + b * RPM + c (thrust is in Newton not grams-force)
<arg name="thrust_vs_rpm_coeff_a" default="8.401e-7"/>
<arg name="thrust_vs_rpm_coeff_b" default="-1.400e-3"/>
<arg name="thrust_vs_rpm_coeff_c" default="1.12"/>
(2) RPM vs Throttle parameters
<arg name="rpm_vs_throttle_coeff_a" default="6000"/>
<arg name="rpm_vs_throttle_coeff_b" default="0"/>
used gains:
pos: {x: 7.4, y: 7.4, z: 10.4} # position gains
vel: {x: 4.8, y: 4.8, z: 6.0} # velocity gains
ki: {x: 0.00, y: 0.00, z: 0.00} # position error integral gains
unused gains:
kib: {x: 0.00, y: 0.00, z: 0.00} # body-frame position error integral gains, NOT used in so3_control control calculation
rot: {x: 1.5, y: 1.5, z: 1.0} # rotation gains, only used in so3_trpy_control, NOT used in so3_control
ang: {x: 0.13, y: 0.13, z: 0.1} # angular velocity gains, only used in so3_trpy_control, NOT used in so3_control
unused corrections: # corrections are only used in so3_trpy_control, NOT used in so3_control
kf: 0.0e-08
r: 0.0
p: 0.0
max_pos_int: 0.5 # position error integral term limit, if ki=0, this term is not important
max_pos_int_b: 0.5 # body-frame position error integral term limit, NOT used in actual control calculation
- Build and Install:
- Simulation Experiments:
- Real-world Experiments:
- Hardware requirements
- Install real robot code stack
- Safety protocol & preflight check
- Launch experiment and gain tuning
- Supported features:
- Integrate (semantic) SLAM for drift correction
- LIDAR-only autonomous flight
- Full coverage experiments
- Customize configurations: