30
HELSINKI UNIVERSITY OF TECHNOLOGY Faculty of Information and Natural Sciences Department of Mathematics and Systems Analysis Mat-2.4108 Independent research projects in applied mathematics Accelerometer configurations for a gyroscope free inertial navigation system June 12, 2008 Eero Nevalainen 58348W

Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

HELSINKI UNIVERSITY OF TECHNOLOGY

Faculty of Information and Natural Sciences

Department of Mathematics and Systems Analysis

Mat-2.4108 Independent research projects in applied mathematics

Accelerometer configurations for a gyroscope free

inertial navigation system

June 12, 2008

Eero Nevalainen

58348W

Page 2: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Abstract

This report explores the implementation of a gyroscope free navigationsystem using accelerometers. A necessary condition for independent deter-mination of angular accelerations is derived and the systems accuracy isstudied as a function of individual accelerometer accuracy and size. Finally,two alternative sensor configurations are presented and their accuracies com-pared.

Page 3: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Chapter 1

Introduction

Positioning and navigation systems are employed on a wide variety of usecases including automobiles, aircrafts, sea vessels and people. Global Posi-tioning System (GPS) based applications have enjoyed substantial growth asa low cost solution with a static absolute error. GPS based systems howeversuffer from being unable to navigate when the line of sight to the satellitesis blocked.

Dead reckoning(DR) and Inertial navigation systems(INS) 1 measurechanges of position, velocity and acceleration and integrate these measure-ments to yield absolute position given the initial conditions. DR and INSsystems are not dependent on external signals for navigation, but the po-sition error of these systems grows without bound. A combined navigationsystem [5] using GPS and DR/INS has the best of both worlds with un-interrupted navigation and a position error which is kept in check by theGPS.

Almost all current DR systems use gyroscopes to determine body atti-tude for navigation. The concept of a gyroscope free navigation system[4, 1]based on several linear accelerometers has attracted a lot of study due toadvances in MEMS(Micro-Electro-Mechanical-Systems) manufacturing. Anavigation system employing MEMS accelerometers would enjoy the follow-ing advantages:

1. Accelerometers are generally less expensive, smaller, and more ruggedthan gyroscopes. A system based on accelerometers would allow thedevelopment of applications for which current solutions are either tooinaccurate or too expensive.

2. MEMS accelerometer technology is likely to keep developing morerapidly than gyroscopes due to the inherent physical complexities inmanufacturing MEMS gyroscopes.

1Inertial navigation systems can be considered a proper subset of dead reckoning sys-tems. The distinction is that INS relies only on inertial measurements while a general DRsystem can use information from other sources(most typically an odometer)

1

Page 4: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

In this report, we study the feasibility of constructing a gyroscope freenavigation system using 3D inertial accelerometers. A “3D” accelerometeractually consists of three one axis accelerometers placed closely together, butthe difference can be ignored for the purposes of this report. This reportis organized as follows. Chapter 2 presents the mathematical constructsand conventions that are used in developing navigation applications. InChapter 3, basic assumptions about the sensors are stated along with aninitial configuration. Chapter 4 explores the properties of the setup in detailand presents two alternative (stable) sensor configurations. A summary anddiscussion concerning the results are stated in Chapter 5.

2

Page 5: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Chapter 2

Background

An inertial navigation system must track the position and orientation ofan object in three dimensional space as a function of time. Systems thatoperate on a reduced dimensionality are possible, when the object is knownto adhere to some constraints of position and orientation, but the generalINS needs to operate in the rotation group known as special orthogonal group3, or SO(3).

There are several different mathematical representations for the rotationsin SO(3) including Euler angles, Tait-Bryan angles, direction cosine matrixand quaternions[7]1. Of these representations, quaternions enjoy a numberof advantages over the other candidates

• No singularities (representational equivalent to a gimbal lock)

• Stable and fast normalization procedure

• Straightforward interpolation

Quaternions are used in this report to formulate the relationship be-tween two navigational frames of reference. The following sections derivethe equations of rigid body motion using quaternions and present the navi-gation problem that we are ultimately trying to solve. Most of the materialregarding quaternions in this report is included separately in Appendices Aand B.

2.1 Equations of motion

We now derive the equations of rigid body motion in three dimensional spaceand use them to formulate the inertial accelerations of sensor in the bodyframe. Consider a rigid body whose position and orientation are x and q.

1See http://en.wikipedia.org/wiki/Charts on SO(3) for a list of representations

3

Page 6: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Figure 2.1: Illustration of the inertial coordinate frame and the body coor-dinate frame

A point u1 in the body frame can be expressed in the inertial frame as x1,as follows:

xi1 = xi + q ub

1 q∗ (2.1)

Note the augmented point notation defined in A.8. The corresponding ref-erence frames are evident from the context so we drop the explicit referenceframe notation and simply write

