Next Article in Journal
MUP: Simplifying Secure Over-The-Air Update with MQTT for Constrained IoT Devices
Next Article in Special Issue
Development of Nationwide Road Quality Map: Remote Sensing Meets Field Sensing
Previous Article in Journal
Optimization of All-Polymer Optical Fiber Oxygen Sensors with Antenna Dyes and Improved Solvent Selection Using Hansen Solubility Parameters
Previous Article in Special Issue
The Millimeter-Wave Radar SLAM Assisted by the RCS Feature of the Target and IMU
Open AccessArticle

A Novel IMU Extrinsic Calibration Method for Mass Production Land Vehicles

1
Control Systems Group, Department of Electrical Engineering and Computer Science, Technische Universität Berlin, D-10587 Berlin, Germany
2
Research and Development, Daimler AG, 71059 Sindelfingen, Germany
*
Author to whom correspondence should be addressed.
Sensors 2021, 21(1), 7; https://doi.org/10.3390/s21010007
Received: 17 November 2020 / Revised: 13 December 2020 / Accepted: 16 December 2020 / Published: 22 December 2020
(This article belongs to the Special Issue On-Board and Remote Sensors in Intelligent Vehicles)

Abstract

Multi-modal sensor fusion has become ubiquitous in the field of vehicle motion estimation. Achieving a consistent sensor fusion in such a set-up demands the precise knowledge of the misalignments between the coordinate systems in which the different information sources are expressed. In ego-motion estimation, even sub-degree misalignment errors lead to serious performance degradation. The present work addresses the extrinsic calibration of a land vehicle equipped with standard production car sensors and an automotive-grade inertial measurement unit (IMU). Specifically, the article presents a method for the estimation of the misalignment between the IMU and vehicle coordinate systems, while considering the IMU biases. The estimation problem is treated as a joint state and parameter estimation problem, and solved using an adaptive estimator that relies on the IMU measurements, a dynamic single-track model as well as the suspension and odometry systems. Additionally, we show that the validity of the misalignment estimates can be assessed by identifying the misalignment between a high-precision INS/GNSS and the IMU and vehicle coordinate systems. The effectiveness of the proposed calibration procedure is demonstrated using real sensor data. The results show that estimation accuracies below 0.1 degrees can be achieved in spite of moderate variations in the manoeuvre execution.
Keywords: extrinsic calibration; motion estimation; automotive industry; nonlinear systems; inertial sensors; Kalman filter; odometry; autonomous driving; simultaneous state and parameter estimation; systems and control engineering extrinsic calibration; motion estimation; automotive industry; nonlinear systems; inertial sensors; Kalman filter; odometry; autonomous driving; simultaneous state and parameter estimation; systems and control engineering

1. Introduction

Accurate and reliable information of the vehicle ego-motion is pivotal for the proper operation of active safety and automated driving functionalities. Hence, nowadays vehicles are equipped with sensors devoted to the estimation of the vehicle motion. In order to meet the high accuracy and reliability demands, multi-modal sensor fusion has become ubiquitous in the field of vehicle motion estimation [1,2,3]. Sensors relying on different technologies, with complementary benefits and deficiencies, are combined in order to increase the overall accuracy and reliability of the motion estimation solution.
In a multi-modal sensor fusion set-up, the individual information sources supply motion quantities that generally relate to different points within the vehicle and are expressed in different coordinate systems. A consistent fusion of the measurements demands that the supplied motion variables relate to and are represented in a common coordinate system. Hence, the transformations between the individual coordinate systems need to be known. In automotive series projects, the position and orientation of the sensors is usually precisely defined in a computer aided design (CAD) of the vehicle. Nevertheless, tolerances in manufacturing technologies may cause the location and orientation of the sensors to significantly differ for the real vehicles. For instance, from our experience, in car mass production, IMU mounting errors of few millimetres and two to three degrees can be expected. These inaccuracies in the transformations between the individual coordinate systems deteriorate the performance of fusion algorithms and may even cause the estimator to diverge [4]. Therefore, many applications require calibration procedures that estimate the transformations between the different coordinate systems. This process is also known in the literature by extrinsic calibration [5,6].
In the last few decades, the topic of extrinsic calibration has received increasing attention due to its significance in relevant engineering fields such as robotics. A considerable amount of literature covering the extrinsic calibration of systems involving perception sensors has been produced, e.g., [7,8,9,10,11,12]. Comparatively, the extrinsic calibration of systems not reliant on perception sensors has received considerably less attention. Motion estimation schemes fusing information from odometers (based on wheel speed and steering angle sensors), vehicle models and inertial sensors have been broadly used in active safety and automated driving technologies [3,13,14]. In such a set-up, the IMU angular rates and specific forces are given in the coordinate system of the IMU while the information supplied by the combination of odometers with kinematic [15] and dynamic models [16] is customarily expressed in a vehicle coordinate system. The identification of the relative pose between the IMU and the vehicle coordinate system is rarely addressed in the available vehicle motion estimation algorithms. Instead, a perfect alignment or known extrinsic calibration parameters are commonly assumed [15,17,18]. While, considering the low angular motion of land vehicles, the positioning errors may be neglected, the IMU misalignment errors have a significant impact on the motion estimates [19].

1.1. Brief Review of Previous Approaches

Although scarce, some literature has been produced to address the estimation of the IMU–vehicle extrinsic calibration. Most of the proposed approaches rely on the non-holonomic constraint [20,21,22,23,24], which assumes zero lateral and vertical velocity in the rear axle. However, differences are found with regard to the sensor portfolio and the quality of the sensors used, as well as the parameters identified.
The methods presented in [20] address the estimation of the mounting misalignments of an IMU (roll, pitch and yaw) using the accelerometer signals together with GPS-derived velocities and the non-holonomic constraint. First, the pitch and roll misalignment angles are estimated. Then, these estimates are used for the estimation of the yaw misalignment. Accelerometer biases, tilted roads and accelerations during the roll/pitch calibration phase will result in errors in the estimated misalignment angles. Estimation errors of up to 2 degrees are reported, which are prohibitively large for applications requiring highly accurate motion state estimates.
Some researchers have proposed methods to identify the misalignment angles between the IMU and vehicle coordinate system using IMU, odometry, GNSS information and the non-holonomic constraint [21,22]. For instance, [22] describes an approach that estimates the IMU pitch and yaw misalignment angles using a GNSS/INS aided dead reckoning approach. The method is experimentally tested with data obtained from typical navigation-grade, tactical-grade and low-cost (automotive-grade) IMUs. For the navigation- and tactical-grade IMUs, the misalignment estimates rapidly converge. However, the estimates for the low-cost IMU display a less steady behaviour. Despite its widespread use, GNSS is susceptible to interference and it lacks reliability in some environments. Moreover, not all land vehicles are equipped with an accurate GNSS receiver.
Aware of these drawbacks, some research groups have developed self-contained methods that perform the IMU–vehicle extrinsic calibration, solely reliant on odometry and IMU signals [23,24,25]. In [23], Xue et al. propose an in-motion alignment algorithm that estimates the vehicle-IMU misalignment (pitch and yaw) together with a unique scaling factor for the entire odometry. The method relies on the non-holonomic constraint, odometry measurements and a high-precision 6D IMU that allows north alignment via gyrocompassing. Furthermore, it assumes perfect alignment between the road plane and the vehicle body. A similar approach is proposed in [24], which, based on the same information sources, additionally estimates the IMU position with respect to the vehicle’s rear axle. Despite the accuracy shown in the experimental results of [23,24], tactical- or navigation-grade IMUs are prohibitively costly for car series projects, limiting their use for research and development purposes.
The previously presented approaches rely on the non-holonomic constraint. The main drawbacks of such methods is that when the vehicle does not comply with the non-holonomic constraint, e.g., when a side-slip angle builds during cornering or a vertical movement is caused by the suspension, errors are transferred to the misalignments estimates [22]. Furthermore, in most cases, the roll misalignment is neglected since, due to the non-holonomic constraint, it is unobservable. One of the few works that is not based on the non-holonomic constraint and relies on an automotive-grade IMU is [25]. The approach proposed in this work estimates the longitudinal and lateral accelerometer biases as well as the IMU–vehicle yaw misalignment using FIR-Filter modulating functions and an algebraic observer. Instead of applying the non-holonomic constraints, vertical and lateral velocity measurements are used. These measurements are built upon suspension signals and a single-track model. Nevertheless, the supplied estimates exhibit a relatively unsteady behaviour, which raises questions regarding noise robustness and parameter identifiability.
All in all, there is a scarcity of methods which, not relying on accurate GNSS information and based on an automotive-grade IMU, provide accurate estimates of all three misalignment angles (roll, pitch and yaw). Another shortcoming of the state-of-the-art is that most of the previous approaches assume a perfect alignment between vehicle body and road surface. Changes in the suspension state, due to effects such as variations in the load distribution or speed, are taken as variations in the IMU pitch misalignment, e.g., [22,24]. This demands a continuous estimation of the misalignment angles. Therefore, a method that takes into account suspension information would be desirable. By doing so, an adjustment of the IMU misalignment estimation would only be required after structural changes in the platform, such as a replacement of the IMU or modifications in the steering system.
Besides the already discussed challenges, one of the aspects to consider is the fact that the real IMU misalignment is usually not known. Hence, there is a lack of a ground-truth reference against which the estimates can be directly compared. [22] proposes to validate the estimation by checking that the estimated velocity (expressed in the vehicle coordinate system) has no significant lateral and vertical velocity components when the misalignments have been compensated. This validation is consistent as long as, in the analysed data, the non-holonomic constraint is satisfied, which will not be the case when turning or driving on a road with significant bank angles. Another option is presented in [24], in which the correctness of the estimated calibration parameters is assessed by analysing the improvement of the position error of the dead-reckoning solution when the calibration parameters have been corrected. However, this approach does not provide a direct way to assess the errors of the misalignment estimates.

1.2. Current Approach and Main Contributions

This manuscript proposes an estimation approach that addresses the identification of the 3D rotation between the IMU and vehicle coordinate systems, which is fully determined by three misalignment angles (roll, pitch and yaw). In order to avoid estimation inaccuracies stemming from the IMU biases, these are compensated in the algorithm. The approach is aimed at automotive series projects and, hence, the use of prohibitively expensive sensors is avoided. Therefore, the sensor portfolio is comprised by an automotive-grade 6D IMU and series chassis sensors.
Additionally, for analysis and evaluation purposes, test vehicles are commonly equipped with high accuracy measurement systems, which supply ground-truth motion signals. In our test vehicle, a high-precision INS/GNSS deeply coupled inertial navigation solution is mounted. This article also presents a method to estimate the 3D rotation between the ground-truth and both the IMU and vehicle coordinate systems. These estimates are not only necessary to assess the performance of motion estimation algorithms but also serve as a validation of the 3D rotation estimate between the IMU and the vehicle coordinate systems. Please note that the misalignment between the IMU and the vehicle coordinate systems may be obtained from the 3D rotation between the ground-truth and IMU coordinate systems, and the 3D rotation between the ground-truth and the vehicle coordinate systems.
Based upon the foregoing, the main contributions of this article are listed below.
  • The proposed estimation scheme estimates all three misalignment angles while considering the IMU biases. This contrasts with most previously proposed approaches, in which the roll misalignment is neglected.
  • A calibration manoeuvre is proposed for which a persistent excitation condition for the identification of the misalignment angles is experimentally validated. Furthermore, it is shown that the estimation results remain consistent despite moderate variations in the manoeuvre execution.
  • The estimation scheme relies on cost-efficient automotive sensors, and it is not dependent on neither perception nor GNSS information. Experimental results show that, in spite of not using high-precision measurement systems, the approach supplies accurate and reliable misalignment estimates.
  • Instead of relying on the non-holonomic constraint, information from the suspension system and a single-track model is used. Hence, the approach considers vertical movements caused by the suspension and side-slip angles in the rear axle, e.g., built during cornering or while driving on a road with significant bank angles.
  • The pose of the vehicle with respect to the road plane is not seen as an IMU misalignment. Hence, readjustment of the misalignment estimates is not required due to, for instance, load redistribution or changes in the speed. This reduces the need for a continuous extrinsic calibration. A re-estimation of the misalignment angles would just be required after structural modifications in the platform, e.g., replacement of the IMU or alterations in the odometry.
  • An approach to directly assess the validity of the misalignment estimates is proposed. This is based on the identification of the 3D rotation between a high-precision INS/GNSS, taken as ground-truth, and the IMU and vehicle coordinate systems.
