Paparazzi UAS  v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
nps_autopilot.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) Paparazzi team
3  * This file is part of paparazzi.
4  *
5  * paparazzi is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2, or (at your option)
8  * any later version.
9  *
10  * paparazzi is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with paparazzi; see the file COPYING. If not, write to
17  * the Free Software Foundation, 59 Temple Place - Suite 330,
18  * Boston, MA 02111-1307, USA.
19  */
20 
21 #ifndef NPS_AUTOPILOT_H
22 #define NPS_AUTOPILOT_H
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 #include "generated/airframe.h"
29 
30 #include "nps_radio_control.h"
31 
38 #ifndef NPS_COMMANDS_NB
39 #if defined MOTOR_MIXING_NB_MOTOR
40 #define NPS_COMMANDS_NB MOTOR_MIXING_NB_MOTOR
41 #else
42 #define NPS_COMMANDS_NB COMMANDS_NB
43 #endif /* #if defined MOTOR_MIXING_NB_MOTOR */
44 #endif /* #ifndef NPS_COMMANDS_NB */
45 
46 struct NpsAutopilot {
48  bool launch;
49 };
50 
51 extern struct NpsAutopilot nps_autopilot;
52 
53 extern bool nps_bypass_ahrs;
54 extern bool nps_bypass_ins;
55 extern void sim_overwrite_ahrs(void);
56 extern void sim_overwrite_ins(void);
57 
58 extern void nps_autopilot_init(enum NpsRadioControlType type, int num_script, char *js_dev);
59 extern void nps_autopilot_run_step(double time);
60 extern void nps_autopilot_run_systime_step(void);
61 
62 #ifdef __cplusplus
63 }
64 #endif
65 
66 #endif /* NPS_AUTOPILOT_H */
NPS_COMMANDS_NB
#define NPS_COMMANDS_NB
Number of commands sent to the FDM of NPS.
Definition: nps_autopilot.h:42
NpsRadioControlType
NpsRadioControlType
Definition: nps_radio_control.h:31
nps_bypass_ins
bool nps_bypass_ins
Definition: nps_autopilot_fixedwing.c:65
nps_autopilot
struct NpsAutopilot nps_autopilot
Definition: nps_autopilot_fixedwing.c:63
nps_radio_control.h
nps_autopilot_init
void nps_autopilot_init(enum NpsRadioControlType type, int num_script, char *js_dev)
Definition: nps_autopilot_fixedwing.c:80
nps_autopilot_run_systime_step
void nps_autopilot_run_systime_step(void)
Definition: nps_autopilot_fixedwing.c:98
NpsAutopilot::launch
bool launch
Definition: nps_autopilot.h:48
nps_autopilot_run_step
void nps_autopilot_run_step(double time)
Definition: nps_autopilot_fixedwing.c:106
sim_overwrite_ins
void sim_overwrite_ins(void)
Definition: nps_autopilot_fixedwing.c:268
type
timer subsystem type(config options) --------------------------------------------(advanced timers using RCC_APB1) TIM1 adc(if USE_AD_TIM1) radio_control/ppm(if USE_PPM_TIM1
sim_overwrite_ahrs
void sim_overwrite_ahrs(void)
Definition: nps_autopilot_fixedwing.c:255
NpsAutopilot::commands
double commands[NPS_COMMANDS_NB]
Definition: nps_autopilot.h:47
nps_bypass_ahrs
bool nps_bypass_ahrs
Definition: nps_autopilot_fixedwing.c:64
NpsAutopilot
Definition: nps_autopilot.h:46