Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
imu_vectornav.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2016 Michal Podhradsky, michal.podhradsky@aggiemail.usu.edu
3
*
4
* This file is part of paparazzi.
5
*
6
* paparazzi is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2, or (at your option)
9
* any later version.
10
*
11
* paparazzi is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with paparazzi; see the file COPYING. If not, write to
18
* the Free Software Foundation, 59 Temple Place - Suite 330,
19
* Boston, MA 02111-1307, USA.
20
*
21
*/
22
29
#ifndef IMU_VECTORNAV_H
30
#define IMU_VECTORNAV_H
31
32
// Subsystem
33
#include "
subsystems/imu.h
"
34
35
// Peripheral
36
#include "
peripherals/vn200_serial.h
"
37
38
39
struct
ImuVectornav
{
40
// Packet data
41
struct
VNPacket
vn_packet
;
42
struct
VNData
vn_data
;
43
enum
VNStatus
vn_status
;
44
float
vn_freq
;
45
};
46
47
48
extern
struct
ImuVectornav
imu_vn
;
49
50
void
imu_vectornav_init
(
void
);
51
void
imu_vectornav_event
(
void
);
52
void
imu_vectornav_periodic
(
void
);
53
void
imu_vectornav_propagate
(
void
);
54
55
/* no scaling (the WEAK attribute has no effect */
56
#ifndef IMU_GYRO_P_SENS_NUM
57
#define IMU_GYRO_P_SENS_NUM 1
58
#endif
59
60
#ifndef IMU_GYRO_P_SENS_DEN
61
#define IMU_GYRO_P_SENS_DEN 1
62
#endif
63
64
#ifndef IMU_GYRO_Q_SENS_NUM
65
#define IMU_GYRO_Q_SENS_NUM 1
66
#endif
67
68
#ifndef IMU_GYRO_Q_SENS_DEN
69
#define IMU_GYRO_Q_SENS_DEN 1
70
#endif
71
72
#ifndef IMU_GYRO_R_SENS_NUM
73
#define IMU_GYRO_R_SENS_NUM 1
74
#endif
75
76
#ifndef IMU_GYRO_R_SENS_DEN
77
#define IMU_GYRO_R_SENS_DEN 1
78
#endif
79
80
#endif
/* IMU_VECTORNAV_H */
ImuVectornav::vn_packet
struct VNPacket vn_packet
Packet struct.
Definition:
imu_vectornav.h:41
VNPacket
Definition:
vn200_serial.h:62
imu_vectornav_event
void imu_vectornav_event(void)
Event function to read and parse data from the serial port.
Definition:
imu_vectornav.c:109
imu.h
ImuVectornav::vn_status
enum VNStatus vn_status
VN status.
Definition:
imu_vectornav.h:43
VNStatus
VNStatus
Definition:
vn200_serial.h:78
imu_vn
struct ImuVectornav imu_vn
Definition:
imu_vectornav.c:40
imu_vectornav_init
void imu_vectornav_init(void)
Init IMU struct and set up ABI messages.
Definition:
imu_vectornav.c:80
vn200_serial.h
ImuVectornav::vn_data
struct VNData vn_data
Data struct.
Definition:
imu_vectornav.h:42
ImuVectornav
Definition:
imu_vectornav.h:39
imu_vectornav_propagate
void imu_vectornav_propagate(void)
Send ABI messages.
Definition:
imu_vectornav.c:149
ImuVectornav::vn_freq
float vn_freq
data frequency
Definition:
imu_vectornav.h:44
imu_vectornav_periodic
void imu_vectornav_periodic(void)
Periodic function checks for the frequency of packets, triggers warning in case the IMU stops sending...
Definition:
imu_vectornav.c:128
VNData
Definition:
vn200_serial.h:84
sw
airborne
modules
imu
imu_vectornav.h
Generated on Tue Feb 1 2022 13:51:15 for Paparazzi UAS by
1.8.17