mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
refactor(mc_rate_control): convert params.c to module.yaml
Convert 2 parameter file(s) from legacy C format to YAML module configuration.
This commit is contained in:
parent
22e700b6d7
commit
ffa361185c
@ -39,6 +39,9 @@ px4_add_module(
|
||||
SRCS
|
||||
MulticopterRateControl.cpp
|
||||
MulticopterRateControl.hpp
|
||||
MODULE_CONFIG
|
||||
mc_acro_params.yaml
|
||||
mc_rate_control_params.yaml
|
||||
DEPENDS
|
||||
circuit_breaker
|
||||
mathlib
|
||||
|
||||
@ -1,142 +0,0 @@
|
||||
/****************************************************************************
|
||||
*
|
||||
* Copyright (c) 2023 PX4 Development Team. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name PX4 nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* @file mc_acro_params.c
|
||||
*
|
||||
* Parameters for Acro mode behavior
|
||||
*/
|
||||
|
||||
/**
|
||||
* Acro mode maximum roll rate
|
||||
*
|
||||
* Full stick deflection leads to this rate.
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 1800.0
|
||||
* @decimal 1
|
||||
* @increment 5
|
||||
* @group Multicopter Acro Mode
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ACRO_R_MAX, 100.f);
|
||||
|
||||
/**
|
||||
* Acro mode maximum pitch rate
|
||||
*
|
||||
* Full stick deflection leads to this rate.
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 1800.0
|
||||
* @decimal 1
|
||||
* @increment 5
|
||||
* @group Multicopter Acro Mode
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ACRO_P_MAX, 100.f);
|
||||
|
||||
/**
|
||||
* Acro mode maximum yaw rate
|
||||
*
|
||||
* Full stick deflection leads to this rate.
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 1800.0
|
||||
* @decimal 1
|
||||
* @increment 5
|
||||
* @group Multicopter Acro Mode
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ACRO_Y_MAX, 100.f);
|
||||
|
||||
/**
|
||||
* Acro mode roll, pitch expo factor
|
||||
*
|
||||
* Exponential factor for tuning the input curve shape.
|
||||
*
|
||||
* 0 Purely linear input curve
|
||||
* 1 Purely cubic input curve
|
||||
*
|
||||
* @min 0
|
||||
* @max 1
|
||||
* @decimal 2
|
||||
* @group Multicopter Acro Mode
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ACRO_EXPO, 0.f);
|
||||
|
||||
/**
|
||||
* Acro mode yaw expo factor
|
||||
*
|
||||
* Exponential factor for tuning the input curve shape.
|
||||
*
|
||||
* 0 Purely linear input curve
|
||||
* 1 Purely cubic input curve
|
||||
*
|
||||
* @min 0
|
||||
* @max 1
|
||||
* @decimal 2
|
||||
* @group Multicopter Acro Mode
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ACRO_EXPO_Y, 0.f);
|
||||
|
||||
/**
|
||||
* Acro mode roll, pitch super expo factor
|
||||
*
|
||||
* "Superexponential" factor for refining the input curve shape tuned using MC_ACRO_EXPO.
|
||||
*
|
||||
* 0 Pure Expo function
|
||||
* 0.7 reasonable shape enhancement for intuitive stick feel
|
||||
* 0.95 very strong bent input curve only near maxima have effect
|
||||
*
|
||||
* @min 0
|
||||
* @max 0.95
|
||||
* @decimal 2
|
||||
* @group Multicopter Acro Mode
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ACRO_SUPEXPO, 0.f);
|
||||
|
||||
/**
|
||||
* Acro mode yaw super expo factor
|
||||
*
|
||||
* "Superexponential" factor for refining the input curve shape tuned using MC_ACRO_EXPO_Y.
|
||||
*
|
||||
* 0 Pure Expo function
|
||||
* 0.7 reasonable shape enhancement for intuitive stick feel
|
||||
* 0.95 very strong bent input curve only near maxima have effect
|
||||
*
|
||||
* @min 0
|
||||
* @max 0.95
|
||||
* @decimal 2
|
||||
* @group Multicopter Acro Mode
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ACRO_SUPEXPOY, 0.f);
|
||||
91
src/modules/mc_rate_control/mc_acro_params.yaml
Normal file
91
src/modules/mc_rate_control/mc_acro_params.yaml
Normal file
@ -0,0 +1,91 @@
|
||||
module_name: mc_rate_control
|
||||
parameters:
|
||||
- group: Multicopter Acro Mode
|
||||
definitions:
|
||||
MC_ACRO_R_MAX:
|
||||
description:
|
||||
short: Acro mode maximum roll rate
|
||||
long: Full stick deflection leads to this rate.
|
||||
type: float
|
||||
default: 100.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 1800.0
|
||||
decimal: 1
|
||||
increment: 5
|
||||
MC_ACRO_P_MAX:
|
||||
description:
|
||||
short: Acro mode maximum pitch rate
|
||||
long: Full stick deflection leads to this rate.
|
||||
type: float
|
||||
default: 100.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 1800.0
|
||||
decimal: 1
|
||||
increment: 5
|
||||
MC_ACRO_Y_MAX:
|
||||
description:
|
||||
short: Acro mode maximum yaw rate
|
||||
long: Full stick deflection leads to this rate.
|
||||
type: float
|
||||
default: 100.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 1800.0
|
||||
decimal: 1
|
||||
increment: 5
|
||||
MC_ACRO_EXPO:
|
||||
description:
|
||||
short: Acro mode roll, pitch expo factor
|
||||
long: |-
|
||||
Exponential factor for tuning the input curve shape.
|
||||
|
||||
0 Purely linear input curve
|
||||
1 Purely cubic input curve
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0
|
||||
max: 1
|
||||
decimal: 2
|
||||
MC_ACRO_EXPO_Y:
|
||||
description:
|
||||
short: Acro mode yaw expo factor
|
||||
long: |-
|
||||
Exponential factor for tuning the input curve shape.
|
||||
|
||||
0 Purely linear input curve
|
||||
1 Purely cubic input curve
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0
|
||||
max: 1
|
||||
decimal: 2
|
||||
MC_ACRO_SUPEXPO:
|
||||
description:
|
||||
short: Acro mode roll, pitch super expo factor
|
||||
long: |-
|
||||
"Superexponential" factor for refining the input curve shape tuned using MC_ACRO_EXPO.
|
||||
|
||||
0 Pure Expo function
|
||||
0.7 reasonable shape enhancement for intuitive stick feel
|
||||
0.95 very strong bent input curve only near maxima have effect
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0
|
||||
max: 0.95
|
||||
decimal: 2
|
||||
MC_ACRO_SUPEXPOY:
|
||||
description:
|
||||
short: Acro mode yaw super expo factor
|
||||
long: |-
|
||||
"Superexponential" factor for refining the input curve shape tuned using MC_ACRO_EXPO_Y.
|
||||
|
||||
0 Pure Expo function
|
||||
0.7 reasonable shape enhancement for intuitive stick feel
|
||||
0.95 very strong bent input curve only near maxima have effect
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0
|
||||
max: 0.95
|
||||
decimal: 2
|
||||
@ -1,307 +0,0 @@
|
||||
/****************************************************************************
|
||||
*
|
||||
* Copyright (c) 2013-2019 PX4 Development Team. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name PX4 nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* @file mc_rate_control_params.c
|
||||
*
|
||||
* Parameters for multicopter rate controller
|
||||
*/
|
||||
|
||||
/**
|
||||
* Roll rate P gain
|
||||
*
|
||||
* Roll rate proportional gain, i.e. control output for angular speed error 1 rad/s.
|
||||
*
|
||||
* @min 0.01
|
||||
* @max 0.5
|
||||
* @decimal 3
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ROLLRATE_P, 0.15f);
|
||||
|
||||
/**
|
||||
* Roll rate I gain
|
||||
*
|
||||
* Roll rate integral gain. Can be set to compensate static thrust difference or gravity center offset.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 3
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ROLLRATE_I, 0.2f);
|
||||
|
||||
/**
|
||||
* Roll rate integrator limit
|
||||
*
|
||||
* Roll rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large roll moment trim changes.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 2
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_RR_INT_LIM, 0.30f);
|
||||
|
||||
/**
|
||||
* Roll rate D gain
|
||||
*
|
||||
* Roll rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.
|
||||
*
|
||||
* @min 0.0
|
||||
* @max 0.01
|
||||
* @decimal 4
|
||||
* @increment 0.0005
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ROLLRATE_D, 0.003f);
|
||||
|
||||
/**
|
||||
* Roll rate feedforward
|
||||
*
|
||||
* Improves tracking performance.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 4
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ROLLRATE_FF, 0.0f);
|
||||
|
||||
/**
|
||||
* Roll rate controller gain
|
||||
*
|
||||
* Global gain of the controller.
|
||||
*
|
||||
* This gain scales the P, I and D terms of the controller:
|
||||
* output = MC_ROLLRATE_K * (MC_ROLLRATE_P * error
|
||||
* + MC_ROLLRATE_I * error_integral
|
||||
* + MC_ROLLRATE_D * error_derivative)
|
||||
* Set MC_ROLLRATE_P=1 to implement a PID in the ideal form.
|
||||
* Set MC_ROLLRATE_K=1 to implement a PID in the parallel form.
|
||||
*
|
||||
* @min 0.01
|
||||
* @max 5.0
|
||||
* @decimal 4
|
||||
* @increment 0.0005
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_ROLLRATE_K, 1.0f);
|
||||
|
||||
/**
|
||||
* Pitch rate P gain
|
||||
*
|
||||
* Pitch rate proportional gain, i.e. control output for angular speed error 1 rad/s.
|
||||
*
|
||||
* @min 0.01
|
||||
* @max 0.6
|
||||
* @decimal 3
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_PITCHRATE_P, 0.15f);
|
||||
|
||||
/**
|
||||
* Pitch rate I gain
|
||||
*
|
||||
* Pitch rate integral gain. Can be set to compensate static thrust difference or gravity center offset.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 3
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_PITCHRATE_I, 0.2f);
|
||||
|
||||
/**
|
||||
* Pitch rate integrator limit
|
||||
*
|
||||
* Pitch rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large pitch moment trim changes.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 2
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_PR_INT_LIM, 0.30f);
|
||||
|
||||
/**
|
||||
* Pitch rate D gain
|
||||
*
|
||||
* Pitch rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 4
|
||||
* @increment 0.0005
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_PITCHRATE_D, 0.003f);
|
||||
|
||||
/**
|
||||
* Pitch rate feedforward
|
||||
*
|
||||
* Improves tracking performance.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 4
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_PITCHRATE_FF, 0.0f);
|
||||
|
||||
/**
|
||||
* Pitch rate controller gain
|
||||
*
|
||||
* Global gain of the controller.
|
||||
*
|
||||
* This gain scales the P, I and D terms of the controller:
|
||||
* output = MC_PITCHRATE_K * (MC_PITCHRATE_P * error
|
||||
* + MC_PITCHRATE_I * error_integral
|
||||
* + MC_PITCHRATE_D * error_derivative)
|
||||
* Set MC_PITCHRATE_P=1 to implement a PID in the ideal form.
|
||||
* Set MC_PITCHRATE_K=1 to implement a PID in the parallel form.
|
||||
*
|
||||
* @min 0.01
|
||||
* @max 5.0
|
||||
* @decimal 4
|
||||
* @increment 0.0005
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_PITCHRATE_K, 1.0f);
|
||||
|
||||
/**
|
||||
* Yaw rate P gain
|
||||
*
|
||||
* Yaw rate proportional gain, i.e. control output for angular speed error 1 rad/s.
|
||||
*
|
||||
* @min 0.0
|
||||
* @max 0.6
|
||||
* @decimal 3
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_YAWRATE_P, 0.2f);
|
||||
|
||||
/**
|
||||
* Yaw rate I gain
|
||||
*
|
||||
* Yaw rate integral gain. Can be set to compensate static thrust difference or gravity center offset.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 3
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_YAWRATE_I, 0.1f);
|
||||
|
||||
/**
|
||||
* Yaw rate integrator limit
|
||||
*
|
||||
* Yaw rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large yaw moment trim changes.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 2
|
||||
* @increment 0.01
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_YR_INT_LIM, 0.30f);
|
||||
|
||||
/**
|
||||
* Yaw rate D gain
|
||||
*
|
||||
* Yaw rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 4
|
||||
* @increment 0.0005
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_YAWRATE_D, 0.0f);
|
||||
|
||||
/**
|
||||
* Yaw rate feedforward
|
||||
*
|
||||
* Improves tracking performance.
|
||||
*
|
||||
* @min 0.0
|
||||
* @decimal 4
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_YAWRATE_FF, 0.0f);
|
||||
|
||||
/**
|
||||
* Yaw rate controller gain
|
||||
*
|
||||
* Global gain of the controller.
|
||||
*
|
||||
* This gain scales the P, I and D terms of the controller:
|
||||
* output = MC_YAWRATE_K * (MC_YAWRATE_P * error
|
||||
* + MC_YAWRATE_I * error_integral
|
||||
* + MC_YAWRATE_D * error_derivative)
|
||||
* Set MC_YAWRATE_P=1 to implement a PID in the ideal form.
|
||||
* Set MC_YAWRATE_K=1 to implement a PID in the parallel form.
|
||||
*
|
||||
* @min 0.01
|
||||
* @max 5.0
|
||||
* @decimal 4
|
||||
* @increment 0.0005
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_YAWRATE_K, 1.0f);
|
||||
|
||||
/**
|
||||
* Battery power level scaler
|
||||
*
|
||||
* This compensates for voltage drop of the battery over time by attempting to
|
||||
* normalize performance across the operating range of the battery. The copter
|
||||
* should constantly behave as if it was fully charged with reduced max acceleration
|
||||
* at lower battery percentages. i.e. if hover is at 0.5 throttle at 100% battery,
|
||||
* it will still be 0.5 at 60% battery.
|
||||
*
|
||||
* @boolean
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_INT32(MC_BAT_SCALE_EN, 0);
|
||||
|
||||
/**
|
||||
* Low pass filter cutoff frequency for yaw torque setpoint
|
||||
*
|
||||
* Reduces vibrations by lowering high frequency torque caused by rotor acceleration.
|
||||
* 0 disables the filter
|
||||
*
|
||||
* @min 0
|
||||
* @max 10
|
||||
* @unit Hz
|
||||
* @decimal 3
|
||||
* @group Multicopter Rate Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(MC_YAW_TQ_CUTOFF, 2.f);
|
||||
232
src/modules/mc_rate_control/mc_rate_control_params.yaml
Normal file
232
src/modules/mc_rate_control/mc_rate_control_params.yaml
Normal file
@ -0,0 +1,232 @@
|
||||
module_name: mc_rate_control
|
||||
parameters:
|
||||
- group: Multicopter Rate Control
|
||||
definitions:
|
||||
MC_ROLLRATE_P:
|
||||
description:
|
||||
short: Roll rate P gain
|
||||
long: Roll rate proportional gain, i.e. control output for angular speed error
|
||||
1 rad/s.
|
||||
type: float
|
||||
default: 0.15
|
||||
min: 0.01
|
||||
max: 0.5
|
||||
decimal: 3
|
||||
increment: 0.01
|
||||
MC_ROLLRATE_I:
|
||||
description:
|
||||
short: Roll rate I gain
|
||||
long: Roll rate integral gain. Can be set to compensate static thrust difference
|
||||
or gravity center offset.
|
||||
type: float
|
||||
default: 0.2
|
||||
min: 0.0
|
||||
decimal: 3
|
||||
increment: 0.01
|
||||
MC_RR_INT_LIM:
|
||||
description:
|
||||
short: Roll rate integrator limit
|
||||
long: Roll rate integrator limit. Can be set to increase the amount of integrator
|
||||
available to counteract disturbances or reduced to improve settling time
|
||||
after large roll moment trim changes.
|
||||
type: float
|
||||
default: 0.3
|
||||
min: 0.0
|
||||
decimal: 2
|
||||
increment: 0.01
|
||||
MC_ROLLRATE_D:
|
||||
description:
|
||||
short: Roll rate D gain
|
||||
long: Roll rate differential gain. Small values help reduce fast oscillations.
|
||||
If value is too big oscillations will appear again.
|
||||
type: float
|
||||
default: 0.003
|
||||
min: 0.0
|
||||
max: 0.01
|
||||
decimal: 4
|
||||
increment: 0.0005
|
||||
MC_ROLLRATE_FF:
|
||||
description:
|
||||
short: Roll rate feedforward
|
||||
long: Improves tracking performance.
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0.0
|
||||
decimal: 4
|
||||
MC_ROLLRATE_K:
|
||||
description:
|
||||
short: Roll rate controller gain
|
||||
long: |-
|
||||
Global gain of the controller.
|
||||
|
||||
This gain scales the P, I and D terms of the controller:
|
||||
output = MC_ROLLRATE_K * (MC_ROLLRATE_P * error
|
||||
+ MC_ROLLRATE_I * error_integral
|
||||
+ MC_ROLLRATE_D * error_derivative)
|
||||
Set MC_ROLLRATE_P=1 to implement a PID in the ideal form.
|
||||
Set MC_ROLLRATE_K=1 to implement a PID in the parallel form.
|
||||
type: float
|
||||
default: 1.0
|
||||
min: 0.01
|
||||
max: 5.0
|
||||
decimal: 4
|
||||
increment: 0.0005
|
||||
MC_PITCHRATE_P:
|
||||
description:
|
||||
short: Pitch rate P gain
|
||||
long: Pitch rate proportional gain, i.e. control output for angular speed
|
||||
error 1 rad/s.
|
||||
type: float
|
||||
default: 0.15
|
||||
min: 0.01
|
||||
max: 0.6
|
||||
decimal: 3
|
||||
increment: 0.01
|
||||
MC_PITCHRATE_I:
|
||||
description:
|
||||
short: Pitch rate I gain
|
||||
long: Pitch rate integral gain. Can be set to compensate static thrust difference
|
||||
or gravity center offset.
|
||||
type: float
|
||||
default: 0.2
|
||||
min: 0.0
|
||||
decimal: 3
|
||||
increment: 0.01
|
||||
MC_PR_INT_LIM:
|
||||
description:
|
||||
short: Pitch rate integrator limit
|
||||
long: Pitch rate integrator limit. Can be set to increase the amount of integrator
|
||||
available to counteract disturbances or reduced to improve settling time
|
||||
after large pitch moment trim changes.
|
||||
type: float
|
||||
default: 0.3
|
||||
min: 0.0
|
||||
decimal: 2
|
||||
increment: 0.01
|
||||
MC_PITCHRATE_D:
|
||||
description:
|
||||
short: Pitch rate D gain
|
||||
long: Pitch rate differential gain. Small values help reduce fast oscillations.
|
||||
If value is too big oscillations will appear again.
|
||||
type: float
|
||||
default: 0.003
|
||||
min: 0.0
|
||||
decimal: 4
|
||||
increment: 0.0005
|
||||
MC_PITCHRATE_FF:
|
||||
description:
|
||||
short: Pitch rate feedforward
|
||||
long: Improves tracking performance.
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0.0
|
||||
decimal: 4
|
||||
MC_PITCHRATE_K:
|
||||
description:
|
||||
short: Pitch rate controller gain
|
||||
long: |-
|
||||
Global gain of the controller.
|
||||
|
||||
This gain scales the P, I and D terms of the controller:
|
||||
output = MC_PITCHRATE_K * (MC_PITCHRATE_P * error
|
||||
+ MC_PITCHRATE_I * error_integral
|
||||
+ MC_PITCHRATE_D * error_derivative)
|
||||
Set MC_PITCHRATE_P=1 to implement a PID in the ideal form.
|
||||
Set MC_PITCHRATE_K=1 to implement a PID in the parallel form.
|
||||
type: float
|
||||
default: 1.0
|
||||
min: 0.01
|
||||
max: 5.0
|
||||
decimal: 4
|
||||
increment: 0.0005
|
||||
MC_YAWRATE_P:
|
||||
description:
|
||||
short: Yaw rate P gain
|
||||
long: Yaw rate proportional gain, i.e. control output for angular speed error
|
||||
1 rad/s.
|
||||
type: float
|
||||
default: 0.2
|
||||
min: 0.0
|
||||
max: 0.6
|
||||
decimal: 3
|
||||
increment: 0.01
|
||||
MC_YAWRATE_I:
|
||||
description:
|
||||
short: Yaw rate I gain
|
||||
long: Yaw rate integral gain. Can be set to compensate static thrust difference
|
||||
or gravity center offset.
|
||||
type: float
|
||||
default: 0.1
|
||||
min: 0.0
|
||||
decimal: 3
|
||||
increment: 0.01
|
||||
MC_YR_INT_LIM:
|
||||
description:
|
||||
short: Yaw rate integrator limit
|
||||
long: Yaw rate integrator limit. Can be set to increase the amount of integrator
|
||||
available to counteract disturbances or reduced to improve settling time
|
||||
after large yaw moment trim changes.
|
||||
type: float
|
||||
default: 0.3
|
||||
min: 0.0
|
||||
decimal: 2
|
||||
increment: 0.01
|
||||
MC_YAWRATE_D:
|
||||
description:
|
||||
short: Yaw rate D gain
|
||||
long: Yaw rate differential gain. Small values help reduce fast oscillations.
|
||||
If value is too big oscillations will appear again.
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0.0
|
||||
decimal: 4
|
||||
increment: 0.0005
|
||||
MC_YAWRATE_FF:
|
||||
description:
|
||||
short: Yaw rate feedforward
|
||||
long: Improves tracking performance.
|
||||
type: float
|
||||
default: 0.0
|
||||
min: 0.0
|
||||
decimal: 4
|
||||
MC_YAWRATE_K:
|
||||
description:
|
||||
short: Yaw rate controller gain
|
||||
long: |-
|
||||
Global gain of the controller.
|
||||
|
||||
This gain scales the P, I and D terms of the controller:
|
||||
output = MC_YAWRATE_K * (MC_YAWRATE_P * error
|
||||
+ MC_YAWRATE_I * error_integral
|
||||
+ MC_YAWRATE_D * error_derivative)
|
||||
Set MC_YAWRATE_P=1 to implement a PID in the ideal form.
|
||||
Set MC_YAWRATE_K=1 to implement a PID in the parallel form.
|
||||
type: float
|
||||
default: 1.0
|
||||
min: 0.01
|
||||
max: 5.0
|
||||
decimal: 4
|
||||
increment: 0.0005
|
||||
MC_BAT_SCALE_EN:
|
||||
description:
|
||||
short: Battery power level scaler
|
||||
long: |-
|
||||
This compensates for voltage drop of the battery over time by attempting to
|
||||
normalize performance across the operating range of the battery. The copter
|
||||
should constantly behave as if it was fully charged with reduced max acceleration
|
||||
at lower battery percentages. i.e. if hover is at 0.5 throttle at 100% battery,
|
||||
it will still be 0.5 at 60% battery.
|
||||
type: boolean
|
||||
default: 0
|
||||
MC_YAW_TQ_CUTOFF:
|
||||
description:
|
||||
short: Low pass filter cutoff frequency for yaw torque setpoint
|
||||
long: |-
|
||||
Reduces vibrations by lowering high frequency torque caused by rotor acceleration.
|
||||
0 disables the filter
|
||||
type: float
|
||||
default: 2.0
|
||||
min: 0
|
||||
max: 10
|
||||
unit: Hz
|
||||
decimal: 3
|
||||
Loading…
x
Reference in New Issue
Block a user