Paparazzi UAS
v5.8.2_stable-0-g6260b7c
Paparazzi is a free software Unmanned Aircraft System.
|
FBW ( FlyByWire ) process. More...
#include "generated/airframe.h"
#include "firmwares/fixedwing/main_fbw.h"
#include "mcu.h"
#include "mcu_periph/sys_time.h"
#include "subsystems/commands.h"
#include "subsystems/actuators.h"
#include "subsystems/electrical.h"
#include "subsystems/radio_control.h"
#include "firmwares/fixedwing/autopilot.h"
#include "paparazzi.h"
#include "mcu_periph/i2c.h"
#include "mcu_periph/uart.h"
#include "inter_mcu.h"
#include "link_mcu.h"
Go to the source code of this file.
Functions | |
void | init_fbw (void) |
static void | set_failsafe_mode (void) |
static void | handle_rc_frame (void) |
void | event_task_fbw (void) |
void | periodic_task_fbw (void) |
void | handle_periodic_tasks_fbw (void) |
Variables | |
uint8_t | fbw_mode |
pprz_t | command_roll_trim |
Trim commands for roll, pitch and yaw. More... | |
pprz_t | command_pitch_trim |
pprz_t | command_yaw_trim |
volatile uint8_t | fbw_new_actuators = 0 |
tid_t | fbw_periodic_tid |
id for periodic_task_fbw() timer More... | |
tid_t | electrical_tid |
id for electrical_periodic() timer More... | |
uint8_t | ap_has_been_ok = FALSE |
FBW ( FlyByWire ) process.
This process is responsible for decoding radio control, generating actuators signals either from the radio control or from the commands provided by the AP (autopilot) process. It also performs a telemetry task and a low level monitoring ( for parameters like the supply )
Definition in file main_fbw.c.
void event_task_fbw | ( | void | ) |
Definition at line 190 of file main_fbw.c.
References ap_state, autopilot_mode, command_pitch_trim, command_roll_trim, command_yaw_trim, commands, FALSE, fbw_datalink_event(), fbw_mode, FBW_MODE_AUTO, FBW_MODE_FAILSAFE, fbw_new_actuators, handle_rc_frame(), inter_mcu_received_ap, link_mcu_event_task(), link_mcu_received, MAX_PPRZ, mcu_event(), RadioControlEvent, set_failsafe_mode(), SetCommands, and TRUE.
Referenced by sim_periodic_task().
void handle_periodic_tasks_fbw | ( | void | ) |
Definition at line 345 of file main_fbw.c.
References electrical_periodic(), electrical_tid, fbw_periodic_tid, periodic_task_fbw(), and sys_time_check_and_ack_timer().
|
inlinestatic |
Definition at line 177 of file main_fbw.c.
References commands, fbw_mode, FBW_MODE_MANUAL, FBW_MODE_OF_PPRZ, fbw_new_actuators, radio_control, RADIO_MODE, and RadioControl::values.
Referenced by event_task_fbw().
void init_fbw | ( | void | ) |
Definition at line 116 of file main_fbw.c.
References commands_failsafe, DefaultPeriodic, electrical_init(), electrical_tid, fbw_mode, FBW_MODE_FAILSAFE, fbw_new_actuators, fbw_periodic_tid, link_mcu_init(), mcu_init(), mcu_int_enable, radio_control_init(), register_periodic_telemetry(), send_actuators(), send_commands(), send_rc(), SetCommands, and sys_time_register_timer().
Referenced by sim_init().
void periodic_task_fbw | ( | void | ) |
Definition at line 304 of file main_fbw.c.
References commands, DefaultChannel, DefaultDevice, DefaultPeriodic, fbw_datalink_periodic(), fbw_mode, FBW_MODE_AUTO, FBW_MODE_MANUAL, link_mcu_periodic_task(), radio_control, radio_control_periodic_task(), RC_REALLY_LOST, set_failsafe_mode(), and RadioControl::status.
Referenced by handle_periodic_tasks_fbw(), and sim_periodic_task().
|
inlinestatic |
Definition at line 168 of file main_fbw.c.
References commands_failsafe, fbw_mode, FBW_MODE_FAILSAFE, fbw_new_actuators, and SetCommands.
Referenced by event_task_fbw(), and periodic_task_fbw().
Definition at line 187 of file main_fbw.c.
pprz_t command_pitch_trim |
Definition at line 69 of file main_fbw.c.
Referenced by event_task_fbw().
pprz_t command_roll_trim |
Trim commands for roll, pitch and yaw.
These are updated from the trim commands in ap_state via inter_mcu
Definition at line 68 of file main_fbw.c.
Referenced by event_task_fbw().
pprz_t command_yaw_trim |
Definition at line 70 of file main_fbw.c.
Referenced by event_task_fbw().
tid_t electrical_tid |
id for electrical_periodic() timer
Definition at line 76 of file main_fbw.c.
Referenced by handle_periodic_tasks(), handle_periodic_tasks_fbw(), init_fbw(), and main_init().
uint8_t fbw_mode |
Definition at line 56 of file main_fbw.c.
Referenced by autopilot_on_ap_command(), autopilot_on_rc_frame(), event_task_fbw(), handle_rc_frame(), init_fbw(), main_init(), main_periodic(), periodic_task_fbw(), set_failsafe_mode(), and telemetry_periodic().
volatile uint8_t fbw_new_actuators = 0 |
Definition at line 73 of file main_fbw.c.
Referenced by event_task_fbw(), handle_rc_frame(), init_fbw(), and set_failsafe_mode().
tid_t fbw_periodic_tid |
id for periodic_task_fbw() timer
Definition at line 75 of file main_fbw.c.
Referenced by handle_periodic_tasks_fbw(), and init_fbw().