x1 = x + q u1 q∗

The relation between the vectors x, u1, x1 and the coordinate axes is de-picted in figure 2.1.

We can obtain the inertial acceleration experienced by the point by dif-ferentiating it twice in time

˙x1 = ˙x + q u1 q∗ + q u1 q

¨x1 = ¨x + q u1 q∗ + q u1 q∗ + q u1 q∗ + q u1 q

= ¨x + q u1 q∗ + 2q u1 q∗ + q u1 q(2.2)

Note that u1 is constant.The acceleration in the inertial coordinates can be converted to the accel-

eration observed on the body axis by doing an inverse quaternion rotation.We will mark the sensed acceleration in the body frame coordinates withthe symbol a1.

a1 = q∗ ¨x1 q

4

Page 7: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Figure 2.2: The navigation frame

thusa1 = q∗ ¨x q + q∗q u1 + q∗q u1 q∗q + u1 q∗q (2.3)

If we substitute the quaternion time behaviour (A.28) into (2.3) we ob-tain the perhaps more familiar form [3]

a1 = rot(q∗, x) + (ω · u1)ω − |ω|2u1︸ ︷︷ ︸ω×(ω×u1)

+ω × u1 (2.4)

where ω is expressed in the body coordinates and rot(q∗, x) denotes the op-eration of inverse quaternion rotation and dropping the extra zero, eg.

rot(q∗, x) = cdr(q∗ ¨x q) = cdr

[0a

]= a

2.2 Sensor Motion Equation

Now we take a look at navigating a vehicle near the surface of the earth.An INS system must ultimately produce the position and orientation ofa vehicle relative to geographic frame of reference. We present notationfor representing position and orientation, and the effects that occur due toearth’s motion and gravity. We then evaluate the relevance of these effectsfor a short term navigation application.

The navigation frame is, following [7], a local geographic frame whichhas its origin at the location of the navigation system, point P, and axesaligned with the directions of north, east and the local vertical (down). Thechoice on navigation frame orientation on this report is depicted on Figure2.2, with the axis x, y and z aligned with the directions east, north and up,respectively.

5

Page 8: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

The position of the vehicle is represented by the global coordinates lat-itude, longitude and altitude. Again following [7] we denote these by L, λand h, respectively. We will also denote the location vector λ, defined as

λ =[λ L h

]T(2.5)

Note the convenient match with the orientation of the navigation frame infigure 2.2

The orientation of the vehicle is represented by the unit quaternion q, sothat when q = 1 the body frame has the same orientation as the navigationframe. When q 6= 1 an origo centered vector value rb can be converted backin to the navigation frame by quaternion rotation:

rn = q rb q∗

This implies that translational acceleration sensed in the body frame can betranslated to acceleration in the navigation frame, and integrated to yieldposition.

2.2.1 Forces experienced

An accelerometer rigidly strapped down to a point u on a vehicle traveling inthe navigation frame will experience the body-frame accelerations ab causedby changes in the vehicles speed and orientation, gravity and the pseudoforces resulting from earth’s rotation[7], as indicated by Equation (2.6).

ab = rot(q∗, xn)+ (ω ·u)ω− |ω|2u+ ω×u+ rot[q∗,gn(λ) + pseudo(λ, λ)

]

(2.6)where ω is the body axis rotation vector and u is also expressed on the bodyframe coordinates.

The effects of that the pseudo forces have on navigation can be compen-sated for by using methods presented in [7]. A navigation system compen-sated in this manner has oscillatory error components, namely the Schuleroscillation, Foucault oscillation and a 24 hour oscillation. Of these errorcomponents, the Schuler oscillation has the shortest period of approximately84.4 minutes.

For short term navigation of up to one minute the pseudo forces can beignored without significantly losing accuracy. We can also assume that thegravity remains relatively constant during the navigation period and pursuea simplified model where equation (2.6) is reduced to

ab = rot(q∗, xn) + (ω · u)ω − |ω|2u + ω × u + rot[q∗,gn

](2.7)

that is the accelerometer experiences forces due to translational acceleration,rotational forces, and a force due to gravity.

6

Page 9: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Chapter 3

Setup

We narrow down the scope of our study by stating an error model for thesensors and by defining a sensor configuration which is to serve as our basis.The error model allows us to explore the effects that systematic and randomerror on the sensors have on the overall performance of the system. Theinitial sensor configuration that we present is an industrially attractive sen-sor configuration where all sensors could be placed on a single circuit board.This configuration is used in deriving necessary conditions for a feasible INSsystem, which is done in Chapter 4.

3.1 Sensor Measurement equation

The measurement equation for an accelerometer can be derived by adding asimple error model to (2.7). We denote the measurement of the accelerom-eter by yb or by y for a shorter notation and set the following error model

