Method, corresponding system and program product for providing navigation information

By combining GNSS, IMU and barometer sensors in the navigation device, data fusion and recursive estimation technology are used to solve the problem of barometer calibration, and automatic high-precision height estimation is achieved, reducing cost and user operation complexity.

CN113093239BActive Publication Date: 2025-02-25STMICROELECTRONICS SRL
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202011534701.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-12-23
Filing Date
2020-12-23
Publication Date
2025-02-25
Estimated Expiration
2040-12-23

AI Technical Summary

Technical Problem

The prior art When using GNSS and an inertial measurement unit (IMU) to provide three-dimensional position information, there are problems with the calibration of the barometer, resulting in inaccurate height estimation, and the existing methods require manual calibration of users or rely on special testing procedures, increasing production costs. and user operation complexity.

Method used

Through the operation of the dead estimation program, combined with the GNSS receiver, inertial measurement unit (IMU) and barometer sensor, data fusion and recursive estimation techniques, such as Kalman filtering, process motion data and position data to obtain two-dimensional position information. And by processing pressure measurement values ​​and absolute position data to obtain height information, automatic calibration and accurate estimation of height is achieved.

Benefits of technology

It enables automatic and high-precision provision of height information without manual user calibration, reducing production costs and user operation complexity, and ensuring the availability and integrity of height information when GNSS signals are unavailable.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113093239B_ABST
    Figure CN113093239B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure relate to methods, corresponding systems, and program products for providing navigation information. A method for providing navigation information by a navigation sensing device, the navigation sensing device comprising: an absolute positioning source providing three-dimensional absolute position data including an absolute altitude value; an inertial measurement unit providing inertial data, specifically acceleration and angular velocity; and a barometer sensor providing pressure measurements. The method comprises processing the inertial data and the absolute position data to obtain two-dimensional position information, specifically longitude and latitude; and processing the pressure measurements and the absolute position data to obtain an altitude estimate.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of Italian Application No. 102019000025399, filed on December 23, 2019, which is incorporated herein by reference. Technical Field

[0003] The present description relates to the field of navigation, and in particular to the ability of a device to determine a user's position, speed, and altitude. Background Art

[0004] The current leading technology for positioning applications in the automotive market is GNSS, where conventional navigation systems include navigation and telematics. Soon, emerging applications such as autonomous driving and communication between cars (and infrastructure) may bring further technical challenges.

[0005] GNSS receivers provide an absolute position reference while also exhibiting one or more disadvantages, such as reliance on satellite signals, which may be unavailable (e.g., indoors, in tunnels) or corrupted (e.g., urban environments, reflections and / or multipath).

[0006] To overcome these limitations, one solution may involve merging GNSS technology with other sensing technologies to create a redundant system where components are able to overcome the shortcomings of one type of component or the other type of component.

[0007] Examples of technologies complementary to GNSS include inertial sensors, such as inertial measurement units, (3-axis) gyroscopes, (3-axis) accelerometers, odometers, compasses, barometers, cameras, light detection and ranging (LiDAR), precise mapping, and radar.

[0008] As is known, dead reckoning unplugged (vehicle independent) technology combines inertial sensors and GNSS to provide a seamless fusion of satellite measurements, angular velocity and acceleration data. This technology is designed to provide automotive users with improved positioning data accuracy, availability and integrity in environments where GNSS is absent or damaged.

[0009] Contrary to traditional dead reckoning, this technology does not require an electrical connection to the vehicle speed signal; therefore, it is an autonomous technology with the advantage of very simple equipment installation, giving leading positioning performance. This technology is suitable for any road vehicle application that requires reliable positioning data without access to vehicle odometer or speed data.

[0010] Sensors using dead reckoning unplugged mode can integrate GNSS with an inertial measurement unit (IMU) with a target to estimate the user's 2D (horizontal) position with respect to latitude and longitude. However, in the event of a signal loss, the altitude estimate provided by the IMU will be inaccurate due to the superposition of errors related to velocity and altitude. To expand the sensor functionality into the third dimension (i.e., altitude), customers in the automotive industry need to integrate a barometer sensor into the system, which, if properly calibrated, is able to provide an absolute altitude estimate based on a reliable reference value.

[0011] In several applications and user situations (automotive, consumer), it is necessary to use motion and position sensors (MPS), i.e. electronic devices consisting of a Global Navigation Satellite System (GNSS) receiver, an Inertial Measurement Unit (IMU), a barometer and a processor for processing the GNSS and sensor data.

[0012] In this context, GNSS provides accurate position information to external user applications deployed by the processor; the IMU and barometer provide information when GNSS is unavailable or degraded.

[0013] Typically, the IMU provides horizontal position in terms of latitude and longitude, while the barometer is used to derive altitude.

[0014] If properly calibrated, the atmospheric pressure output provided by a barometer can be converted to an absolute altitude in meters above sea level.

[0015] However, there is a problem with barometer calibration.

[0016] It is known in the prior art how to perform barometer calibration in a unit production line using a dedicated procedure. However, this involves the introduction of a dedicated test procedure and machine, which means a non-negligible increase in production costs.

[0017] Another known technique requires the user to manually calibrate the altitude of the barometer's current location (eg, derived from a map) which is entered in the GUI (Graphical User Interface) of the final product.

[0018] However, this requires the user to know the altitude of their current location precisely, which is not always available, especially in automotive applications, and it also requires user action and is not automatic. Typically, this method is very common in fitness / hiking applications and is not suitable for automotive situations. Summary of the invention

[0019] Therefore, there is a need to overcome the disadvantages discussed previously.

