In order to utilize a recently-developed 9DOF sensor node for the purpose of body segment orientation estimation, the aim of this work was to derive a suitable calibration algorithm, since non-calibrated sensor systems may cause problematic deviations in orientation with respect to a reference system. This new approach for calibrating the developed low-cost MARG sensor system consists of basically two different procedures using the IPANEMA body sensor network (BSN) and our recently-constructed calibration cube.
Figure 1 gives an overview of the overall calibration procedure, where the actions to be performed by the user are depicted in rectangular boxes on the left and the corresponding algorithm parts are shown on the right. In this section, we present the IPANEMA BSN, used for experimental validation, the sensor model and the calibration setup. Furthermore, our developed algorithm is discussed.
3.1. The IPANEMA Body Sensor Network
The IPANEMA BSN [
18] was developed as a modular structure BSN that communicates between a master and multiple slave nodes by using the 433-MHz industrial, scientific and medical (ISM) band (CC1101, Texas Instruments Inc, Dallas, TX, USA). Allowing a maximum data rate of 250 kbps (which is sufficient for the typical activity and physiological parameter measurements), the advantage of the ISM band realized communication is the reduced susceptibility to the electromagnetic shadowing effects of the human body. An overview of the modular board structure is given in
Figure 2. The interfaces CON1 and CON2 can be used to connect a slave node sensor modality or the master node communication board to the data collecting system. The IPANEMA BSN employs time division multiple access (TDMA) over a star-shaped network architecture. IPANEMA hardware and software design, for example the hardware abstraction layers (HAL) and the medium access control (MAC), guarantees a modular integration and the communication of various extension boards, carrying different sensing modalities. IPANEMA v2.5 is equipped with power management (LTC3558, Linear Technology, Milpitas, CA, USA), two extension ports (CLP160-02-X-D, Samtec, New Albany, IN, USA) and a microcontroller (MSP430F1611, Texas Instruments Inc., Dallas, TX, USA). Additionally, it provides an extension port (Microstac12, Erni Electronics GmbH, Adelberg, Germany) for custom functional units, including sensors and actuators.
Figure 2.
Integrated Posture and Activity Network by Medit Aachen (IPANEMA) design and components. (a) IPANEMA main board design; (b) IPANEMA 9DOF node design.
Figure 2.
Integrated Posture and Activity Network by Medit Aachen (IPANEMA) design and components. (a) IPANEMA main board design; (b) IPANEMA 9DOF node design.
Two extension boards were designed for IPANEMA BSN-based orientation estimation. The first extension board (EXO board) is equipped with triaxial inertial and magnetic sensors, as shown in
Figure 2b. The inter-integrated circuit (I
C) bus with the microcontroller as the master and all of the sensors as slaves is used for on-board communication. The gyroscope (ITG-3200, InvenSense Inc., San José, CA, USA) and the acceleration sensor (ADXL312, Analog Devices Inc., Norwood, MA, USA) are based on MEMS technology; the magnetic field sensor (HMC5883L, Honeywell International Inc., Morristown, NJ, USA) uses magneto-resistive elements to measure the magnetic field strength. The second sensor node (ADIS16400 board) uses an integrated 9DOF inertial/magnetic sensor (ADIS16400, Analog Devices, Norwood, MA, USA). In
Table 1, important parameters of the integrated sensors are listed for comparison. MEMS inertial and magneto-resistive sensing elements are small and provide low-cost and low-energy measurements of the gravitational acceleration, angular velocity and magnetic field strength. However, especially low-cost sensors still lack bias stability and have a comparatively high spectral noise. Therefore, in addition to sophisticated data fusion methods, a calibration procedure is necessary before a 9DOF MARG sensor system can be used.
Table 1.
Specifications of both the reference and proposed BSN-integrated magnetic, angular rate and gravity (MARG) sensor system in comparison.
Table 1.
Specifications of both the reference and proposed BSN-integrated magnetic, angular rate and gravity (MARG) sensor system in comparison.
| ADIS16400 | | IPANEMA EXOBoard |
---|
| Sensitivity | Range | | Type | Range | Sensitivity |
---|
Gyroscope | 0.05/s/LSB | ±300/s | | ITG-3200 | 0.07/s/LSB | ±2000/s |
Accelerometer | 3.33 mg/LSB | ±18 g | | ADXL312 | 23.3 mg/LSB | ±12 g |
Magnetometer | 0.5 mGauss/LSB | ±3.5 Gauss | | HMC5883L | 0.73 mGauss/LSB | ±0.88 Gauss |
| | | | | | |
3.2. Sensor Modeling
The orientation of a rigid body in space is described by the transformation from an arbitrary body-fixed coordinate system, the so-called body frame
B, to a static reference system, the navigation frame
N, whose axes are fixed to the Earth’s geographic coordinate system. Based on physical characteristics, a common way to describe the reference system is the local geodetic frame, whose x-axis points to magnetic north, and the z-axis is in parallel down to the gravitational acceleration vector. Thus, the y-axis completes the right-handed reference system pointing to the east. Transformation of a vector
between two different coordinate systems is performed by a rotation matrix or the so-called direction cosine matrix (DCM)
, where
i and
j depict the current and target system, such that:
The DCM in
is defined as an orthonormal matrix, which obeys:
Note that the DCM can either be used to transform vectors between two systems or to characterize the body orientation relating to the chosen reference system. To achieve stability and increase computational efficiency in navigation tasks, utilization of the orientation quaternion description is an appropriate way, because of its non-singularity and simple mathematical manageability in comparison to other descriptions, like the Euler rotation, Euler angles (roll, pitch and yaw angle) or the rotation matrix given above. For the set of all quaternions
in the four-dimensional vector space, any single quaternion
can be written as:
where
depicts the scalar and
the vector part. As quaternions form a division algebra, their norm and conjugate are defined as:
For the purpose of the orientation description,
is subdivided into the subset of unit quaternions
, which fulfil
and, thus, represent valid orientations. Using normed quaternions, the rotation of any vector
is simply performed by:
where ⊗ denotes the non-commutative quaternion multiplication operator and
expresses the transformation from the
B to
N frame (body to navigation frame, respectively). The relation between the quaternion time derivative
and the navigation system-related angular velocity vector
is described by the well-known identity:
The body-referenced rotational velocity
can be expressed by making use of the inverse rotation given in Equation (
6):
With Equation (
7), it follows:
which finally leads to the sensor referenced angular velocity differential equation:
Since multiplication is non-commutative in quaternion algebra, it should be noted that Equation (
10) does not equal Equation (
7) in general.
For the purpose of orientation estimation, the human movement is modeled by a non-linear state space system depicted in
Figure 3, as given in [
19]. The resulting non-linear state equations for the assumed human gait model are given as follows:
with
and
,
. The additive input component
is assumed to be white Gaussian noise modeling the stochastic human movement.
Figure 3.
Model of human movement modified according to [
19].
Figure 3.
Model of human movement modified according to [
19].
Figure 4.
Block diagram of the extended Kalman filter design (a) in conventional MARG orientation estimation and (b) with quaternion estimator (QUEST) preprocessing.
Figure 4.
Block diagram of the extended Kalman filter design (a) in conventional MARG orientation estimation and (b) with quaternion estimator (QUEST) preprocessing.
In this approach, the acceleration vector
, as well as the magnetic field strength vector
, both obtained by the MARG sensor system, are preprocessed by the quaternion estimator (QUEST) algorithm [
20] in order to avoid time-intensive calculation of the functional matrix as otherwise demanded by the stand-alone extended Kalman filter (EKF) approach. In contrast to that in this case the estimated quaternion vector
is treated as an actual measurable quantity, as shown in
Figure 4, resulting in the following linear measurement model for the EKF:
where
is assumed to be zero-mean white Gaussian measurement-related noise. For a detailed description of QUEST, please refer to [
20]. Finally, in order to model sensor inaccuracies, the measurement values are described by the following sensor model:
with matrices
,
,
containing scale factors, cross-axis sensitivity, soft-iron distortions (for magnetic sensors) and misalignment. The vectors
,
,
and
denote bias and hard-iron offset vectors, respectively, and
,
uncorrelated zero-mean white Gaussian noise processes. Since quaternions are a convertible depiction of rotation matrices, the DCM can easily be calculated from:
with
identity matrix and:
the skew-symmetric matrix of a vector product.
Figure 5.
Overview of the components for sensor calibration.
Figure 5.
Overview of the components for sensor calibration.
3.3. Calibration System Design
A calibration system was developed for multi-sensor calibration of the 9DOF MARG sensors. The system was designed for improving existing calibration platforms [
10] and consists of a reference platform (reference block and base) and a BSN case, shown in
Figure 5. The horizontal base and block reference parts are made of precision-milled aluminum cast plate G.AL
C250 (Gleich Group, Kaltenkirchen, Germany); the horizontal base and block reference part are perpendicularly aligned. To align the platform and thus the calibration cube with respect to the g-vector, it is furthermore fitted with knurled-head screws, positioned at the four corners. As indicators of an adequate adjustment, two auto-adhesive water levels (diameter 25 mm, height 10 mm, accuracy ±0.0286
) are mounted on the horizontal base. A compass can be used to align the platform with respect to a certain heading, and thus, during the calibration procedure, the calibration cube can be aligned with the north-east-down system.
The case for the BSN nodes was fabricated from polymethyl methacrylate (PMMA) to prevent signal attenuation in the wireless communication of the BSN (or other wireless sensors that need to be calibrated). The case was designed to house two 9DOF MARG sensors at the same time. Both 9DOF MARG systems can be fixed by specifically-designed rectangular plastic plates and two mean screws in two corners of the top and lower part of the case. The opposite side of the board is fixed with a third screw and an aluminum cylinder. The arrangement for the fixation of the 9DOF MARG sensor systems in the calibration is shown in
Figure 6 with the proper order to the assembly ADIS16400 and EXO board within the case.
Figure 6.
Design of the calibration case (1, Insert, aluminum; 2, 9DOF MARG sensor system; 3, Insert, plastic; 4, M3 screw, steel). (a) IPANEMA ADIS16400 arrangement; (b) IPANEMA EXO arrangement.
Figure 6.
Design of the calibration case (1, Insert, aluminum; 2, 9DOF MARG sensor system; 3, Insert, plastic; 4, M3 screw, steel). (a) IPANEMA ADIS16400 arrangement; (b) IPANEMA EXO arrangement.
3.4. Calibration Algorithm
For the sensor model given in Equation (
13), it is now necessary to estimate the optimal parameters in order to calibrate the developed MARG sensor node properly. The calibration cube relates to an Earth-oriented navigation frame, which holds the gravity and the Earth’s magnetic field vector in the quaternion description as:
with amplitude
h and inclination angle
α. Capturing both EXO and ADIS data, in the first step, the cube is kept in resting position in order to determine the mean static bias vectors
,
,
and
for the different sensor types, where
results from the orientation estimated by the ADIS node. Taking into account the sensor’s dynamical characteristics, in the second calibration step, the cube is then moved by hand on an arbitrary trajectory and finally turned back into starting position, which yields the dynamic movement data of
samples:
Therefore, the data obtained from the ADIS sensor node after orientation estimation with the EKF configuration derived in
Section 3.2 provide both reference orientation
, as well as angular velocity
with:
which are then used to determine the sensor model parameters. Regarding gyroscope characteristics, the first aim is to determine the offset from the static resting trials, yielding:
Thus, the bias of the gyroscope data can be corrected by subtracting the static bias:
For further calculating the dynamical characteristics, in the next step, the matrix
needs to be found that satisfies the following minimization problem:
and can be obtained by:
where
is denoted as the Moore–Penrose pseudo-inverse of Ω. Using polar decomposition [
21],
then can be split giving:
The DCM
in Equation (
23) describes the transformation from the ADIS reference body frame to the EXO body frame, which should approximately hold:
due to small mechanical or sensor package-based misalignments of the calibration cube, as depicted in
Figure 7.
In the next step, the model parameters for both the accelerometer and magnetometer are obtained as follows. Using the previously-recorded quaternion-based orientation data
, the gravity and magnetic field vectors from Equation (
16) are transformed via Equation (
6) to the respective calibration cube orientations, yielding:
where
denotes a
n-dimensional row vector of ones, and quaternion multiplication is performed column-wise. With Equation (
23), the measured acceleration and magnetic field vectors are now rotated into the body reference frame:
Figure 7.
BSN node with mounted MARG sensor extension, different body coordinate frames and and calibration platform-based navigation frame N.
Figure 7.
BSN node with mounted MARG sensor extension, different body coordinate frames and and calibration platform-based navigation frame N.
Solving another convex optimization problem, the calibration parameters for both accelerometer and magnetometer can be obtained by the following optimization problems without constraints:
Note that both Equations (
21) and (
27) may be solved by using different optimization algorithms, like the interior-point, the trust-region-reflective or the Levenberg–Marquardt optimization. Within this contribution, the interior-point optimization was the algorithm of choice. At this point, we split our approach into two different procedures, which are evaluated in the next sections regarding their accuracy within different motion types. In the first approach, all columns of
that do not satisfy:
with a sufficiently high
ε are neglected, as gravity is not measured correctly during accelerated movements. In the second approach, the acceleration samples were not neglected. This was done to further improve the calibration results for high dynamical movements, and thus, the reference gravitation was to be replaced by the reference acceleration
measured by the ADIS node, such that:
for every
that does not fulfil Equation (
28). In both cases, the true sensor outputs now can be obtained by solving Equation (
13) for
ω,
a and
m. As the first approach would provide the best results for slow movements, it was denoted as the static calibration procedure, where the second one, the dynamic calibration, is expected to deliver an orientation estimation within high dynamically experiments more precisely. Based on these assumptions, the derived calibration algorithms were compared to each other, as well as to an optical reference system, as shown in the following section.