y = Cab + b + E ε (3.1)

where

• C and b are constants of the accelerometer

• ε is vector of Gaussian white noise ∼ N(0, I)

• E is a matrix with the scaling and cross correlation of the noise.

The constant b can be interpreted as a sensor bias term and the constantC can be interpreted as a term which contains the scaling, cross correlationbetween axes and a possible misalignment of the sensor. The error modeltherefore accommodates first order systematic errors and errors arising fromrandom noise.

7

Page 10: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Figure 3.1: Placement of accelerometers a1 - a4

3.2 Initial sensor configuration

The initial strapdown inertial navigation configuration has 4 three dimen-sional accelerometers situated on a plane rectangle. The placement of thesensors is illustrated on figure 3.1. The position vectors of the sensors in thebody frame coordinates are as follows:

u1 = [ m, l, 0 ]T

u2 = [ −m, l, 0 ]T

u3 = [ −m, −l, 0 ]T

u4 = [ m, −l, 0 ]T

(3.2)

We simplify the case in study with one additional constraint, which isthat C and E are diagonal matrices

C =

c1,1 0 00 c2,2 00 0 c3,3

E =

σ1,1 0 00 σ2,2 00 0 σ3,3

(3.3)

This restriction implies that all accelerometers are identically aligned to thebody frame, that the cross-axis sensitivity of the accelerometers is insignif-icant and that sensor noise is uncorrelated between the axes. Additionally,we assume that the measurement errors between sensors are uncorrelated,e.g. εi ⊥ εj , i 6= j

8

Page 11: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

3.3 Notation

The upcoming calculations need to index sensors and matrix elements atthe same time without ambiquity. To facilitate this, we define a notationfor element access to a matrix or vector, borrowing from the element accessnotation of computer languages. Let C4 be a matrix such that

C4 =

c11 c12 c13

c21 c22 c23

c31 c32 c33

We define the notations

C4[1, 3] = c13 and C4[1, · ] =[c11 c12 c13

]

For a vector b =[b1 b2 b3

]we allow indexing with a single number regard-

less of orientation, eg.b[2] = bT[2] = b2

The motivation is that C4[1, 3] allows us to index on the calibrationmatrix of the 4th accelerometer, element (1, 3). Similarly, b2[2] indexes thebias term of the second accelerometer, element 2 (bias for axis 2).

In addition we note the body axes directions with the letters u, v and w.The body axis vectors are noted with the caron(ˇ), so u, v and w are the

body frame vectors[1 0 0

]T,[0 1 0

]Tand

[0 0 1

]T, respectively.

9

Page 12: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Chapter 4

Findings

The accelerometer platform of Figure 3.1 experiences forces caused by trans-lational acceleration, angular velocity and angular acceleration. The forcescaused by angular velocity and acceleration are illustrated in figures 4.1 and4.2. In figure 4.1 all forces are constrained to the sensor plane. In figure4.2 the forces caused by w direction rotation are aligned on the plane andthe other two rotations are off the plane.

We now examine the sensor configuration in more detail. Let φ be a unitvector denoting an axis of rotation. Given the acceleration measurement yi

of the sensor i placed in ui, taking the product

yi · (φ × ui) (4.1)

yields (at least) the measurement component of angular acceleration aroundthe axis φ. Similarly, taking the product

yi · {(ui · φ)φ − ui} (4.2)

Figure 4.1: The centrifugal acceleration of the rotations. Note that the ac-celerometers actually measure the inwards directed centripetal acceleration.

10

Page 13: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Figure 4.2: The tangential accelerations caused by the angular accelerations.

i u v w

1 0 0 l 0 0 −m −l m 02 0 0 l 0 0 m −l −m 03 0 0 −l 0 0 m l −m 04 0 0 −l 0 0 −m l m 0

Table 4.1: The cross products φ × ui for sensors 1-4 and axes u-w

yields (at least) the measurement component of angular velocity around theaxis φ. We now define two sums that are of interest for the navigationplatform:

• the angular velocity measurement for the axis φ

rotvΣ(φ) =∑

i

yi · {(ui · φ)φ − ui} (4.3)

• and the angular acceleration measurement for the axis φ

rotacΣ(φ) =∑

i

yi · (φ × ui) (4.4)

4.1 Acceleration sums

We now examine (4.4) in more detail. The cross product in the parenthesisis calculated in table 4.1 for all the sensors and body main axes. Takingthe dot product and adding, we see that for this sensor configuration the

11

Page 14: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

measurement sums related to ω[1], ω[2] and ω[3] are

rotacΣ(u) = l(y1[3] + y2[3]) − l(y3[3] + y4[3]) (4.5)

rotacΣ(v) = m(y2[3] + y3[3]) − l(y1[3] + y4[3]) (4.6)