In short, the current work presents an extrinsic calibration procedure that supplies the 3D rotations between the ground-truth, IMU and vehicle coordinate systems (see Figure 1).
The paper is organised as follows. In Section 2, the required coordinate system definitions, the used notation as well as some preliminaries are introduced. The ground-truth–vehicle, ground-truth–IMU and IMU–vehicle extrinsic calibration procedures are presented in Section 3, Section 4 and Section 5, respectively. Each one of the proposed estimation schemes is experimentally validated in its corresponding section. Finally, a summary and some important remarks conclude this article (Section 6).

2. Coordinate Systems and Preliminaries

2.1. Coordinate Systems

In order to describe the position, orientation and motion of a vehicle based on the information supplied by the available sensors and vehicle models, some coordinate systems (CS) need to be introduced, see Figure 2 and Figure 3. Besides coordinate systems commonly used in the navigation literature [26], i.e., the inertial coordinate system (i), the Earth-Centred Earth-Fixed coordinate system (e) as well as the local navigation coordinate system (East-North-Up) (n), some additional coordinate systems are defined.
The vehicle coordinate system (v) is fixed to the vehicle sprung mass and its origin is located on the longitudinal symmetry plane of the vehicle at the mid-wheelbase point at the height of the center of mass (in reference loading conditions). Regarding the orientation of the axes, the  x v - and y v -axes lie on a plane defined in the CAD design of the vehicle, and the z v -axis is normal to this plane pointing upwards. The  y v -axis points to the left, and the x v -axis points forward. Nevertheless, unlike [27], the  x v -axis does not necessarily lie on the longitudinal symmetry plane of the vehicle. This specific orientation is determined by the used dynamic model. In the present work, it is aligned with the direction of travel while driving on a horizontal road with no vertical angular rate, conditions under which the single-track model supplies zero lateral velocity. Note that, due to asymmetries in the vehicle, this direction of travel does not necessarily lie on the theoretical symmetry plane of the vehicle.
The IMU and ground-truth coordinate systems (m and g, respectively) are fixed to the sprung mass of the vehicle. Their origins and axes orientations are determined by the mounting position and orientation of the IMU and ground-truth systems, respectively. In the test vehicle used in this work, the x-, y-, and z-axes point in the forward direction of the vehicle, to the left and upward, respectively. Due to mounting errors, their axes are not aligned.
The origin of the road coordinate system (r) is located on the road plane (The road plane is a plane that represents the road surface, on which the tyres are supported and which produces the friction required to move the vehicle. In case of planar road surfaces, the road plane is coincident with the road surface. Nevertheless, if the road surface contours have a wavelength similar to or less than the size of the vehicle, an equivalent road plane is determined, which is an approximation of the actual road surface. The road plane is determined by a best fit approximation through the tire contact patches.) maintaining the symmetry with respect to the vehicle wheels. The  z r -axis of the road coordinate system is normal to the road plane and its x r -axis points in the direction of the x v -axis.

2.2. Notation

The present paper adopts the notation commonly used in the navigation systems literature [26,28]. Specifically, three indices are employed to characterize motion variables, such as velocities v or angular rates ω . Let us illustrate this with the following angular rate:
ω i n v = ω i n , x v ω i n , y v ω i n , z v
The superscript index specifies the coordinate system in which the motion quantity is decomposed (resolving coordinate system). The right lower index indicates the coordinate system whose motion is described (object coordinate system). Finally, the left lower index denotes the coordinate system with which the motion is respect to (resolving coordinate system). Hence, ω i n v depicts the angular rate of the local navigation coordinate system with respect to the inertial coordinate system resolved in the vehicle coordinate system.
The relative attitude between two coordinate systems may be represented via Euler angles. Particularly, intrinsic Euler angles with the ZYX convention are adopted in the present work. Attitude is fully described by the object and reference coordinate systems and, therefore, Euler angles are typically denoted using two indices. For example:
ψ n v = ϕ n v θ n v ψ n v
represents the Euler rotation from the local navigation coordinate system to the vehicle coordinate system. Here, the first rotation, ψ n v , called yaw, is performed about z n -axis; the second rotation, θ n v , known as pitch, is performed about the once rotated y-axis; the third rotation, ϕ n v , also named roll, is performed about the twice rotated x-axis. The corresponding rotation matrix R n v transforms a motion quantity from the set of resolving axes of the coordinate system n to those of the coordinate system v:
ω i v v = R n v ω i v n
For small rotations, for which the small-angle approximation holds ( sin α 0 , cos α 1 , sin α sin α α α 0 ), some approximations can be made:
R n v 1 ψ n v θ n v ψ n v 1 ϕ n v θ n v ϕ n v 1 where ϕ n v θ n v ψ n v ϕ v n θ v n ψ v n

2.3. Inertial Measurement Unit: Preliminaries

A 6D IMU is a sensor supplying measurements of the angular rate and specific force of the vehicle body (at the mounting location) with respect to the inertial coordinate system, i.e.,  ω i m m and f i m m . While the angular rate is the same within a rigid body (e.g., ω i m m = ω i v m = ω i g m , hereafter ω m ), the specific force of a rotating body depends on the particular point within the body (e.g.,  f i m m f i v m f i g m ). When the relative location between a point of interest and the mounting position of an IMU is known, the specific force may be transformed to the point of interest using a simple kinematic equation [17]. Additionally, the signals supplied by the IMU are corrupted by different error sources such as biases, scaling factors and non-orthogonalities [29]. This work assumes that most errors have been corrected at an end-of-line calibration of the IMU [30]. However, for the automotive-grade IMU, biases are further considered due to the significant turn-on and in-run terms [26]. Hence, the following IMU error model is considered:
f ˜ i m m = f i m m + b f
ω ˜ m = ω m + b ω ,
where f ˜ i m m and ω ˜ m denote the measured specific force and angular rates, and  b f and b ω the accelerometer and gyro biases, respectively.

3. Ground-Truth–Vehicle Misalignment Estimation

As previously stated, the precise knowledge of the ground-truth–vehicle relative pose is not only essential for analysis and evaluation purposes but, together with the ground-truth–IMU pose, provides a reference for the IMU–vehicle misalignment estimation. In this section, a method to estimate the misalignment angles between the ground-truth and vehicle coordinate systems ( ϕ v g , θ v g , ψ v g ) is proposed and experimentally validated. The method can be divided into two parts, i.e., the estimation of the pitch and roll misalignments, and the estimation of the yaw misalignment.
The employed ground-truth is a high-precision INS/GNSS deeply coupled inertial navigation system, which provides accurate velocities, orientation angles ( ϕ n g , θ n g , ψ n g ), specific forces and angular rates.

3.1. Roll and Pitch Misalignment

The roll and pitch misalignment angles ( ϕ v g , θ v g ) may be determined while standing still, thanks to the high-precision IMU installed in the ground-truth system, as well as the vehicle level measurements.
The spring deflections, supplied by the vehicle level sensors, together with the tyre deflections, provided by a simple tyre vertical model, are used to compute the vehicle levels over-road z i  [3]. Here,  i [ FL , FR , RL , RR ] , where FL, FR, RL, and RR denotes to the front left, front right, rear left and rear right wheels, respectively. Therewith, the pitch and roll angles with respect to the road plane are obtained (see Figure 4). In most vehicles, these angles remain very small during standstill phases. Hence, the small-angle approximation is valid, sin α α and cos α 1 :
θ r v = z RL + z RR z FL z FR 2 l ϕ r v = 1 2 z FL z FR t f + z RL z RR t r
where l, t F and t R are respectively the wheel base and the front and rear track-widths.
Assuming that the vehicle is standing on a road plane with small bank and slope angles ( ϕ n r , θ n r ), and bearing in mind that the misalignment angles and the vehicle angles with respect to the road plane are small, the following relationship holds:
ϕ n g = ϕ n r + ϕ r v + ϕ v g θ n g = θ n r + θ r v + θ v g ,
where ϕ n g and θ n g are obtained from the ground-truth, and  ϕ r v and θ r v from the vehicle levels according to (7). If the vehicle stands on a horizontal road ( θ n r , ϕ n r = 0 ), the misalignment angles may be directly obtained using the following relationships:
ϕ v g = ϕ n g ϕ r v θ v g = θ n g θ r v
However, horizontal road surfaces are not always available. In such case, the unknown slope and bank angle can be cancelled out by using two standstill phases at the exact same position but with the vehicle facing opposite directions (see Figure 5, where Figure 5a corresponds with pose 1 and Figure 5b with pose 2):   
ϕ n g , 1 = ϕ n r , 1 + ϕ r v , 1 + ϕ v g
ϕ n g , 2 = ϕ n r , 2 + ϕ r v , 2 + ϕ v g = ϕ n r , 1 + ϕ r v , 2 + ϕ v g
θ n g , 1 = θ n r , 1 + θ r v , 1 + θ v g
θ n g , 2 = θ n r , 2 + θ r v , 2 + θ v g = θ n r , 1 + θ r v , 2 + θ v g
Adding (10) and (11), as well as (12) and (13), and reorganising the terms yields
ϕ v g = ϕ n g , 1 + ϕ n g , 2 ϕ r v , 1 ϕ r v , 2 2
θ v g = θ n g , 1 + θ n g , 2 θ r v , 1 θ r v , 2 2

3.2. Yaw Misalignment

Unlike for the pitch and roll cases, vehicle motion is required to determine the yaw misalignment between the ground-truth and the vehicle coordinate systems ( ψ v g ). Note that the used single-track model partially defines the vehicle coordinate system (see Section 2):
v e r , y r l r ω z r S G v e r , x r f i r , y r ,
where v e r , x r , ω z r and f i r , y r represent the over-road lateral velocity, vertical angular rate and lateral specific force, respectively, and  S G and l r are the sideslip angle gradient and the distance between the center of gravity and the rear axle. Using the roll angle with respect to the road plane, the velocity of the vehicle coordinate system resolved in vehicle coordinates may be expressed as follows:
v e v , y v = v e r , y r + v r v , z r ϕ r v h r ϕ ˙ r v
When driving straight ahead with constant speed over a well-paved horizontal road, we have ω z r , v r v , z r , ϕ ˙ r v , f i r , y r 0 , and, hence, v e v , y v 0 . Therefore, under these conditions, the projection of the velocity vector onto the z v -plane (plane normal to the z v vector) is completely aligned with x v (see Figure 6). Please note that, due to asymmetries in the vehicle, the  x v -axis does not necessarily lie on the longitudinal symmetry plane. In such situation, ψ v g can be determined by the direction in which the ground-truth perceives the velocity vector:
ψ v g = β g ,
where β g arctan v e v , y g v e v , x g can directly be obtained from the ground-truth velocity measurements.
Unfortunately, not all test tracks possess a perfectly horizontal road. Most seemingly horizontal roads have some kind of bank angle for water drainage purposes. Due to gravity, even small road bank angles cause f i r , y r 0 , which in turn, through the term S G f i r , y r v e r , x r causes v e v , y v 0 . If neglected, the lateral velocity caused by the bank angle is taken as a yaw misalignment.
In order to compensate the sideslip angle ( β v arctan v e v , y v v e v , x v ) caused by the road bank, one can drive on the same lane twice, but in opposite directions (see Figure 7). In each drive, the sideslip angle caused by the gravity takes opposite directions:
ψ v g = β g , 1 + β bank
ψ v g = β g , 2 β bank ,
where β bank f i r , y r S G , and 1 and 2 refer to the first and second drive, respectively. Hence, adding (19) and (20) yields   
ψ v g = β g , 1 + β g , 2 2 ,
where β g , 1 and β g , 2 are obtained from the ground-truth measurements.

