Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
Main Page
Related Pages
Modules
Data Structures
Data Structures
Data Structure Index
Data Fields
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Files
File List
Globals
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
m
n
p
r
s
t
u
v
w
Enumerations
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
nav_catapult.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2012, Christophe De Wagter
3
* Copyright (C) 2016, Gautier Hattenberger <gautier.hattenberger@enac.fr>
4
*
5
* This file is part of paparazzi.
6
*
7
* paparazzi is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; either version 2, or (at your option)
10
* any later version.
11
*
12
* paparazzi is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with paparazzi; see the file COPYING. If not, see
19
* <http://www.gnu.org/licenses/>.
20
*
21
*/
22
36
#ifndef NAV_CATAPULT_H
37
#define NAV_CATAPULT_H
38
39
#include "
std.h
"
40
#include "
math/pprz_algebra_float.h
"
41
42
// Take off state machine
43
enum
nav_catapult_state
{
44
NAV_CATAPULT_UNINIT
,
45
NAV_CATAPULT_ARMED
,
46
NAV_CATAPULT_WAIT_ACCEL
,
47
NAV_CATAPULT_MOTOR_ON
,
48
NAV_CATAPULT_MOTOR_CLIMB
,
49
NAV_CATAPULT_DISARM
,
50
};
51
52
// Internal structure
53
struct
nav_catapult_struct
{
54
enum
nav_catapult_state
status
;
55
uint32_t
timer
;
56
struct
FloatVect3
pos
;
57
float
accel_threshold
;
58
float
motor_delay
;
59
float
heading_delay
;
60
float
initial_pitch
;
61
float
initial_throttle
;
62
};
63
64
extern
struct
nav_catapult_struct
nav_catapult
;
65
66
// Init
67
extern
void
nav_catapult_init
(
void
);
68
69
// Module Code
70
extern
void
nav_catapult_highrate_module
(
void
);
71
72
// Flightplan Code
73
extern
bool
nav_catapult_run
(
uint8_t
_climb);
74
75
#endif
76
NAV_CATAPULT_MOTOR_CLIMB
@ NAV_CATAPULT_MOTOR_CLIMB
Definition:
nav_catapult.h:48
NAV_CATAPULT_MOTOR_ON
@ NAV_CATAPULT_MOTOR_ON
Definition:
nav_catapult.h:47
nav_catapult_struct::initial_throttle
float initial_throttle
throttle during first take-off phase (in radian)
Definition:
nav_catapult.h:61
nav_catapult_struct::timer
uint32_t timer
internal timer
Definition:
nav_catapult.h:55
uint32_t
unsigned long uint32_t
Definition:
types.h:18
nav_catapult_highrate_module
void nav_catapult_highrate_module(void)
Definition:
nav_catapult.c:102
pprz_algebra_float.h
Paparazzi floating point algebra.
FloatVect3
Definition:
pprz_algebra_float.h:54
std.h
NAV_CATAPULT_DISARM
@ NAV_CATAPULT_DISARM
Definition:
nav_catapult.h:49
nav_catapult_struct::heading_delay
float heading_delay
delay to estimate initial heading after launch (in seconds)
Definition:
nav_catapult.h:59
uint8_t
unsigned char uint8_t
Definition:
types.h:14
nav_catapult_struct
Definition:
nav_catapult.h:53
nav_catapult_struct::accel_threshold
float accel_threshold
acceleration threshold for launch detection (in g)
Definition:
nav_catapult.h:57
NAV_CATAPULT_UNINIT
@ NAV_CATAPULT_UNINIT
Definition:
nav_catapult.h:44
nav_catapult
struct nav_catapult_struct nav_catapult
Definition:
nav_catapult.c:83
nav_catapult_state
nav_catapult_state
Definition:
nav_catapult.h:43
nav_catapult_struct::initial_pitch
float initial_pitch
pitch angle during first take-off phase (in radian)
Definition:
nav_catapult.h:60
NAV_CATAPULT_ARMED
@ NAV_CATAPULT_ARMED
Definition:
nav_catapult.h:45
nav_catapult_struct::pos
struct FloatVect3 pos
catapult position
Definition:
nav_catapult.h:56
nav_catapult_struct::motor_delay
float motor_delay
delay to start motor after launch detection (in seconds)
Definition:
nav_catapult.h:58
nav_catapult_init
void nav_catapult_init(void)
Definition:
nav_catapult.c:86
NAV_CATAPULT_WAIT_ACCEL
@ NAV_CATAPULT_WAIT_ACCEL
Definition:
nav_catapult.h:46
nav_catapult_run
bool nav_catapult_run(uint8_t _climb)
Definition:
nav_catapult.c:159
nav_catapult_struct::status
enum nav_catapult_state status
current procedure state
Definition:
nav_catapult.h:54
sw
airborne
modules
nav
nav_catapult.h
Generated on Tue Feb 1 2022 13:51:16 for Paparazzi UAS by
1.8.17