rotacΣ(w) =[−l m 0] · y1 + [−l − m 0] · y2+

[l − m 0] · y3 + [l m 0] · y4(4.7)

The first two sums are sums of measured acceleration in the w direction,yi[3]. Keeping in mind equations (3.1, 3.3) we can write

yi[3] = Ci[3, · ]ai + bi[3] + Ei[3, · ] ε= ci[3, 3]ai[3] + bi[3] + σi[3, 3] ε[3]

(4.8)

where we note that ci[3, 3] = Ci[3, 3] and σi[3, 3] = Ei[3, 3]. Further keepingin mind equation (2.4) we can expand the third component of acceleration,which yields

ai[3] = a0[3] + (ω · ui)ω[3] − 0 + (ω[1]ui[2] − ω[2]ui[1])

= . . .

= a0[3] + (ω[3]ω[1] − ω[2])ui[1] + (ω[3]ω[2] + ω[1])ui[2]

where a0 is the acceleration of the centerpoint of the body frame.

Considering for a moment only the sum of actual acceleration with re-gards to axis u,

∑i ai[3] · (u × ui), we get

i

ai · (u × ui) = (l + l − l − l)a0[3]+

(lm − lm + lm − lm)(ω[3]ω[1] − ω[2])+

(l2 + l2 + l2 + l2)(ω[3]ω[2] + ω[1]))

= 4l2(ω[1] + ω[3]ω[2]) (4.9)

a term which has the desired rotational acceleration ω[1] and a cross axisrotation term ω[3]ω[2] whose existence can also be verified by examiningfigure 4.2. The sums of actual acceleration with regards to axes v and wcan also be calculated and are as follows:

i

ai · (v × ui) = 4m2(ω[2] − ω[3]ω[1]) (4.10)

i

ai · (w × ui) = 4l2(ω[3] − ω[1]ω[2]) + 4m2(ω[3] + ω[1]ω[2]) (4.11)

12

Page 15: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

4.1.1 The square shape

It is worth noting that the acceleration sum of the axis w is greatly simplifiedif the rectangle shape is reduced to a square, whereby we obtain:

i

ai · (w × ui) = 8m2ω[3] (4.12)

The sum 4.12 differs from the previous sums significantly in the factthat it is possible to evaluate the change in rotation around the axis windependently from any other rotational states of the object.

4.2 Effects of measurement error

Taking into account the error model of 3.1 allows us to determine how ac-curately the rotational accelerations can be estimated from the observedrotational sums rotacΣ(φ). In the general case the measurement sums havea significant amount of contributing terms. Comparing to equation (4.9),the first terms of rotacΣ(u) would be

rotacΣ(u) = l a0[3] (c1[3] + c2[3] − c3[3] − c4[3]) + . . .

where the calibration parameters don’t cancel out and the translational termis also present. For the case of identical (or properly compensated) sensors

Ci = Cj , bi = bj and Ei = Ej ∀ i, j

the sum rotacΣ(u) becomes

rotacΣ(u) = c[3, 3] 4l2(ω[1] + ω[3]ω[2]) +∑

i

(u × ui)σ[3, 3]εi[3]

= c[3, 3] 4l2(ω[1] + ω[3]ω[2])+ (4.13)

l σ[3, 3] (ε1 + ε2 − ε3 − ε4)[3]

which shows the resultant rotational terms and the remaining error terms.The bias term is negated in the same manner as the translational accelerationterm in 4.9.

4.2.1 Square shape acceleration sum

We now calculate the measurement acceleration sum for the axis w for thecase where the sensors are placed on a square. Since the sum now con-tains elements in two axes (see 4.7), we simplify our study by placing theadditional restrictions that

C =

c 0 00 c 00 0 c

and E =

σ 0 00 σ 00 0 σ

13

Page 16: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

for all sensors. We then obtain a simple form similar to 4.12:

rotacΣ(w) = 8m2c ω[3] + noise (4.14)

where the noise term is

noise =∑

i

{Ei εi}[1] · (w × ui)[1] +∑

i

{Ei εi}[2] · (w × ui)[2]

The noise is uncorrelated by definition, so we can ignore the sign of thew×ui term. We can also group the sums of the two axes together to obtaina simpler, equivalent noise term:

noise =8∑

i=1

m σ εi

where εi ∼ N(0, 1) ∀i. Applying the basic rules of Var(aX) = a2 Var(X)and Var(X +Y ) = Var(X)+Var(Y )+2Cov(X,Y ) we obtain that expectedvalue and variance of the noise term are

E(noise) = 0 and Var(noise) = 8m2σ2 (4.15)

Therefore if we divide the measurement sum by 8m2c, we get an expressionwhose expected value is the angular acceleration ω[3] and whose variance is

Var

(noise

8m2c

)=

���8m2σ2

(8m2)�2c2=

σ2