3.3. Results

The calibration to determine the relative pose between the ground-truth and vehicle coordinate systems was performed on a test-track three times (on different dates). The road bank and slope angles were below 2 degrees. For the pitch and roll angle misalignment procedure, the vehicle was kept at a standstill for at least 30 s in each direction. In order to avoid movement in the car, the driver and passengers got out of the car in both standstill phases. The values θ n g , 1 , θ n g , 2 , θ r v , 1 and θ r v , 2 were obtained by averaging over the standstill phase.
For the yaw misalignment manoeuvre, the vehicle was accelerated to 30 km/h and kept at constant speed for at least 100 m. Afterwards, the vehicle was turned 180 deg and driven back along the same lane at the same velocity (see Figure 7). The values β g , 1 and β g , 2 were obtained by averaging over the samples corresponding to the constant speed phase. The results are depicted in Table 1:
The maximum difference among the misalignment estimates within the three calibration procedures lies below 0.03   deg for both the roll ϕ ^ v g and pitch θ ^ v g misalignment angles. A bit larger is the variability of the yaw misalignment estimate ψ ^ v g , presenting a maximum difference of 0.055   deg . In any case, the variability remains low and, hence, it can be concluded that the estimation results are consistent.

4. Ground-Truth–IMU Misalignment Estimation

One of the main challenges faced when addressing the estimation of the misalignment between an automotive-grade and a ground-truth IMU is the fact that the biases of the automotive-grade IMU must be considered. Hence, the complexity of the problem rises to that of estimating both the biases and misalignment angles. In the present section, an approach is presented that addresses the misalignment estimation between the IMU (m) and the ground-truth (g) coordinate systems while considering the biases of the automotive-grade IMU.

4.1. Method

The proposed calibration procedure consists of two successive phases, in which the outputs of both the automotive-grade and ground-truth IMUs are used. First, during a standstill phase, the angular rate biases are determined and linear constraints between the accelerometer biases and the misalignment angles are identified. Then, a calibration manoeuvre is performed, which provides enough excitation to estimate the misalignment angles (see Figure 8). The fact that the automotive-grade and ground-truth IMUs are physically mounted at different positions within the vehicle body is taken into account. The ground-truth specific force signals ( f i g g ) are transformed to the mounting position of the automotive-grade IMU ( f i m g ) in a pre-processing step.

4.1.1. Standstill Phase

During standstill, the angular rate biases can be determined relatively easily [31]. However, this is not the case for the accelerometer biases. On the one hand, the pitch and roll angles of the IMU coordinate system m with respect to the local navigation coordinate system n are not perfectly known and, on the other hand, the discrepancies between the outputs of the ground-truth and the automotive-grade IMUs stem from a combination of bias and misalignment errors. Even though the accelerometer biases cannot be directly identified during standstill, a relationship between the bias and misalignment errors can be identified.
The misalignment angles are assumed to be small. Hence, using the small angle approximation, the rotation matrix R m g is defined by
R m g = 1 ψ m g θ m g ψ m g 1 ϕ m g θ m g ϕ m g 1
Furthermore, using the coordinate transformation of the specific forces from the resolving coordinate system g to the resolving coordinate system m yields:
f i m , x m f i m , y m f i m , z m = 1 ψ m g θ m g ψ m g 1 ϕ m g θ m g ϕ m g 1 f i m , x g f i m , y g f i m , z g ,
where ( f i m , x g , f i m , y g , f i m , z g ) T represents the specific force resolved in ground-truth coordinates, obtained from the ground-truth measurement system, and  ( f i m , x m , f i m , y m , f i m , z m ) T the specific force resolved in IMU coordinates, which is not directly accessible due to the IMU accelerometer biases. Instead, the bias-corrupted specific force signals ( f ˜ i m , x m , f ˜ i m , y m , f ˜ i m , z m ) T are available:
f ˜ i m , x m = f i m , x m + b f x f ˜ i m , y m = f i m , y m + b f y f ˜ i m , z m = f i m , z m + b f z .
Combining (24) and (23), the biases are expressed as a function of the misalignment angles as follows:
b f x b f y b f z = f ˜ i m , x m f ˜ i m , y m f ˜ i m , z m f i m , x g f i m , y g f i m , z g + 0 f i m , z g f i m , y g f i m , z g 0 f i m , x g f i m , y g f i m , x g 0 ϕ m g θ m g ψ m g .
This relationship between the accelerometer biases and misalignment angles is exploited during a standstill phase in order to set the following constraints:   
b f x b f y b f z = f ˜ i m , x 0 m f ˜ i m , y 0 m f ˜ i m , z 0 m f i m , x 0 g f i m , y 0 g f i m , z 0 g + 0 f i m , z 0 g f i m , y 0 g f i m , z 0 g 0 f i m , x 0 g f i m , y 0 g f i m , x 0 g 0 ϕ m g θ m g ψ m g ,
where ( f ˜ i m , x 0 m , f ˜ i m , y 0 m , f ˜ i m , z 0 m ) and ( f i m , x 0 g , f i m , y 0 g and f i m , z 0 g ) respectively represent the mean of the IMU and ground-truth specific force measurements during the standstill phase.
Despite the time-varying nature of the biases, it can be assumed that, in the absence of sensor malfunctions and strong changes in the environment, the biases practically remain constant within intervals of several minutes. Hence, it is a sensible assumption that the biases and constraints hold during the subsequent calibration manoeuvre.

4.1.2. Calibration Manoeuvre

The misalignment angles between the IMU and ground-truth coordinate systems are estimated during a calibration manoeuvre using an estimator based on the recursive least squares (RLS) algorithm. The estimator exploits both the bias-corrected angular rates from the automotive-grade IMU, as well as the constraints identified during the standstill phase.
Applying the coordinate transformation of the angular rates and specific forces from the set of resolving axes m to the set of resolving axes g leads to the following equations:
ω x g ω y g ω z g ω x m ω y m ω z m = 0 ω z m ω y m ω z m 0 ω x m ω y m ω x m 0 ϕ m g θ m g ψ m g
f i m , x g f i m , y g f i m , z g f i m , x m f i m , y m f i m , z m = 0 f i m , z m f i m , y m f i m , z m 0 f i m , x m f i m , y m f i m , x m 0 ϕ m g θ m g ψ m g ,
where ( ω x g , ω y g , ω z g ) T and ( ω x m , a n d ω y m , ω z m ) T respectively correspond with the bias-free angular rates, supplied by the ground-truth, and the bias-corrected angular rates of the automotive-grade IMU.
Substituting (24) and (26) in (28) yields
f i m , x g f ˜ i m , x m + f ˜ i m , x 0 m f i m , x 0 g f i m , y g f ˜ i m , y m + f ˜ i m , y 0 m f i m , y 0 g f i m , z g f ˜ i m , z m + f ˜ i m , z 0 m f i m , z 0 g = 0 f ˜ i m , z m + f i m , z 0 g f ˜ i m , y m f i m , y 0 g f ˜ i m , z m f i m , z 0 g 0 f ˜ i m , x m + f i m , x 0 g f ˜ i m , y m + f i m , y 0 g f ˜ i m , x m f i m , x 0 g 0 ϕ m g θ m g ψ m g ,
where the terms corresponding to the multiplication of the biases and misalignment angles have been assessed to be negligible.
The combination of (27) and (29) leads to
ω x g ω x m ω y g ω y m ω z g ω z m f i m , x g f ˜ i m , x m + f ˜ i m , x 0 m f i m , x 0 g f i m , y g f ˜ i m , y m + f ˜ i m , y 0 m f i m , y 0 g f i m , z g f ˜ i m , z m + f ˜ i m , z 0 m f i m , z 0 g = 0 ω z m ω y m ω z m 0 ω x m ω y m ω x m 0 0 f ˜ i m , z m + f i m , z 0 g f ˜ i m , y m f i m , y 0 g f ˜ i m , z m f i m , z 0 g 0 f ˜ i m , x m + f i m , x 0 g f ˜ i m , y m + f i m , y 0 g f ˜ i m , x m f i m , x 0 g 0 ϕ m g θ m g ψ m g ,
which may be treated as a linear identification problem of the following form:
y k = H k ρ + w k ,
where w k represents the measurement noise, which is assumed to be Gaussian, white, zero-mean and independent with a constant covariance matrix R. Please note that the first three diagonal elements of the measurement noise covariance R are directly linked to the ground-truth and IMU gyro noises, while the last three elements relate to the noise characteristics of the accelerometers.
The well-know recursive least squares (RLS) algorithm represents a logical choice to solve this identification problem. Exponential convergence in estimation algorithms is a relevant property since it generally leads to enhanced robustness against noise and modelling errors, as well as an improved performance in the non-stationary case [32]. The integration of an exponential forgetting factor λ ( 0 , 1 ) in the RLS algorithm is necessary to achieve exponential convergence and, additionally, it prevents the loss of estimation capability  [33]. Therefore, the incorporation of an exponential forgetting factor in the RLS algorithm is common practice. Nevertheless, a sufficient excitation property is usually required to guarantee exponential convergence.
Definition 1.
The sequence H k is persistently exciting if there exist an integer h > 0 and a real constant α > 0 such that, for all integer k 0
s = 0 h 1 H k H k T α I .
If the sequence H k is persistently exciting, the estimates of the RLS with forgetting factor converge exponentially to the true parameters [33]. However, if the excitation is poor, the estimation problem becomes ill-conditioned, leading to unreliable estimates strongly affected by noise and model uncertainties.
In order to increase the robustness of the estimator against periods of poor excitation, a regularised recursive least squares algorithm with exponential forgetting factor is used for the identification of the misalignment between the ground-truth and the IMU (see Algorithm 1).
Algorithm 1: Regularised recursive least squares [34].
1
k = k + 1
input H k , P k | k 1 , λ , Σ R
2
K k = P k | k 1 H k T ( R + H k P k | k 1 H k T ) %Gain as in RLS
3
P k | k = P k | k 1 + K k H k P k | k 1 %Covariance update as in RLS
4
P ¯ k + 1 | k = 1 λ P k | k %Covariance after forgetting
5
P k + 1 | k = P ¯ k + 1 | k [ I + ( 1 λ ) Σ R P ¯ k + 1 | k ] 1 %Covariance after regularization
6
ρ ^ k = ρ ^ k 1 + K k ( y k H k ρ k 1 ) %Update parameter estimate
output ρ ^ k , P k + 1 | k
The suggested calibration manoeuvre is a figure eight drive since it provides a high level of excitation and stimulates the individual IMU elements equally in both directions. However, other manoeuvres that satisfy the persistent excitation condition of Defination 1 may also lead to satisfactory estimation results.

4.2. Experimental Validation

The performance of the algorithm is evaluated using data collected from figure eight drives. The ground-truth angular rates and specific forces are supplied by the INS/GNSS deeply coupled measurement system. This accurate equipment contains a high-precision IMU with MEMS accelerometers and fibre optic gyros (FOG), with biases specified as low as 0.01 m / s 2 and 1 deg / h , respectively. As for the IMU angular rates and specific forces, they are obtained from a significantly less accurate automotive-grade IMU.
Please note that the real misalignment between the INS/GNSS system and the automotive-grade IMU is not known. Hence, the efficacy of the algorithm is analysed based on the following three criteria:
  • The algorithm ability to follow artificially introduced misalignment errors.
  • The misalignment estimation robustness against noise.
  • The consistency of the misalignment estimates obtained from a set of different measurements.
