APM:Copter
|
#include <mode.h>
Public Member Functions | |
ModeFlowHold (void) | |
bool | init (bool ignore_checks) override |
void | run (void) override |
bool | requires_GPS () const override |
bool | has_manual_throttle () const override |
bool | allows_arming (bool from_gcs) const override |
bool | is_autopilot () const override |
Static Public Attributes | |
static const struct AP_Param::GroupInfo | var_info [] |
![]() | |
static AutoYaw | auto_yaw |
Protected Member Functions | |
const char * | name () const override |
const char * | name4 () const override |
![]() | |
virtual bool | landing_gear_should_be_deployed () const |
void | update_navigation () |
virtual void | run_autopilot () |
virtual uint32_t | wp_distance () const |
virtual int32_t | wp_bearing () const |
virtual bool | get_wp (Location_Class &loc) |
virtual bool | in_guided_mode () const |
void | get_pilot_desired_lean_angles (float &roll_out, float &pitch_out, float angle_max, float angle_limit) const |
bool | takeoff_triggered (float target_climb_rate) const |
void | zero_throttle_and_relax_ac () |
int32_t | get_alt_above_ground (void) |
void | land_run_horizontal_control () |
void | land_run_vertical_control (bool pause_descent=false) |
float | get_surface_tracking_climb_rate (int16_t target_rate, float current_alt_target, float dt) |
float | get_pilot_desired_yaw_rate (int16_t stick_angle) |
float | get_pilot_desired_climb_rate (float throttle_control) |
float | get_pilot_desired_throttle (int16_t throttle_control, float thr_mid=0.0f) |
float | get_non_takeoff_throttle (void) |
void | update_simple_mode (void) |
bool | set_mode (control_mode_t mode, mode_reason_t reason) |
void | set_land_complete (bool b) |
GCS_Copter & | gcs () |
void | Log_Write_Event (uint8_t id) |
void | set_throttle_takeoff (void) |
void | takeoff_timer_start (float alt_cm) |
void | takeoff_stop (void) |
void | takeoff_get_climb_rates (float &pilot_climb_rate, float &takeoff_climb_rate) |
float | get_avoidance_adjusted_climbrate (float target_rate) |
uint16_t | get_pilot_speed_dn (void) |
Private Types | |
enum | FlowHoldModeState { FlowHold_MotorStopped, FlowHold_Takeoff, FlowHold_Flying, FlowHold_Landed } |
Private Member Functions | |
void | flow_to_angle (Vector2f &bf_angle) |
bool | flowhold_init (bool ignore_checks) |
void | flowhold_run () |
void | flowhold_flow_to_angle (Vector2f &angle, bool stick_input) |
void | update_height_estimate (void) |
Private Attributes | |
LowPassFilterVector2f | flow_filter |
const float | height_min = 0.1 |
const float | height_max = 3.0 |
AP_Float | flow_max |
AC_PI_2D | flow_pi_xy {0.2, 0.3, 3000, 5, 0.0025} |
AP_Float | flow_filter_hz |
AP_Int8 | flow_min_quality |
AP_Int8 | brake_rate_dps |
float | quality_filtered |
uint8_t | log_counter |
bool | limited |
Vector2f | xy_I |
Vector2f | delta_velocity_ne |
Vector2f | last_flow_rate_rps |
uint32_t | last_flow_ms |
float | last_ins_height |
float | height_offset |
bool | braking |
uint32_t | last_stick_input_ms |
Additional Inherited Members | |
![]() | |
Parameters & | g |
ParametersG2 & | g2 |
AC_WPNav *& | wp_nav |
AC_Loiter *& | loiter_nav |
AC_PosControl *& | pos_control |
AP_InertialNav & | inertial_nav |
AP_AHRS & | ahrs |
AC_AttitudeControl_t *& | attitude_control |
MOTOR_CLASS *& | motors |
RC_Channel *& | channel_roll |
RC_Channel *& | channel_pitch |
RC_Channel *& | channel_throttle |
RC_Channel *& | channel_yaw |
float & | G_Dt |
ap_t & | ap |
takeoff_state_t & | takeoff_state |
float & | ekfGndSpdLimit |
float & | ekfNavVelGainScaler |
heli_flags_t & | heli_flags |
|
private |
ModeFlowHold::ModeFlowHold | ( | void | ) |
|
inlineoverridevirtual |
|
private |
|
private |
|
private |
|
private |
|
inlineoverridevirtual |
|
overridevirtual |
Implements Mode.
|
inlineoverridevirtual |
|
inlineoverrideprotectedvirtual |
|
inlineoverrideprotectedvirtual |
|
inlineoverridevirtual |
|
overridevirtual |
Implements Mode.
|
private |
|
private |
|
private |
|
static |