8m2c2

The square shape therefore has an an independent estimator for therotational acceleration of axis w, whose definition we restate here:

ω[3] =rotacΣ(w)

8m2c=

∑i yi · (w × ui)

8m2c(4.16)

with

E( ω[3]) = ω[3] and Var( ω[3]) =σ2

8m2c2

The noise variance is expressed at an arbitrary scale of measurement,to which the term c act as a scaling factor. We can therefore reduce theequations to a normalized scale so such that σ is the accelerometer noisestd. deviation expressed in m/s2 i.e.

σ =σ

c

by also noting that the distance of the sensors from the rotation axis isr =

√2m we can reduce the estimator variance to a very clear form:

Var( ω[3]) =σ2

4r2(4.17)

These results give us confidence to make the following generalizations:

14

Page 17: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

(a) strictly bounded (b) bounded on 2 axes (c) bounded on 1 axis

Figure 4.3: Diamond shapes within a box shape

1. If the sensors are constrained to a plane with the rotation axis φ, thenthe angular acceleration cannot be independently measured. That is,the angular acceleration then cannot be determined without knowingthe angular velocity (the ω[3]ω[2] term of (4.9)).

2. A strapdown accelerometer of n sensors with normally distributednoise of variance σ2 at a radius r from the rotation axis allows themeasurement of the angular acceleration about that axis with a vari-ance of

σ2

n r2

The first generalization can also be formally stated as follows:

Hypothesis 4.2.1 (Sensor configuration requirement). The angular accel-eration of an axis φ can be determined independently from accelerometermeasurements only if the rotation axis vector and the accelerometer bodyframe location vectors form a basis for R

3

4.3 3D sensor geometries

Having established the necessary condition for independent estimation ofrotational acceleration, we now examine two 3 dimensional sensor configu-rations which allow the inpendent measurement of rotational accelerationfor all three axes. The first configuration is modeled after the minimal threedimensional configuration presented in [4], consisting of 6 one axis accele-rometers. The configuration presented in the article used single axis linearaccelerometers, but we will limit our comparison on a configuration utilizing“3 axis” accelerometers. The accelerometers in the first configuration areplaced at the centers of cube faces, as shown in 4.3a.

Assuming that the length of the cube edges is 2m, the sensor configura-tion of 4.3a has for each axis a set of sensors located on a square plus two

15

Page 18: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

12

3

8

4

56

7

u

v

w

(a) sensor placement

u

(b) angular acceleration for u axis

Figure 4.4: A cube shaped sensor configuration

sensors located on the axis. The sensors on the axis do not experience rota-tional forces, so the angular acceleration is determined from the square set,with the sensors located at a radius of m. According to (4.17) the angularacceleration in this configuration can then be determined with a variance of

σ2

4m2

A second, alternative configuration can be constructed by placing theaccelerometers to the corners of a cube, as shown in 4.4a. The rotationalacceleration of a given axis is then measured from two square sets of sensors,as shown in 4.4b for axis u. Comparing with (4.16), this configuration hastwice as many sensors, so it allows the angular acceleration to be measuredwith a variance of

Varcube(ω[i]) =σ2

16m2, i = 1, 2, 3 (4.18)

When the shape constraining the placement of the sensors is a cube, it isthen certainly a better configuration in terms of accuracy.

The increase in accuracy with the cube shape is due both to a largerplacement radius as well as two extra sensors. To obtain a fair comparisonwith the diamond configurations, we also calculate the accuracy of the dia-mond configurations when they are rotated and expanded as shown in figure4.3. Going from 4.3a to 4.3b yields an increase in radius of m →

√2 m, while

the diamond as fitted in 4.3c has a radius of√

3 m. The respective variancesfor 4.3b and 4.3c are therefore

σ2

8m2and

σ2

12m2

16

Page 19: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

The cube configuration had a higher accuracy with it’s variance of

σ2

16m2

However, since the cube has 8 accelerometers rather than the 6 of the di-amond, the two are essentially equal when the placement of the sensors isconstrained on only one axis. When the placement is restricted on two axes,the cube configuration yields better performance per sensor.

4.4 Practical considerations

We now relate the equations we have derived to a practical example of realworld dimensions and commercial accelerometers, which were at the time ofthis study being tested at Indagon.

4.4.1 Available dimensions

A short interview of Indagon personnel was carried to determine how smalla real world sensor configuration would have to be to remain marketable.Most Indagon products were designed to comply with the space constraintsof ISO standard 7736 [8], allowing a smallest maximum edge length of 5cm.Even the largest Indagon products had a smallest maximum dimension of10cm.

4.4.2 Accelerometer accuracy

