UFO Presentation03
UFO Presentation03
UFO Presentation03
net/publication/336120285
CITATIONS READS
0 72
1 author:
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Cristian Ovidiu Chiţu on 28 September 2019.
An inertial measurement unit, or IMU, is an electronic device that measures and reports on a
vehicle’s velocity, orientation, and gravitational forces, using a combination of accelerometer,
gyroscope and compass. The sensor stick shown in Figure 1 is a very small sensor board with
nine degrees of freedom, namely translational motion along three spatial axes and rotational
motion about those three axes (i.e., roll, pitch and yaw). Advantages of using the SEN-10183
stick produced by Sparkfun Electronics include very low cost (about 63 ), very low power,
robustness and having all together you need in one layout board. This board includes the
ADXL345 accelerometer, the HMC5843 magnetometer, and the ITG-3200 gyroscope.
Parameter Range
Communication protocol SPI (3- and 4-wire) and I2C digital interfaces
The Honeywell HMC5843 is a surface mount multi-chip module designed for low field
magnetic sensing with a digital interface for applications such as low cost compassing and
magnetometer. The HMC5843 includes state of the art 1043 series magneto-resistive sensors
plus Honeywell developed ASIC containing amplification, strap drivers, offset cancellation,
12-bit ADC and an I2C serial bus interface. Applications for the HMC5843 include Consumer
Electronics, Auto Navigation Systems, Personal Navigation Devices, and Magnetometers.
The sensor features precision in axis sensitivity and linearity, solid state construction with
very low cross axis sensitivity designed to measure both direction and magnitude of Earth’s
magnetic fields, from tens of micro-gauss to 6 gauss. Therefore, the HMC5843 is among the
most sensitive and reliable low-field sensors in the industry. Applications for the HMC5843
include Consumer Electronics, Auto Navigation Systems, Personal Navigation Devices, and
Magnetometers.
Table 2: HMC5843 features
Parameter Range
Resolution 7 milli-gauss
The ITG-3200 from InfoSense is the world’s first single-chip, digital-output , 3 –axis
gyroscope IC optimized. This device features enhanced bias and sensitivity temperature
stability, reducing the need for user calibration. Low frequency noise is lower than previous
generation devices, simplifying application development and making for more-responsive
remote controls. The ITG-3200 features three 16-bit analog-to-digital converters (ADCs) for
digitizing the gyro outputs, a user selectable internal low-pass filter bandwidth, and a fast
mode I2C (400 KHz) interface. Additional features include an embedded temperature sensor
and a 2 % accurate internal oscillator. This breakthrough in gyroscope technology provides a
package size reduction, delivers a 50 % power reduction, and has inherent cost advantages
compared to competing multi-chip gyro solutions.
Table 3: ITG-3200 features
Parameter Range
The system to read out data from IMU sensor requires several hardware components and
software programs. The key hardware components of this system are the dsPIC33
microcontroller mounted on the DSP Analog Prototyping Board and the sensor stick, as
illustrated in Figure 2. The dsPIC33 microcontroller made by Microchip is a 16-bit RISC
processor with support for digital signal processing (DSP) functions capable of executing
millions instructions per second and for relative ease of programming. Moreover, the dsPIC33
is extremely inexpensive and consumes little power for a controller with DSP functionality;
the additional capability of the dsPIC33 is used to process the data from the IMU sensor.
DSP Analog Prototyping Board
Raw data from all sensors is collected and in 2D (two dimensional) representation only the
following information from the sensor is needed:
- ADXL345 (accx, accy) (accelerations on x and y)
- ITG-3200 (angvelz) (angular velocity on z)
Positions and velocities are then calculated as follows:
Vx = ∫ accx ⋅ dt 1
Vy = ∫ accy ⋅ dt
Sx = ∫ Vx ⋅ dt
Sy = ∫ Vy ⋅ dt
Phiz = ∫ angvelz ⋅ dt
Integration of accelerometer and gyroscope data is performed using the trapezoidal rule.
In mathematics, the trapezoidal rule is an approximate technique for calculating the definite
integral of a function f(x) (see Figure 3).
f(b)
f(a)
0 a b x
Figure 3: Integration using the trapezoidal rule
The trapezoidal rule works by approximating the region under the graph of the function f(x)
as a trapezoid and calculating its area. It follows that
b
1 1 2
∫a f ( x) ⋅ dx = f (a) ⋅ (b − a) + 2 ⋅ (b − a) ⋅ ( f (b) − f (a)) = 2 ⋅ (b − a) ⋅ ( f (a) + f (b) )
The following variables are defined for the numerical integration calculation based on the
trapezoidal rule:
- accx[0], accy[0], accx[1], accy[1] previous and current accelerations
- angvelz[0], angvelz[1] previous and current angular velocities
- Vx[0], Vy[0], Vx[1], Vy[1] previous and current velocities
- Sx[0], Sy[0], Sx[1], Sy[1] previous and current positions
- Phiz[0] and Phiz[1] previous and current angular positions
Integration in discrete domain provide the positions and velocities of a 2D system
Vx[1] = Vx[0] + (accx[0] + accx[1]) ⋅ 0.5 ⋅ Ts 3
Vy[1] = Vy[0] + (accy[0] + accy[1]) ⋅ 0.5 ⋅ Ts
Sx[1] = Sx[0] + (Vx[0] + Vx[1]) ⋅ 0.5 ⋅ Ts
Sy[1] = Sy[0] + (Vy[0] + Vy[1]) ⋅ 0.5 ⋅ Ts
Phiz[1] = Phiz[0] + (angvelz[0] + angvelz[1]) ⋅ 0.5 ⋅ Ts
where Ts is the sampling time.
Calibration routines for sensors are necessary to be implemented to get accurate data. For
ADXL345 the calibration routine removes the acceleration offset component in the sensor
output due to the earth’s gravity (static acceleration). It simply averages samples when the
accelerometer is in a no movement condition, the more samples that are taken, the more
accurate the calibration results will be. In a similar way, also a calibration routine for ITG-
3200 is implemented.