Paparazzi UAS
v5.14.0_stable-0-g3f680d1
Paparazzi is a free software Unmanned Aircraft System.
|
Autopilot static implementation. More...
Go to the source code of this file.
Functions | |
void | autopilot_static_init (void) |
Specific function for static AP. More... | |
void | autopilot_static_periodic (void) |
void | autopilot_static_on_rc_frame (void) |
Function to be called when a message from FBW is available. More... | |
void | autopilot_static_set_mode (uint8_t new_autopilot_mode) |
void | autopilot_static_SetModeHandler (float new_autopilot_mode) |
AP mode setting handler. More... | |
void | autopilot_static_set_motors_on (bool motors_on) |
Autopilot static implementation.
Definition in file autopilot_static.h.
#define AP_ARMING_STATUS_AHRS_NOT_ALLIGNED 15 |
Definition at line 73 of file autopilot_static.h.
Referenced by autopilot_generated_on_rc_frame(), and autopilot_static_on_rc_frame().
#define AP_ARMING_STATUS_ARMED 3 |
Definition at line 61 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on().
#define AP_ARMING_STATUS_ARMING 2 |
Definition at line 60 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on().
#define AP_ARMING_STATUS_DISARMING 4 |
Definition at line 62 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on().
#define AP_ARMING_STATUS_KILLED 5 |
Definition at line 63 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on().
#define AP_ARMING_STATUS_LOW_BATTERY 17 |
Definition at line 75 of file autopilot_static.h.
#define AP_ARMING_STATUS_NO_RC 0 |
Definition at line 58 of file autopilot_static.h.
#define AP_ARMING_STATUS_NOT_MODE_MANUAL 8 |
Definition at line 66 of file autopilot_static.h.
Referenced by autopilot_arming_check_valid().
#define AP_ARMING_STATUS_OUT_OF_GEOFENCE 16 |
Definition at line 74 of file autopilot_static.h.
#define AP_ARMING_STATUS_PITCH_NOT_CENTERED 12 |
Definition at line 70 of file autopilot_static.h.
Referenced by autopilot_arming_check_valid().
#define AP_ARMING_STATUS_ROLL_NOT_CENTERED 13 |
Definition at line 71 of file autopilot_static.h.
Referenced by autopilot_arming_check_valid().
#define AP_ARMING_STATUS_STICKS_NOT_CENTERED 11 |
Definition at line 69 of file autopilot_static.h.
#define AP_ARMING_STATUS_THROTTLE_DOWN 7 |
Definition at line 65 of file autopilot_static.h.
Referenced by autopilot_arming_check_valid().
#define AP_ARMING_STATUS_THROTTLE_NOT_DOWN 10 |
Definition at line 68 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on(), and autopilot_arming_check_valid().
#define AP_ARMING_STATUS_UNARMED_IN_AUTO 9 |
Definition at line 67 of file autopilot_static.h.
#define AP_ARMING_STATUS_WAITING 1 |
Definition at line 59 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on().
#define AP_ARMING_STATUS_YAW_CENTERED 6 |
Definition at line 64 of file autopilot_static.h.
Referenced by autopilot_arming_check_valid().
#define AP_ARMING_STATUS_YAW_NOT_CENTERED 14 |
Definition at line 72 of file autopilot_static.h.
Referenced by autopilot_arming_check_valid().
#define AP_MODE_ATTITUDE_CLIMB 7 |
Definition at line 42 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_ATTITUDE_DIRECT 4 |
Definition at line 39 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_ATTITUDE_RC_CLIMB 6 |
Definition at line 41 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_ATTITUDE_Z_HOLD 9 |
Definition at line 44 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_CARE_FREE_DIRECT 15 |
Definition at line 50 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_FAILSAFE 1 |
Definition at line 36 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on(), autopilot_arming_set(), autopilot_event(), autopilot_static_on_rc_frame(), autopilot_static_periodic(), autopilot_static_set_mode(), autopilot_static_SetModeHandler(), failsafe_check(), nav_set_failsafe(), and throttle_curve_run().
#define AP_MODE_FLIP 18 |
Definition at line 53 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), autopilot_static_SetModeHandler(), and failsafe_check().
#define AP_MODE_FORWARD 16 |
Definition at line 51 of file autopilot_static.h.
Referenced by autopilot_static_set_mode().
#define AP_MODE_GUIDED 19 |
Definition at line 54 of file autopilot_static.h.
Referenced by autopilot_guided_goto_body_relative(), autopilot_guided_goto_ned(), autopilot_guided_goto_ned_relative(), autopilot_guided_move_ned(), autopilot_guided_update(), autopilot_static_set_mode(), autopilot_static_SetModeHandler(), failsafe_check(), mavlink_common_message_handler(), and mavlink_send_heartbeat().
#define AP_MODE_HOME 2 |
Definition at line 37 of file autopilot_static.h.
#define AP_MODE_HOVER_CLIMB 11 |
Definition at line 46 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_HOVER_DIRECT 10 |
Definition at line 45 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_HOVER_Z_HOLD 12 |
Definition at line 47 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_KILL 0 |
Static autopilot modes.
Definition at line 35 of file autopilot_static.h.
Referenced by autopilot_arming_check_motors_on(), autopilot_arming_set(), autopilot_generated_set_motors_on(), autopilot_static_init(), autopilot_static_on_rc_frame(), autopilot_static_periodic(), autopilot_static_set_mode(), autopilot_static_set_motors_on(), autopilot_static_SetModeHandler(), and failsafe_check().
#define AP_MODE_MODULE 17 |
Definition at line 52 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), autopilot_static_SetModeHandler(), failsafe_check(), and stabilization_opticflow_vel_cb().
#define AP_MODE_NAV 13 |
Definition at line 48 of file autopilot_static.h.
Referenced by autopilot_static_on_rc_frame(), autopilot_static_periodic(), autopilot_static_set_mode(), autopilot_static_SetModeHandler(), failsafe_check(), guidance_h_module_run(), guidance_v_module_run(), mavlink_common_message_handler(), mavlink_send_heartbeat(), NavKillThrottle(), NavResurrect(), and throttle_curve_run().
#define AP_MODE_RATE_DIRECT 3 |
Definition at line 38 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_RATE_RC_CLIMB 5 |
Definition at line 40 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_RATE_Z_HOLD 8 |
Definition at line 43 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define AP_MODE_RC_DIRECT 14 |
Definition at line 49 of file autopilot_static.h.
Referenced by autopilot_static_set_mode(), and mavlink_send_heartbeat().
#define MODE_AUTO1 AP_MODE_HOVER_Z_HOLD |
Definition at line 83 of file autopilot_static.h.
Referenced by ap_mode_of_3way_switch().
#define MODE_AUTO2 AP_MODE_NAV |
Definition at line 86 of file autopilot_static.h.
Referenced by ap_mode_of_3way_switch(), autopilot_firmware_init(), and autopilot_init().
#define MODE_MANUAL AP_MODE_ATTITUDE_DIRECT |
Default RC mode.
Definition at line 80 of file autopilot_static.h.
Referenced by ap_mode_of_3way_switch(), autopilot_arming_check_motors_on(), autopilot_arming_check_valid(), autopilot_arming_set(), and autopilot_static_on_rc_frame().
void autopilot_static_init | ( | void | ) |
Specific function for static AP.
Specific function for static AP.
Static autopilot functions.
Definition at line 90 of file autopilot_static.c.
References ABI_BROADCAST, AP_MODE_AUTO2, AP_MODE_KILL, autopilot, autopilot_arming_init(), autopilot_static_set_mode(), gps_lost, lateral_mode, LATERAL_MODE_MANUAL, pprz_autopilot::mode, and MODE_STARTUP.
Referenced by init_ap(), and main_init().
void autopilot_static_on_rc_frame | ( | void | ) |
Function to be called when a message from FBW is available.
In AUTO1 mode, compute roll setpoint and pitch setpoint from RADIO_ROLL and RADIO_PITCH
Roll is bounded between [-AUTO1_MAX_ROLL;AUTO1_MAX_ROLL]
Pitch is bounded between [-AUTO1_MAX_PITCH;AUTO1_MAX_PITCH]
Else asynchronously set by h_ctl_course_loop()
In AUTO1, throttle comes from RADIO_THROTTLE In MANUAL, the value is copied to get it in the telemetry
else asynchronously set by v_ctl_climb_loop();
In AUTO1 mode, compute roll setpoint and pitch setpoint from RADIO_ROLL and RADIO_PITCH
Roll is bounded between [-AUTO1_MAX_ROLL;AUTO1_MAX_ROLL]
Pitch is bounded between [-AUTO1_MAX_PITCH;AUTO1_MAX_PITCH]
Else asynchronously set by h_ctl_course_loop()
In AUTO1, throttle comes from RADIO_THROTTLE In MANUAL, the value is copied to get it in the telemetry
else asynchronously set by v_ctl_climb_loop();
Definition at line 112 of file autopilot_static.c.
References ap_ahrs_is_aligned(), AP_ARMING_STATUS_AHRS_NOT_ALLIGNED, AP_MODE_AUTO1, AP_MODE_AUTO2, AP_MODE_FAILSAFE, AP_MODE_GPS_OUT_OF_ORDER, AP_MODE_HOME, AP_MODE_KILL, AP_MODE_MANUAL, AP_MODE_NAV, ap_mode_of_3way_switch(), pprz_autopilot::arming_status, autopilot, autopilot_arming_check_motors_on(), autopilot_get_mode(), autopilot_in_flight(), autopilot_send_mode(), autopilot_set_mode(), autopilot_static_set_mode(), commands, copy_from_to_fbw(), current, datalink_lost(), energy, fbw_state, pprz_autopilot::flight_time, FLOAT_OF_PPRZ, GpsIsLost, guidance_h_read_rc(), guidance_v_read_rc(), h_ctl_pitch_setpoint, h_ctl_roll_setpoint, higher_than_max_altitude(), kill_switch_is_on(), pprz_autopilot::kill_throttle, pprz_autopilot::launch, mcu1_ppm_cpt, mcu1_status_update(), pprz_autopilot::mode, MODE_MANUAL, pprz_autopilot::motors_on, pprz_mode_update(), PPRZ_MUTEX_LOCK, PPRZ_MUTEX_UNLOCK, radio_control, RADIO_PITCH, RADIO_ROLL, RADIO_THROTTLE, RADIO_YAW, RC_LOST_MODE, rc_settings(), THROTTLE_THRESHOLD_TAKEOFF, too_far_from_home, UNLOCKED_HOME_MODE, v_ctl_throttle_setpoint, RadioControl::values, and vsupply.
Referenced by autopilot_on_rc_frame().
void autopilot_static_periodic | ( | void | ) |
Definition at line 104 of file autopilot_static.c.
References AP_MODE_FAILSAFE, AP_MODE_HOME, AP_MODE_KILL, AP_MODE_NAV, attitude_loop(), autopilot, autopilot_in_flight(), autopilot_static_set_mode(), commands_failsafe, compute_dist2_to_home(), datalink_lost(), pprz_autopilot::detect_ground_once, dist2_to_home, failsafe_mode_dist2, FAILSAFE_MODE_TOO_FAR_FROM_HOME, pprz_autopilot::ground_detected, guidance_h_run(), guidance_v_run(), higher_than_max_altitude(), pprz_autopilot::in_flight, pprz_autopilot::mode, pprz_autopilot::motors_on, nav_home(), nav_periodic_task(), NAV_PRESCALER, SetCommands, SetRotorcraftCommands, stabilization_cmd, and too_far_from_home.
Referenced by autopilot_periodic().
void autopilot_static_set_mode | ( | uint8_t | new_autopilot_mode | ) |
Definition at line 188 of file autopilot_static.c.
References ap_ahrs_is_aligned(), AP_MODE_ATTITUDE_CLIMB, AP_MODE_ATTITUDE_DIRECT, AP_MODE_ATTITUDE_RC_CLIMB, AP_MODE_ATTITUDE_Z_HOLD, AP_MODE_CARE_FREE_DIRECT, AP_MODE_FAILSAFE, AP_MODE_FLIP, AP_MODE_FORWARD, AP_MODE_GUIDED, AP_MODE_HOME, AP_MODE_HOVER_CLIMB, AP_MODE_HOVER_DIRECT, AP_MODE_HOVER_Z_HOLD, AP_MODE_KILL, AP_MODE_MODULE, AP_MODE_NAV, AP_MODE_RATE_DIRECT, AP_MODE_RATE_RC_CLIMB, AP_MODE_RATE_Z_HOLD, AP_MODE_RC_DIRECT, autopilot, autopilot_set_in_flight(), autopilot_set_motors_on(), FAILSAFE_DESCENT_SPEED, FALSE, GUIDANCE_H_MODE_ATTITUDE, GUIDANCE_H_MODE_CARE_FREE, guidance_h_mode_changed(), GUIDANCE_H_MODE_FLIP, GUIDANCE_H_MODE_FORWARD, GUIDANCE_H_MODE_GUIDED, GUIDANCE_H_MODE_HOVER, GUIDANCE_H_MODE_KILL, GUIDANCE_H_MODE_MODULE_SETTING, GUIDANCE_H_MODE_NAV, GUIDANCE_H_MODE_RATE, GUIDANCE_H_MODE_RC_DIRECT, guidance_v_mode_changed(), GUIDANCE_V_MODE_CLIMB, GUIDANCE_V_MODE_FLIP, GUIDANCE_V_MODE_GUIDED, GUIDANCE_V_MODE_HOVER, GUIDANCE_V_MODE_KILL, GUIDANCE_V_MODE_MODULE_SETTING, GUIDANCE_V_MODE_NAV, GUIDANCE_V_MODE_RC_CLIMB, GUIDANCE_V_MODE_RC_DIRECT, guidance_v_zd_sp, pprz_autopilot::mode, MODE_STARTUP, SPEED_BFP_OF_REAL, stabilization_attitude_set_failsafe_setpoint(), and stabilization_cmd.
Referenced by autopilot_set_mode(), autopilot_static_init(), autopilot_static_on_rc_frame(), autopilot_static_periodic(), autopilot_static_SetModeHandler(), guidance_h_module_run(), and guidance_v_module_run().
void autopilot_static_set_motors_on | ( | bool | motors_on | ) |
Definition at line 200 of file autopilot_static.c.
References ap_ahrs_is_aligned(), AP_MODE_KILL, autopilot, autopilot_arming_set(), pprz_autopilot::mode, and pprz_autopilot::motors_on.
Referenced by autopilot_set_motors_on().
void autopilot_static_SetModeHandler | ( | float | mode | ) |
AP mode setting handler.
Checks RC status before calling autopilot_static_set_mode function
Definition at line 195 of file autopilot_static.c.
References AP_MODE_FAILSAFE, AP_MODE_FLIP, AP_MODE_GUIDED, AP_MODE_HOME, AP_MODE_KILL, AP_MODE_MODULE, AP_MODE_NAV, autopilot_static_set_mode(), radio_control, RC_OK, and RadioControl::status.
Referenced by autopilot_SetModeHandler().