The accuracy of the accelerometers was 3mg RMS according to the spec-ifications, which is 0.02943m/s2 with a gravity constant of g = 9.81m/s2.A more pessimistic estimate was also obtained by recording the output ofthe accelerometer in a stationary vehicle with the engine turned on. Inter-preting all variations of the signal as noise yielded a pessimistic estimate of0.047m/s2

4.4.3 Angular acceleration accuracy

Knowing the dimensions and the accuracy of the sensors, we can obtain avalue for the systems angular acceleration accuracy measurements. Placingour values to 4.18, we obtain a pessimistic estimate of

Varcube(ω[i]) =(0.047m/s2)2

16(0.025m)2= 0.2209

1

s4

and an optimistic estimate of

Var′cube(ω[i]) =

(0.02943m/s2)2

16(0.05m)2≈ 0.02165

1

s4

17

Page 20: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Meas. no. time (s)

1 5.502 5.333 4.584 4.61

Table 4.2: Time taken to reach angular speed 0.856 1/s

or expressed as std. deviations:

σcube = 0.471

s2and σ′

cube = 0.147151

s2

4.4.4 Typical vehicle behaviour

The navigation accuracy of a system using strapdown accelerometers couldbe studied using simulation. For this purpose, a simple test was made todetermine the range of angular velocities and accelerations the navigationsystem would encounter. The test setup and their results are included herefor the sake of completeness and possible future work. The tests were con-ducted with an SUV and a stopwatch as follows:

1. The angular velocity was determined by driving the SUV in a circleas quickly as possible. Two laps were used for warm up and then fivelaps were timed. The time taken for five circles was 36.30 s, giving anangular velocity of 5 ∗ 2π/36.3s = 0.8651

s

2. The angular acceleration was determined by accelerating the vehiclefrom zero to the same (angular) speed as in the first test and measuringthe time taken to reach that speed. The results are listed on table 4.2.

The acceleration times showed task improvement on the first few runs. Itshould be noted that the angular acceleration of the vehicle was not constantduring the runs. The average angular acceleration on the “best effort” timeof roughly 4.6s is 0.8651

s/4.6s = 0.188 1

s2

We now associate the measured values to the distributions they repre-sent. Since the vehicle was spesifically performing maximum velocity andacceleration maneuvers we choose that the measured angular velocity repre-sents a 3σ value and that the measured angular acceleration represents a 2σvalue. We make the assumption that the angular velocities and accelerationsare roughly normally distributed and get the following (rounded) standarddeviations of σω = 0.3 and σω = 0.1 Note that these values serve only togive the correct order of magnitude and apply to urban environments andlow speeds.

18

Page 21: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Chapter 5

Conclusions and Discussion

In this report, we have examined a cube shaped accelerometer configurationfor gyroscope free inertial navigation, and compared it against the more com-mon diamond configuration. The cube configuration always outperforms theaccuracy of the diamond configuration. Nevertheless, the diamond config-uration may still be a viable option, if sensor costs are significant and thespace constraints are not too strict. The derived error model yields an es-timate for the systems angular acceleration accuracy measurement, whichcan be used to analyze the viability of a commercial system.

An inertial navigation systems position accuracy evolves in time accord-ing to a Stochastic Differential Equation(SDE), so the examination of thesystems position accuracy is left outside the scope of this report. An intro-duction to SDEs can be found on [2]. The position error due to the angulardetermination grows at a rate comparable to t4 on a system relying only onangular acceleration. It should be noted that the absolute value of angularvelocity can be estimated from (4.3), and this can be used to improve thenavigational capability of the system.

The combination of the ω and ω data is a separate problem, deservingof its own article. The inclusion of the angular velocity information wouldkeep the velocity error bounded at all times and reduce the growth rate ofposition error to t3. Possible solutions for this problem include the extendedKalman filter and the unscented Kalman filter [9].

19

Page 22: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Appendix A

Quaternions

The following is copied with permission from [6] written by Simo Sarkka:

A.1 Basic Properties

Definition A.1 (Quaternion). A quaternion is a R4 vector of the form

q =

q1

q2

q3

q4

. (A.1)

what makes quaternions different from ordinary 4-dimensional vectors arethe algebraic properties to be defined in this section. In order to write thedefinitions of the basic algebraic operations of quaternions in compact formthe components are often divided to scalar part s and vector part v ∈ R

3 asfollows:

q =

[sv

]. (A.2)

The quaternion q can be also considered as a 4-component extended complexnumber of the form

q = q1 + q2 i + q3 j + q4 k, (A.3)

where the imaginary components i, j,k have the computation rules

i ∗ i = −1 i ∗ j = k j ∗ i = −k etc. (A.4)

Definition A.2 (Quaternion conjugate). The conjugate q∗ of quaternion q

is defined as

q∗ =

q1

−q2

−q3

−q4

(A.5)

20

Page 23: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Definition A.3 (Quaternion sum). The sum of quaternions is the same asthe vector sum:

