PX4 Firmware
PX4 Autopilot Software http://px4.io
sensor_params_mag0.c
Go to the documentation of this file.
1 /****************************************************************************
2  *
3  * Copyright (c) 2012-2018 PX4 Development Team. All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * 1. Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  * 2. Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in
13  * the documentation and/or other materials provided with the
14  * distribution.
15  * 3. Neither the name PX4 nor the names of its contributors may be
16  * used to endorse or promote products derived from this software
17  * without specific prior written permission.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
22  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
23  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
24  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
25  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
26  * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
27  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
29  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30  * POSSIBILITY OF SUCH DAMAGE.
31  *
32  ****************************************************************************/
33 
34 /**
35  * ID of Magnetometer the calibration is for.
36  *
37  * @category system
38  * @group Sensor Calibration
39  */
40 PARAM_DEFINE_INT32(CAL_MAG0_ID, 0);
41 
42 /**
43  * Mag 0 enabled
44  *
45  * @boolean
46  * @category system
47  * @group Sensor Calibration
48  */
49 PARAM_DEFINE_INT32(CAL_MAG0_EN, 1);
50 
51 /**
52  * Rotation of magnetometer 0 relative to airframe.
53  *
54  * An internal magnetometer will force a value of -1, so a GCS
55  * should only attempt to configure the rotation if the value is
56  * greater than or equal to zero.
57  *
58  * @value -1 Internal mag
59  * @value 0 No rotation
60  * @value 1 Yaw 45°
61  * @value 2 Yaw 90°
62  * @value 3 Yaw 135°
63  * @value 4 Yaw 180°
64  * @value 5 Yaw 225°
65  * @value 6 Yaw 270°
66  * @value 7 Yaw 315°
67  * @value 8 Roll 180°
68  * @value 9 Roll 180°, Yaw 45°
69  * @value 10 Roll 180°, Yaw 90°
70  * @value 11 Roll 180°, Yaw 135°
71  * @value 12 Pitch 180°
72  * @value 13 Roll 180°, Yaw 225°
73  * @value 14 Roll 180°, Yaw 270°
74  * @value 15 Roll 180°, Yaw 315°
75  * @value 16 Roll 90°
76  * @value 17 Roll 90°, Yaw 45°
77  * @value 18 Roll 90°, Yaw 90°
78  * @value 19 Roll 90°, Yaw 135°
79  * @value 20 Roll 270°
80  * @value 21 Roll 270°, Yaw 45°
81  * @value 22 Roll 270°, Yaw 90°
82  * @value 23 Roll 270°, Yaw 135°
83  * @value 24 Pitch 90°
84  * @value 25 Pitch 270°
85  *
86  * @min -1
87  * @max 30
88  * @reboot_required true
89  * @category system
90  * @group Sensor Calibration
91  */
92 PARAM_DEFINE_INT32(CAL_MAG0_ROT, -1);
93 
94 /**
95  * Magnetometer X-axis offset
96  *
97  * @category system
98  * @group Sensor Calibration
99  */
100 PARAM_DEFINE_FLOAT(CAL_MAG0_XOFF, 0.0f);
101 
102 /**
103  * Magnetometer Y-axis offset
104  *
105  * @category system
106  * @group Sensor Calibration
107  */
108 PARAM_DEFINE_FLOAT(CAL_MAG0_YOFF, 0.0f);
109 
110 /**
111  * Magnetometer Z-axis offset
112  *
113  * @category system
114  * @group Sensor Calibration
115  */
116 PARAM_DEFINE_FLOAT(CAL_MAG0_ZOFF, 0.0f);
117 
118 /**
119  * Magnetometer X-axis scaling factor
120  *
121  * @category system
122  * @group Sensor Calibration
123  */
124 PARAM_DEFINE_FLOAT(CAL_MAG0_XSCALE, 1.0f);
125 
126 /**
127  * Magnetometer Y-axis scaling factor
128  *
129  * @category system
130  * @group Sensor Calibration
131  */
132 PARAM_DEFINE_FLOAT(CAL_MAG0_YSCALE, 1.0f);
133 
134 /**
135  * Magnetometer Z-axis scaling factor
136  *
137  * @category system
138  * @group Sensor Calibration
139  */
140 PARAM_DEFINE_FLOAT(CAL_MAG0_ZSCALE, 1.0f);
PARAM_DEFINE_INT32(CAL_MAG0_ID, 0)
Vector< float, 6 > f(float t, const Matrix< float, 6, 1 > &, const Matrix< float, 3, 1 > &)
Definition: integration.cpp:8
PARAM_DEFINE_FLOAT(CAL_MAG0_XOFF, 0.0f)