[0020] One or more embodiments may be directed to techniques for providing navigation information, particularly in a ground vehicle, by means of a navigation device, the navigation information including position and altitude information, the techniques including operation through a dead reckoning program, the dead reckoning program including: an absolute positioning source, such as a GNSS receiver, for providing three-dimensional position data including absolute altitude; an inertial measurement unit (IMU) for providing motion data including, particularly, acceleration and angular velocity; and a barometer sensor for providing pressure measurements. Methods include processing the motion data and the position data to obtain two-dimensional position information, particularly longitude and latitude; and processing the pressure measurements and the position data including the absolute altitude to obtain altitude information.

[0021] One or more embodiments may involve an absolute positioning source such as a GNSS Global Navigation Satellite System, Wi-Fi or other ranging technology.

[0022] One or more embodiments may relate to an inertial navigation system in automotive applications, ie involving four (or possibly more) wheeled vehicles. Such a system may include a dead reckoning (DR) system.

[0023] In addition, embodiments also relate to a related navigation system, the related navigation system is configured to provide navigation information and a corresponding related computer program product, the related computer program product can be loaded into the memory of at least one computer and includes a software code portion, the software code portion is used to perform the steps of the method when the product is run on the computer. As used herein, reference to such a computer program product is intended to be equivalent to a reference to a computer-readable medium containing instructions for controlling a computer system to coordinate the performance of the method. The reference to "at least one computer" is obviously intended to highlight the possibility of the present disclosure being implemented in a distributed / modular manner.

[0024] As previously mentioned, the present disclosure provides solutions regarding a method for providing navigation information by means of a navigation device, specifically in a ground vehicle, the navigation information including position and altitude information, the method including operation of a dead reckoning program, the dead reckoning program including an absolute positioning source such as a GNSS receiver, for providing three-dimensional position data including absolute altitude; an inertial measurement unit (IMU) for providing motion data including specifically acceleration and angular velocity; and a barometer sensor for providing pressure measurements. The method includes processing the inertial data and the absolute position data by means of a data fusion process to obtain two-dimensional position information, specifically longitude and latitude; and processing the pressure measurements and the absolute position data by means of a data fusion process to obtain an altitude estimate. Processing the pressure measurement and the absolute position data to obtain an altitude estimate includes performing a recursive estimation operation, specifically a Kalman filter, to obtain the altitude estimate, the recursive estimation operation including recursively estimating a state vector, the state vector including state variables representing calibration parameters, the recursive estimation operation including performing a system update operation at each iteration, the system update operation including using the pressure measurement measured by the barometer and the current estimate of the calibration parameters as external inputs to update a state transformation model that estimates the altitude estimate, and checking whether the absolute altitude measurement can be obtained from an absolute positioning source, and in the affirmative case, performing a measurement update operation using the absolute altitude as an input observation, first performing a calculation of the difference between the altitude estimate provided by the system update operation and the absolute altitude, and then performing the measurement update operation, updating the altitude estimate in the system update operation based on the difference, and feeding the difference back to the system update operation to correct the altitude estimate and the calibration parameters in the system update operation.

[0025] In a variant embodiment, the recursive estimation filter comprises an extended Kalman filter.

[0026] In a variant embodiment, the state variables representing the calibration parameters include: a pressure reference altitude representing the altitude corresponding to a certain fixed atmospheric pressure value measured by the barometer; a sensitivity representing a coefficient for converting pressure into altitude; and an output altitude information, and the state transformation model implemented at the system update level includes: a first system update equation calculating the sensitivity estimate as the sensitivity estimate of the previous iteration plus the error in the sensitivity estimate introduced by the first system update equation; a second system update equation calculating the pressure reference altitude as the pressure reference altitude estimate in the previous iteration plus the error in the pressure reference altitude estimate introduced by the second system update equation; and a third system update equation calculating the estimated altitude as: the difference between the current pressure observation and the initialization pressure multiplied by the sensitivity, summed with the reference estimated altitude, plus the error in the estimated altitude introduced by the third system update equation.

[0027] In a variant embodiment, the method includes providing initialization values ​​to the system update operation, the initialization values ​​including an initialization value for an estimated altitude, a pressure reference altitude initialization value, a pressure initialization value representing a pressure at which the pressure reference altitude is estimated, or an altitude bias and sensitivity initialization value.

[0028] In a variant embodiment, the state transformation matrix of the state transformation model is obtained by performing partial differentiation of the state vector with respect to each state variable ([h h0 k]) and the system noise matrix, which is a diagonal matrix with the errors in the first, second and third system update equations, respectively, on the diagonal Standard Deviation

[0029] In a variant embodiment, the method includes, after waiting for the next pressure measurement, feeding the difference back to the system update operation to correct the altitude and calibration parameters estimated in the system update operation, and then performing the next iteration of the recursive estimation filtering operation.

[0030] In a variant embodiment, the first system update equation is corrected for changes in air density with altitude.

[0031] In a variant embodiment, the method includes storing a state variable value corresponding to a given event, and loading the stored value as an initialization value corresponding to an event following the given event.

[0032] The present disclosure also relates to a navigation system, which is configured to provide navigation information through a navigation device, specifically in a ground vehicle, the navigation information including position and altitude information, the providing of the navigation information including the operation of a dead reckoning program, the dead reckoning program including an absolute positioning source such as a GNSS receiver, for providing three-dimensional position data including absolute altitude; one or more inertial sensors, specifically an inertial measurement unit (IMU) providing motion data, the motion data specifically including acceleration and angular velocity; a barometer sensor for providing pressure information; and a processor module, configured to execute the method of any of the aforementioned embodiments.

[0033] In a variant embodiment, the processor module includes a module configured to perform data fusion, the module including a module for processing inertial data and position data to obtain two-dimensional position information, the two-dimensional position information specifically being longitude and latitude; and a module configured to process pressure information and position data including absolute altitude to obtain an altitude estimate.