The algorithm ability to track the misalignment angles can be illustrated by introducing artificial misalignment errors in the original data and validate whether these errors are tracked. As for the second aspect, the addition of different noise sequences with similar characteristics as the original measurement noise should not imply a significant change in the estimation results. Finally, since the misalignment angles do not change as long as the equipment is not unmounted, the variability of the estimates obtained from datasets collected during manoeuvres performed at different points in time should be low.
The angular rate and specific force measurements supplied by the automotive-grade IMU and the high-performance INS/GNSS system are displayed in Figure 9. Table 2 outlines the parameters from Algorithm 1 employed to produce the presented experimental results. The misalignment estimates are presented in Figure 10. The figure displays the results based on the original data ( ϕ ^ m g 1 , θ ^ m g 1 , ψ ^ m g 1 ) as well as the estimates obtained from the data corrupted by artificially added misalignment errors ( ϕ ^ m g 2 , θ ^ m g 2 , ψ ^ m g 2 ). The artificially added errors are 0.7 deg for ϕ m g , 0.5 deg for θ m g and 1.2 deg for ψ m g . Additionally, the IMU specific force signals are corrupted by artificial accelerometer biases of ( b f x , b f y , b f z ) = ( 0.1 , 0.1 , 0.2 ) m / s 2 . This aims at showing that the misalignment angles are correctly estimated despite the accelerometer biases. As shown in Figure 10, the estimator is able to track the artificially added misalignment errors despite the added accelerometer biases, presenting increments between the estimates obtained from the misalignment-non-corrupted and misalignment-corrupted data of 0.71, 0.50 and 1.22 deg.
Furthermore, the determinant of the excitation matrix W p , k = H k H k T is far from zero, which experimentally shows that the persistence excitation condition is satisfied and the estimation problem is well-conditioned. This is confirmed by the analysis of the robustness against noise (see Figure 11). The original IMU angular rates and specific forces have been corrupted by 100 different sequences of additive Gaussian white noise with standard deviation σ = 0.001 rad / s and σ = 0.05 m / s 2 , respectively. One can see that the misalignment estimates remain consistent despite the use of different additive noise sequences, which shows the algorithm robustness against noise. This claim is also supported by the variability of the misalignment estimates obtained from a set of different figure eight manoeuvres (Table 3). The estimation results are consistent throughout the different datasets, presenting the maximum differences in the estimated ϕ ^ m g , θ ^ m g and ψ ^ m g of 0.008 , 0.007 and 0.067 deg , respectively.

5. IMU–Vehicle Misalignment Estimation

This section presents the main contribution of the paper, i.e., a method for the estimation of all three IMU–vehicle misalignment angles, which relies on series chassis sensors, an automotive-grade IMU and a single-track model.
On the one hand, the IMU specific forces and angular rates are motion variables expressed in the IMU coordinate system (m). On the other hand, the information stemming from the odometry, suspension and single-track model constitutes a 3D velocity information source, which can be expressed in the defined vehicle coordinate system (v). Unlike for the ground-truth–IMU (gm) and ground-truth–vehicle (gv) extrinsic calibration, there is not a direct correlation between the measurements expressed in the IMU coordinate system (m) and the information represented in the vehicle coordinate system (v). Note that the specific forces and angular rates are not directly related to the velocities but to their time derivatives. This entails a significant increase in complexity, for which the previous approaches are no longer suitable. Notwithstanding this, the IMU–vehicle extrinsic calibration can be addressed as a joint parameter and state estimation problem. An adaptive estimator, i.e., the regularized adaptive Kalman filter, is proposed to estimate the vehicle velocities and attitude angles (states) as well as the IMU accelerometer biases and the IMU–vehicle misalignment angles (parameters). Furthermore, in order to bolster the performance of the estimator, additional standstill information is included in the form of constraints, see Figure 12.
The rest of this section is organized as follows. First, the model is derived, upon which the adaptive estimator is built. Afterwards, the estimator design is thoroughly described and the conditions that guarantee the convergence of the estimates are discussed. Finally, the validity of the proposed calibration procedure is experimentally exemplified.

5.1. Model

As in the case of the ground-truth–IMU (gm) misalignment estimation, when addressing the IMU–vehicle extrinsic calibration, the IMU biases must be taken into account. Hence, the estimation problem of the IMU–vehicle misalignment also extends to that of estimating both the IMU biases and the misalignment angles. Please note that, in the absence of sensor faults and drastic changes in the environment, the biases remain nearly constant within intervals of few minutes. Furthermore, since the angular rate biases can easily be determined during standstill phases, the challenge is to estimate the accelerometer biases together with the misalignment angles.
In the derivation of the system equations, the following considerations are taken into account:
  • Misalignment angles and IMU biases are small, which implies that second-order products involving these variables are negligible.
  • Bearing in mind that the car angular motion remains small, particularly for pitch and roll movements, α ϕ ˙ r v and α θ ˙ r v may be neglected (where α represents a small angle).
  • The misalignment angles remain within the range of [ 3 , 3 ] deg and, hence, the small-angle approximation holds ( sin α α , cos α 1 ).
Keeping in mind that the vehicle and IMU coordinate systems are not aligned, the kinematic differential equations based on the 6D IMU signals are expressed in the IMU coordinate system [3]:
x ˙ 1 = ω y m x 6 ω z m x 2 x ˙ 2 = ω x m x 6 + ω z m x 1 x ˙ 3 = ω z m x 4 ω y m x 5 + g x 1 + f ˜ i v , x m b f , x m x ˙ 4 = ω z m x 3 + ω x m x 5 g x 2 + f ˜ i v , y m b f , y m x ˙ 5 = ω y m x 3 ω x m x 4 g x 6 + f ˜ i v , z m b f , z m x ˙ 6 = ω y m x 1 ω x m x 2 ,
where
x = sin θ n m , sin ϕ n m cos θ n m , v e v , x m , v e v , y m , v e v , z m , cos θ n m cos ϕ n m T
As in [3], considering the accuracy of automotive-grade IMUs, the rotation of the Earth as well as the transport rate are neglected. Note that ω m = ω i v m instead of ω n v m is used. Furthermore, the IMU specific force signals are transformed to the origin of the vehicle coordinate system, note that f ˜ i v m instead of f ˜ i m m is used.
Additionally, using the IMU–vehicle misalignment angles ( ϕ m v , θ m v , ψ m v ), the vehicle-to-road orientation ( ϕ r v , θ r v ), the single-track model, and the over-road longitudinal and vertical velocities ( v e r , x r , v r v , z r ), the following measurement model is obtained (see Appendix A for a thorough derivation):
y 1 = v ˜ x v + h p θ ˙ r v = v e v , x m + ψ m v v ˜ y v θ m v v ˜ z v y 2 = v ˜ y v h r θ ˙ r v = v e v , y m ψ m v v ˜ x v + S G v e r , x r f ˜ i v , x m + ϕ m v v ˜ z v + S G v e r , x r f ˜ i v , z m + f ˜ i v , y m ϕ r v θ m v S G v e r , x r f ˜ i v , z m ϕ r v b f y S G v e r , x r + b f z S G v e r , x r ϕ r v y 3 = v ˜ z v = v e v , z m + θ m v v ˜ x v + S G v e r , x r f ˜ i v , x m ϕ r v 2 ϕ m v v ˜ y v + S G v e r , x r f ˜ i v , z m ϕ r v + f ˜ i v , y m ϕ r v 2 + ψ m v S G v e r , x r f ˜ i v , x m ϕ r v
where S G is the side-slip angle gradient, h r and h p are the height of the origin of the vehicle coordinate system with respect to the roll and pitch axes, and 
v ˜ x v = v e r , x r v r v , z r θ r v
v ˜ y v = l r ω z m S G v e r , x r f ˜ i v , y m f ˜ i v , z m ϕ r v + v r v , z r ϕ r v
v ˜ z v = v r v , z r + v e r , x r θ r v l r ω z m S G v e r , x r f ˜ i v , y m f ˜ i v , z m ϕ r v ϕ r v
In (35), the terms in the square brackets ( . . . ) are known, and the unknown states and parameters are highlighted in blue and red, respectively.
Combining the differential equations in (33) with the measurement model (35), the system can be represented in a state-affine form as follows:
x ˙ = A ( u ) x + b ( u ) + Φ ρ y = C x + Ψ ( y ) ρ ,
where
x = sin θ n m , sin ϕ n m cos θ n m , v e v , x m , v e v , y m , v e v , z m , cos θ n m cos ϕ n m T
y = v ˜ x v + h p θ ˙ r v , v ˜ y v h r θ ˙ r v , v ˜ z v T
u = ω x m , ω y m , ω z m , f ˜ i v , x m , f ˜ i v , y m , f ˜ i v , z m T
ρ = ϕ m v , θ m v , ψ m v , b f x , b f y , b f z T

5.2. Estimator Design

In this section, an adaptive estimator, i.e., the regularised adaptive Kalman filter [35,36], is proposed to address the extrinsic calibration between the IMU and vehicle coordinate systems. First, a discretisation is applied to transform the continuous-time system into a discrete-time system and, then, the adaptive estimator is designed based on the discretized system. Furthermore, the conditions that guarantee the convergence of the estimates are outlined. Finally, the integration of additional information beyond the one explicitly described in the system model is discussed. Specifically, the use of constraints determined during a standstill phase is proposed in order to improve the performance of the estimator.

5.2.1. Discrete-Time Implementation

Most systems in the real world are characterized with continuous-time dynamics. Nevertheless, estimators are customarily run in digital computers and, hence, continuous-time system are frequently discretised. Bearing in mind that the car body motion commonly lies within the range of 1–2 Hz [37], 100 Hz is chosen as the sampling frequency. Assuming that the specific force and angular rates remain constant between samples, the exact discretisation of (39) may be obtained as described in [3]. However, in order to reduce the computational load, the discretisation may be simplified in practice by using a first-order approximation or a lookup table.
The resulting discretised system is presented below:
x k = A d ( u k ) x k 1 + b d ( u k ) + Φ d ( u k ) ρ y k = C x k + Ψ ( y k ) ρ ,
where A d , b d and Φ d are the matrices that describe the discrete-time system, and  x k = x ( t k ) , u k = u ( t k ) and y k = y ( t k ) .
Note that u k and y k are known at any t k and, therefore, the system can be considered as a discrete-time linear time-varying system [38]:
x k = A d , k x k 1 + b d , k + Φ d , k ρ y k = C x k + Ψ k ρ

5.2.2. Algorithm Description

