From 1d544e028d6041130bd673b69d74e04ea9357547 Mon Sep 17 00:00:00 2001 From: Roman Bapst Date: Thu, 7 May 2015 15:04:59 +0200 Subject: [PATCH 1/3] mc_pos_control: always update previous velocity to avoid spikes due to differentiation --- src/modules/mc_pos_control/mc_pos_control_main.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/modules/mc_pos_control/mc_pos_control_main.cpp b/src/modules/mc_pos_control/mc_pos_control_main.cpp index 0c8b040c1c..e5ea4d1047 100644 --- a/src/modules/mc_pos_control/mc_pos_control_main.cpp +++ b/src/modules/mc_pos_control/mc_pos_control_main.cpp @@ -1102,7 +1102,6 @@ MulticopterPositionControl::task_main() /* derivative of velocity error, not includes setpoint acceleration */ math::Vector<3> vel_err_d = (_sp_move_rate - _vel).emult(_params.pos_p) - (_vel - _vel_prev) / dt; - _vel_prev = _vel; /* thrust vector in NED frame */ math::Vector<3> thrust_sp = vel_err.emult(_params.vel_p) + vel_err_d.emult(_params.vel_d) + thrust_int; @@ -1406,6 +1405,9 @@ MulticopterPositionControl::task_main() reset_yaw_sp = true; } + /* update previous velocity for velocity controller D part */ + _vel_prev = _vel; + /* publish attitude setpoint * Do not publish if offboard is enabled but position/velocity control is disabled, * in this case the attitude setpoint is published by the mavlink app From e400ec586d0925fc3137637a78b5156f499cfd29 Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Wed, 13 May 2015 15:18:50 +0200 Subject: [PATCH 2/3] multiplatform att controller: Rename params to prevent mixup with MC params --- .../mc_att_control.cpp | 34 +++++++++--------- .../mc_att_control_params.c | 34 +++++++++--------- .../mc_att_control_params.h | 36 +++++++++---------- 3 files changed, 52 insertions(+), 52 deletions(-) diff --git a/src/modules/mc_att_control_multiplatform/mc_att_control.cpp b/src/modules/mc_att_control_multiplatform/mc_att_control.cpp index b5a551109f..9e9c8ad5ff 100644 --- a/src/modules/mc_att_control_multiplatform/mc_att_control.cpp +++ b/src/modules/mc_att_control_multiplatform/mc_att_control.cpp @@ -75,23 +75,23 @@ MulticopterAttitudeControl::MulticopterAttitudeControl() : /* parameters */ _params_handles({ - .roll_p = px4::ParameterFloat("MC_ROLL_P", PARAM_MC_ROLL_P_DEFAULT), - .roll_rate_p = px4::ParameterFloat("MC_ROLLRATE_P", PARAM_MC_ROLLRATE_P_DEFAULT), - .roll_rate_i = px4::ParameterFloat("MC_ROLLRATE_I", PARAM_MC_ROLLRATE_I_DEFAULT), - .roll_rate_d = px4::ParameterFloat("MC_ROLLRATE_D", PARAM_MC_ROLLRATE_D_DEFAULT), - .pitch_p = px4::ParameterFloat("MC_PITCH_P", PARAM_MC_PITCH_P_DEFAULT), - .pitch_rate_p = px4::ParameterFloat("MC_PITCHRATE_P", PARAM_MC_PITCHRATE_P_DEFAULT), - .pitch_rate_i = px4::ParameterFloat("MC_PITCHRATE_I", PARAM_MC_PITCHRATE_I_DEFAULT), - .pitch_rate_d = px4::ParameterFloat("MC_PITCHRATE_D", PARAM_MC_PITCHRATE_D_DEFAULT), - .yaw_p = px4::ParameterFloat("MC_YAW_P", PARAM_MC_YAW_P_DEFAULT), - .yaw_rate_p = px4::ParameterFloat("MC_YAWRATE_P", PARAM_MC_YAWRATE_P_DEFAULT), - .yaw_rate_i = px4::ParameterFloat("MC_YAWRATE_I", PARAM_MC_YAWRATE_I_DEFAULT), - .yaw_rate_d = px4::ParameterFloat("MC_YAWRATE_D", PARAM_MC_YAWRATE_D_DEFAULT), - .yaw_ff = px4::ParameterFloat("MC_YAW_FF", PARAM_MC_YAW_FF_DEFAULT), - .yaw_rate_max = px4::ParameterFloat("MC_YAWRATE_MAX", PARAM_MC_YAWRATE_MAX_DEFAULT), - .acro_roll_max = px4::ParameterFloat("MC_ACRO_R_MAX", PARAM_MC_ACRO_R_MAX_DEFAULT), - .acro_pitch_max = px4::ParameterFloat("MC_ACRO_P_MAX", PARAM_MC_ACRO_P_MAX_DEFAULT), - .acro_yaw_max = px4::ParameterFloat("MC_ACRO_Y_MAX", PARAM_MC_ACRO_Y_MAX_DEFAULT) + .roll_p = px4::ParameterFloat("MP_ROLL_P", PARAM_MP_ROLL_P_DEFAULT), + .roll_rate_p = px4::ParameterFloat("MP_ROLLRATE_P", PARAM_MP_ROLLRATE_P_DEFAULT), + .roll_rate_i = px4::ParameterFloat("MP_ROLLRATE_I", PARAM_MP_ROLLRATE_I_DEFAULT), + .roll_rate_d = px4::ParameterFloat("MP_ROLLRATE_D", PARAM_MP_ROLLRATE_D_DEFAULT), + .pitch_p = px4::ParameterFloat("MP_PITCH_P", PARAM_MP_PITCH_P_DEFAULT), + .pitch_rate_p = px4::ParameterFloat("MP_PITCHRATE_P", PARAM_MP_PITCHRATE_P_DEFAULT), + .pitch_rate_i = px4::ParameterFloat("MP_PITCHRATE_I", PARAM_MP_PITCHRATE_I_DEFAULT), + .pitch_rate_d = px4::ParameterFloat("MP_PITCHRATE_D", PARAM_MP_PITCHRATE_D_DEFAULT), + .yaw_p = px4::ParameterFloat("MP_YAW_P", PARAM_MP_YAW_P_DEFAULT), + .yaw_rate_p = px4::ParameterFloat("MP_YAWRATE_P", PARAM_MP_YAWRATE_P_DEFAULT), + .yaw_rate_i = px4::ParameterFloat("MP_YAWRATE_I", PARAM_MP_YAWRATE_I_DEFAULT), + .yaw_rate_d = px4::ParameterFloat("MP_YAWRATE_D", PARAM_MP_YAWRATE_D_DEFAULT), + .yaw_ff = px4::ParameterFloat("MP_YAW_FF", PARAM_MP_YAW_FF_DEFAULT), + .yaw_rate_max = px4::ParameterFloat("MP_YAWRATE_MAX", PARAM_MP_YAWRATE_MAX_DEFAULT), + .acro_roll_max = px4::ParameterFloat("MP_ACRO_R_MAX", PARAM_MP_ACRO_R_MAX_DEFAULT), + .acro_pitch_max = px4::ParameterFloat("MP_ACRO_P_MAX", PARAM_MP_ACRO_P_MAX_DEFAULT), + .acro_yaw_max = px4::ParameterFloat("MP_ACRO_Y_MAX", PARAM_MP_ACRO_Y_MAX_DEFAULT) }), /* performance counters */ diff --git a/src/modules/mc_att_control_multiplatform/mc_att_control_params.c b/src/modules/mc_att_control_multiplatform/mc_att_control_params.c index 395ae83b02..9c6ac5dc73 100644 --- a/src/modules/mc_att_control_multiplatform/mc_att_control_params.c +++ b/src/modules/mc_att_control_multiplatform/mc_att_control_params.c @@ -52,7 +52,7 @@ * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_ROLL_P); +PX4_PARAM_DEFINE_FLOAT(MP_ROLL_P); /** * Roll rate P gain @@ -62,7 +62,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_ROLL_P); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_ROLLRATE_P); +PX4_PARAM_DEFINE_FLOAT(MP_ROLLRATE_P); /** * Roll rate I gain @@ -72,7 +72,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_ROLLRATE_P); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_ROLLRATE_I); +PX4_PARAM_DEFINE_FLOAT(MP_ROLLRATE_I); /** * Roll rate D gain @@ -82,7 +82,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_ROLLRATE_I); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_ROLLRATE_D); +PX4_PARAM_DEFINE_FLOAT(MP_ROLLRATE_D); /** * Pitch P gain @@ -93,7 +93,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_ROLLRATE_D); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_PITCH_P); +PX4_PARAM_DEFINE_FLOAT(MP_PITCH_P); /** * Pitch rate P gain @@ -103,7 +103,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_PITCH_P); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_PITCHRATE_P); +PX4_PARAM_DEFINE_FLOAT(MP_PITCHRATE_P); /** * Pitch rate I gain @@ -113,7 +113,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_PITCHRATE_P); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_PITCHRATE_I); +PX4_PARAM_DEFINE_FLOAT(MP_PITCHRATE_I); /** * Pitch rate D gain @@ -123,7 +123,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_PITCHRATE_I); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_PITCHRATE_D); +PX4_PARAM_DEFINE_FLOAT(MP_PITCHRATE_D); /** * Yaw P gain @@ -134,7 +134,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_PITCHRATE_D); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_YAW_P); +PX4_PARAM_DEFINE_FLOAT(MP_YAW_P); /** * Yaw rate P gain @@ -144,7 +144,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_YAW_P); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_P); +PX4_PARAM_DEFINE_FLOAT(MP_YAWRATE_P); /** * Yaw rate I gain @@ -154,7 +154,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_P); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_I); +PX4_PARAM_DEFINE_FLOAT(MP_YAWRATE_I); /** * Yaw rate D gain @@ -164,7 +164,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_I); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_D); +PX4_PARAM_DEFINE_FLOAT(MP_YAWRATE_D); /** * Yaw feed forward @@ -175,7 +175,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_D); * @max 1.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_YAW_FF); +PX4_PARAM_DEFINE_FLOAT(MP_YAW_FF); /** * Max yaw rate @@ -187,7 +187,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_YAW_FF); * @max 360.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_MAX); +PX4_PARAM_DEFINE_FLOAT(MP_YAWRATE_MAX); /** * Max acro roll rate @@ -197,7 +197,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_YAWRATE_MAX); * @max 360.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_ACRO_R_MAX); +PX4_PARAM_DEFINE_FLOAT(MP_ACRO_R_MAX); /** * Max acro pitch rate @@ -207,7 +207,7 @@ PX4_PARAM_DEFINE_FLOAT(MC_ACRO_R_MAX); * @max 360.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_ACRO_P_MAX); +PX4_PARAM_DEFINE_FLOAT(MP_ACRO_P_MAX); /** * Max acro yaw rate @@ -216,4 +216,4 @@ PX4_PARAM_DEFINE_FLOAT(MC_ACRO_P_MAX); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MC_ACRO_Y_MAX); +PX4_PARAM_DEFINE_FLOAT(MP_ACRO_Y_MAX); diff --git a/src/modules/mc_att_control_multiplatform/mc_att_control_params.h b/src/modules/mc_att_control_multiplatform/mc_att_control_params.h index ff962dbf1f..c3b71715bb 100644 --- a/src/modules/mc_att_control_multiplatform/mc_att_control_params.h +++ b/src/modules/mc_att_control_multiplatform/mc_att_control_params.h @@ -33,7 +33,7 @@ ****************************************************************************/ /** - * @file mc_att_control_params.h + * @file MP_att_control_params.h * Parameters for multicopter attitude controller. * * @author Tobias Naegeli @@ -43,20 +43,20 @@ */ #pragma once -#define PARAM_MC_ROLL_P_DEFAULT 6.0f -#define PARAM_MC_ROLLRATE_P_DEFAULT 0.1f -#define PARAM_MC_ROLLRATE_I_DEFAULT 0.0f -#define PARAM_MC_ROLLRATE_D_DEFAULT 0.002f -#define PARAM_MC_PITCH_P_DEFAULT 6.0f -#define PARAM_MC_PITCHRATE_P_DEFAULT 0.1f -#define PARAM_MC_PITCHRATE_I_DEFAULT 0.0f -#define PARAM_MC_PITCHRATE_D_DEFAULT 0.002f -#define PARAM_MC_YAW_P_DEFAULT 2.0f -#define PARAM_MC_YAWRATE_P_DEFAULT 0.3f -#define PARAM_MC_YAWRATE_I_DEFAULT 0.0f -#define PARAM_MC_YAWRATE_D_DEFAULT 0.0f -#define PARAM_MC_YAW_FF_DEFAULT 0.5f -#define PARAM_MC_YAWRATE_MAX_DEFAULT 120.0f -#define PARAM_MC_ACRO_R_MAX_DEFAULT 35.0f -#define PARAM_MC_ACRO_P_MAX_DEFAULT 35.0f -#define PARAM_MC_ACRO_Y_MAX_DEFAULT 120.0f +#define PARAM_MP_ROLL_P_DEFAULT 6.0f +#define PARAM_MP_ROLLRATE_P_DEFAULT 0.1f +#define PARAM_MP_ROLLRATE_I_DEFAULT 0.0f +#define PARAM_MP_ROLLRATE_D_DEFAULT 0.002f +#define PARAM_MP_PITCH_P_DEFAULT 6.0f +#define PARAM_MP_PITCHRATE_P_DEFAULT 0.1f +#define PARAM_MP_PITCHRATE_I_DEFAULT 0.0f +#define PARAM_MP_PITCHRATE_D_DEFAULT 0.002f +#define PARAM_MP_YAW_P_DEFAULT 2.0f +#define PARAM_MP_YAWRATE_P_DEFAULT 0.3f +#define PARAM_MP_YAWRATE_I_DEFAULT 0.0f +#define PARAM_MP_YAWRATE_D_DEFAULT 0.0f +#define PARAM_MP_YAW_FF_DEFAULT 0.5f +#define PARAM_MP_YAWRATE_MAX_DEFAULT 120.0f +#define PARAM_MP_ACRO_R_MAX_DEFAULT 35.0f +#define PARAM_MP_ACRO_P_MAX_DEFAULT 35.0f +#define PARAM_MP_ACRO_Y_MAX_DEFAULT 120.0f From efb60ab7794579d4cf1b2684c30fb4a13108c0fc Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Wed, 13 May 2015 15:19:16 +0200 Subject: [PATCH 3/3] multiplatform pos controller: Rename params to prevent mixup with MPC params --- .../mc_pos_control.cpp | 40 +++++++++---------- .../mc_pos_control_params.c | 40 +++++++++---------- .../mc_pos_control_params.h | 40 +++++++++---------- 3 files changed, 60 insertions(+), 60 deletions(-) diff --git a/src/modules/mc_pos_control_multiplatform/mc_pos_control.cpp b/src/modules/mc_pos_control_multiplatform/mc_pos_control.cpp index d135eecfbb..90281d2bc9 100644 --- a/src/modules/mc_pos_control_multiplatform/mc_pos_control.cpp +++ b/src/modules/mc_pos_control_multiplatform/mc_pos_control.cpp @@ -69,26 +69,26 @@ MulticopterPositionControl::MulticopterPositionControl() : /* parameters */ _params_handles({ - .thr_min = px4::ParameterFloat("MPC_THR_MIN", PARAM_MPC_THR_MIN_DEFAULT), - .thr_max = px4::ParameterFloat("MPC_THR_MAX", PARAM_MPC_THR_MAX_DEFAULT), - .z_p = px4::ParameterFloat("MPC_Z_P", PARAM_MPC_Z_P_DEFAULT), - .z_vel_p = px4::ParameterFloat("MPC_Z_VEL_P", PARAM_MPC_Z_VEL_P_DEFAULT), - .z_vel_i = px4::ParameterFloat("MPC_Z_VEL_I", PARAM_MPC_Z_VEL_I_DEFAULT), - .z_vel_d = px4::ParameterFloat("MPC_Z_VEL_D", PARAM_MPC_Z_VEL_D_DEFAULT), - .z_vel_max = px4::ParameterFloat("MPC_Z_VEL_MAX", PARAM_MPC_Z_VEL_MAX_DEFAULT), - .z_ff = px4::ParameterFloat("MPC_Z_FF", PARAM_MPC_Z_FF_DEFAULT), - .xy_p = px4::ParameterFloat("MPC_XY_P", PARAM_MPC_XY_P_DEFAULT), - .xy_vel_p = px4::ParameterFloat("MPC_XY_VEL_P", PARAM_MPC_XY_VEL_P_DEFAULT), - .xy_vel_i = px4::ParameterFloat("MPC_XY_VEL_I", PARAM_MPC_XY_VEL_I_DEFAULT), - .xy_vel_d = px4::ParameterFloat("MPC_XY_VEL_D", PARAM_MPC_XY_VEL_D_DEFAULT), - .xy_vel_max = px4::ParameterFloat("MPC_XY_VEL_MAX", PARAM_MPC_XY_VEL_MAX_DEFAULT), - .xy_ff = px4::ParameterFloat("MPC_XY_FF", PARAM_MPC_XY_FF_DEFAULT), - .tilt_max_air = px4::ParameterFloat("MPC_TILTMAX_AIR", PARAM_MPC_TILTMAX_AIR_DEFAULT), - .land_speed = px4::ParameterFloat("MPC_LAND_SPEED", PARAM_MPC_LAND_SPEED_DEFAULT), - .tilt_max_land = px4::ParameterFloat("MPC_TILTMAX_LND", PARAM_MPC_TILTMAX_LND_DEFAULT), - .man_roll_max = px4::ParameterFloat("MPC_MAN_R_MAX", PARAM_MPC_MAN_R_MAX_DEFAULT), - .man_pitch_max = px4::ParameterFloat("MPC_MAN_P_MAX", PARAM_MPC_MAN_P_MAX_DEFAULT), - .man_yaw_max = px4::ParameterFloat("MPC_MAN_Y_MAX", PARAM_MPC_MAN_Y_MAX_DEFAULT), + .thr_min = px4::ParameterFloat("MPP_THR_MIN", PARAM_MPP_THR_MIN_DEFAULT), + .thr_max = px4::ParameterFloat("MPP_THR_MAX", PARAM_MPP_THR_MAX_DEFAULT), + .z_p = px4::ParameterFloat("MPP_Z_P", PARAM_MPP_Z_P_DEFAULT), + .z_vel_p = px4::ParameterFloat("MPP_Z_VEL_P", PARAM_MPP_Z_VEL_P_DEFAULT), + .z_vel_i = px4::ParameterFloat("MPP_Z_VEL_I", PARAM_MPP_Z_VEL_I_DEFAULT), + .z_vel_d = px4::ParameterFloat("MPP_Z_VEL_D", PARAM_MPP_Z_VEL_D_DEFAULT), + .z_vel_max = px4::ParameterFloat("MPP_Z_VEL_MAX", PARAM_MPP_Z_VEL_MAX_DEFAULT), + .z_ff = px4::ParameterFloat("MPP_Z_FF", PARAM_MPP_Z_FF_DEFAULT), + .xy_p = px4::ParameterFloat("MPP_XY_P", PARAM_MPP_XY_P_DEFAULT), + .xy_vel_p = px4::ParameterFloat("MPP_XY_VEL_P", PARAM_MPP_XY_VEL_P_DEFAULT), + .xy_vel_i = px4::ParameterFloat("MPP_XY_VEL_I", PARAM_MPP_XY_VEL_I_DEFAULT), + .xy_vel_d = px4::ParameterFloat("MPP_XY_VEL_D", PARAM_MPP_XY_VEL_D_DEFAULT), + .xy_vel_max = px4::ParameterFloat("MPP_XY_VEL_MAX", PARAM_MPP_XY_VEL_MAX_DEFAULT), + .xy_ff = px4::ParameterFloat("MPP_XY_FF", PARAM_MPP_XY_FF_DEFAULT), + .tilt_max_air = px4::ParameterFloat("MPP_TILTMAX_AIR", PARAM_MPP_TILTMAX_AIR_DEFAULT), + .land_speed = px4::ParameterFloat("MPP_LAND_SPEED", PARAM_MPP_LAND_SPEED_DEFAULT), + .tilt_max_land = px4::ParameterFloat("MPP_TILTMAX_LND", PARAM_MPP_TILTMAX_LND_DEFAULT), + .man_roll_max = px4::ParameterFloat("MPP_MAN_R_MAX", PARAM_MPP_MAN_R_MAX_DEFAULT), + .man_pitch_max = px4::ParameterFloat("MPP_MAN_P_MAX", PARAM_MPP_MAN_P_MAX_DEFAULT), + .man_yaw_max = px4::ParameterFloat("MPP_MAN_Y_MAX", PARAM_MPP_MAN_Y_MAX_DEFAULT), .mc_att_yaw_p = px4::ParameterFloat("MC_YAW_P", PARAM_MC_YAW_P_DEFAULT) }), _ref_alt(0.0f), diff --git a/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.c b/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.c index 709085662a..1b3c5b7e93 100644 --- a/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.c +++ b/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.c @@ -52,7 +52,7 @@ * @max 1.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_THR_MIN); +PX4_PARAM_DEFINE_FLOAT(MPP_THR_MIN); /** * Maximum thrust @@ -63,7 +63,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_THR_MIN); * @max 1.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_THR_MAX); +PX4_PARAM_DEFINE_FLOAT(MPP_THR_MAX); /** * Proportional gain for vertical position error @@ -71,7 +71,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_THR_MAX); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_Z_P); +PX4_PARAM_DEFINE_FLOAT(MPP_Z_P); /** * Proportional gain for vertical velocity error @@ -79,7 +79,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_Z_P); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_P); +PX4_PARAM_DEFINE_FLOAT(MPP_Z_VEL_P); /** * Integral gain for vertical velocity error @@ -89,7 +89,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_P); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_I); +PX4_PARAM_DEFINE_FLOAT(MPP_Z_VEL_I); /** * Differential gain for vertical velocity error @@ -97,7 +97,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_I); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_D); +PX4_PARAM_DEFINE_FLOAT(MPP_Z_VEL_D); /** * Maximum vertical velocity @@ -108,7 +108,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_D); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_MAX); +PX4_PARAM_DEFINE_FLOAT(MPP_Z_VEL_MAX); /** * Vertical velocity feed forward @@ -119,7 +119,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_Z_VEL_MAX); * @max 1.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_Z_FF); +PX4_PARAM_DEFINE_FLOAT(MPP_Z_FF); /** * Proportional gain for horizontal position error @@ -127,7 +127,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_Z_FF); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_XY_P); +PX4_PARAM_DEFINE_FLOAT(MPP_XY_P); /** * Proportional gain for horizontal velocity error @@ -135,7 +135,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_XY_P); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_P); +PX4_PARAM_DEFINE_FLOAT(MPP_XY_VEL_P); /** * Integral gain for horizontal velocity error @@ -145,7 +145,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_P); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_I); +PX4_PARAM_DEFINE_FLOAT(MPP_XY_VEL_I); /** * Differential gain for horizontal velocity error. Small values help reduce fast oscillations. If value is too big oscillations will appear again. @@ -153,7 +153,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_I); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_D); +PX4_PARAM_DEFINE_FLOAT(MPP_XY_VEL_D); /** * Maximum horizontal velocity @@ -164,7 +164,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_D); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_MAX); +PX4_PARAM_DEFINE_FLOAT(MPP_XY_VEL_MAX); /** * Horizontal velocity feed forward @@ -175,7 +175,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_XY_VEL_MAX); * @max 1.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_XY_FF); +PX4_PARAM_DEFINE_FLOAT(MPP_XY_FF); /** * Maximum tilt angle in air @@ -187,7 +187,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_XY_FF); * @max 90.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_TILTMAX_AIR); +PX4_PARAM_DEFINE_FLOAT(MPP_TILTMAX_AIR); /** * Maximum tilt during landing @@ -199,7 +199,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_TILTMAX_AIR); * @max 90.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_TILTMAX_LND); +PX4_PARAM_DEFINE_FLOAT(MPP_TILTMAX_LND); /** * Landing descend rate @@ -208,7 +208,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_TILTMAX_LND); * @min 0.0 * @group Multicopter Position Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_LAND_SPEED); +PX4_PARAM_DEFINE_FLOAT(MPP_LAND_SPEED); /** * Max manual roll @@ -218,7 +218,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_LAND_SPEED); * @max 90.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_MAN_R_MAX); +PX4_PARAM_DEFINE_FLOAT(MPP_MAN_R_MAX); /** * Max manual pitch @@ -228,7 +228,7 @@ PX4_PARAM_DEFINE_FLOAT(MPC_MAN_R_MAX); * @max 90.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_MAN_P_MAX); +PX4_PARAM_DEFINE_FLOAT(MPP_MAN_P_MAX); /** * Max manual yaw rate @@ -237,5 +237,5 @@ PX4_PARAM_DEFINE_FLOAT(MPC_MAN_P_MAX); * @min 0.0 * @group Multicopter Attitude Control */ -PX4_PARAM_DEFINE_FLOAT(MPC_MAN_Y_MAX); +PX4_PARAM_DEFINE_FLOAT(MPP_MAN_Y_MAX); diff --git a/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.h b/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.h index 8c8b707ae0..d9c9fb5957 100644 --- a/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.h +++ b/src/modules/mc_pos_control_multiplatform/mc_pos_control_params.h @@ -41,24 +41,24 @@ #pragma once -#define PARAM_MPC_THR_MIN_DEFAULT 0.1f -#define PARAM_MPC_THR_MAX_DEFAULT 1.0f -#define PARAM_MPC_Z_P_DEFAULT 1.0f -#define PARAM_MPC_Z_VEL_P_DEFAULT 0.1f -#define PARAM_MPC_Z_VEL_I_DEFAULT 0.02f -#define PARAM_MPC_Z_VEL_D_DEFAULT 0.0f -#define PARAM_MPC_Z_VEL_MAX_DEFAULT 5.0f -#define PARAM_MPC_Z_FF_DEFAULT 0.5f -#define PARAM_MPC_XY_P_DEFAULT 1.0f -#define PARAM_MPC_XY_VEL_P_DEFAULT 0.1f -#define PARAM_MPC_XY_VEL_I_DEFAULT 0.02f -#define PARAM_MPC_XY_VEL_D_DEFAULT 0.01f -#define PARAM_MPC_XY_VEL_MAX_DEFAULT 5.0f -#define PARAM_MPC_XY_FF_DEFAULT 0.5f -#define PARAM_MPC_TILTMAX_AIR_DEFAULT 45.0f -#define PARAM_MPC_TILTMAX_LND_DEFAULT 15.0f -#define PARAM_MPC_LAND_SPEED_DEFAULT 1.0f -#define PARAM_MPC_MAN_R_MAX_DEFAULT 35.0f -#define PARAM_MPC_MAN_P_MAX_DEFAULT 35.0f -#define PARAM_MPC_MAN_Y_MAX_DEFAULT 120.0f +#define PARAM_MPP_THR_MIN_DEFAULT 0.1f +#define PARAM_MPP_THR_MAX_DEFAULT 1.0f +#define PARAM_MPP_Z_P_DEFAULT 1.0f +#define PARAM_MPP_Z_VEL_P_DEFAULT 0.1f +#define PARAM_MPP_Z_VEL_I_DEFAULT 0.02f +#define PARAM_MPP_Z_VEL_D_DEFAULT 0.0f +#define PARAM_MPP_Z_VEL_MAX_DEFAULT 5.0f +#define PARAM_MPP_Z_FF_DEFAULT 0.5f +#define PARAM_MPP_XY_P_DEFAULT 1.0f +#define PARAM_MPP_XY_VEL_P_DEFAULT 0.1f +#define PARAM_MPP_XY_VEL_I_DEFAULT 0.02f +#define PARAM_MPP_XY_VEL_D_DEFAULT 0.01f +#define PARAM_MPP_XY_VEL_MAX_DEFAULT 5.0f +#define PARAM_MPP_XY_FF_DEFAULT 0.5f +#define PARAM_MPP_TILTMAX_AIR_DEFAULT 45.0f +#define PARAM_MPP_TILTMAX_LND_DEFAULT 15.0f +#define PARAM_MPP_LAND_SPEED_DEFAULT 1.0f +#define PARAM_MPP_MAN_R_MAX_DEFAULT 35.0f +#define PARAM_MPP_MAN_P_MAX_DEFAULT 35.0f +#define PARAM_MPP_MAN_Y_MAX_DEFAULT 120.0f