[0034] In a variant embodiment, the processor module includes a non-volatile memory configured to store state variable values ​​corresponding to a given event.

[0035] In a variant embodiment, the absolute positioning source is a GNSS receiver.

[0036] In a variant embodiment, the navigation system is installed on a ground vehicle.

[0037] The present disclosure also relates to a computer program product, which can be loaded into a memory of at least one processing circuit and is configured to perform the method of any one of the aforementioned embodiments when executed in the at least one processing circuit. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] One or more embodiments will now be described, by way of example only, with reference to the accompanying drawings, in which:

[0039] Figure 1 are examples of possible implementations of navigation sensors according to one or more embodiments;

[0040] Figure 2 is an example of a possible implementation of a processing module of a navigation sensor according to one or more embodiments;

[0041] Figure 3 is an example of a block diagram of a general recursive estimation process according to one or more embodiments; and

[0042] Figure 4 is an example of a block diagram of a recursive estimation process implemented by a processing module in accordance with one or more embodiments. DETAILED DESCRIPTION

[0043] In the following description, one or more specific details are illustrated to provide a deeper understanding of the examples of the embodiments of the present description. The embodiments can be obtained without one or more specific details or with other methods, components, materials, etc. In other cases, well-known structures, materials, or operations are not illustrated or described in detail so that some aspects of the embodiments will not be obscured.

[0044] References to "an embodiment" or "one embodiment" in the framework of this specification are intended to indicate that a particular configuration, structure, or characteristic described with respect to the embodiment is included in at least one embodiment. Thus, phrases such as "in an embodiment" or "in an embodiment" that may appear in one or more points of this specification do not necessarily refer to the same embodiment. Furthermore, in one or more embodiments, particular configurations, structures, or characteristics may be combined in any appropriate manner.

[0045] The reference signs used herein are provided for convenience only and therefore do not limit the degree of protection or the scope of the embodiments.

[0046] exist Figure 1In the invention, an embodiment of a vehicle motion and position sensor 10 is described, which is designed to be integrated on a four-wheeled vehicle in order to measure its absolute position in terms of latitude, longitude and altitude, and its motion in terms of speed and altitude.

[0047] exist Figure 1 , a simplified version of the sensor 10 is shown, wherein the main hardware components embedded in the device include:

[0048] a digital six-axis IMU 11, including a three-axis gyroscope and a three-axis accelerometer, thereby providing inertial measurement data IMD as output;

[0049] A digital barometer 12, providing air pressure data p as output;

[0050] a GNSS (Global Navigation Satellite System) hardware receiver 13 capable of receiving GNSS signals SS of satellites 15 from an antenna 13 a (preferably comprised in the VMPS sensor 10 ) and processing them to obtain measurements of the satellites' distance and relative motion from the Earth, providing them as satellite position data SD;

[0051] A position processor 14 running SW is able to receive and process all the values ​​IMD, p, SD provided as output by such components 11 , 12 , 13 and calculate the vehicle position P and the movement, in particular the speed V and the altitude A.

[0052] The position processor 14 includes software modules running on the processor 14, the software modules including:

[0053] The sensor interface 141, including a set of drivers such as I2C and / or SPI, interfaces with the sensor registers of the IMU 11 and the barometer 12 to extract the IMD data and the barometric pressure data p and formats the IMD data and the barometric pressure data p thus extracted into a format used by the fusion software module 143 as described below.

[0054] a GNSS software module 142 configured to process the satellite position data SD to calculate a GNSS based position and altitude estimate;

[0055] a fusion software module 143 configured to combine data corresponding to the IMD, p, SD values ​​provided as output by the IMU 11, the barometer 12 and the GNSS 13 and processed by the sensor interface 141 and the GNSS software module 142, respectively, to provide fused GNSS / sensor data F as output;

[0056] The UART driver 144 is capable of packaging the fused GNSS / sensor data F into vehicle position P, velocity V, and altitude A values ​​and providing them as output to one or more external applications.

[0057] exist Figure 2 , details of the fusion software module 143 are shown, the fusion software module 143 comprising a first 2D navigation block 1431 configured to estimate the user position on the surface of the earth based on the latitude λ and the longitude φ. This 2D navigation block 1431 receives as input the satellite positions and the motion data IMD (i.e., inertial data) acquired by the IMU 11, and mixes them together to provide an improved error-free position estimate, the satellite positions being represented as satellite-measured latitude λ in the satellite data SD estimated by the GNSS software module 142 GNSS and the satellite measured longitude φ GNSS , the motion data IMD includes angular velocity and acceleration on three axes sensed by the IMU 11. It is crucial to perform accurate calibration of the IMU errors during the fusion process.

[0058] According to the solution described herein, the fusion software module 143 also includes a 3D navigation block 1412, which is configured to estimate the user's height h relative to the earth's surface. t The 3D navigation block 1432 receives the satellite measured altitude h estimated by the GNSS software module 142 GNSS and the pressure data p acquired by the barometer 12 as input and blend them together to provide an improved error-free altitude estimate h. It is critical to perform an accurate calibration of the barometer error during the fusion process.

[0059] Here, the barometer pressure calibration method performed in the 3D navigation block 1432 and the method for converting the GNSS altitude h GNSS The process that needs to be implemented for fusion with the barometer pressure data p is to correctly calibrate the pressure sensor 12 and provide a continuous and accurate altitude estimate independent of the presence and quality of the GNSS signal.

[0060] Specifically, block 1432 is configured to implement a recursive estimation operation (eg, a Kalman filter, preferably an extended Kalman filter) by taking into account altitude values ​​obtained by a GNSS receiver.

