GOBJECT(button, "BTN_", AP_Button), // @Group: // @Path: Parameters.cpp GOBJECT(g2, "", ParametersG2), AP_VAREND }; /* 2nd group of parameters */ const AP_Param::GroupInfo ParametersG2::var_info[] = { // @Group: STAT // @Path: ../libraries/AP_Stats/AP_Stats.cpp AP_SUBGROUPINFO(stats, "STAT", 1, ParametersG2, AP_Stats), // @Group: SYSID_ENFORCE // @DisplayName: GCS sysid enforcement // @Description: This controls whether packets from other than the expected GCS system ID will be accepted // @Values: 0:NotEnforced,1:Enforced // @User: Advanced AP_GROUPINFO("SYSID_ENFORCE", 2, ParametersG2, sysid_enforce, 0), AP_GROUPEND }; /* This is a conversion table from old parameter values to new
// @Description: The amount of flaps (as a percentage) to apply in the landing approach and flare of an automatic landing // @Range: 0 100 // @Units: % // @User: Advanced AP_GROUPINFO("FLAP_PERCNT", 13, AP_Landing, flap_percent, 0), // @Param: TYPE // @DisplayName: Auto-landing type // @Description: Specifies the auto-landing type to use // @Values: 0:Standard Glide Slope // @User: Standard AP_GROUPINFO("TYPE", 14, AP_Landing, type, TYPE_STANDARD_GLIDE_SLOPE), // @Group: DS_ // @Path: AP_Landing_Deepstall.cpp AP_SUBGROUPINFO(deepstall, "DS_", 15, AP_Landing, AP_Landing_Deepstall), AP_GROUPEND }; // constructor AP_Landing::AP_Landing(AP_Mission &_mission, AP_AHRS &_ahrs, AP_SpdHgtControl *_SpdHgt_Controller, AP_Navigation *_nav_controller, AP_Vehicle::FixedWing &_aparm, set_target_altitude_proportion_fn_t _set_target_altitude_proportion_fn, constrain_target_altitude_location_fn_t _constrain_target_altitude_location_fn, adjusted_altitude_cm_fn_t _adjusted_altitude_cm_fn, adjusted_relative_altitude_cm_fn_t _adjusted_relative_altitude_cm_fn, disarm_if_autoland_complete_fn_t _disarm_if_autoland_complete_fn, update_flight_stage_fn_t _update_flight_stage_fn) : mission(_mission) ,ahrs(_ahrs) ,SpdHgt_Controller(_SpdHgt_Controller)
// @DisplayName: Transmitter switch screen minimum pwm // @Description: This sets the PWM lower limit for this screen // @Range: 900 2100 // @User: Standard AP_GROUPINFO("CHAN_MIN", 2, AP_OSD_Screen, channel_min, 900), // @Param: CHAN_MAX // @DisplayName: Transmitter switch screen maximum pwm // @Description: This sets the PWM upper limit for this screen // @Range: 900 2100 // @User: Standard AP_GROUPINFO("CHAN_MAX", 3, AP_OSD_Screen, channel_max, 2100), // @Group: ALTITUDE // @Path: AP_OSD_Setting.cpp AP_SUBGROUPINFO(altitude, "ALTITUDE", 4, AP_OSD_Screen, AP_OSD_Setting), // @Group: BATVOLT // @Path: AP_OSD_Setting.cpp AP_SUBGROUPINFO(bat_volt, "BAT_VOLT", 5, AP_OSD_Screen, AP_OSD_Setting), // @Group: RSSI // @Path: AP_OSD_Setting.cpp AP_SUBGROUPINFO(rssi, "RSSI", 6, AP_OSD_Screen, AP_OSD_Setting), // @Group: CURRENT // @Path: AP_OSD_Setting.cpp AP_SUBGROUPINFO(current, "CURRENT", 7, AP_OSD_Screen, AP_OSD_Setting), // @Group: BATUSED // @Path: AP_OSD_Setting.cpp
// @Param: _ACC_XY_FILT // @DisplayName: XY Acceleration filter cutoff frequency // @Description: Lower values will slow the response of the navigation controller and reduce twitchiness // @Units: Hz // @Range: 0.5 5 // @Increment: 0.1 // @User: Advanced AP_GROUPINFO("_ACC_XY_FILT", 1, AC_PosControl, _accel_xy_filt_hz, POSCONTROL_ACCEL_FILTER_HZ), // @Param: _POSZ_P // @DisplayName: Position (vertical) controller P gain // @Description: Position (vertical) controller P gain. Converts the difference between the desired altitude and actual altitude into a climb or descent rate which is passed to the throttle rate controller // @Range: 1.000 3.000 // @User: Standard AP_SUBGROUPINFO(_p_pos_z, "_POSZ_", 2, AC_PosControl, AC_P), // @Param: _VELZ_P // @DisplayName: Velocity (vertical) controller P gain // @Description: Velocity (vertical) controller P gain. Converts the difference between desired vertical speed and actual speed into a desired acceleration that is passed to the throttle acceleration controller // @Range: 1.000 8.000 // @User: Standard AP_SUBGROUPINFO(_p_vel_z, "_VELZ_", 3, AC_PosControl, AC_P), // @Param: _ACCZ_P // @DisplayName: Acceleration (vertical) controller P gain // @Description: Acceleration (vertical) controller P gain. Converts the difference between desired vertical acceleration and actual acceleration into a motor output // @Range: 0.500 1.500 // @Increment: 0.05 // @User: Standard
// @Range: 0 90 // @Units degrees per second // @User: Advanced AP_GROUPINFO("YAW_LIM", 12, AP_Landing_Deepstall, yaw_rate_limit, 10), // @Param: L1_TCON // @DisplayName: Deepstall L1 time constant // @Description: Time constant for deepstall L1 control // @Range: 0 1 // @Units seconds // @User: Advanced AP_GROUPINFO("L1_TCON", 13, AP_Landing_Deepstall, time_constant, 0.4), // @Group: DS_ // @Path: ../PID/PID.cpp AP_SUBGROUPINFO(ds_PID, "", 14, AP_Landing_Deepstall, PID), // @Param: ABORTALT // @DisplayName: Deepstall minimum abort altitude // @Description: The minimum altitude which the aircraft must be above to abort a deepstall landing // @Range: 0 50 // @Units meters // @User: Advanced AP_GROUPINFO("ABORTALT", 15, AP_Landing_Deepstall, min_abort_alt, 0.0f), // @Param: AIL_SCL // @DisplayName: Aileron landing gain scalaing // @Description: A scalar to reduce or increase the aileron control // @Range: 0 2.0 // @User: Advanced AP_GROUPINFO("AIL_SCL", 16, AP_Landing_Deepstall, aileron_scalar, 1.0f),
// @Group: // @Path: Parameters.cpp GOBJECT(g2, "", ParametersG2), AP_VAREND }; /* 2nd group of parameters */ const AP_Param::GroupInfo ParametersG2::var_info[] = { #if PROXIMITY_ENABLED == ENABLED // @Group: PRX // @Path: ../libraries/AP_Proximity/AP_Proximity.cpp AP_SUBGROUPINFO(proximity, "PRX", 2, ParametersG2, AP_Proximity), #endif #if GRIPPER_ENABLED == ENABLED // @Group: GRIP_ // @Path: ../libraries/AP_Gripper/AP_Gripper.cpp AP_SUBGROUPINFO(gripper, "GRIP_", 3, ParametersG2, AP_Gripper), #endif // @Group: SERVO // @Path: ../libraries/SRV_Channel/SRV_Channels.cpp AP_SUBGROUPINFO(servo_channels, "SERVO", 16, ParametersG2, SRV_Channels), // @Group: RC // @Path: ../libraries/RC_Channel/RC_Channels.cpp AP_SUBGROUPINFO(rc_channels, "RC", 17, ParametersG2, RC_Channels),
// @Increment: 1 // @User: Standard AP_GROUPINFO("TAIL_SPEED", 10, AP_MotorsHeli_Single, _direct_drive_tailspeed, AP_MOTORS_HELI_SINGLE_DDVPT_SPEED_DEFAULT), // @Param: GYR_GAIN_ACRO // @DisplayName: External Gyro Gain for ACRO // @Description: PWM sent to external gyro on ch7 when tail type is Servo w/ ExtGyro. A value of zero means to use H_GYR_GAIN // @Range: 0 1000 // @Units: PWM // @Increment: 1 // @User: Standard AP_GROUPINFO("GYR_GAIN_ACRO", 11, AP_MotorsHeli_Single, _ext_gyro_gain_acro, 0), // @Group: SV1_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_swash_servo_1, "SV1_", 12, AP_MotorsHeli_Single, RC_Channel), // @Group: SV2_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_swash_servo_2, "SV2_", 13, AP_MotorsHeli_Single, RC_Channel), // @Group: SV3_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_swash_servo_3, "SV3_", 14, AP_MotorsHeli_Single, RC_Channel), // @Group: SV4_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_yaw_servo, "SV4_", 15, AP_MotorsHeli_Single, RC_Channel), // @Param: RSC_PWM_MIN // @DisplayName: RSC PWM output miniumum
GOBJECT(button, "BTN_", AP_Button), // @Group: // @Path: Parameters.cpp GOBJECT(g2, "", ParametersG2), AP_VAREND }; /* 2nd group of parameters */ const AP_Param::GroupInfo ParametersG2::var_info[] = { // @Group: STAT // @Path: ../libraries/AP_Stats/AP_Stats.cpp AP_SUBGROUPINFO(stats, "STAT", 1, ParametersG2, AP_Stats), // @Group: SYSID_ENFORCE // @DisplayName: GCS sysid enforcement // @Description: This controls whether packets from other than the expected GCS system ID will be accepted // @Values: 0:NotEnforced,1:Enforced // @User: Advanced AP_GROUPINFO("SYSID_ENFORCE", 2, ParametersG2, sysid_enforce, 0), // @Group: SERVO // @Path: ../libraries/SRV_Channel/SRV_Channel.cpp AP_SUBGROUPINFO(servo_channels, "SERVO", 3, ParametersG2, SRV_Channels), // @Group: RC // @Path: ../libraries/RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(rc_channels, "RC", 4, ParametersG2, RC_Channels),
// @RebootRequired: True // @User: Advanced AP_GROUPINFO("SBUS_OUT", 4, AP_BoardConfig, px4.sbus_out_rate, 0), #endif // @Param: SERIAL_NUM // @DisplayName: User-defined serial number // @Description: User-defined serial number of this vehicle, it can be any arbitrary number you want and has no effect on the autopilot // @Range: -32768 32767 // @User: Standard AP_GROUPINFO("SERIAL_NUM", 5, AP_BoardConfig, vehicleSerialNumber, 0), #if HAL_WITH_UAVCAN // @Group: CAN_ // @Path: ../AP_BoardConfig/canbus.cpp AP_SUBGROUPINFO(_var_info_can, "CAN_", 6, AP_BoardConfig, AP_BoardConfig::CAN_var_info), #endif #if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN // @Param: SAFETY_MASK // @DisplayName: Channels to which ignore the safety switch state // @Description: A bitmask which controls what channels can move while the safety switch has not been pressed // @Values: 0:Disabled,1:Enabled // @Bitmask: 0:Ch1,1:Ch2,2:Ch3,3:Ch4,4:Ch5,5:Ch6,6:Ch7,7:Ch8,8:Ch9,9:Ch10,10:Ch11,11:Ch12,12:Ch13,13:Ch14 // @RebootRequired: True // @User: Advanced AP_GROUPINFO("SAFETY_MASK", 7, AP_BoardConfig, px4.ignore_safety_channels, 0), #endif #if HAL_HAVE_IMU_HEATER // @Param: IMU_TARGTEMP
// IDs 8,9,10,11 RESERVED (in use on Solo) // @Param: ANGLE_BOOST // @DisplayName: Angle Boost // @Description: Angle Boost increases output throttle as the vehicle leans to reduce loss of altitude // @Values: 0:Disabled, 1:Enabled // @User: Advanced AP_GROUPINFO("ANGLE_BOOST", 12, AC_AttitudeControl, _angle_boost_enabled, 1), // @Param: ANG_RLL_P // @DisplayName: Roll axis angle controller P gain // @Description: Roll axis angle controller P gain. Converts the error between the desired roll angle and actual angle to a desired roll rate // @Range: 3.000 12.000 // @User: Standard AP_SUBGROUPINFO(_p_angle_roll, "ANG_RLL_", 13, AC_AttitudeControl, AC_P), // @Param: ANG_PIT_P // @DisplayName: Pitch axis angle controller P gain // @Description: Pitch axis angle controller P gain. Converts the error between the desired pitch angle and actual angle to a desired pitch rate // @Range: 3.000 12.000 // @User: Standard AP_SUBGROUPINFO(_p_angle_pitch, "ANG_PIT_", 14, AC_AttitudeControl, AC_P), // @Param: ANG_YAW_P // @DisplayName: Yaw axis angle controller P gain // @Description: Yaw axis angle controller P gain. Converts the error between the desired yaw angle and actual angle to a desired yaw rate // @Range: 3.000 6.000 // @User: Standard AP_SUBGROUPINFO(_p_angle_yaw, "ANG_YAW_", 15, AC_AttitudeControl, AC_P),
// @Description: OSD type // @Values: 0:None,1:MAX7456 // @User: Standard // @RebootRequired: True AP_GROUPINFO_FLAGS("_TYPE", 1, AP_OSD, osd_type, 0, AP_PARAM_FLAG_ENABLE), // @Param: _CHAN // @DisplayName: Screen switch transmitter channel // @Description: This sets the channel used to switch different OSD screens. // @Values: 0:Disable,5:Chan5,6:Chan6,7:Chan7,8:Chan8,9:Chan9,10:Chan10,11:Chan11,12:Chan12,13:Chan13,14:Chan14,15:Chan15,16:Chan16 // @User: Standard AP_GROUPINFO("_CHAN", 2, AP_OSD, rc_channel, 0), // @Group: 1_ // @Path: AP_OSD_Screen.cpp AP_SUBGROUPINFO(screen[0], "1_", 3, AP_OSD, AP_OSD_Screen), // @Group: 2_ // @Path: AP_OSD_Screen.cpp AP_SUBGROUPINFO(screen[1], "2_", 4, AP_OSD, AP_OSD_Screen), // @Group: 3_ // @Path: AP_OSD_Screen.cpp AP_SUBGROUPINFO(screen[2], "3_", 5, AP_OSD, AP_OSD_Screen), // @Group: 4_ // @Path: AP_OSD_Screen.cpp AP_SUBGROUPINFO(screen[3], "4_", 6, AP_OSD, AP_OSD_Screen), // @Param: _SW_METHOD // @DisplayName: Screen switch method
} return &obj_channels[chan]; } protected: int8_t flight_mode_channel_number() const { return 5; } private: }; const AP_Param::GroupInfo RC_Channels::var_info[] = { // @Group: 1_ // @Path: RC_Channel.cpp AP_SUBGROUPINFO(obj_channels[0], "1_", 1, RC_Channels_Example, RC_Channel_Example), // @Group: 2_ // @Path: RC_Channel.cpp AP_SUBGROUPINFO(obj_channels[1], "2_", 2, RC_Channels_Example, RC_Channel_Example), // @Group: 3_ // @Path: RC_Channel.cpp AP_SUBGROUPINFO(obj_channels[2], "3_", 3, RC_Channels_Example, RC_Channel_Example), // @Group: 4_ // @Path: RC_Channel.cpp AP_SUBGROUPINFO(obj_channels[3], "4_", 4, RC_Channels_Example, RC_Channel_Example), // @Group: 5_ // @Path: RC_Channel.cpp
// @Range: 0.000 1.000 // @User: Standard // @Param: _RATE_D // @DisplayName: Wheel rate control D gain // @Description: Wheel rate control D gain. Compensates for short-term change in desired rate vs actual // @Range: 0.000 0.400 // @User: Standard // @Param: _RATE_FILT // @DisplayName: Wheel rate control filter frequency // @Description: Wheel rate control input filter. Lower values reduce noise but add delay. // @Range: 1.000 100.000 // @Units: Hz // @User: Standard AP_SUBGROUPINFO(_rate_pid0, "_RATE_", 3, AP_WheelRateControl, AC_PID), // @Param: 2_RATE_FF // @DisplayName: Wheel rate control feed forward gain // @Description: Wheel rate control feed forward gain. Desired rate (in radians/sec) is multiplied by this constant and output to output (in the range -1 to +1) // @Range: 0.100 2.000 // @User: Standard // @Param: 2_RATE_P // @DisplayName: Wheel rate control P gain // @Description: Wheel rate control P gain. Converts rate error (in radians/sec) to output (in the range -1 to +1) // @Range: 0.100 2.000 // @User: Standard // @Param: 2_RATE_I // @DisplayName: Wheel rate control I gain
// @Param: RT_RLL_IMAX // @DisplayName: Roll axis rate controller I gain maximum // @Description: Roll axis rate controller I gain maximum. Constrains the maximum motor output that the I gain will output // @Range: 0 4500 // @Increment: 10 // @Units: Percent*10 // @User: Standard // @Param: RT_RLL_D // @DisplayName: Roll axis rate controller D gain // @Description: Roll axis rate controller D gain. Compensates for short-term change in desired roll rate vs actual roll rate // @Range: 0.001 0.02 // @Increment: 0.001 // @User: Standard AP_SUBGROUPINFO(pid_rate_roll, "RT_RLL_", 3, QuadPlane, AC_PID), // @Param: RT_PIT_P // @DisplayName: Pitch axis rate controller P gain // @Description: Pitch axis rate controller P gain. Converts the difference between desired pitch rate and actual pitch rate into a motor speed output // @Range: 0.08 0.30 // @Increment: 0.005 // @User: Standard // @Param: RT_PIT_I // @DisplayName: Pitch axis rate controller I gain // @Description: Pitch axis rate controller I gain. Corrects long-term difference in desired pitch rate vs actual pitch rate // @Range: 0.01 0.5 // @Increment: 0.01 // @User: Standard
extern const AP_HAL::HAL& hal; SRV_Channel *SRV_Channels::channels; bool SRV_Channels::disabled_passthrough; bool SRV_Channels::initialised; Bitmask SRV_Channels::function_mask{SRV_Channel::k_nr_aux_servo_functions}; SRV_Channels::srv_function SRV_Channels::functions[SRV_Channel::k_nr_aux_servo_functions]; AP_Int32* SRV_Channels::p_can_servo_bm = nullptr; AP_Int32* SRV_Channels::p_can_esc_bm = nullptr; const AP_Param::GroupInfo SRV_Channels::var_info[] = { // @Group: 1_ // @Path: SRV_Channel.cpp AP_SUBGROUPINFO(obj_channels[0], "1_", 1, SRV_Channels, SRV_Channel), // @Group: 2_ // @Path: SRV_Channel.cpp AP_SUBGROUPINFO(obj_channels[1], "2_", 2, SRV_Channels, SRV_Channel), // @Group: 3_ // @Path: SRV_Channel.cpp AP_SUBGROUPINFO(obj_channels[2], "3_", 3, SRV_Channels, SRV_Channel), // @Group: 4_ // @Path: SRV_Channel.cpp AP_SUBGROUPINFO(obj_channels[3], "4_", 4, SRV_Channels, SRV_Channel), // @Group: 5_ // @Path: SRV_Channel.cpp
// @Group: // @Path: Parameters.cpp GOBJECT(g2, "", ParametersG2), AP_VAREND }; /* 2nd group of parameters */ const AP_Param::GroupInfo ParametersG2::var_info[] = { #if STATS_ENABLED == ENABLED // @Group: STAT // @Path: ../libraries/AP_Stats/AP_Stats.cpp AP_SUBGROUPINFO(stats, "STAT", 1, ParametersG2, AP_Stats), #endif // @Param: SYSID_ENFORCE // @DisplayName: GCS sysid enforcement // @Description: This controls whether packets from other than the expected GCS system ID will be accepted // @Values: 0:NotEnforced,1:Enforced // @User: Advanced AP_GROUPINFO("SYSID_ENFORCE", 2, ParametersG2, sysid_enforce, 0), // @Group: SERVO // @Path: ../libraries/SRV_Channel/SRV_Channels.cpp AP_SUBGROUPINFO(servo_channels, "SERVO", 3, ParametersG2, SRV_Channels), // @Group: RC // @Path: ../libraries/RC_Channel/RC_Channels.cpp AP_SUBGROUPINFO(rc_channels, "RC", 4, ParametersG2, RC_Channels),
// @User: Standard // @Param: RAT_RLL_D // @DisplayName: Roll axis rate controller D gain // @Description: Roll axis rate controller D gain. Compensates for short-term change in desired roll rate vs actual roll rate // @Range: 0.0 0.02 // @Increment: 0.001 // @User: Standard // @Param: RAT_RLL_FILT // @DisplayName: Roll axis rate conroller input frequency in Hz // @Description: Roll axis rate conroller input frequency in Hz // @Range: 1 100 // @Increment: 1 // @Units: Hz AP_SUBGROUPINFO(_pid_rate_roll, "RAT_RLL_", 1, AC_AttitudeControl_Multi, AC_PID), // @Param: RAT_PIT_P // @DisplayName: Pitch axis rate controller P gain // @Description: Pitch axis rate controller P gain. Converts the difference between desired pitch rate and actual pitch rate into a motor speed output // @Range: 0.08 0.30 // @Increment: 0.005 // @User: Standard // @Param: RAT_PIT_I // @DisplayName: Pitch axis rate controller I gain // @Description: Pitch axis rate controller I gain. Corrects long-term difference in desired pitch rate vs actual pitch rate // @Range: 0.01 0.5 // @Increment: 0.01 // @User: Standard
// parameters 30 ~ 39 reserved for tricopter // parameters 40 ~ 49 for single copter and coax copter (these have identical parameter files) // 40 was ROLL_SV_REV // 41 was PITCH_SV_REV // 42 was YAW_SV_REV // @Param: SV_SPEED // @DisplayName: Servo speed // @Description: Servo update speed in hz // @Values: 50, 125, 250 AP_GROUPINFO("SV_SPEED", 43, AP_MotorsSingle, _servo_speed, AP_MOTORS_SINGLE_SPEED_DIGITAL_SERVOS), // @Group: SV1_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_servo1, "SV1_", 44, AP_MotorsSingle, RC_Channel), // @Group: SV2_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_servo2, "SV2_", 45, AP_MotorsSingle, RC_Channel), // @Group: SV3_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_servo3, "SV3_", 46, AP_MotorsSingle, RC_Channel), // @Group: SV4_ // @Path: ../RC_Channel/RC_Channel.cpp AP_SUBGROUPINFO(_servo4, "SV4_", 47, AP_MotorsSingle, RC_Channel), AP_GROUPEND }; // init void AP_MotorsSingle::Init() {
AP_GROUPINFO("_OFS", 7, AP_Follow, _offset, 0), // @Param: _YAW_BEHAVE // @DisplayName: Follow yaw behaviour // @Description: Follow yaw behaviour // @Values: 0:None,1:Face Lead Vehicle,2:Same as Lead vehicle,3:Direction of Flight // @User: Standard AP_GROUPINFO("_YAW_BEHAVE", 8, AP_Follow, _yaw_behave, 1), // @Param: _POS_P // @DisplayName: Follow position error P gain // @Description: Follow position error P gain. Converts the difference between desired vertical speed and actual speed into a desired acceleration that is passed to the throttle acceleration controller // @Range: 0.01 1.00 // @Increment: 0.01 // @User: Standard AP_SUBGROUPINFO(_p_pos, "_POS_", 9, AP_Follow, AC_P), // @Param: _ALT_TYPE // @DisplayName: Follow altitude type // @Description: Follow altitude type // @Values: 0:absolute, 1: relative // @User: Standard AP_GROUPINFO("_ALT_TYPE", 10, AP_Follow, _alt_type, AP_FOLLOW_ALTITUDE_TYPE_RELATIVE), AP_GROUPEND }; /* The constructor also initialises the proximity sensor. Note that this constructor is not called until detect() returns true, so we already know that we should setup the proximity sensor
// @Param: _STR_RAT_FF // @DisplayName: Steering control feed forward // @Description: Steering control feed forward // @Range: 0.000 3.000 // @Increment: 0.001 // @User: Standard // @Param: _STR_RAT_FILT // @DisplayName: Steering control filter frequency // @Description: Steering control input filter. Lower values reduce noise but add delay. // @Range: 0.000 100.000 // @Increment: 0.1 // @Units: Hz // @User: Standard AP_SUBGROUPINFO(_steer_rate_pid, "_STR_RAT_", 1, AR_AttitudeControl, AC_PID), // @Param: _SPEED_P // @DisplayName: Speed control P gain // @Description: Speed control P gain. Converts the error between the desired speed (in m/s) and actual speed to a motor output (in the range -1 to +1) // @Range: 0.010 2.000 // @Increment: 0.01 // @User: Standard // @Param: _SPEED_I // @DisplayName: Speed control I gain // @Description: Speed control I gain. Corrects long term error between the desired speed (in m/s) and actual speed // @Range: 0.000 2.000 // @User: Standard // @Param: _SPEED_IMAX
GOBJECT(button, "BTN_", AP_Button), // @Group: // @Path: Parameters.cpp GOBJECT(g2, "", ParametersG2), AP_VAREND }; /* 2nd group of parameters */ const AP_Param::GroupInfo ParametersG2::var_info[] = { // @Group: STAT // @Path: ../libraries/AP_Stats/AP_Stats.cpp AP_SUBGROUPINFO(stats, "STAT", 1, ParametersG2, AP_Stats), // @Param: SYSID_ENFORCE // @DisplayName: GCS sysid enforcement // @Description: This controls whether packets from other than the expected GCS system ID will be accepted // @Values: 0:NotEnforced,1:Enforced // @User: Advanced AP_GROUPINFO("SYSID_ENFORCE", 2, ParametersG2, sysid_enforce, 0), // @Group: SERVO // @Path: ../libraries/SRV_Channel/SRV_Channels.cpp AP_SUBGROUPINFO(servo_channels, "SERVO", 3, ParametersG2, SRV_Channels), // @Group: RC // @Path: ../libraries/RC_Channel/RC_Channels.cpp AP_SUBGROUPINFO(rc_channels, "RC", 4, ParametersG2, RC_Channels),
// @User: Standard // @Param: RAT_RLL_FF // @DisplayName: Roll axis rate controller feed forward // @Description: Roll axis rate controller feed forward // @Range: 0 0.5 // @Increment: 0.001 // @User: Standard // @Param: RAT_RLL_FILT // @DisplayName: Roll axis rate controller input frequency in Hz // @Description: Roll axis rate controller input frequency in Hz // @Units: Hz // @Range: 1 20 // @Increment: 1 AP_SUBGROUPINFO(_pid_rate_roll, "RAT_RLL_", 2, AC_AttitudeControl_Heli, AC_HELI_PID), // @Param: RAT_PIT_P // @DisplayName: Pitch axis rate controller P gain // @Description: Pitch axis rate controller P gain. Converts the difference between desired pitch rate and actual pitch rate into a motor speed output // @Range: 0.08 0.35 // @Increment: 0.005 // @User: Standard // @Param: RAT_PIT_I // @DisplayName: Pitch axis rate controller I gain // @Description: Pitch axis rate controller I gain. Corrects long-term difference in desired pitch rate vs actual pitch rate // @Range: 0.01 0.6 // @Increment: 0.01 // @User: Standard
#include <AP_Notify/AP_Notify.h> extern const AP_HAL::HAL& hal; AP_BattMonitor *AP_BattMonitor::_singleton; const AP_Param::GroupInfo AP_BattMonitor::var_info[] = { // 0 - 18, 20- 22 used by old parameter indexes // @Group: _ // @Path: AP_BattMonitor_Params.cpp AP_SUBGROUPINFO_FLAGS(_params[0], "_", 23, AP_BattMonitor, AP_BattMonitor_Params, AP_PARAM_FLAG_IGNORE_ENABLE), // @Group: 2_ // @Path: AP_BattMonitor_Params.cpp AP_SUBGROUPINFO(_params[1], "2_", 24, AP_BattMonitor, AP_BattMonitor_Params), // @Group: 3_ // @Path: AP_BattMonitor_Params.cpp AP_SUBGROUPINFO(_params[2], "3_", 25, AP_BattMonitor, AP_BattMonitor_Params), // @Group: 4_ // @Path: AP_BattMonitor_Params.cpp AP_SUBGROUPINFO(_params[3], "4_", 26, AP_BattMonitor, AP_BattMonitor_Params), // @Group: 5_ // @Path: AP_BattMonitor_Params.cpp AP_SUBGROUPINFO(_params[4], "5_", 27, AP_BattMonitor, AP_BattMonitor_Params), // @Group: 6_ // @Path: AP_BattMonitor_Params.cpp
// @Param: _XY_IMAX // @DisplayName: FlowHold Integrator Max // @Description: FlowHold (horizontal) integrator maximum // @Range: 0 4500 // @Increment: 10 // @Units: cdeg // @User: Advanced // @Param: _XY_FILT_HZ // @DisplayName: FlowHold filter on input to control // @Description: FlowHold (horizontal) filter on input to control // @Range: 0 100 // @Units: Hz // @User: Advanced AP_SUBGROUPINFO(flow_pi_xy, "_XY_", 1, Copter::ModeFlowHold, AC_PI_2D), // @Param: _FLOW_MAX // @DisplayName: FlowHold Flow Rate Max // @Description: Controls maximum apparent flow rate in flowhold // @Range: 0.1 2.5 // @User: Standard AP_GROUPINFO("_FLOW_MAX", 2, Copter::ModeFlowHold, flow_max, 0.6), // @Param: _FILT_HZ // @DisplayName: FlowHold Filter Frequency // @Description: Filter frequency for flow data // @Range: 1 100 // @Units: Hz // @User: Standard AP_GROUPINFO("_FILT_HZ", 3, Copter::ModeFlowHold, flow_filter_hz, 5),
// @Group: OSD // @Path: ../libraries/AP_OSD/AP_OSD.cpp GOBJECT(osd, "OSD", AP_OSD), #endif AP_VAREND }; /* 2nd group of parameters */ const AP_Param::GroupInfo ParametersG2::var_info[] = { #if STATS_ENABLED == ENABLED // @Group: STAT // @Path: ../libraries/AP_Stats/AP_Stats.cpp AP_SUBGROUPINFO(stats, "STAT", 1, ParametersG2, AP_Stats), #endif // @Param: SYSID_ENFORCE // @DisplayName: GCS sysid enforcement // @Description: This controls whether packets from other than the expected GCS system ID will be accepted // @Values: 0:NotEnforced,1:Enforced // @User: Advanced AP_GROUPINFO("SYSID_ENFORCE", 2, ParametersG2, sysid_enforce, 0), // @Group: SERVO // @Path: ../libraries/SRV_Channel/SRV_Channels.cpp AP_SUBGROUPINFO(servo_channels, "SERVO", 3, ParametersG2, SRV_Channels), // @Group: RC // @Path: ../libraries/RC_Channel/RC_Channels_VarInfo.h AP_SUBGROUPINFO(rc_channels, "RC", 4, ParametersG2, RC_Channels_Rover),