The proposed algorithm to estimate the misalignment between the IMU and the vehicle coordinate systems is built upon the discrete-time state-space representation in (45). On the one hand, the angular rates and specific forces supplied by the IMU are used for the state propagation, based on the kinematic differential equations from (33). On the other hand, the measurement model (35) uses the IMU–vehicle misalignment in order to relate the information provided by the over-road longitudinal and vertical velocities, as well as the single-track model to the propagated velocities. The resulting discrete-time system is represented in a state-affine form, allowing thereby the application of the regularised adaptive Kalman filter.
The structure of the regularised adaptive Kalman filter can be broken down into two parts. First, the algorithm is built upon a linear Kalman filter, which carries out the estimation of the states assuming known parameters. Second, the estimator is bolstered by an RLS-based adaptation law, which addresses the estimation of the parameters. The algorithm is shown in Algorithm 2. The state propagation, (a.1)–(a.2), is equivalent to that of the linear Kalman filter. In this part, the IMU signals are used to compute the predicted state estimates. The computation of the Kalman gain and updated error covariance takes place in (a.3)–(a.4), which is identical to the Kalman filter. The RLS-based adaptation law can be found in (a.5)–(a.13), where the gain Γ k for the parameter correction is computed. Finally, the state and parameter estimates are updated based on the measured signals in (a.14)–(a.16). Then, the recursion repeats using the next measurement.
Algorithm 2 Regularised Adaptive Kalman Filter (RAKF)
INITIALIZATION
1 P 0 + = P 0 ; Υ 0 = 0 ; S 0 | 0 = S 1 | 0 = S 0 ; x ^ 0 | 0 = x ^ 0 ; ρ ^ 0 = ρ ^ 0
RECURSION
2 k = k + 1
Prediction
3 x ^ k | k 1 = A k x ^ k 1 | k 1 + B k u k + Φ k ρ ^ k 1 %State prediction as in the KF(a.1)
4 P k | k 1 = A k P k 1 | k 1 A k T + Q k %Covariance prediction as in the KF(a.2)
Innovation
5 Σ k = C k P k | k 1 C k T + R k %Predicted measurement covariance as in the KF(a.3)
6 K k = P k | k 1 C k T Σ k 1 %Kalman Gain as in the KF(a.4)
7 P k | k = [ I n K k C k ] P k | k 1 %Covariance innovation as in KF(a.5)
8 Ω k = C k A k Υ k 1 + C k Φ k + Ψ k %Aux. var. (represents excitation for parameter estimation)(a.6)
9 Λ k = [ Σ k + Ω k S k | k 1 Ω k T ] 1 %Var. for simplification of (a.8) and (a.9)(a.7)
10 Γ k = S k | k 1 Ω k T Λ k %Parameter gain as in RLS(a.8)
11 S k | k = S k | k 1 S k | k 1 Ω k T Λ k Ω k S k | k 1 %Parameter covariance update as in the RLS(a.9)
12 S ¯ k + 1 | k = 1 λ S k | k %Parameter covariance after forgetting(a.10)
13 S k + 1 | k = S ¯ k + 1 | k [ I + ( 1 λ ) Σ R S ¯ k + 1 | k ] 1 %Parameter covariance after regularization(a.11)
14 Υ k = [ I K k C k ] A k Υ k 1 + [ I K k C k ] Φ k K k Ψ k %Aux. var.(a.12)
15 y ˜ k = y k C k x ^ k | k 1 Ψ k ρ ^ k 1 %Measurement error (meas-pred)(a.13)
16 Δ ρ k = Γ k y ˜ k %Parameter correction(a.14)
17 ρ ^ k = ρ ^ k 1 + Δ ρ k %Parameter update(a.15)
18 x ^ k | k = x ^ k | k 1 + K k y ˜ k + Υ k Δ ρ k %State update(a.16)
x ^ k | k 1 , x ^ k | k : A priori and a posteriori state estimates.
P k | k 1 , P k | k : A priori and a posteriori state error covariance matrices.
The exponential convergence of the state and parameter estimates is guaranteed provided that the [ A k , C k ] pair is uniformly completely observable, the [ A k , Q k 1 2 ] pair is uniformly completely controllable [39], and the system is being persistently excited:
Definition 2.
The matrices A k , C k , Φ k and Ψ k are persistently exciting if there exist an integer h > 0 and a real constant α > 0 such that, for all integer j 0 , the matrix sequence Ω k driven by A k , C k , Φ k and Ψ k through the linear system (a.6) and (a.12), satisfies
k = j + 1 j + h W p , k α I ,   where   W p , k Ω k T Σ k 1 Ω k
The regularization algorithm integrated in the adaptation law (a.10) enhances the robustness of the estimator so that, despite poor excitation, acceptable estimates are supplied. More precisely, it prevents the so-called covariance wind-up phenomenon. During phases of poor excitation, when the information is insufficient to determine all parameters, some elements of S k | k tend to grow unlimited, which may lead to an aggressive behaviour and large estimation errors. The regularization algorithm sets bounds to this growth while keeping the exponential convergence properties of the system when excitation is available. This results in a more reliable and accurate estimation of both states and parameters.
In [3], it was already shown that, assuming known parameters, the system is always observable. Hence, the [ A k , C k ] pair is uniformly completely observable. Furthermore, it was also shown that, since Q k is a positive definite matrix, the [ A k , Q k 1 2 ] pair is uniformly completely controllable. In spite of regularization, sufficient excitation is required for the parameter convergence. Ensuring that, during a calibration manoeuvre, the persistent excitation condition is met guarantees the convergence of the parameter estimates. This may easily be investigated by computing the excitation matrix W p , k online and analysing how close it is to singularity. For this purpose, the determinant is used. A det ( W p , k ) close to zero indicates that the excitation is poor while large values of det ( W p , k ) imply that the information is sufficient to estimate all the parameters.

5.2.3. Estimator with Constraints

The specific force during standstill corresponds with the reaction to the acceleration due to gravity:
f i v v = g v
Hence, if the attitude angles (pitch and roll) of the vehicle coordinate system are known, the values of each specific force component can be deduced. This relationship can be exploited during the calibration procedure to incorporate additional information to the estimator. Before or after the calibration manoeuvre, the vehicle could remain stationary in an area where it is feasible to identify its attitude angles. An option would be to stand still on a horizontal surface (normal to gravity) and infer the specific force components in the vehicle coordinate system from the vehicle levels:
f i v , x 0 v = g sin θ r v f i v , y 0 v = g sin ϕ r v cos θ r v f i v , z 0 v = g cos ϕ r v cos θ r v
Another option could be to identify the attitude angles of the vehicle coordinate system using perception sensors.
This information yields a relationship between biases and misalignment angles:
b f x b f y b f z = f ˜ i v , x 0 m f ˜ i v , y 0 m f ˜ i v , z 0 m f i v , x 0 v f i v , y 0 v f i v , z 0 v + 0 f i v , z 0 v f i v , y 0 v f i v , z 0 v 0 f i v , x 0 v f i v , y 0 v f i v , x 0 v 0 ϕ m v θ m v ψ m v ,
which can be integrated in the estimator in the form of constraints to improve the estimation performance. One way of doing this is to integrate the parameter equality constraint as an artificial measurement [40]:
y 4 = f ˜ i v , x 0 m f i v , x 0 v = f i v , z 0 v θ m v f i v , y 0 v ψ m v + b f x y 5 = f ˜ i v , y 0 m f i v , y 0 v = f i v , z 0 v ϕ m v + f i v , x 0 v ψ m v + b f y y 6 = f ˜ i v , z 0 m f i v , z 0 v = f i v , y 0 v ϕ m v f i v , x 0 v θ m v + b f z
Please note that these additional equations are affine with respect to the parameters. Hence, their integration in the system will not distort the system structure of (45). The resulting system will therefore take the following form:
x k = A d , k x k 1 + b d , k + Φ d , k ρ y c , k = C c x k + Ψ c , k ρ ,
where y c , k = v ˜ x , k v + h p θ ˙ r v , k , v ˜ y , k v h r θ ˙ r v , k , v ˜ z , k v , y 4 , k , y 5 , k , y 6 , k .

5.3. Experimental Results

In order to evaluate the performance of the described algorithm, an experimental validation is conducted. The test vehicle is a rear-wheel drive car equipped with the ground-truth system (described in Section 1.2), an automotive-grade MEMS 6D IMU and series chassis sensors. The analysed data have been generated during figure eight manoeuvres, which provide a high level of excitation and stimulate the individual axes equally in both directions. Unlike for the ground-truth–IMU relative orientation estimation, a restriction for the maximum lateral excitation is set in the execution of the manoeuvre so that the vehicle remains within the validity region of the single-track model ( | f ˜ i v , y m | 4 m s 2 ).
Two different estimator designs are compared:
(A)
The regularized adaptive Kalman filter (Algorithm 2) with artificial measurement constraints, according to (51).
(B)
The regularized adaptive Kalman filter (Algorithm 2) without constraints, according to (45).
The aim is to illustrate the benefits of exploiting the additional standstill information, which is not explicitly given by the original system model.
Regarding the parametrisation of the estimator, the choice of the regularized adaptive Kalman filter parameters (Algorithm 2) is shown in Table 4. The parametrisation was selected based on the sensor specifications as well as data-driven evaluations of the proposed adaptive estimator. Moreover, a first-order approximation has been used to obtain the discretised system.
In order to validate the results of the misalignment estimates, these are compared against the misalignment angles obtained from the ground-truth–IMU and –vehicle extrinsic calibration, shown in Table 5.
The inputs of the estimator are depicted in Figure 13. Please note that the plotted angular rates ( ω x , ω y , ω z ) are bias-compensated. Furthermore, note that the lateral specific force mostly remains within the region of | f ˜ i v , y m | < 4 m s 2 . The corresponding estimation results are shown in Figure 14.
First, let us focus on the estimator without constraints, i.e., (B). Especially conspicuous in the plot is the fact that the determinant of the persistence excitation matrix is close to zero for this estimator (see last sub-plot), indicating that there is not sufficient information in order to properly infer all parameters. This may explain the unsteady behaviour of the misalignment estimates. Furthermore, the parameter estimates do not converge to the values computed from the ground-truth–IMU and –vehicle extrinsic calibration from Table 5. Hence, one can conclude that the outputs of (45) do not carry sufficient information to reach a satisfactory estimation of all the parameters, additional knowledge is required. In view of these results, estimator (B) is not considered in further analyses.
Things look different for the estimator with constraints, i.e., (A). Particularly noteworthy is the determinant of the persistence excitation matrix, which is not close to zero any more. This indicates that the estimator has enough information to properly infer all parameters. This may well be the reason for the steady behaviour exhibited by the parameter estimates, which stands in stark contrast with the results of the estimator without constraints, i.e., (B). As for the comparison of the results with respect to the values computed from the ground-truth–IMU and –vehicle extrinsic calibration (Table 5), the final estimated parameters are fairly close. The differences in ϕ m v , θ m v and ψ m v are as low as 0.004, 0.056 and 0.067 deg, respectively. Hence, one can conclude that the integration of the additional standstill information in the form of constraints has improved the estimation results by making the system persistently excited during the calibration manoeuvre.
Additionally, in order to assess the ability of (A) to follow artificially introduced misalignments, the algorithm has also been run on corrupted data, where misalignments of ( 0.7 , 0.5 , 1.2 ) deg and accelerometer biases of ( 0.1 , 0.1 , 0.2 ) m / s 2 have been added to the original data. For the corrupted dataset, the misalignment estimates increased by 0.670, 0.503 and 1.212 deg for ϕ m v , θ m v and ψ m v , respectively. Hence, the results show that, despite the artificial biases, the algorithm is able to track the added misalignments.
Finally, the estimator (A) has been run using two additional data sets collected on different days: a less dynamic figure eight drive with | f ˜ y max m | 3 m s 2 ( M 2 ) and a more dynamic one in which | f ˜ y max m | 5 m s 2 ( M 3 ). This aims at analysing the variability of the misalignment estimates within a collection of different figure eight drives and, moreover, at assessing the effect of moderate deviations in the manoeuvre execution. The resulting misalignment estimates from these manoeuvres together with the ones obtained from the manoeuvre in Figure 13 ( M 1 ) are displayed in Table 6. The maximum differences are as low as 0.035 , 0.0530 and 0.021 deg for ϕ m v , θ m v and ψ m v , respectively. Furthermore, all results remain very close to the misalignments obtained from the m g and v g extrinsic calibration. Hence, one concludes that the estimation results remain consistent in spite of variations in the manoeuvre execution.

6. Conclusions