[0061] In one embodiment, the recursive estimation operation is implemented by an Extended Kalman Filter (EKF) to model the altitude calculation and barometer calibration parameters.

[0062] This extended Kalman filter is driven by calibrated barometer measurements and, when the GNSS signal is good, the GNSS altitude hGNSS Used to provide status observation.

[0063] The recursive estimation operation is performed recursively by an algorithm that estimates the state of the system of interest. The latter is driven by an input whose calibrated trend is a corrected filtered noise measurement.

[0064] The algorithm will now be described generally with reference to a general state vector x, and comprises two main steps.

[0065] The first step consists in describing the time evolution of the state vector described by the system model:

[0066] x t =Ax t-1 +Bu t +Q Equation 1

[0067] where x t and x t-1 is the system state estimate in two consecutive discrete time periods t and t-1, u t For example, in system state x t The current external input at the same time period t of A is the state transformation matrix describing the evolution of the state over time, and B is the input matrix describing how the input drives the state over time. Since the model cannot be perfect, the system noise Q represents an estimate of the uncertainty between the predicted state and the true state.

[0068] The system model of Equation 1 above may not guarantee full observability of the state vector x. Therefore, the second step above is necessary, defined by the measurement model:

[0069] y t =Hx t +R Equation 2

[0070] This measurement model describes the state vector x at a certain time period t. t and the set of noisy measurements y used to observe it t The relationship between the state vector x t is linked to the measured value, and R is the measurement noise, representing an estimate of the uncertainty in the transformation. The above two equations 2 and 1 fully describe the Figure 3 The recursive filtering behavior described in detail in Figure 3 A recursive filtering process or algorithm, generally indicated using the reference numeral 100 , is described.

[0071] There is shown block 110, representing the system update step embodied by equation 1, and block 120, representing the measurement update step embodied by equation 2.

[0072] The recursive filtering process 100 begins with a system update 110 that implements Equation 1. In a first iteration of the process 100, specifically by design or at the factory, a system update 110 is provided for a period of time x. t-1 The system model in block 110 is based on the state x according to equation 1. t-1 The previous value of , at the first iteration in time period x t-1 An initial guess of the system state and the current drive input u t To predict the next state value, that is, the state estimation State Estimation is provided to block 120 where equation 2 is used to obtain the predicted measurement value In block 120, the predicted measure is also calculated The difference relative to the actual measured value The difference is fed back to correct the predicted state and constrain the error generated by the system model:

[0073]

[0074] K indicator is used for error feedback The gain for the modulation can be calculated in different ways. The extended Kalman filter (EKF) is a very common method described here, which provides a statistical framework in which not only the mean value of the state can be calculated, but also its variance according to a given model. In this context, the feedback Kalman gain obtained in the measurement step 120 is:

[0075] K=PH T (HPH T +R) -1 Equation 4

[0076] Where P is the squared covariance matrix associated with the state vector x. According to the EKF theory, the covariance matrix P needs to be modeled for state evolution and measurement updates in a similar way to the operation on the state vector. This is performed with the help of the following equation 5 for system model prediction:

[0077]

[0078] The covariance correction of the model in Equation 6 is used to measure the update:

[0079]

[0080] Thus, the measurement update 120 includes executing Equation 4 to calculate the Kalman gain K, and then executing Equation 3 to obtain the current state estimate x t , and then apply Equation 5 and Equation 6 to obtain the current covariance matrix Pt .

[0081] Use 115 to indicate the discrete time operator z -1 , time operator z -1 is applied to the current state x from the measurement step 120 t To obtain the previous state estimate x provided to the system update step 110 for the next iteration t-1 .

[0082] In the solution here, the system consists of a device-mounted barometer 11 and a GNSS receiver 13. In the solution described here, the state of such a system is modeled using three variables. The first variable of the state x is the estimated altitude h, which is the output of module 1432. Then, since the instrument providing the altitude is the barometer 12, its behavior is modeled with the help of the pressure reference altitude h0, which is the altitude corresponding to a fixed atmospheric pressure value. In addition, the behavior is also modeled by another variable, the sensitivity k, which represents the coefficient that converts the pressure specifically in hPa to the altitude specifically in meters. Therefore, in summary, the state vector x in the method described here is represented as the vector:

[0083] x=[h h0 k] T Equation 7

[0084] According to Equation 1, the state estimation is driven by the external input u, which in this embodiment is represented by the pressure measurement [p] of the raw barometer 11:

[0085] u=[p] Equation 8

[0086] The satellite measured altitude h provided by the GNSS receiver 13 (or any other absolute source) GNSS can be used as the measurement y to ensure full observability of the system state and bound the estimation error through feedback control:

[0087]

[0088] is the error in the height estimate caused by equation (9).

[0089] Overall, at least under good GNSS signal conditions, the observation is considered noisy but bias-free, which makes it fully compatible with the theoretical criterion of the EKF, which is optimal for estimating states in the presence of noise but cannot effectively cope with biases.

[0090] exist Figure 4 , a block diagram detailing the process implemented by the 3D NAV block 1432 is shown.

[0091] In this Figure 4 In the embodiment, block 210 indicates the step of providing initialization values ​​to the system update stage 220. Such initialization values ​​include an initialization value for the estimated altitude h, a pressure initialization value p0, an initialization value for the pressure reference altitude h0, and an initialization value for the sensitivity k.

[0092] The system update stage 220 receives this initialization value and the pressure observation or measurement p from the barometer 12 during the current time period t. t As input. The state transition model implemented in the system update stage 220 is generally described by Equation 1 and can be summarized into three equations in practice. Since the sensitivity k is constant, or almost constant over a long period of time, according to the following Equation 10, whose model is very simple but sufficient to ensure good observability (combined with other equations), the sensitivity estimate for:

[0093]

[0094] where υ k is the error in the sensitivity estimate caused by Equation 10.

[0095] The pressure reference altitude h0 is related to the atmospheric conditions; in fact, the same pressure value p measured by the barometer 11 can be determined by different values ​​of the altitude at which the barometer 11 is placed, depending on the air humidity and temperature. However, since the atmospheric parameters are generally not available for the applications considered here and considering the complete atmospheric model in any case is very complicated, the model of the pressure reference altitude h0 (i.e. the altitude corresponding to a given pressure value) is also kept simple:

[0096]

[0097] in is the error or altitude bias in the pressure reference altitude estimate caused by Equation 11.

[0098] Based on experimental results, the inventors also believe that such a model according to equation 11 may be sufficient to guarantee a reliable altitude estimate, and this can be mainly explained by two reasons. First, the atmospheric conditions are slowly changing, so that the pressure reference altitude h0 for a continuous period of time (updates are performed at 1 Hz) can be considered constant. Second, over a long period of time, the pressure reference altitude h0 can in any case be obtained with the help of the filtered satellite measured altitude h GNSS to be observed, and therefore its changes can be tracked by program 200.

[0099] To perform this task effectively, it is important to properly model the systematic errors with the help of the systematic noise Q, which can be done, for example, empirically using a large number of continuous GNSS and pressure observations.

[0100] Finally, Equation 12 is used to calculate the input pressure observation p t To estimate the estimated height The equation is:

[0101]

[0102] υ h is the error in the estimated height caused by Equation 12. The estimated height at a given iteration is Based on the input pressure observation value p in this iteration t and the pressure initialization value, modulated by the sensitivity k in this iteration and summed with the pressure reference altitude h0 in this iteration. To this end, as indicated, the estimated altitude error υ caused by the model equation is added h .

[0103] The calibration parameters described previously (e.g., estimates of the three variables of state x) are used to compensate for the scale factor and bias of the raw barometer data. In Equation 12, p0 is the pressure reference altitude estimate or altitude bias h0 t The pressure being referenced.

[0104] Equations 10 to 12 provide updates to the state vector x in stage 220. However, in order for process 200 to work, it is also necessary to maintain parallel dependent uncertainty estimates. This can be achieved by equation 5, where the state transformation matrix A is obtained by performing the state x with respect to each state variable x j where j = 1 to n, and according to equation 7, n is 3, so x j =[h h0 k].

[0105]

[0106] In Equation 5, the matrix Q is also reported, which is called the system noise. It is an n×n matrix that describes the reliability of the prediction model used. In the case of interest, it is diagonal:

[0107]

[0108] Among them, σ h ,, σ k represents the error υ in the three system update equations h , υ kIt is not really possible to know these errors in advance, so the correct adjustment for this parameter can be derived empirically and through procedural testing.

[0109] After executing equations 10, 11 and finally 12, the estimated height is obtained The process 200 enters a waiting state 230 in which the process waits for the next GNSS measurement. In other words, the system checks the next satellite measurement height h provided by the GNSS receiver 13. GNSS Preferably, in the absence of the altitude measurement h provided by the GNSS receiver 13 GNSS In the case of a saturation of 0.1 saturation, the sensor 10 uses the value at the output of stage 220 as an altitude estimate, which is calculated based on the pressure value measured by the barometer 12. In other words, during the waiting state 230, the altitude output by the sensor 10 is the altitude measured by the barometer 12, which is accurately calibrated by the process described in this embodiment. When available, the system exits the waiting state 230 and such satellite-measured altitude h provided by the GNSS receiver 13 is GNSS Together with the current estimated altitude from stage 220 are provided together to a difference calculation stage 240. Stage 240 is configured to calculate the estimated height calculated in stage 220 Measure the altitude h with the satellite GNSS The actual error dy between:

[0110]

[0111] With the error feedback in Equation 3 The corresponding actual error dy is provided to the measurement model update stage 240 to implement Equation 3 and obtain the output height and is fed back to correct the current state estimate. Block 250 indicates the time for the next pressure observation p t The waiting state of and the execution of the next iteration of the recursive process applying equations 10, 11 and 12 in stage 220. The process 200 is thus recursively executed until the calibration parameters (i.e., the estimates of the three variables of the state x) converge to their true values. After that, the filter implementing the procedure 200 only has to maintain the status quo. The feedback is scaled with a gain K, which can be calculated according to equation (4), and the feedback depends on the current estimate of the covariance matrix and the matrix H obtained from the partial differentiation of the state x with respect to a single height measurement:

[0112]

[0113] In Equation 4, there is also a matrix R, which is called the measurement noise. Using m to indicate the number of measurements entering the filter, R is an m×m matrix used to describe the reliability of the prediction model used. In the case of interest, since only one measurement is available, the measurement noise R is a scalar:

[0114]

[0115] in represents the error made in the measurement update equation Similar to system modeling, this error is derived based on experience and program testing.

[0116] Similarly, for what is done in the model update, the matrix P also needs to be updated according to Equation 6, which is well known in the literature. For this, the above K and H matrices are reused.

[0117] The method explained above has been tested and provides reliable results for land-based applications. In this user case, the altitude changes relatively slowly between integration periods, so a relatively simple model for sensitivity holds. However, for applications where altitude changes rapidly (e.g., avionics), this may not be valid; the error generated by Equation 10 may be difficult to model using process noise alone. For this case, Equation 10 can be modified to correct the sensitivity value by calculating it as a function of pressure and altitude:

[0118] k t =ap0(1-bh t-1 ) c Equation 18

[0119] The model constants are defined as follows:

[0120] a=3.6137·10 -5 [m]; b = 6.8753 10 -6 ; c = 4.2561

[0121] As described with reference to level 210, the procedure 200 requires that the state variables in equation 7 need to be initialized with user-defined values ​​when the procedure is first started. For example, a good guess for h and h0 is given by the first reliable altitude given by the GNSS receiver 13. For the sensitivity k, a common value (e.g., zero) may be required. With the filter constants set correctly and a good GNSS signal available, the filter will converge to the true value of each state variable in a reasonable time. However, for practical use of the procedure in a product, it is not convenient to repeat the calibration procedure at each start. Therefore, in a common embodiment, there may be a non-volatile memory in the sensor 10, in which the state variable values ​​are copied according to each given event, such as each time a test session ends or each time the vehicle stops or the engine is turned off. When a new session starts or the vehicle is restarted, such values ​​are reloaded in the event after the given event, so that the sensor 10 can provide a reliable altitude at start-up even in the absence of GNSS signal reception (e.g., this may occur when the vehicle is started in a garage or takes a long time to obtain a valid GNSS fix (warm start) (this situation is common in dynamic scenarios, especially in urban areas where GNSS signals are not always reliable)).

[0122] Therefore, based on the above description, in one or more embodiments, the method described herein provides navigation information including position information (e.g., position P) through a dead reckoning navigation sensing device and a sensor 10, and the dead reckoning navigation sensing device includes:

[0123] - an absolute positioning source, in particular a GNSS receiver (13), for providing a value including an absolute altitude h GNSS Absolute position data (SD), for example, satellite position data,

[0124] an inertial measurement unit (11) providing motion data IMD, in particular a six-axis IMU providing angular velocity and acceleration in three Cartesian axes,

[0125] - a barometer sensor (12), in particular a digital barometer sensor, providing a pressure measurement value p,

[0126] Methods include:

[0127] In the 2D module 1431 of the processor 14, the motion data IMD and the absolute position data SD (specifically, the GNSS measured latitude and longitude) are processed through a data fusion process to obtain two-dimensional position information, specifically, longitude λ and latitude φ.

[0128] In the 3D module 1432 of the processor 14, the pressure measurement value p and the absolute position data SD (specifically the absolute height, in the example the GNSS measured height) are processed through a data fusion process to obtain a height estimate h, which is specifically combined with the two-dimensional position information to form the position information output by the sensor 10.

[0129] The disclosed solution specifically provides such processing of the pressure measurement values ​​p and the absolute position data SD to obtain the altitude estimate h, which comprises performing a recursive estimation operation 200 (specifically a Kalman filter or an extended Kalman filter) to obtain the altitude estimate h, the step comprising recursively estimating a state vector x comprising state variables representing calibration parameters (i.e., [h h0 k]), the recursive estimation operation 200 comprising performing at each iteration a system update operation 220, the system update operation 220 using the pressure measurement values ​​p or p measured by the barometer 12 t and the current estimate of this calibration parameter [h h0 k] is used as external input to update the state transition model. Based on the input pressure observation value p at this iteration t It is calculated by the difference between the initial pressure value and the pressure, modulated by the sensitivity k at that iteration, and summed with the pressure reference height h0 at that iteration, plus the estimated height error υ caused by the model equation itself h As shown, two equations for other calibration parameters h0, k can be included in the transformation model.

[0130] The method then checks in block 230 whether the absolute height h can be obtained from the absolute positioning source 13 GNSS The measurement value is , and in the affirmative, a measurement update operation is performed in block 250. In the negative case, the method may use the height estimate h provided by the system update operation 220. The measurement update operation replaces the absolute height h GNSS Using the observation value y as input, the height estimate h provided by the system update operation 220 is first calculated in block 240 and the absolute height h GNSS The difference dy between them is then used to perform a measurement update operation to update the height estimate in the system update operation 220 according to the difference dy, and this difference dy is fed back to the system update operation 220 to correct the height estimate (h) and calibration parameters h0 and k in the system update operation 220.

[0131] In addition, based on the above description, in one or more embodiments, the navigation system is configured to provide navigation information, such as position P, speed V, and altitude A, in a ground vehicle through the dead reckoning navigation sensing device 10, wherein the navigation information includes position information P, and the position information P includes altitude information h. The navigation system may include:

[0132] - an absolute positioning source, in particular a GNSS receiver (13), for providing a value including an absolute altitude h GNSS Absolute position data (SD), for example, satellite position data,

[0133] an inertial measurement unit 11 providing motion data IMD, in particular a six-axis IMU providing angular velocity and acceleration in three Cartesian axes,

[0134] a barometer sensor 12, in particular a digital barometer sensor, providing a pressure measurement value p,

[0135] The processor module 14 is configured to execute the method according to the above embodiment, specifically to receive the outputs of the above sensors 11 , 12 , and 13 .

[0136] The processor module 14 includes a module 143 configured to perform data fusion using a Kalman filter, the module 143 including: a module 1431 for performing dead reckoning of a 2D position using inertial data, processing the motion data IMD and the position data SD to obtain two-dimensional position information, specifically longitude and latitude; and a module 1432 configured to process the pressure information p and the absolute altitude h GNSS The position data of the event is used to obtain the height information h. The processor module 14 preferably includes a non-volatile memory configured to store state variable values ​​corresponding to a given event.

[0137] Thus, the described method and system allow the fusion of GNSS and barometer measurements and are easy to implement in embedded software due to their low computational complexity.

[0138] This approach also has several other advantages:

[0139] - Firstly, it allows the barometer to be automatically calibrated without taking specific actions in the production line, the costs of which are usually related to the BOM (Bill of Materials);

[0140] - It does not require specific configuration actions on the user side, so it is transparent and user-friendly;

[0141] - It provides seamless fusion between GNSS and barometer, thus ensuring 100% high availability and integrity even in situations where GNSS is not available or fails due to reflections or interference;

[0142] -Although the system requires a significant initial calibration step before the estimated values ​​can be saved to memory, limitations can also be overcome.

[0143] Without prejudice to the underlying principle, the details and embodiments may vary, even significantly, with respect to what is disclosed merely as an example, without departing from the scope of protection.

[0144] The scope of protection is defined by the appended claims.

[0145] The fusion method thus described is not tied to the specific constraints imposed by the automotive use case. That is, the same method can be exported to any device equipped with a barometer and an absolute positioning source or an absolute altitude reference provider. For example, the method described here can be implemented in a smartphone, but also in a fitness device (e.g., used by cyclists and hikers). The method can also be extended to the case of aircraft users, but due to the faster dynamics of the atmospheric parameters, the model calibrated by the barometer can be adjusted by increasing the process noise or introducing a more accurate prediction model.

[0146] Furthermore, processing the pressure measurements and the absolute position data to obtain an altitude estimate through a data fusion process may use an absolute positioning source different from the GNSS receiver. In variant embodiments, an alternative absolute positioning source may be used, for example, a 3D map database (local or remote) may be used as an absolute positioning source to provide altitude information. The operations for performing data fusion remain essentially unchanged, and the measurement noise is used to modulate the observed impact on the filter output according to the specific error characteristics of the alternative absolute positioning source.

Claims

1. A method for providing navigation information by a navigation sensing device, the method comprising: Processing motion data and three-dimensional absolute position data to obtain two-dimensional position information through a first data fusion process, wherein the motion data is provided by an inertial measurement unit of the navigation sensing device, the motion data includes acceleration and angular velocity, and the three-dimensional absolute position data is provided by an absolute positioning source of the navigation sensing device, the three-dimensional absolute position data includes absolute altitude; as well as Processing the pressure measurement and the three-dimensional absolute position data to obtain an altitude estimate by a second data fusion process, the pressure measurement provided by the barometer sensor, the processing by the second data fusion process comprising: performing a recursive estimation operation to obtain the altitude estimate, comprising recursively estimating a state vector, the state vector comprising state variables representing calibration parameters, the state variables representing the calibration parameters comprising: a pressure reference altitude corresponding to a certain fixed atmospheric pressure value measured by the barometer sensor; a sensitivity estimate representing a coefficient for converting pressure to altitude; and outputting altitude information; the recursive estimation operation comprising performing a system update operation at each iteration, the system update operation comprising updating a state transformation model that estimates the altitude estimate using a current estimate of the calibration parameters and the pressure measurement; and Performing a measurement update operation using the absolute height, the measurement update operation comprising: calculating a difference between the altitude estimate and the absolute altitude; updating the altitude estimate for the system update operation based on the difference; and The difference is fed back to the system update operation to correct the calibration parameters and the height estimate in the system update operation.

2. The method of claim 1, wherein the recursive estimation operation comprises Kalman filtering.

3. The method of claim 2, wherein the recursive estimation operation comprises an extended Kalman filter.

4. The method according to claim 1, wherein the state transition model comprises: a first system update equation for calculating the sensitivity estimate, wherein an error in the sensitivity estimate is introduced in the first system update equation, the sensitivity estimate being calculated by the first system update equation as a previous sensitivity estimate at a previous iteration plus the error in the sensitivity estimate; a second system update equation for calculating the pressure reference altitude, wherein an error in the pressure reference altitude estimate is introduced in the second system update equation, the pressure reference altitude being calculated by the second system update equation as a previous pressure reference altitude estimate at the previous iteration plus the error in the pressure reference altitude estimate; as well as a third system update equation for calculating the altitude estimate, wherein an error in the altitude estimate is introduced in the third system update equation, the altitude estimate being calculated by the third system update equation as the difference between the pressure measurement and the initialization pressure multiplied by the sensitivity estimate, summed with the pressure reference altitude, plus the error in the altitude estimate.

5. The method according to claim 3, comprising: Initialization values ​​are provided to the system update operation, the initialization values ​​including an estimated altitude initialization value, a pressure reference altitude initialization value, a pressure initialization value, and a sensitivity initialization value, the pressure initialization value indicating the pressure to which the pressure reference altitude refers.

6. A method according to claim 4, wherein the state transformation matrix of the state transformation model is obtained by performing partial differentiation of the state vector with respect to each of the state variables, and a system noise matrix, wherein the system noise matrix is ​​a diagonal matrix having the standard deviations of the errors in the first system update equation, the second system update equation and the third system update equation on the diagonal respectively.

7. The method according to claim 2, further comprising: After waiting for the next pressure measurement, the difference is fed back to the system update operation to correct the calibration parameters and the altitude estimate in the system update operation, and then the next iteration of the filtering in the recursive estimation operation is performed.

8. The method of claim 4, wherein the first system update equation is corrected based on pressure and altitude.

9. The method according to claim 1, comprising: storing the state variable corresponding to a given event; And the stored state variables are loaded as initialization values ​​corresponding to new events after the given event.

10. The method of claim 1, wherein the absolute positioning source is a Global Navigation Satellite System receiver. The method according to claim 1 , wherein the two-dimensional location information is longitude and latitude.