q + p =

q1 + p1

q2 + p2

q3 + p3

q4 + p4.

(A.6)

Definition A.4 (Quaternion product). The product of two quaternions

q =

q1

q2

q3

q4

p =

p1

p2

p3

p4

(A.7)

is defined as

q ∗ p =

q1 p1 − q2 p2 − q3 p3 − q4 p4

q2 p1 + q1 p2 − q4 p3 + q3 p4

q3 p1 + q4 p2 + q1 p3 − q2 p4

q4 p1 − q3 p2 + q2 p3 + q1 p4

. (A.8)

This can be derived by writing the quaternions in extended complex form andexpanding the product. The quaternion product is not commutative q ∗ p 6=p ∗ q.

Remark A.1.1 (Partitioned quaternion product). The product of two qua-ternions

q =

[sq

vq

]p =

[sp

vp

](A.9)

can be also computed as

q ∗ p =

[sq sp− < vq,vp >

sq vp + sp vq + vq × vp

](A.10)

where < vq,vp > denotes the dot product and vq × vp denotes the crossproduct of vectors vq and vp.

Remark A.1.2 (Matrix representation of quaternion product). The productof two quaternions

q =

q1

q2

q3

q4

p =

p1

p2

p3

p4

(A.11)

can be also written as matrix product:

q ∗ p = Q(q)p =

q1 −q2 −q3 −q4

q2 q1 −q4 q3

q3 q4 q1 −q2

q4 −q3 q2 q1

p1

p2

p3

p4

, (A.12)

21

Page 24: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

or equivalently as

q ∗ p = P(p)q =

p1 −p2 −p3 −p4

p2 p1 p4 −p3

p3 −p4 p1 p2

p4 p3 −p2 p1

q1

q2

q3

q4

. (A.13)

Definition A.5 (Quaternion length). The length of a quaternion is thesame as the norm of the corresponding vector:

|q| =√

q ∗ q∗ =√

q21 + q2

2 + q23 + q2

4 . (A.14)

Definition A.6 (Quaternion inverse). The inverse of quaternion q withrespect to the quaternion product is given as

q−1 =q∗

|q|2 . (A.15)

Theorem A.1.1 (Quaternion exponential). The exponential of quaternion

q =

[sv

]. (A.16)

is given as

exp(q) = exp(s)

[cos(|v|)

v|v| sin(|v|)

](A.17)

Theorem A.1.2 (Quaternion logarithm). The logarithm of quaternion

q =

[sv

]. (A.18)

is given as

ln(q) =

[ln(|q|)

v|v| arccos

(s|q|

).

](A.19)

Theorem A.1.3 (Quaternion power). Quaternion power can be defined as

qp = exp(ln(q) ∗ p). (A.20)

Note that if p is in fact scalar, then the power is

qp = exp(ln(q) p). (A.21)

22

Page 25: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

A.2 Quaternion Representations of Rotations

Definition A.7 (Unit quaternion). If quaternion is of the form

q =

[cos(θ/2)

u sin(θ/2)

], (A.22)

where

• θ is a rotation angle,

• u is a 3-dimensional unit vector.

then q is a unit quaternion. Unit quaternions can be used for representinga rotation of angle θ around the axis u. The unit quaternion also has unitlength |q| = 1.

Definition A.8 (Augmented point). In order to clean up the notation weshall define an augmented point, which is a quaternion r formed from pointr ∈ R

3 as follows:

r =

[0r

](A.23)

This augmentation is always denoted by the line over the vector.

Theorem A.2.1 (Rotation). Rotation of vector r ∈ R3 an angle θ around

a unit vector u ∈ R3 can be computed as

r′ = q ∗ r ∗ q∗, (A.24)

where r is the augmented original vector, r′ denotes the aumented rotatedvector and q is a unit quaternion defined as in (A.22).

Remark A.2.1 (Inverse rotation). The inverse rotation can be obtained byconjugating the rotation quaternion, that is:

r = q∗ ∗ r′ ∗ q, (A.25)

Theorem A.2.2 (Conversion to direction cosine matrix). Rotations can beequivalently represented in terms of direction cosine matrix C as follows:

r′ = Cr. (A.26)

A unit quaternion can be converted into equivalent direction cosine matrixas follows:

C =

(q21 + q2

2 − q23 − q2

4) 2(q2 q3 − q1 q4) 2(q2 q4 + q1 q3)2(q2 q3 + q1 q4) (q2

1 − q22 + q2

3 − q24) 2(q3 q4 − q1 q2)

2(q2 q4 − q1 q3) 2(q3 q4 + q1 q2) (q21 − q2

2 − q23 + q2

4)

.

(A.27)

23

Page 26: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

A.3 Quaternion differential equations

Theorem A.3.1 (Time behavior of unit quaternion). The time evolution of