The present paper addresses the extrinsic calibration of a vehicle equipped with series chassis sensors and an automotive-grade IMU. Specifically, it proposes a method to estimate the misalignment between the IMU and vehicle coordinate systems. Unfortunately, due to tolerances in the manufacturing processes, the transformation between the IMU and vehicle coordinate systems is not perfectly known—while, due to the low angular motion of land vehicles, the positioning errors may be neglected, and misalignment errors have a significant impact on the motion estimates.
One of the challenges that arises when evaluating the performance of such an extrinsic calibration procedure is the fact that there is no simple way to measure the real misalignment. In this work, a reference is proposed based on a high-precision INS/GNSS system, which is taken as a ground-truth for the motion variables. Two calibration procedures to estimate the 3D rotation between the ground-truth and both the IMU and vehicle coordinate systems have been described and experimentally validated. The combination of these two rotations yields a reference for the 3D rotation between the IMU and vehicle coordinate systems.
The IMU–vehicle misalignment estimation has been addressed as a joint state and parameter estimation problem represented in a state-affine form. The approach relies on measurements from odometry, suspension and an automotive-grade IMU fused in a regularised adaptive Kalman filter. It has been experimentally shown with figure eight drives that the sole use of odometry, suspension and a single-track model does not supply enough excitation to determine all states and parameters. Additional information is required. In order to improve this aspect, a standstill phase, in which the vehicle attitude is known, is used to incorporate further information in the form of artificial measurements. Experimental results show that integrating this additional information decisively improves the performance of the estimator. The persistence excitation condition is satisfied and the estimated misalignments are consistent with the results obtained in the ground-truth–IMU and –vehicle calibration procedures. Additionally, the estimator is able to follow artificial variations in the misalignment angles and the variability of the estimates remains low despite alterations in the manoeuvre execution.
The results presented in this article show that the proposed calibration procedure is a robust and industrially viable method for the IMU–vehicle misalignment estimation. Unlike other errors, such as the time-varying IMU biases, the misalignment between the IMU and the vehicle is unlikely to change over time. In a series product, not equipped with a ground-truth system, the proposed IMU–vehicle misalignment estimation may be integrated into the end-of-line calibration of the vehicle. The calibration manoeuvre can be standardized and driven manually or automatically at the end of the production process. Moreover, the same method may also be used as a re-calibration procedure in the case of structural modifications in the vehicle or its sensors, such as after replacing the IMU. The identified misalignment angles may then be incorporated as parameters in a vehicle motion estimation module, which, based on misalignment-compensated IMU signals, supplies estimates of motion quantities during operation. It is left to the vehicle motion estimation algorithm running online to account for time-varying errors, such as the IMU in-run biases or the biases induced by ageing. This topic takes up a central question in [3], in which a method for the simultaneous estimation of the vehicle motion states and IMU biases is proposed and experimentally validated.
The usefulness of the knowledge of the 3D rotation between the ground-truth and both the IMU and vehicle coordinate systems goes beyond that of supplying a reference for the IMU–vehicle misalignment estimates. These transformations are required for a consistent evaluation of motion estimation algorithms based on the ground-truth.
In the proposed calibration procedure, GNSS and perception sensor information have not been used. However, if the vehicle is equipped with cameras, lidars, radars or accurate GNSS receivers, their information may be integrated in the calibration procedure in order to enhance its performance. However, this would come at a cost. A considerable increase in complexity and quite some effort in guaranteeing the reliability of the information supplied by these additional sensors is to be expected.
One of the limitations of the proposed approach is the fact that not all IMU systematic error contributions are considered, such as scaling factor, non-orthogonality or nonlinearity error components. Certainly, if these contributions are significant, the accuracy of the misalignment estimates may degrade. In order to mitigate the effects of these error contributions, an IMU end-of-line calibration procedure should be conducted by the sensor supplier prior to the IMU assembly in the vehicle [41,42]. Furthermore, the specific orientation of the vehicle coordinate system within the vehicle body may slightly vary due to effects such as tire wear, load distribution or suspension warp. These uncertainties have been neglected in this work since significant changes are not expected in normal operation conditions (no faults nor extreme wear), which has also been supported by the analysed data. However, a thorough analysis on a relatively large vehicle fleet over a large time span could be carried out to investigate these effects. Conclusions may be drawn regarding the frequency in which a misalignment calibration is needed and the particular events that should trigger it. This may be the subject of future work.

Author Contributions

Conceptualization, V.R.M., J.K.; Experiment design and execution, V.R.M., J.K.; Formal analysis, V.R.M., J.K., T.S.; Data analysis, V.R.M.; Software, V.R.M.; Writing–Original draft preparation, V.R.M.; Writing–Review & editing, J.K., T.S., J.R.; Supervision, J.K., T.S., J.R. All authors have read and agreed to the published version of the manuscript.

Funding

We acknowledge the support by the German Research Foundation and the Open Access Publication Fund of TU Berlin.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Derivation of (35)

Using the pitch and roll angles ( θ r v , ϕ r v ) with respect to the road plane and bearing in mind that they remain small, the vehicle velocities may be obtained from the over-road velocities as follows [3]:
v e v , x v = v e r , x r v r v , z r θ r v + h p θ ˙ r v v e v , y v = v e r , y r + v r v , z r ϕ r v h r ϕ ˙ r v v e v , z v = v r v , z r + v e r , x r θ r v v e r , y r ϕ r v
where h r and h p are the height of the origin of the vehicle coordinate system with respect to the roll and pitch axes, respectively.
Both v e r , x r and v r v , z r are primarily obtained from the odometry and suspension signals, respectively. v e r , y r could be provided by a sensor measuring the over-road lateral velocity, such as an optic sensor. Nevertheless, in the current work, we assume that such sensor is not available. Instead, this information is obtained from a single-track model, which provides a simplified but plausible description of the vehicle lateral motion within the region of lateral accelerations up to 4 m / s 2 under dry road conditions [37]:
v e r , y r = l r ω z r S G v e r , x r f i r , y r ,
where the relationship between f i r , y r and f i v v may be expressed as follows
f i r , y r = f i v , y v f i v , z v ϕ r v + ϕ ¨ r v h r
Bearing in mind the low angular motion of land vehicles, particularly in the pitch and roll direction:
ω z r ω z m
ϕ ¨ r v 0
f i r , y r f i v , y r = f i v , y v f i v , z v ϕ r v
Due to the misalignment error, the specific forces and angular rates supplied by the IMU are not expressed in v but in m. Using the rotation matrix R v m , the specific force is transformed from the set of resolving axes of coordinate system m to the set of resolving axes of coordinate system v
f i v , y v = f i v , y m ψ m v f i v , x m + ϕ m v f i v , z m f i v , z v = f i v , z m ϕ m v f i v , y m + θ m v f i v , x m
Furthermore, substituting (A7) in (A4) results in
f i v , y r = ( f i v , y m ψ m v f i v , x m + ϕ m v f i v , z m ) ( f i v , z m ϕ m v f i v , y m + θ m v f i v , x m ) ϕ r v ,
Now, substituting (A8) in (A2) yields
v e r , y r = l r ω z m S G v e r , x r f i v , y m ψ m v f i v , x m + ϕ m v f i v , z m f i v , z m ϕ r v + ϕ m v f i v , y m ϕ r v θ m v f i v , x m ϕ r v ,
and combining (A9) and (A1) gives
v e v , x v = v e r , x r v r v , z r θ r v + h p θ ˙ r v v e v , y v = l r ω z m S G v e r , x r f i v , y m ψ m v f i v , x m + ϕ m v f i v , z m f i v , z m ϕ r v + ϕ m v f i v , y m ϕ r v θ m v f i v , x m ϕ r v + v r v , z r ϕ r v h r ϕ ˙ r v v e v , z v = v r v , z r + v e r , x r θ r v l r ω z m S G v e r , x r f i v , y m ψ m v f i v , x m + ϕ m v f i v , z m f i v , z m ϕ r v + ϕ m v f i v , y m ϕ r v θ m v f i v , x m ϕ r v ϕ r v ,
On the other hand, using the rotation matrix R v m and applying the small-angle approximation, the following relationship is obtained:
v e v , x m = v e v , x v ψ m v v e v , y v + θ m v v e v , z v v e v , y m = v e v , y v + ψ m v v e v , x v ϕ m v v e v , z v v e v , z m = v e v , z v θ m v v e v , x v + ϕ m v v e v , y v ,
Rearranging (A11) yields
v e v , x v = v e v , x m + ψ m v v e v , y v θ m v v e v , z v v e v , y v = v e v , y m ψ m v v e v , x v + ϕ m v v e v , z v v e v , z v = v e v , z m + θ m v v e v , x v ϕ m v v e v , y v
Substituting (A10) in (A12) results in
v x v + h p θ ˙ r v = v e v , x m + ψ m v v y v θ m v v z v v y v h r ϕ ˙ r v S G v e r , x r ψ m v f i v , x m + ϕ m v f i v , z m + ϕ m v f i v , y m ϕ r v θ m v f i v , x m ϕ r v = v e v , y m ψ m v v x v + ϕ m v v z v v z v + S G v e r , x r ψ m v f i v , x m + ϕ m v f i v , z m + ϕ m v f i v , y m ϕ r v θ m v f i v , x m ϕ r v ϕ r v = v e v , z m + θ m v v x v ϕ m v v y v ,
where
v x v = v e r , x r v r v , z r θ r v
v y v = l r ω z m S G v e r , x r f i v , y m f i v , z m ϕ r v + v r v , z r ϕ r v
v z v = v r v , z r + v e r , x r θ r v l r ω z m S G v e r , x r f i v , y m f i v , z m ϕ r v ϕ r v ,
Finally, after taking into account the accelerometer biases, neglecting second-order error terms and rearranging, the measurement equations of (35) are obtained.

