mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
refactor(fw_att_control): convert params.c to module.yaml
Convert 1 parameter file(s) from legacy C format to YAML module configuration.
This commit is contained in:
parent
963a8757df
commit
a0e6e8a240
@ -39,6 +39,8 @@ px4_add_module(
|
||||
FixedwingAttitudeControl.hpp
|
||||
|
||||
fw_wheel_controller.cpp
|
||||
MODULE_CONFIG
|
||||
fw_att_control_params.yaml
|
||||
DEPENDS
|
||||
px4_work_queue
|
||||
)
|
||||
|
||||
@ -1,256 +0,0 @@
|
||||
/****************************************************************************
|
||||
*
|
||||
* Copyright (c) 2013-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 fw_att_control_params.c
|
||||
*
|
||||
* Parameters defined by the fixed-wing attitude control task
|
||||
*
|
||||
* @author Lorenz Meier <lorenz@px4.io>
|
||||
* @author Thomas Gubler <thomas@px4.io>
|
||||
*/
|
||||
|
||||
/**
|
||||
* Attitude Roll Time Constant
|
||||
*
|
||||
* This defines the latency between a roll step input and the achieved setpoint
|
||||
* (inverse to a P gain). Smaller systems may require smaller values.
|
||||
*
|
||||
* @unit s
|
||||
* @min 0.2
|
||||
* @max 1.0
|
||||
* @decimal 2
|
||||
* @increment 0.05
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_R_TC, 0.4f);
|
||||
|
||||
/**
|
||||
* Attitude pitch time constant
|
||||
*
|
||||
* This defines the latency between a pitch step input and the achieved setpoint
|
||||
* (inverse to a P gain). Smaller systems may require smaller values.
|
||||
*
|
||||
* @unit s
|
||||
* @min 0.2
|
||||
* @max 1.0
|
||||
* @decimal 2
|
||||
* @increment 0.05
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_P_TC, 0.4f);
|
||||
|
||||
/**
|
||||
* Maximum positive / up pitch rate setpoint
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 180
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_P_RMAX_POS, 60.0f);
|
||||
|
||||
/**
|
||||
* Maximum negative / down pitch rate setpoint
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 180
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_P_RMAX_NEG, 60.0f);
|
||||
|
||||
/**
|
||||
* Maximum roll rate setpoint
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 180
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_R_RMAX, 70.0f);
|
||||
|
||||
/**
|
||||
* Maximum yaw rate setpoint
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 180
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_Y_RMAX, 50.0f);
|
||||
|
||||
/**
|
||||
* Enable wheel steering controller
|
||||
*
|
||||
* Only enabled during automatic runway takeoff and landing.
|
||||
* In all manual modes the wheel is directly controlled with yaw stick.
|
||||
*
|
||||
* @boolean
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_INT32(FW_W_EN, 0);
|
||||
|
||||
/**
|
||||
* Wheel steering rate proportional gain
|
||||
*
|
||||
* This defines how much the wheel steering input will be commanded depending on the
|
||||
* current body angular rate error.
|
||||
*
|
||||
* @unit %/rad/s
|
||||
* @min 0.0
|
||||
* @max 10
|
||||
* @decimal 3
|
||||
* @increment 0.005
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_WR_P, 0.5f);
|
||||
|
||||
/**
|
||||
* Wheel steering rate integrator gain
|
||||
*
|
||||
* This gain defines how much control response will result out of a steady
|
||||
* state error. It trims any constant error.
|
||||
*
|
||||
* @unit %/rad
|
||||
* @min 0.0
|
||||
* @max 10
|
||||
* @decimal 3
|
||||
* @increment 0.005
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_WR_I, 0.1f);
|
||||
|
||||
/**
|
||||
* Wheel steering rate integrator limit
|
||||
*
|
||||
* @min 0.0
|
||||
* @max 1.0
|
||||
* @decimal 2
|
||||
* @increment 0.05
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_WR_IMAX, 0.4f);
|
||||
|
||||
/**
|
||||
* Maximum wheel steering rate
|
||||
*
|
||||
* This limits the maximum wheel steering rate the controller will output (in degrees per
|
||||
* second).
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0.0
|
||||
* @max 90.0
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_W_RMAX, 30.0f);
|
||||
|
||||
/**
|
||||
* Wheel steering rate feed forward
|
||||
*
|
||||
* @unit %/rad/s
|
||||
* @min 0.0
|
||||
* @max 10
|
||||
* @decimal 2
|
||||
* @increment 0.05
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_WR_FF, 0.2f);
|
||||
|
||||
/**
|
||||
* Pitch setpoint offset (pitch at level flight)
|
||||
*
|
||||
* An airframe specific offset of the pitch setpoint in degrees, the value is
|
||||
* added to the pitch setpoint and should correspond to the pitch at
|
||||
* typical cruise speed of the airframe.
|
||||
*
|
||||
* @unit deg
|
||||
* @min -90.0
|
||||
* @max 90.0
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_PSP_OFF, 0.0f);
|
||||
|
||||
/**
|
||||
* Maximum manually added yaw rate
|
||||
*
|
||||
* This is the maximally added yaw rate setpoint from the yaw stick in any attitude controlled flight mode.
|
||||
* It is added to the yaw rate setpoint generated by the controller for turn coordination.
|
||||
*
|
||||
* @unit deg/s
|
||||
* @min 0
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_MAN_YR_MAX, 30.f);
|
||||
|
||||
/**
|
||||
* Maximum manual roll angle
|
||||
*
|
||||
* Applies to both directions in all manual modes with attitude stabilization
|
||||
*
|
||||
* @unit deg
|
||||
* @min 0.0
|
||||
* @max 90.0
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_MAN_R_MAX, 45.0f);
|
||||
|
||||
/**
|
||||
* Maximum manual pitch angle
|
||||
*
|
||||
* Applies to both directions in all manual modes with attitude stabilization but without altitude control
|
||||
*
|
||||
* @unit deg
|
||||
* @min 0.0
|
||||
* @max 90.0
|
||||
* @decimal 1
|
||||
* @increment 0.5
|
||||
* @group FW Attitude Control
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_MAN_P_MAX, 30.0f);
|
||||
185
src/modules/fw_att_control/fw_att_control_params.yaml
Normal file
185
src/modules/fw_att_control/fw_att_control_params.yaml
Normal file
@ -0,0 +1,185 @@
|
||||
module_name: fw_att_control
|
||||
parameters:
|
||||
- group: FW Attitude Control
|
||||
definitions:
|
||||
FW_R_TC:
|
||||
description:
|
||||
short: Attitude Roll Time Constant
|
||||
long: |-
|
||||
This defines the latency between a roll step input and the achieved setpoint
|
||||
(inverse to a P gain). Smaller systems may require smaller values.
|
||||
type: float
|
||||
default: 0.4
|
||||
unit: s
|
||||
min: 0.2
|
||||
max: 1.0
|
||||
decimal: 2
|
||||
increment: 0.05
|
||||
FW_P_TC:
|
||||
description:
|
||||
short: Attitude pitch time constant
|
||||
long: |-
|
||||
This defines the latency between a pitch step input and the achieved setpoint
|
||||
(inverse to a P gain). Smaller systems may require smaller values.
|
||||
type: float
|
||||
default: 0.4
|
||||
unit: s
|
||||
min: 0.2
|
||||
max: 1.0
|
||||
decimal: 2
|
||||
increment: 0.05
|
||||
FW_P_RMAX_POS:
|
||||
description:
|
||||
short: Maximum positive / up pitch rate setpoint
|
||||
type: float
|
||||
default: 60.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 180
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_P_RMAX_NEG:
|
||||
description:
|
||||
short: Maximum negative / down pitch rate setpoint
|
||||
type: float
|
||||
default: 60.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 180
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_R_RMAX:
|
||||
description:
|
||||
short: Maximum roll rate setpoint
|
||||
type: float
|
||||
default: 70.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 180
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_Y_RMAX:
|
||||
description:
|
||||
short: Maximum yaw rate setpoint
|
||||
type: float
|
||||
default: 50.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 180
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_W_EN:
|
||||
description:
|
||||
short: Enable wheel steering controller
|
||||
long: |-
|
||||
Only enabled during automatic runway takeoff and landing.
|
||||
In all manual modes the wheel is directly controlled with yaw stick.
|
||||
type: boolean
|
||||
default: 0
|
||||
FW_WR_P:
|
||||
description:
|
||||
short: Wheel steering rate proportional gain
|
||||
long: |-
|
||||
This defines how much the wheel steering input will be commanded depending on the
|
||||
current body angular rate error.
|
||||
type: float
|
||||
default: 0.5
|
||||
unit: '%/rad/s'
|
||||
min: 0.0
|
||||
max: 10
|
||||
decimal: 3
|
||||
increment: 0.005
|
||||
FW_WR_I:
|
||||
description:
|
||||
short: Wheel steering rate integrator gain
|
||||
long: |-
|
||||
This gain defines how much control response will result out of a steady
|
||||
state error. It trims any constant error.
|
||||
type: float
|
||||
default: 0.1
|
||||
unit: '%/rad'
|
||||
min: 0.0
|
||||
max: 10
|
||||
decimal: 3
|
||||
increment: 0.005
|
||||
FW_WR_IMAX:
|
||||
description:
|
||||
short: Wheel steering rate integrator limit
|
||||
type: float
|
||||
default: 0.4
|
||||
min: 0.0
|
||||
max: 1.0
|
||||
decimal: 2
|
||||
increment: 0.05
|
||||
FW_W_RMAX:
|
||||
description:
|
||||
short: Maximum wheel steering rate
|
||||
long: |-
|
||||
This limits the maximum wheel steering rate the controller will output (in degrees per
|
||||
second).
|
||||
type: float
|
||||
default: 30.0
|
||||
unit: deg/s
|
||||
min: 0.0
|
||||
max: 90.0
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_WR_FF:
|
||||
description:
|
||||
short: Wheel steering rate feed forward
|
||||
type: float
|
||||
default: 0.2
|
||||
unit: '%/rad/s'
|
||||
min: 0.0
|
||||
max: 10
|
||||
decimal: 2
|
||||
increment: 0.05
|
||||
FW_PSP_OFF:
|
||||
description:
|
||||
short: Pitch setpoint offset (pitch at level flight)
|
||||
long: |-
|
||||
An airframe specific offset of the pitch setpoint in degrees, the value is
|
||||
added to the pitch setpoint and should correspond to the pitch at
|
||||
typical cruise speed of the airframe.
|
||||
type: float
|
||||
default: 0.0
|
||||
unit: deg
|
||||
min: -90.0
|
||||
max: 90.0
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_MAN_YR_MAX:
|
||||
description:
|
||||
short: Maximum manually added yaw rate
|
||||
long: |-
|
||||
This is the maximally added yaw rate setpoint from the yaw stick in any attitude controlled flight mode.
|
||||
It is added to the yaw rate setpoint generated by the controller for turn coordination.
|
||||
type: float
|
||||
default: 30.0
|
||||
unit: deg/s
|
||||
min: 0
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_MAN_R_MAX:
|
||||
description:
|
||||
short: Maximum manual roll angle
|
||||
long: Applies to both directions in all manual modes with attitude stabilization
|
||||
type: float
|
||||
default: 45.0
|
||||
unit: deg
|
||||
min: 0.0
|
||||
max: 90.0
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
FW_MAN_P_MAX:
|
||||
description:
|
||||
short: Maximum manual pitch angle
|
||||
long: Applies to both directions in all manual modes with attitude stabilization
|
||||
but without altitude control
|
||||
type: float
|
||||
default: 30.0
|
||||
unit: deg
|
||||
min: 0.0
|
||||
max: 90.0
|
||||
decimal: 1
|
||||
increment: 0.5
|
||||
Loading…
x
Reference in New Issue
Block a user