METHOD OF RECALIBRATING INERTIAL SENSORS
FIELD OF THE INVENTION
The invention relates to a method of recalibrating sensors. In particular the invention relates, but is not limited, to recalibrating inertial sensors by taking sensor readings when the sensor is stationary.
BACKGROUND TO THE INVENTION
Reference to background art herein is not to be construed as an admission that such art constitutes common general knowledge in Australia or elsewhere.
Inertial sensors are used in many applications to measure movement of objects. For example, vehicles, such aeroplanes and automated vehicles, and many electronic devices, such as smart phones, have inertial sensors to determine orientation, movement, and/or other relevant variables.
Inertial sensors typically include gyroscopes, which measure the rate of change of angle, and accelerometers, which measure linear acceleration. Often such sensors are collectively packaged into an inertial measurement unit (IMU). A typical IMU will contain at least a three-axis accelerometer, and often includes one or more gyroscopes. IMUs sometimes also contain a 2 or 3 axis magnetometer for sensing the Earth's magnetic field (although not actually an inertial sensor).
Inertial sensing is often used to determine an 'attitude' of an object or a vehicle (i.e. the rotation of object or vehicle with respect to a reference frame,
usually a theoretical perfectly level ground surface). In many applications, accurate inertial sensing is critical. For example, in precision agriculture, knowledge of 'attitude' of a vehicle is required to compensate for movements of a Global Navigation Satellite Systems (GNSS) antenna through terrain level changes and undulation.
In machine control applications, such as autonomous vehicles, sensor precision is often high enough that an offset induced by the tilting of a GNSS antenna mounted on a vehicle can produce a measurable positioning error (e.g. of at least the same order of magnitude as the GNSS system itself). As a result, tilt angle is sometimes compensated with the use of angular estimates derived from sensor measurements produced by an IMU mounted in the vehicle. )
For many inertial sensors, notably industrial grade inertial sensors often used in machine control applications, there are error characteristics, notably sensor bias, which change with temperature and age. These errors affect system accuracy and typically require the sensors to be sent back to the manufacturer for recalibration periodically (e.g. once per year). Such recalibration is costly and time consuming as it not only requires the device to be removed, but also requires the device to be returned to the manufacturer for a period of time, resulting in significant down-time.
Furthermore, even a yearly calibration can be insufficient in minimising bias as ambient temperature fluctuates over a year and, accordingly, temperature errors arise when the sensor is used in a different temperature range to what it was calibrated for. For example, if the sensor is calibrated in
summer, the temperature errors will likely become prevalent in winter when the ambient temperature is lower.
If the user does not send the device back to the manufacturer for factory calibration in an effort to avoid the costs and downtime then, in addition to the temperature error, age induced errors will also arise meaning that the device will lose accuracy over time.
One approach to assisting with keeping the sensors calibrated, particularly for temperature induced bias, is to add temperature sensing components and a sensor bias model to estimate the sensor bias at measured temperatures. However, this increases the cost and complexity of devices that use the sensors. Furthermore, calibration using such models often only includes temperature variation of the inertial senor over a limited temperature range, The model must also be updated as the inertial sensor ages to account for age induced bias. Updating the model is commonly done by yearly factory calibration or by calibration using additional sensors. These strategies add further cost and complexity to recalibrating the sensors.
Recalibration may be conducted by taking measurements at different attitudes and determining the bias from the measurements, but this requires a user to move the sensors to different attitudes between each measurement, which is an inconvenience to the user.
OBJECT OF THE INVENTION
It is an aim of this invention to provide a method of recalibrating sensors which overcomes or ameliorates one or more of the disadvantages or problems described above, or which at least provides a useful alternative.
Other preferred objects of the present invention will become apparent from the following description.
SUMMARY OF INVENTION
According to a first aspect of the invention, there is provided a method of determining an inertial sensor bias, the method including the steps of: using the inertial sensor to determine when the inertial sensor is stationary;
automatically obtaining a first inertial sensor measurement when the sensor is determined to be stationary;
automatically obtaining a second inertial sensor measurement when the sensor is determined to be stationary and at a different attitude to the first inertial sensor measurement;
automatically obtaining a third inertial sensor measurement when the sensor is determined to be stationary and at a different attitude to the first and second inertial sensor measurements; and
determining the inertial sensor bias using the first, second, and third inertial sensor measurements.
Preferably the method further comprises storing a plurality of obtained inertial sensor measurements. Preferably the step of determining the inertial
sensor bias uses at least a portion of the plurality of stored inertial sensor measurements. Preferably only inertial sensor measurements within a predetermined period of time are used to determine the inertial sensor bias. Sensor measurements may be weighted during determination of the inertial sensor bias according to how recently they were obtained. Preferably older measurements are given less weight than more recent measurements. Preferably, a weighted least squares model may be utilised to determine the inertial sensor bias using weighted inertial sensor measurements.
Preferably the step of determining when a sensor is stationary includes determining a period of no movement of the sensor and determining whether the sensor is under, or at least close to, normal operating conditions. Preferably the temperature of the sensor is considered when obtaining the inertial sensor measurement. The temperature of the sensor may be stored with the obtained inertial sensor measurement. Where the temperature of the sensor is stored with the inertial sensor measurement, a temperature bias of the sensor may be estimated to provide a more accurate inertial sensor measurement and/or a more accurate determination of the inertial sensor bias.
Preferably the step of determining when the sensor is stationary includes determining a period of no movement for a predetermined length of time. Preferably the step of automatically obtaining an inertial sensor measurement includes processing data received from the inertial sensor. Preferably the processing includes using signal , processing to account for external factors such as, for example, removal of vibration. Preferably the
step of obtaining the inertial sensor measurement, including processing data received from the inertial sensor, takes between approximately 10 seconds and 2 minutes, even more preferably between approximately 20 seconds and 90 seconds.
Preferably the method further comprises determining when movement of the sensor resumes. Preferably any inertial sensor measurement that is interrupted by resumption of movement of the sensor is discarded.
Preferably the inertial sensor is an accelerometer or a gyroscope. Preferably the inertial sensor measurements are obtained from an inertial measurement unit (IMU) containing the accelerometer and/or gyroscope. Preferably the accelerometer is at least a three-axis accelerometer. Preferably the inertial sensor measurements are accelerometer measurements that consist of a measurement of gravity only. In an alternative form, the inertial sensor measurements are gyroscope measurements that consist of a measurement of the rotation rate of the Earth only.
The step of determining the inertial sensor bias using obtained inertial sensor measurements may use more than three inertial sensor measurements. Preferably each of the inertial sensor measurements are at different attitudes to each other. The method may include measuring the change in inertial sensors between the measurements.
Preferably the step of determining the sensor bias using the first, second, and third inertial sensor measurements includes the steps of
considering the three inertial sensor measurements, determining possible bias values for each measurement, and/or determining an intersection of the bias values.
Preferably the step of determining possible bias values includes determining a 'sphere' of possible bias values and preferably the step of determining the intersection of the bias values includes determining an intersection of the three spheres. Preferably determining an intersection of the three spheres includes utilising linear algebra. Preferably, the step of determining possible bias values includes determining an estimate of the bias values. The estimate of the bias values is preferably determined using least squares.
According to another aspect of the invention there is provided a method of calibrating an inertial sensor, the method including the steps of: determining a sensor bias according to the aforementioned method; and
calibrating the inertial. sensor using the determined sensor bias.
According to another aspect of the invention there is provided a method of determining a location of a chassis, the method including the steps of:
determining a sensor bias according to the aforementioned method; and
determining the location of the chassis using a global navigation satellite system (GNSS) component, the inertial sensor, and the determined sensor bias.
According to another aspect of the invention, there is provided a system configured to determine an inertial sensor bias, the system including; an inertial measurement unit (IMU) containing the sensor; and a computing resource in communication with the IMU and including a processor and memory;
wherein the memory of the computing resource is programmed to instruct the processor to:
using the sensor to determine when the sensor is stationary; automatically obtain a first inertial sensor measurement from the IMU when the sensor is determined to the stationary;
automatically obtain a second inertial sensor measurement when the sensor is determined to be stationary and at a different attitude to the first inertial sensor measurement;
automatically obtain a third inertial sensor measurement when the sensor is determined to be stationary and at a different attitude to the first and second inertial sensor measurements; and
determine the inertial sensor bias using the first, second, and third inertial sensor measurements.
According to another aspect of the invention there is provided a system of calibrating an inertial measurement unit (IMU), the system including: an IMU; and
a computing resource in communication with the IMU and including a processor and memory; wherein the IMU:
obtains a first inertial sensor measurement when the processor, using output from the IMU, determines the IMU is stationary;
obtains a second inertial sensor measurement when the processor, using output from the IMU, determines that the IMU is stationary and at a different attitude to the first inertial sensor measurement; and
obtains a third inertial sensor measurement when the processor, using output from the IMU, determines that the IMU is stationary and at a different attitude to the first and second inertial sensor measurements; and wherein the processor of the computing resource:
receives the first inertial sensor measurement, the second inertial sensor measurement, and third inertial sensor measurement from the IMU;
determines a sensor bias from the first, second, and third inertial sensor measurements; and ,
calibrates the IMU using the determined sensor bias.
Preferably the computing resource is an embedded system. The system may include a graphical display that may advise a user when the sensor is determined to be stationary and/or when an inertial sensor measurement is being obtained.
The IMU preferably includes a three-axis accelerometer. The IMU may further include one or more angular rate sensors and/or a 2 or 3 axis magnetometer. Preferably the system includes a chassis that contains the IMU and computing resource.
The inertial sensor bias may be determined according to any suitable method once sufficient information, including sufficient inertial sensor measurements, is obtained.
Further features and advantages of the present invention will become apparent from the following detailed description.
BRIEF DESCRIPTION OF THE DRAWINGS
Byway of example only, preferred embodiments of the invention will be described more fully hereinafter with reference to the accompanying figures, wherein:
Figure 1 is a flow chart illustrating steps of a method according to the invention;
Figure 2 is a diagrammatic view illustrating an example application of the method according to the invention; and
Figure 3 is a flow chart illustrating sub-steps of step 30 of the flow chart in figure 1.
DETAILED DESCRIPTION OF THE DRAWINGS
The invention generally relates to determining sensor bias for an inertial sensor, particularly an accelerometer. Inertial sensors have a bias that changes with temperature and time. Such inertial sensors are used in many applications including vehicles. Although the invention is primarily described with reference to vehicles, and even more particularly with reference to land vehicles, no limitation is meant thereby and the invention could be applied to
other embodiments including, for example, in electronic devices such as electronic and electromechanical tools, mobile phones, consoles, game controllers, remote controls, etc.
Figure 1 illustrates a flow chart that has steps ( 0 to 40) that outline a method according to an embodiment of the invention. Typically, the inertial sensor will be mounted in a chassis such as a vehicle chassis such that as the chassis moves, the sensor moves with it. The invention relates to in field recalibration of an inertial sensor which first starts with determining when the sensor is stationary (step 10). Typically the sensor will be part of an inertial measurement unit (IMU) and the sensor will be determined to be stationary using all the IMU sensors combined to provide an accurate determination of when the IMU is stationery. Once a sensor is determined to be stationary (step 10) an inertial sensor measurement is automatically obtained (step 20) for that position and attitude. As the sensor is not moving, the measurement should be a measurement of gravity only.
Once an inertial sensor measurement is obtained (step 20) it is stored (step 30). Then, once sufficient inertial sensor measurements are available the inertial sensor bias can be determined (step 40). According to a preferred method of determining the sensor bias (discussed hereinafter), at least three sensor measurements at different attitudes are required.
Figure 2 illustrates a diagrammatic view of an example application, namely an agricultural application with a vehicle that traverses a route 50. The vehicle has a chassis with an inertial measurement unit (IMU) mounted
thereon. Age and temperature induced biases affect the accuracy of the IMU and, hence, it needs to be calibrated (or recalibrated).
As the vehicle traverses route 50 stationary periods of no movement are determined. For example, after starting the vehicle at a barn 52, a driver of the vehicle may stop for a period of time to perform other actions (e.g. to get equipment or engage a towed apparatus etc.). Once a period of no movement is determined (step 10) an inertial sensor measurement may automatically be obtained (step 20) and stored (step 30). As the vehicle continues there may be other stationary periods such as, for example, when opening a gate 54 and/or when stopped in the field 56 (e.g. for a break or when checking something). Inertial sensor measurements are automatically obtained (step 20) and stored (step 30) at each period of no movement that is sufficient to obtain a satisfactory measurement. Once sufficient inertial sensor measurements have been obtained, the sensor bias may be determined (step 40). The sensor bias may be determined continually and improved with additional or replacement measurements over time.
A preferred method of determining the sensor bias, as outlined in figure 3, uses three separate inertial sensor measurements at different attitudes (step 100). When a vehicle, or device containing an accelerometer, is stationary the total force (f*) acting on the accelerometer is due to gravity and, accordingly, if scale, misalignment, noise and other error terms are known or considered to be negligible, and the only significant error in measurement is sensor bias (b0 ), then the following constraint must be satisfied:
l- f' -be | = (1) where g is the magnitude of acceleration due to gravity. Accordingly, for multiple arbitrary positions there are multiple equations:
\\ fh - \\ = g · (2)
(4) " - b0 \\ - g . (5)
Expanding equation (2) for a first inertial sensor measurement results in:
{tf -b +{fi -b +fi -bj = g2 (6)
Each gravity measurement in equations (2)-(5) forms a sphere of possible values for the bias and hence a first inertial sensor measurement can provide a first sphere of possible values for the bias.
With three measurements at three different attitudes, three spheres of possible bias values (step 102) may be determined with the intersection of the three spheres representing the bias of the sensor. Changes in attitude may occur as the result of driving the vehicle to different locations on non-level ground, such as a hill. For electronic devices, or the like, the attitude may be changed when the device is placed at different angles, such as a mobile phone being placed upside down.
In order to determine the sensor bias from equation (6), a second inertial sensor measurement at a second attitude is obtained:
third inertial sensor measurement at a third attitude is obtained (step
In determining the intersection of the three spheres (step 104), the three inertial sensor measurements are considered (step 100) and, using equations (6), (7), and (8), a sphere of possible bias values for each measurement is determined (step 102). To determine the intersection (step 04), equation (7) is subtracted from equation (6) resulting in:
(σ ')2 -( 2)2)+ 2bay{# - /;> )+
(( Λ' )2 - (f 2 )2 26a; ( *2 - Λ* )= (9) which is linear in [b0x bay
Subtracting equation (8) from (6) and (8) from (7) and rearranging into matrix form results in: -fy ) 2t IV II f*2 II2 -ll f"1 II2
2I/:"3 - /;' K = II2 (10)
lA. -||f"2 II2
Equation (10) is then solvable using standard linear algebra techniques from which the bias can be determined. More measurements, such as stored measurements (step 30 from figure 1) can also be used in equation 10 by subtracting the relevant sensor measurement equations in the same manner as constructing equation (9) and solving using standard estimation techniques, for example, using standard linear techniques such as the least- squares technique.
If suitable measurements for bias determination are taken close to each other in time, then the bias can be determined accurately. As stored measurements age, however, their usefulness diminishes as the sensor bias changes with time and temperature. Different sensors change bias differently, even from the same manufacturer, but in general sensor bias drifts relatively slowly over time and relatively quickly with changes in temperature.
As sensor bias changes more notably with temperature, inertial sensor measurements which are more than one to two hours old may need to be discarded due to temperature variations. In this situation, it may be difficult to get sufficient inertial sensor measurements unless the sensor is stationary frequently. Accordingly, in a preferred embodiment the temperature of the sensor is preferably recorded when the inertial sensor measurement is obtained. The temperature of the sensor at the time of measurement can be utilised to estimate the temperature portion of the bias and, hence, inertial sensor measurements of up to a much longer time period may be utilised before being discarded. Effectively, the measurements will degrade primarily due to age induced bias over time but it is envisaged that measurements of
up to approximately a month, or even more, may be utilised without significantly jeopardising the accuracy of the bias determination.
Inertial sensor measurements may be weighted to allow reduced weight to be given to older measurements. A weighted least squares model can be used to provide for use of measurements over a much longer period of time such as, for example, a year. In effect, measurements for a particular temperature can be retained and used for a long period of time, such as a year, if degradation of the measurement due to time is accounted for.
The stationary period of no movement (for step 10) ideally needs to be long enough for processing of the measurement to average readings in an effort to reduce noise. Also, the measurement cannot be too long as other factors may cause the measurement to drift from a true reading such as due to flicker noise. The ideal length of time for a measurement is sensor dependent but it is envisaged that a measurement in the range of 30 to 60 seconds will be suitable. If movement of the sensor is resumed during a measurement, the measurement is discarded so that any portion of the measurement due to the movement is does not influence the bias calculation.
In a preferred embodiment the method is implemented as part of a navigation guidance system that includes a processor and memory, with the memory being programmed to instruct the processor to carry out the method.
The method and system of the present invention advantageously allows recalibration of a sensor to be performed without interruption to a user of the sensor. If sufficient measurements for sensor bias determination
cannot be obtained (e.g. due to insufficient or inappropriate times when the sensor is stationary) then the user may be prompted in an effort to obtain the required measurements for recalibration. However, it is envisaged that this will be unlikely and, in any event, the level of interruption will less than if no measurements had been taken automatically during stationary periods as less measurements should be required from the user.
The method makes continual recalibration of an inertial sensor possible resulting in increased accuracy of the sensor with minimal, if any, interruption of the user. In a vehicle navigation system, this reduces navigation errors and offsets, and minimises downtime for recalibration of the sensor.
In the specification, reference to stationary and no movement of sensors is intended to refer to no, or very little, movement of the sensor relative to usual moving operation. For example, the sensor may move due to other factors such as localised vibrations or the like.
In this specification, adjectives such as first and second, left and right, top and bottom, and the like may be used solely to distinguish one element or action from another element or action without necessarily requiring or implying any actual such relationship or order. Where the context permits, reference to an integer or a component or step (or the like) is not to be interpreted as being limited to only one of that integer, component, or step, but rather could be one or more of that integer, component, or step etc.
The above description of various embodiments of the present invention is provided for purposes of description to one of ordinary skill in the related
art. It is not intended to be exhaustive or to limit the invention to a single disclosed embodiment. As mentioned above, numerous alternatives and variations to the present invention will be apparent to those skilled in the art of the above teaching. Accordingly, while some alternative embodiments have been discussed specifically, other embodiments will be apparent or relatively easily developed by those of ordinary skill in the art. The invention is intended to embrace all alternatives, modifications, and variations of the present invention that have been discussed herein, and other embodiments that fall within the spirit and scope of the above described invention.
In this specification, the terms 'comprises', 'comprising', 'includes', 'including', or similar terms are intended to mean a non-exclusive inclusion, such that a method, system or apparatus that comprises a list of elements does not include those elements solely, but may well include other elements not listed.