time varying quaternion with angular velocity ω(t) =[ω1(t) ω2(t) ω3(t)

]T

is given by the differential equation

∂q

∂t=

1

2q ∗ ω, (A.28)

where ω is the augmented angular velocity vector.

Remark A.3.1 (Matrix representations of time behavior). The equation(A.28) can be also written in form

∂q

∂t= Fq(ω)q, (A.29)

where

Fq(ω) =1

2

0 −ω1 −ω2 −ω3

ω1 0 ω3 −ω2

ω2 −ω3 0 ω1

ω3 ω2 −ω1 0

. (A.30)

Theorem A.3.2 (Solution with constant angular velocity). If the angularvelocity ω is time independent constant, then the solution to the equation(A.28) with given initial conditions q(t0) can be written as

q(t) = Φq(t0, t;ω)q(t0), (A.31)

where the transition matrix Φq(t0, t;ω) is given as

Φq(t0, t;ω) = exp [Fq(ω)∆t]

= cos (|ω|∆t/2) I + 2sin (|ω|∆t/2)

|ω| Fq(ω),(A.32)

where ∆t = t − t0.

Theorem A.3.3 (Solution in quaternion form). The solution (A.31) canbe expressed as the quaternion product

q(t) = q(t0) ∗ φq(t0, t;ω), (A.33)

where

φq(t0, t;ω) = exp(ω ∆t/2)

=

[cos (|ω|∆t/2)

ω

|ω| sin (|ω|∆t/2)

](A.34)

and ∆t = t − t0.

24

Page 27: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

A.4 Quaternion interpolation

Definition A.9 (SLERP).

p(t) = (q1 ∗ q−10 )t ∗ q0. (A.35)

25

Page 28: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Appendix B

Complementary notes on

quaternions

The following remarks complement the material presented in appendix A.

B.1 Additional properties

Definition B.1 (Unit quaternion). A unit quaternion q is simply a quater-nion with unity length

|q| = 1

Remark B.1.1 (Unit quaternion inverse). The inverse of a unit quaternionis the quaternion conjugate

q−1 = q∗ , |q| = 1

Remark B.1.2 (Identity quaternion). The identity quaternion is simplythe real number one.

qq−1 =[1 0 0 0

]T= 1

Remark B.1.3 (Augmented point inverse). The conjugate of an augmentedpoint is it’s negative

r∗ = −r

Remark B.1.4 (Quaternion associativity and commutivity). Quaternionsare associative but they are not commutative.

a(bq) = (ab)q = abq

ab 6= ba

26

Page 29: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

B.2 Quaternion representation of reference frames

Remark B.2.1 (Quaternion differential equation reference frames). Giventwo reference frames, a and b, and the transformation of vectors betweenthese reference frames defined as

ra = q rb q∗

, where r is some vector, the quaternion differential equation is

q =1

2q ωb

with the rotation expressed it the b frame and

q =1

2ωa q

with the rotation expressed it the a frame.

27

Page 30: Accelerometer configurations for a gyroscope free inertial navigation systemsalserver.org.aalto.fi/vanhat_sivut/Opinnot/Mat-2.4108/... · 2008-06-13 · In this report, we study

Bibliography

[1] Kirill Mostov Chin-Woo Tan, Sungsu Park and Pravin Varaiya. Designof gyroscope-free navigation systems. In IEEE Intelligent TransportationSystems Conference Proceedings, pages 286–291, August 2001.

[2] Lawrence C. Evans. An introduction to stochastic differential equations.Technical report, 2007.

[3] Alexander L. Fetter and Johh Dirk Walecka. Theoretical Mechanics ofParticles and Continua, chapter 2. Dover Publications, Inc., 2003.

[4] Sou-Chen Lee Jeng-Heng Chen and Daniel B. DeBra. Gyroscope freestrapdown inertial measurement unit by six linear accelerometers. Jour-nal of Guidance, Control and Dynamics, 17(2):286–290, 1994.

[5] Angus P. Andrews Mohinder S. Grewal, Lawrence R. Weill. Global Po-sitioning Systems, Inertial Navigation, and Integration. John Wiley &Sons, Inc., 2001.

[6] Simo Sarkka. Notes on quaternions. Technical report, 2007.

[7] D. H. Titterton and J. L. Weston. Strapdown Inertial Navigation Tech-nology. Peter Pregrinus Ltd., 1997.

[8] ISO/TC 22 Road vehicles, editor. ISO 7736:1984 Road vehicles – Carradio for front installation – Installation space including connections.International Organization for Standardization, 1984.

[9] E.A. Wan and R. Van Der Merwe. The unscented kalman filter for non-linear estimation. In Adaptive Systems for Signal Processing, Communi-cations, and Control Symposium. AS-SPCC. The IEEE, pages 153–158,2000.

28