References

  1. Farrell, J.A.; Roysdon, P.F. Advanced vehicle state estimation: A tutorial and comparative study. IFAC-Pap. OnLine 2017, 50, 15971–15976. [Google Scholar] [CrossRef]
  2. Singh, K.B.; Arat, M.A.; Taheri, S. Literature review and fundamental approaches for vehicle and tire state estimation. Veh. Syst. Dyn. 2018, 57, 1643–1665. [Google Scholar] [CrossRef]
  3. Marco, V.R.; Kalkkuhl, J.; Raisch, J.; Scholte, W.J.; Nijmeijer, H.; Seel, T. Multi-modal sensor fusion for highly accurate vehicle motion state estimation. Control Eng. Pract. 2020, 100, 104409. [Google Scholar] [CrossRef]
  4. Mirzaei, F.M.; Roumeliotis, S.I. A Kalman filter-based algorithm for IMU-camera calibration: Observability analysis and performance evaluation. IEEE Trans. Robot. 2008, 24, 1143–1156. [Google Scholar] [CrossRef]
  5. Brookshire, J.; Teller, S. Extrinsic calibration from per-sensor egomotion. Robot. Sci. Syst. VIII 2013, 5, 504–512. [Google Scholar]
  6. Heng, L.; Li, B.; Pollefeys, M. Camodocal: Automatic intrinsic and extrinsic calibration of a rig with multiple generic cameras and odometry. In Proceedings of the 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems, Tokyo, Japan, 3–7 November 2013; pp. 1793–1800. [Google Scholar]
  7. Carrera, G.; Angeli, A.; Davison, A.J. SLAM-based automatic extrinsic calibration of a multi-camera rig. In Proceedings of the 2011 IEEE International Conference on Robotics and Automation, Shanghai, China, 9–13 May 2011; pp. 2652–2659. [Google Scholar]
  8. Mirzaei, F.M.; Kottas, D.G.; Roumeliotis, S.I. 3-D lidar–camera intrinsic and extrinsic calibration: Identifiability and analytical least-squares-based initialization. Int. J. Robot. Res. 2012, 31, 452–467. [Google Scholar] [CrossRef]
  9. Gao, C.; Spletzer, J.R. On-line calibration of multiple lidars on a mobile vehicle platform. In Proceedings of the 2010 IEEE International Conference on Robotics and Automation, Anchorage, AK, USA, 3–7 May 2010; pp. 279–284. [Google Scholar]
  10. Le Gentil, C.; Vidal-Calleja, T.; Huang, S. 3-D lidar–IMU calibration based on upsampled preintegrated measurements for motion distortion correction. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, 21–25 May 2018; pp. 2149–2155. [Google Scholar]
  11. Censi, A.; Franchi, A.; Marchionni, L.; Oriolo, G. Simultaneous calibration of odometry and sensor parameters for mobile robots. IEEE Trans. Robot. 2013, 29, 475–492. [Google Scholar] [CrossRef]
  12. Wu, J.; Sun, Y.; Wang, M.; Liu, M. Hand-Eye Calibration: 4-D Procrustes Analysis Approach. IEEE Trans. Instrum. Meas. 2019, 69, 2966–2981. [Google Scholar] [CrossRef]
  13. Brunker, A.; Wohlgemuth, T.; Frey, M.; Gauterin, F. Odometry 2.0: A slip-adaptive EIF-based four-wheel- odometry model for parking. IEEE Trans. Intell. Veh. 2018, 4, 114–126. [Google Scholar] [CrossRef]
  14. Klier, W.; Reim, A.; Stapel, D. Robust Estimation of Vehicle Sideslip Angle—An Approach w/o Vehicle and Tire Models. In Proceedings of the SAE World Congress & Exhibition, Detroit, MI, USA, 14–17 April 2008. [Google Scholar]
  15. Selmanaj, D.; Corno, M.; Panzani, G.; Savaresi, S.M. Vehicle sideslip estimation: A kinematic based approach. Control Eng. Pract. 2017, 67, 1–12. [Google Scholar] [CrossRef]
  16. Grip, H.F.; Imsland, L.; Johansen, T.A.; Fossen, T.I.; Kalkkuhl, J.C.; Suissa, A. Nonlinear vehicle side-slip estimation with friction adaptation. Automatica 2008, 44, 611–622. [Google Scholar] [CrossRef]
  17. Katriniok, A.; Abel, D. Adaptive EKF-Based Vehicle State Estimation With Online Assessment of Local Observability. IEEE Trans. Control Syst. Technol. 2016, 24, 1368–1381. [Google Scholar] [CrossRef]
  18. Grip, H.F.; Imsland, L.; Johansen, T.A.; Kalkkuhl, J.C.; Suissa, A. Vehicle sideslip estimation. IEEE Control Syst. Mag. 2009, 29, 36–52. [Google Scholar]
  19. Syed, Z.F.; Aggarwal, P.; Niu, X.; El-Sheimy, N. Civilian vehicle navigation: Required alignment of the inertial sensors for acceptable navigation accuracies. IEEE Trans. Veh. Technol. 2008, 57, 3402–3412. [Google Scholar] [CrossRef]
  20. Vinande, E.; Axelrad, P.; Akos, D. Mounting-angle estimation for personal navigation devices. IEEE Trans. Veh. Technol. 2009, 59, 1129–1138. [Google Scholar] [CrossRef]
  21. Wu, Y.; Goodall, C.; El-Sheimy, N. Self-calibration for IMU/odometer land navigation: Simulation and test results. In Proceedings of the ION International Technical Meeting, San Diego, CA, USA, 25–27 January 2010; Volume 2527. [Google Scholar]
  22. Chen, Q.; Zhang, Q.; Niu, X. Estimate the Pitch and Heading Mounting Angles of the IMU for Land Vehicular GNSS/INS Integrated System. IEEE Trans. Intell. Transp. Syst. 2020. early access. [Google Scholar]
  23. Xue, H.; Guo, X.; Zhou, Z.; Wang, K. In-motion alignment algorithm for vehicle carried sins based on odometer aiding. J. Navig. 2017, 70, 1349–1366. [Google Scholar] [CrossRef]
  24. Wu, Y. Versatile land navigation using inertial sensors and odometry: Self-calibration, in-motion alignment and positioning. In Proceedings of the 2014 DGON Inertial Sensors and Systems (ISS), Karlsruhe, Germany, 16–17 September 2014; pp. 1–19. [Google Scholar]
  25. Huttner, F.; Kalkkuhl, J.; Reger, J. Offset and Misalignment Estimation for the Online Calibration of an MEMS-IMU Using FIR-Filter Modulating Functions. In Proceedings of the 2018 IEEE Conference on Control Technology and Applications (CCTA), Copenhagen, Denmark, 21–24 August 2018; pp. 1427–1433. [Google Scholar]
  26. Groves, P.D. Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems; Artech House: Norwood, MA, USA, 2013. [Google Scholar]
  27. ISO 8855. Road Vehicles—Vehicle Dynamics and Road-Holding Ability– Vocabulary; Tech. Rep. Geneva; CH: International Organization for Standardization: Geneva, Switzerland, 2011. [Google Scholar]
  28. Wendel, J. Integrierte Navigationssysteme: Sensordatenfusion, GPS und Inertiale Navigation; Oldenbourg Verlag: München, Germany, 2011. [Google Scholar]
  29. Quinchia, A.G.; Falco, G.; Falletti, E.; Dovis, F.; Ferrer, C. A Comparison between Different Error Modeling of MEMS Applied to GPS/INS Integrated Systems. Sensors 2013, 13, 9549–9588. [Google Scholar] [CrossRef]
  30. Amirsadri, A.; Kim, J.; Petersson, L.; Trumpf, J. Practical considerations in precise calibration of a low-cost MEMS IMU for road-mapping applications. In Proceedings of the 2012 American Control Conference (ACC), Montreal, QC, Canada, 27–29 June 2012; pp. 881–888. [Google Scholar]
  31. Rodrigo Marco, V.; Kalkkuhl, J.; Raisch, J. EKF for simultaneous vehicle motion estimation and IMU bias calibration with observability-based adaptation. In Proceedings of the 2018 Annual American Control Conference (ACC), Milwaukee, WI, USA, 27–29 June 2018; pp. 6309–6316. [Google Scholar]
  32. Anderson, B.D.; Johnson, C.R., Jr. Exponential convergence of adaptive identification and control algorithms. Automatica 1982, 18, 1–13. [Google Scholar] [CrossRef]
  33. Johnstone, R.M.; Johnson, C.R., Jr.; Bitmead, R.R.; Anderson, B.D. Exponential convergence of recursive least squares with exponential forgetting factor. Syst. Control Lett. 1982, 2, 77–82. [Google Scholar] [CrossRef]
  34. Rhode, S. Robust and Regularized Algorithms for Vehicle Tractive Force Prediction and Mass Estimation; KIT Scientific Publishing: Karlsruhe, Germany, 2018; Volume 62. [Google Scholar]
  35. Rodrigo Marco, V.; Kalkkuhl, J.; Raisch, J.; Seel, T. Regularized adaptive Kalman filter for non-persistently excited systems. 2020. Submitted to Automatica. [Google Scholar]
  36. Zhang, Q. Adaptive Kalman filter for actuator fault diagnosis. Automatica 2018, 93, 333–342. [Google Scholar] [CrossRef]
  37. Schramm, D.; Hiller, M.; Bardini, R. Vehicle Dynamics—Modeling and Simulation; Springer: Berlin/Heidelberg, Germany, 2018. [Google Scholar]
  38. Ticlea, A. Techniques D’Immersion Pour l’Estimation Non Linéaire-Application aux Systèmes de Puissance. Ph.D. Thesis, Institut National Polytechnique de Grenoble-INPG, Grenoble, France, 2006. [Google Scholar]
  39. Jazwinski, A.H. Stochastic Processes and Filtering Theory; Dover Publications, Inc.: Mineola, NY, USA, 2007. [Google Scholar]
  40. Simon, D. Kalman filtering with state constraints: A survey of linear and nonlinear algorithms. IET Control Theory Appl. 2010, 4, 1303–1318. [Google Scholar] [CrossRef]
  41. Rohac, J.; Sipos, M.; Simanek, J. Calibration of low-cost triaxial inertial sensors. IEEE Instrum. Meas. Mag. 2015, 18, 32–38. [Google Scholar] [CrossRef]
  42. Tedaldi, D.; Pretto, A.; Menegatti, E. A robust and easy to implement method for IMU calibration without external equipments. In Proceedings of the 2014 IEEE International Conference on Robotics and Automation (ICRA), Hong Kong, China, 31 May–7 June 2014; pp. 3042–3049. [Google Scholar]