12. A navigation system configured to provide navigation information, the navigation system comprising: Absolute positioning source, providing three-dimensional absolute position data including absolute height; Inertial measurement unit, which provides motion data including acceleration and angular velocity; A barometer sensor, which provides pressure measurements; as well as The processor module is configured as: In a first data fusion process, the motion data and the absolute position data are processed to obtain two-dimensional position information; as well as In a second data fusion process, the pressure measurement and the absolute position data are processed to obtain a height estimate, wherein the second data fusion process comprises: performing a recursive estimation operation to obtain the altitude estimate, comprising recursively estimating a state vector, the state vector comprising state variables representing calibration parameters, the state variables representing the calibration parameters comprising: a pressure reference altitude corresponding to a certain fixed atmospheric pressure value measured by the barometer sensor; a sensitivity estimate representing a coefficient for converting pressure to altitude; and outputting altitude information; the recursive estimation operation comprising performing a system update operation at each iteration, the system update operation comprising updating a state transformation model that estimates the altitude estimate using a current estimate of the calibration parameters and the pressure measurement; and Performing a measurement update operation using the absolute height, the measurement update operation comprising: calculating a difference between the altitude estimate and the absolute altitude; updating the altitude estimate for the system update operation based on the difference; and The difference is fed back to the system update operation to correct the calibration parameters and the height estimate in the system update operation. 13 . The navigation system of claim 12 , wherein the processor module includes a non-volatile memory configured to store the state variable corresponding to a given event.

14. The navigation system of claim 12, wherein the absolute positioning source is a Global Positioning Satellite System receiver.

15. The navigation system of claim 12, wherein the navigation system is installed on a ground vehicle.

16. The navigation system according to claim 12, wherein the state transition model comprises: a first system update equation for calculating the sensitivity estimate, wherein an error in the sensitivity estimate is introduced in the first system update equation, the sensitivity estimate being calculated by the first system update equation as a previous sensitivity estimate at a previous iteration plus the error in the sensitivity estimate; a second system update equation for calculating the pressure reference altitude, wherein an error in the pressure reference altitude estimate is introduced in the second system update equation, the pressure reference altitude being calculated by the second system update equation as a previous pressure reference altitude estimate at the previous iteration plus the error in the pressure reference altitude estimate; as well as a third system update equation for calculating the altitude estimate, wherein an error in the altitude estimate is introduced in the third system update equation, the altitude estimate being calculated by the third system update equation as the difference between the pressure measurement and the initialization pressure multiplied by the sensitivity estimate, summed with the pressure reference altitude, plus the error in the altitude estimate.

17. The navigation system of claim 16, wherein a state transformation matrix of the state transformation model is obtained by performing partial differentiation of the state vector with respect to each of the state variables, and a system noise matrix, the system noise matrix being a diagonal matrix having standard deviations of errors in the first system update equation, the second system update equation, and the third system update equation on a diagonal line, respectively.

18. A computer program product loadable into a memory of at least one processing circuit, the computer program product when run in the at least one processing circuit being configured to: In a first data fusion process, the motion data and the three-dimensional absolute position data are processed to obtain two-dimensional position information, wherein the motion data includes acceleration and angular velocity provided by an inertial measurement unit, and the three-dimensional absolute position data includes an absolute height provided by an absolute positioning source; as well as In a second data fusion process, the pressure measurement provided by the barometer sensor and the absolute position data are processed to obtain an altitude estimate, the second data fusion process comprising: performing a recursive estimation operation to obtain the altitude estimate, comprising recursively estimating a state vector, the state vector comprising state variables representing calibration parameters, the state variables representing the calibration parameters comprising: a pressure reference altitude corresponding to a certain fixed atmospheric pressure value measured by the barometer sensor; a sensitivity estimate representing a coefficient for converting pressure to altitude; and outputting altitude information; the recursive estimation operation comprising performing a system update operation at each iteration, the system update operation comprising updating a state transformation model that estimates the altitude estimate using a current estimate of the calibration parameters and the pressure measurement; and Performing a measurement update operation using the absolute height, the measurement update operation comprising: calculating a difference between the altitude estimate and the absolute altitude; updating the altitude estimate for the system update operation based on the difference; and The difference is fed back to the system update operation to correct the calibration parameters and the height estimate in the system update operation.

19. The computer program product of claim 18, wherein the state transition model comprises: a first system update equation for calculating the sensitivity estimate, wherein an error in the sensitivity estimate is introduced in the first system update equation, the sensitivity estimate being calculated by the first system update equation as a previous sensitivity estimate at a previous iteration plus the error in the sensitivity estimate; a second system update equation for calculating the pressure reference altitude, wherein an error in the pressure reference altitude estimate is introduced in the second system update equation, the pressure reference altitude being calculated by the second system update equation as a previous pressure reference altitude estimate at the previous iteration plus the error in the pressure reference altitude estimate; as well as a third system update equation for calculating the altitude estimate, wherein an error in the altitude estimate is introduced in the third system update equation, the altitude estimate being calculated by the third system update equation as the difference between the pressure measurement and the initialization pressure multiplied by the sensitivity estimate, summed with the pressure reference altitude, plus the error in the altitude estimate.

20. A computer program product according to claim 19, wherein the state transformation matrix of the state transformation model is obtained by performing partial differentiation of the state vector with respect to each of the state variables, and a system noise matrix, wherein the system noise matrix is ​​a diagonal matrix having the standard deviations of the errors in the first system update equation, the second system update equation and the third system update equation on the diagonal, respectively.

Citation Information

Patent Citations

  • Method and arrangement for determining altitude

    US20130204567A1

  • Localization Apparatus and Localization Method

    US20170356744A1

  • Device and method for calibrating and improving the accuracy of barometric altimeters with GPS-derived altitudes

    US6522298B1

  • Method and apparatus for calculating altitude based on barometric and GPS measurements

    US6735542B1