Figure 1. The present work proposes an approach to estimate the 3D rotation between the IMU and vehicle coordinate systems ( R m v ). Additionally, calibration procedures are described to determine the 3D rotation between a ground-truth measurement system and both the IMU and vehicle coordinate systems ( R g m and R g v , respectively). These represent a reference to directly assess the accuracy of the estimated IMU–vehicle 3D rotation.
Figure 1. The present work proposes an approach to estimate the 3D rotation between the IMU and vehicle coordinate systems ( R m v ). Additionally, calibration procedures are described to determine the 3D rotation between a ground-truth measurement system and both the IMU and vehicle coordinate systems ( R g m and R g v , respectively). These represent a reference to directly assess the accuracy of the estimated IMU–vehicle 3D rotation.
Sensors 21 00007 g001
Figure 2. Representation of the inertial (i), ECEF (e), local navigation (n), vehicle (v) and road (r) coordinate systems. For a clear depiction, a world and vehicle perspectives are displayed, which corresponds with (a,b), respectively. The black and yellow planes respectively represent the road plane and the plane tangent to the Earth’s ellipsoid, which is considered to be normal to gravity. Please note that n and v share the same origin, and the origin of r lies on the road plane.
Figure 2. Representation of the inertial (i), ECEF (e), local navigation (n), vehicle (v) and road (r) coordinate systems. For a clear depiction, a world and vehicle perspectives are displayed, which corresponds with (a,b), respectively. The black and yellow planes respectively represent the road plane and the plane tangent to the Earth’s ellipsoid, which is considered to be normal to gravity. Please note that n and v share the same origin, and the origin of r lies on the road plane.
Sensors 21 00007 g002
Figure 3. Representation of the ground-truth (g), IMU (m), vehicle (v) and road (r) coordinate systems. Please note that the origin of the ground-truth and IMU coordinate systems is not necessarily coincident with that of the vehicle coordinate system. This representation has been chosen to highlight the misalignment between the different coordinate systems.
Figure 3. Representation of the ground-truth (g), IMU (m), vehicle (v) and road (r) coordinate systems. Please note that the origin of the ground-truth and IMU coordinate systems is not necessarily coincident with that of the vehicle coordinate system. This representation has been chosen to highlight the misalignment between the different coordinate systems.
Sensors 21 00007 g003
Figure 4. Vehicle-to-road pose [3]. (a) shows the roll model, where i [ F , R ] ; (b) depicts the pitch model where i [ L , R ] .
Figure 4. Vehicle-to-road pose [3]. (a) shows the roll model, where i [ F , R ] ; (b) depicts the pitch model where i [ L , R ] .
Sensors 21 00007 g004
Figure 5. Calibration procedure on non-horizontal road (roll angle perspective). (a) depicts the first standstill pose and (b) the second, which is equal to the first pose but facing the opposite direction. g, v and r denote the ground-truth, vehicle and road coordinate systems, respectively. (a,b) correspond with (10) and (11), respectively. The yellow line represents the horizontal plane. The circle on the upper left shows the direction of positive roll angles, and the arrows in it represent the y-axes of the corresponding coordinate systems. Note that, in the circles, the angle between the yellow line and the black arrow correspond with ϕ n r . It can then be seen that ϕ n r , 2 = ϕ n r , 1 . The corresponding pitch angle perspective would be equivalent. It is omitted for the sake of conciseness.
Figure 5. Calibration procedure on non-horizontal road (roll angle perspective). (a) depicts the first standstill pose and (b) the second, which is equal to the first pose but facing the opposite direction. g, v and r denote the ground-truth, vehicle and road coordinate systems, respectively. (a,b) correspond with (10) and (11), respectively. The yellow line represents the horizontal plane. The circle on the upper left shows the direction of positive roll angles, and the arrows in it represent the y-axes of the corresponding coordinate systems. Note that, in the circles, the angle between the yellow line and the black arrow correspond with ϕ n r . It can then be seen that ϕ n r , 2 = ϕ n r , 1 . The corresponding pitch angle perspective would be equivalent. It is omitted for the sake of conciseness.
Sensors 21 00007 g005
Figure 6. Velocities of a vehicle while driving straight ahead with constant speed over a well-paved horizontal road.
Figure 6. Velocities of a vehicle while driving straight ahead with constant speed over a well-paved horizontal road.
Sensors 21 00007 g006
Figure 7. Yaw calibration procedure on a non-horizontal road. The dashed and continuous lines respectively represent the visual division between lanes and the road limit. The vehicle drives on the same lane twice but in opposite directions. The upper left and right circles show the direction of positive yaw angles for the corresponding driving directions. The red, green and blue arrows in the circle depict the directions of the velocity vector, the x-axis of the vehicle CS and the x-axis of the ground-truth CS, respectively. β bank is the side-slip angle stemming from the road bank and β g the direction in which the ground-truth perceives the velocity vector.
Figure 7. Yaw calibration procedure on a non-horizontal road. The dashed and continuous lines respectively represent the visual division between lanes and the road limit. The vehicle drives on the same lane twice but in opposite directions. The upper left and right circles show the direction of positive yaw angles for the corresponding driving directions. The red, green and blue arrows in the circle depict the directions of the velocity vector, the x-axis of the vehicle CS and the x-axis of the ground-truth CS, respectively. β bank is the side-slip angle stemming from the road bank and β g the direction in which the ground-truth perceives the velocity vector.
Sensors 21 00007 g007
Figure 8. Calibration procedure for the estimation of the misalignment between the ground-truth and IMU coordinate systems.
Figure 8. Calibration procedure for the estimation of the misalignment between the ground-truth and IMU coordinate systems.
Sensors 21 00007 g008
Figure 9. Measurements during a figure eight manoeuvre. The ground-truth angular rates ( ω x g , ω y g , ω z g ) and specific forces ( f i m , x g , f i m , y g , f i m , z g ) obtained from the high-performance INS/GNSS system and transformed to the mounting position of the automotive-grade IMU, and the bias-corrected angular rates ( ω x m , ω y m , ω z m ) and bias-corrupted specific forces ( f ˜ i m , x m , f ˜ i m , y m , f ˜ i m , z m ) supplied by the automotive-grade IMU.
Figure 9. Measurements during a figure eight manoeuvre. The ground-truth angular rates ( ω x g , ω y g , ω z g ) and specific forces ( f i m , x g , f i m , y g , f i m , z g ) obtained from the high-performance INS/GNSS system and transformed to the mounting position of the automotive-grade IMU, and the bias-corrected angular rates ( ω x m , ω y m , ω z m ) and bias-corrupted specific forces ( f ˜ i m , x m , f ˜ i m , y m , f ˜ i m , z m ) supplied by the automotive-grade IMU.
Sensors 21 00007 g009
Figure 10. Estimation results for the figure eight manoeuvre of Figure 9. ϕ ^ m g 1 , θ ^ m g 1 , ψ ^ m g 1 are the parameter estimates obtained based on the original data. ϕ ^ m g 2 , θ ^ m g 2 , ψ ^ m g 2 are the parameter estimates obtained based on the data corrupted by the artificial misalignment error ( 0.7 , 0.5 , 1.2 ) deg for ϕ m g , θ m g and ψ m g , respectively. Finally, the determinant of the excitation matrix W p = H k H k T is depicted in the last sub-plot.
Figure 10. Estimation results for the figure eight manoeuvre of Figure 9. ϕ ^ m g 1 , θ ^ m g 1 , ψ ^ m g 1 are the parameter estimates obtained based on the original data. ϕ ^ m g 2 , θ ^ m g 2 , ψ ^ m g 2 are the parameter estimates obtained based on the data corrupted by the artificial misalignment error ( 0.7 , 0.5 , 1.2 ) deg for ϕ m g , θ m g and ψ m g , respectively. Finally, the determinant of the excitation matrix W p = H k H k T is depicted in the last sub-plot.
Sensors 21 00007 g010
Figure 11. Estimation robustness against noise. One hundred different sequences of additive Gaussian white noises with standard deviations 0.001 rad / s and 0.05 m / s 2 have been added to the original IMU angular rate and specific force data, respectively. The estimator has been run for each sequence. The last estimated values of each run have been collected in these histograms. The red curves represent the corresponding best Gaussian distribution fits. The corresponding mean μ and standard deviation σ are added on top of each plot.
Figure 11. Estimation robustness against noise. One hundred different sequences of additive Gaussian white noises with standard deviations 0.001 rad / s and 0.05 m / s 2 have been added to the original IMU angular rate and specific force data, respectively. The estimator has been run for each sequence. The last estimated values of each run have been collected in these histograms. The red curves represent the corresponding best Gaussian distribution fits. The corresponding mean μ and standard deviation σ are added on top of each plot.
Sensors 21 00007 g011
Figure 12. Estimation approach for the IMU–vehicle misalignment estimation. The proposed regularized adaptive Kalman filter relies on the specific forces ( f ˜ i m m ) supplied by an automotive-grade 6D IMU, its bias-compensated angular rates ( ω i m m ) as well as over-road longitudinal, lateral and vertical velocity information ( v e r , x r , v e r , y r , v r v , z r ) mainly provided by the odometry, single-track model and suspension, respectively. Furthermore, the vehicle-to-road orientation ( ϕ r v , θ r v ), computed from the suspension signals, is used to relate the over-road velocities to the vehicle velocity ( v e v v ), see Figure 4. Finally, constraints stemming from a standstill phase are used to enhance the performance of the estimator.
Figure 12. Estimation approach for the IMU–vehicle misalignment estimation. The proposed regularized adaptive Kalman filter relies on the specific forces ( f ˜ i m m ) supplied by an automotive-grade 6D IMU, its bias-compensated angular rates ( ω i m m ) as well as over-road longitudinal, lateral and vertical velocity information ( v e r , x r , v e r , y r , v r v , z r ) mainly provided by the odometry, single-track model and suspension, respectively. Furthermore, the vehicle-to-road orientation ( ϕ r v , θ r v ), computed from the suspension signals, is used to relate the over-road velocities to the vehicle velocity ( v e v v ), see Figure 4. Finally, constraints stemming from a standstill phase are used to enhance the performance of the estimator.
Sensors 21 00007 g012
Figure 13. Estimator inputs during a figure eight drive. The bias-free angular velocities ( ω x , ω y , ω z ), the uncorrected specific forces ( f ˜ i v , x , f ˜ i v , y , f ˜ i v , z ), the measurements ( y 1 , y 2 , y 3 ).
Figure 13. Estimator inputs during a figure eight drive. The bias-free angular velocities ( ω x , ω y , ω z ), the uncorrected specific forces ( f ˜ i v , x , f ˜ i v , y , f ˜ i v , z ), the measurements ( y 1 , y 2 , y 3 ).
Sensors 21 00007 g013
Figure 14. Estimation results during the figure eight manoeuvre of Figure 13 for both estimators (A) and (B). Additionally, in green, the parameter estimates obtained with estimator (A) based on the data corrupted by the artificial misalignment error ( 0.7 , 0.5 , 1.2 ) deg for ϕ m v , θ m v and ψ m v , respectively, and the artificial bias errors ( 0.1 , 0.1 , 0.2 ) m / s 2 for b f x , b f y and b f z , respectively. Finally, the determinant of the excitation matrix W p , k = Ω k T Σ k 1 Ω k is depicted in the last sub-plot.
Figure 14. Estimation results during the figure eight manoeuvre of Figure 13 for both estimators (A) and (B). Additionally, in green, the parameter estimates obtained with estimator (A) based on the data corrupted by the artificial misalignment error ( 0.7 , 0.5 , 1.2 ) deg for ϕ m v , θ m v and ψ m v , respectively, and the artificial bias errors ( 0.1 , 0.1 , 0.2 ) m / s 2 for b f x , b f y and b f z , respectively. Finally, the determinant of the excitation matrix W p , k = Ω k T Σ k 1 Ω k is depicted in the last sub-plot.
Sensors 21 00007 g014
Table 1. Estimation results of the vg misalignment obtained from three calibration procedures performed on different dates. Results expressed in degrees.
Table 1. Estimation results of the vg misalignment obtained from three calibration procedures performed on different dates. Results expressed in degrees.
ParameterM1M2M3Mean
ϕ ^ v g 0.1000.1280.1220.117
θ ^ v g −1.178−1.158−1.177−1.171
ψ ^ v g 0.2650.2920.3200.292
Table 2. Parameter choice, units according to the International System of Units.
Table 2. Parameter choice, units according to the International System of Units.
ParameterValue
Rdiag([2 × 10 6 , 2 × 10 6 , 2 × 10 6 , 1 × 10 3 , 1 × 10 3 , 1 × 10 3 ])
P 0 diag([3.0625 × 10 4 , 3.0625 × 10 4 , 3.0625 × 10 4 ])
ρ ^ 0 [0, 0, 0]
Σ R diag([3.2653 × 10 3 , 3.2653 × 10 3 , 3.2653 × 10 3 ])
λ 0.9998
Table 3. Variability misalignment estimation with angular rates and specific forces. Results expressed in degrees.
Table 3. Variability misalignment estimation with angular rates and specific forces. Results expressed in degrees.
ParameterM1M2M3M4M5M6M7Max. Diff.Mean
ϕ ^ m g −0.187−0.188−0.193−0.193−0.191−0.193−0.1950.008−0.192
θ ^ m g 0.0110.0120.0060.0060.0070.0080.0050.0070.009
ψ ^ m g 0.4340.3730.3670.3670.4020.4010.3940.0670.396
Table 4. Estimator scheme parameter choice, units according to the International System of Units.
Table 4. Estimator scheme parameter choice, units according to the International System of Units.
ParameterValue
Qdiag([ 2 × 10 6 , 2 × 10 6 , 1 × 10 3 , 1 × 10 3 , 1 × 10 3 , 1 × 10 8 ])
R (A)diag([ 1 × 10 2 , 1 × 10 1 , 1 × 10 2 , 1 × 10 4 , 1 × 10 4 , 1 × 10 4 ])
R (B)diag([ 1 × 10 2 , 1 × 10 1 , 1 × 10 2 ])
P 0 diag([ 1.2 × 10 3 , 1.2 × 10 3 , 4 × 10 3 , 4 × 10 3 , 4 × 10 3 , 1.2 × 10 3 ])
S 0 diag([ 8 × 10 3 , 8 × 10 3 , 8 × 10 3 , 1 × 10 2 , 1 × 10 2 , 1 × 10 2 ])
x ^ 0 0 , 0 , 0 , 0 , 0 , 1 T
ρ ^ 0 0 , 0 , 0 , 0 , 0 , 0 T
Σ R diag([ 1250 , 1250 , 1250 , 125 , 125 , 125 ])
λ 0.9996
Table 5. Misalignment angles computed from the identified m-g and v-g misalignments in Section 3 and Section 4 (see Table 1 and Table 3). Results expressed in degrees.
Table 5. Misalignment angles computed from the identified m-g and v-g misalignments in Section 3 and Section 4 (see Table 1 and Table 3). Results expressed in degrees.
Misalignment Angle mg vg mv
ϕ −0.1920.117≈−0.309
θ 0.009−1.171≈1.180
ψ 0.3960.292≈0.104
Table 6. Estimation results of (A) for three different figure eight manoeuvres driven on different days. M 1 is the manoeuvre displayed in Figure 13 with | f ˜ i v , y max m | 4 m s 2 , M 2 represents a less dynamic Figure 8 drive with | f ˜ i v , y max m | 3 m s 2 and M 3 corresponds with a more dynamic Figure 8 drive with | f ˜ i v , y max m | 5 m s 2 .
Table 6. Estimation results of (A) for three different figure eight manoeuvres driven on different days. M 1 is the manoeuvre displayed in Figure 13 with | f ˜ i v , y max m | 4 m s 2 , M 2 represents a less dynamic Figure 8 drive with | f ˜ i v , y max m | 3 m s 2 and M 3 corresponds with a more dynamic Figure 8 drive with | f ˜ i v , y max m | 5 m s 2 .
Misalignment Angle M 1 M 2 M 3
ϕ m v −0.313−0.278−0.300
θ m v 1.2361.1841.183
ψ m v 0.0370.0580.045
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Back to TopTop