US11941079B2 - Vehicle navigation assistance method and device using an invariant Kalman filter and a navigation status of a second vehicle - Google Patents
Vehicle navigation assistance method and device using an invariant Kalman filter and a navigation status of a second vehicle Download PDFInfo
- Publication number
- US11941079B2 US11941079B2 US17/262,562 US201917262562A US11941079B2 US 11941079 B2 US11941079 B2 US 11941079B2 US 201917262562 A US201917262562 A US 201917262562A US 11941079 B2 US11941079 B2 US 11941079B2
- Authority
- US
- United States
- Prior art keywords
- carrier
- circumflex over
- navigation state
- kalman filter
- vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
- G06F18/2113—Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/393—Trajectory determination or predictive tracking, e.g. Kalman filtering
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/51—Relative positioning
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/52—Determining velocity
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/10—Simultaneous control of position or course in three dimensions
- G05D1/101—Simultaneous control of position or course in three dimensions specially adapted for aircraft
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/40—Control within particular dimensions
- G05D1/46—Control of position or course in three dimensions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/40—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using contact-making devices, e.g. electromagnetic relay
- G06F7/405—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using contact-making devices, e.g. electromagnetic relay binary
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/40—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using contact-making devices, e.g. electromagnetic relay
- G06F7/42—Adding; Subtracting
-
- G08G5/0047—
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G5/00—Traffic control systems for aircraft
- G08G5/50—Navigation or guidance aids
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G5/00—Traffic control systems for aircraft
- G08G5/50—Navigation or guidance aids
- G08G5/55—Navigation or guidance aids for a single aircraft
Definitions
- the present invention concerns a method for assisting the navigation of a carrier using an invariant Kalman fitter.
- the problem of estimating the state of a physical system generally arises as follows.
- the state of the system at an instant n is represented by a vector X n
- an observation available at the instant n is represented by another vector Y n .
- Kalman filter implements the following calculations: ⁇ circumflex over (X) ⁇ n+1
- n F ⁇ circumflex over (X) ⁇ n
- n+1 ⁇ circumflex over (X) ⁇ n+1
- the matrix K n is called “gain matrix”, it can be calculated using a Riccati equation.
- the estimation error is then defined as: e n
- n X n ⁇ circumflex over (X) ⁇ n
- n X n+1 ⁇ circumflex over (X) ⁇ n+1
- n+1 ( I ⁇ K n+1 H ) e n+1
- Id is the identity element of the group induced by the operation *.
- invariant Kalman filter an extended Kalman filter which is governed by the following equations: ⁇ circumflex over (X) ⁇ n+1
- n f ( ⁇ circumflex over (X) ⁇ n
- n+1 ⁇ circumflex over (X) ⁇ n+1
- exp( ⁇ ) is the exponential map (this function is known as soon as the binary operation is known, if it defines a Lie group) and K n is a “gain matrix” as in the linear case. It is then possible to show that the estimation error will also have an autonomous evolution, as in the linear case. The problem of estimating the state is therefore simplified, even if the system considered is not linear.
- a Kalman filter is generally implemented on a system that does not satisfy the condition a., but that approximates a system that does satisfy this condition a.
- Invariant Kalman filters have thus been used in the carrier navigation assistance.
- An invariant Kalman filter used in such navigation assistance context estimates a navigation state representative of a movement of the considered carrier.
- proprioceptive sensors of a carrier anti an invariant Kalman filter are used to estimate the state of navigation of this carrier.
- These applications are of two types. Some of them use kinematic data expressed in a reference frame in which the carrier is movable. However, these kinematic data are not always available. The other applications do not use such kinematic data, but, on the other hand, do not allow estimating a state of navigation of the carrier in the reference frame; these applications can only produce navigation states relating to an initial situation.
- An aim of the invention is to overcome the above mentioned drawbacks.
- a method for assisting the navigation of a first carrier stationary relative to a second carrier itself movable in a reference frame comprising the following steps implemented by the first carrier:
- the proposed method advantageously exploits the fact that the first carrier is stationary relative to a second carrier whose estimated navigation state is already known, constituting an information of absolute nature, that is to say relative to the reference frame in which the second carrier is movable.
- This method has the advantage of working even if the first carrier does not know its position relative to the second carrier (in other words when the first carrier and the second carrier are not harmonized).
- the method according to the first aspect of the invention may further comprise the following optional features, taken alone or in combination when technically possible.
- the first variables comprise a rotation matrix representing an attitude of the first carrier
- the second variables comprise a rotation matrix representing the attitude of the second carrier relative to the first carrier
- the first variables comprise a position vector of the first carrier
- the second variables comprise a position vector of the second carrier relative to the first carrier
- the estimated navigation state of the first carrier further comprises a velocity vector of the first carrier in the reference frame.
- the binary operation applies identical transformations to one of the position vectors and to the velocity vector.
- the navigation state of the second carrier received comprises a position vector of the second carrier in the reference frame and a rotation matrix representing an attitude of the second carrier in the reference frame.
- the navigation state of the second carrier received comprises a velocity vector of the second carrier in the reference frame and a rotation matrix representing an attitude of the second carrier in the reference frame
- the movement data of the first carrier, acquired by the proprioceptive sensor comprise an angular velocity of the first carrier.
- the first variables comprise a rotation matrix representing an attitude of the first carrier
- the second variables comprise a rotation matrix representing the attitude of the second carrier relative to the first carrier
- the vector Z v consists of a first vector Z R v of size 3 representative of a rotation, and of a second vector Z v v of size 3 as well, and in which the invariant Kalman filter uses an innovation Z with the form:
- the estimated navigation state of the first carrier further comprises at least one error state specific to the proprioceptive sensor, and the binary operation is additive for this error variable specific to the proprioceptive sensor.
- the first carrier is an aircraft and the second carrier is an aircraft-carrier, or the first carrier is a projectile and the second carrier is an aircraft that carries the projectile, or the first carrier is an inertial unit of a vehicle and the second carrier is an exteroceptive sensor of the vehicle.
- the estimation step is implemented in parallel by several invariant Kalman filters, so as to obtain several estimates of the navigation state of the first carrier, and furthermore comprises steps of:
- a device for assisting the navigation of a first carrier stationary relative to a second carrier itself movable in a reference frame comprising:
- FIG. 1 schematically illustrates two carriers and references.
- FIG. 2 schematically illustrates internal components of the carriers of FIG. 1 , according to one embodiment of the invention.
- FIG. 3 is a flowchart of steps of a navigation assistance method, according to one embodiment of the invention.
- a system comprises a first carrier 1 and at least one second carrier 2 stationary relative to the first carrier 1 .
- references are considered: a first frame attached to the first carrier 1 , a second frame attached to the second carrier 2 , and a reference frame in which the two carriers 1 , 2 are movable.
- the reference frame is for example a celestial frame attached to stars or to the earth.
- the second carrier is schematically represented by a parallelepiped, and the first carrier by an object of smaller dimensions placed on the first carrier.
- This representation is however only schematic and the two carriers can be of various types.
- the first carrier is an aircraft, for example an airplane or a helicopter
- the second carrier is an aircraft carrier, for example a ship of the airplane carrier type on which the airplane is placed.
- the first carrier is a projectile, for example a missile
- the second carrier is an aircraft which carries the projectile, for example an airplane or a helicopter.
- the first carrier is an inertial unit of a vehicle, for example land vehicle
- the second carrier is an exteroceptive sensor of the same vehicle.
- the first carrier 1 comprises a data communication interface with the second carrier 2 .
- the communication interface 4 is of the wireless radio type (Wi-Fi®, Bluetooth®) and for example comprises an antenna. As a variant, this interface is wired.
- the first carrier 1 comprises at least one proprioceptive sensor 6 .
- Each proprioceptive sensor used is configured to acquire movement data of the first carrier in the first frame. These data typically comprise angular velocities, and accelerations.
- the proprioceptive sensor comprises for example an inertial unit which comprises a plurality of inertial sensors such as pyrometers and accelerometers.
- the proprioceptive sensor comprises at least one odometer.
- the first carrier 1 furthermore comprises a data processing unit 10 .
- the processing unit 10 is arranged to process data received by the communication interface 4 .
- the data processing unit 10 typically comprises at least one processor configured to implement a navigation assistance method which will be described below, by means of an invariant Kalman filter.
- the invariant Kalman filter is typically in the form of a computer program executable by the processor of the data processing unit.
- the general operation of an invariant Kalman filter is known per se. However, it will be seen below that the binary operation used to configure the invariant Kalman filter implemented by processing unit 10 is chosen in a particular manner.
- the processing unit 10 is adapted to implement several Kalman filters in parallel.
- the second carrier 2 comprises means for estimating a navigation state of this second carrier in the reference frame.
- These means are known per se. it will for example be possible to use the means described in the document entitled “Aided navigation: GPS with high rate sensors” par Jay Farell, published in 2008.
- the second carrier 2 further comprises a communication interface with the first carrier 1 , of the same type as the communication interface X.
- the invariant Kalman filter implemented by the processing unit 10 is configured to estimate a navigation state of the first carrier 1 in the reference frame.
- the navigation state of the first carrier comprises first variables representative of a first rigid transformation linking the first frame (attached to the first carrier 1 ) to the reference frame, and second variables representative of a second rigid transformation linking the second frame (attached to the second carrier 2 ) to the first frame.
- a rigid transformation (also known as affine isometry), is a transformation that preserves the distances between pair of points of a solid.
- each of the first and second rigid transformations can be characterized by the composition of a rotation and a translation.
- X 1 ( R 1 , v 1 , x 1 , R 23 , x 21 ) where:
- the first variables are R 1 , x 1 and v 1 ; and the second variables are R 21 , x 21 .
- the invariant Kalman filter is further configured to use as observation data a navigation state X 2 of the second carrier 2 , expressed in the reference frame.
- the navigation state of the second carrier 2 typically comprises
- the invariant Kalman filter is configured to use as binary operation, denoted *, a term-by-term composition of the first rigid transformation and of the second rigid transformation.
- This composition operation can he extended to the velocity vector of the first carrier, when the latter is also comprised in the navigation state of the first carrier.
- the binary operation * applies identical transformations to one of the position vectors and to the velocity vector.
- a method for assisting the navigation of the first carrier 1 and implementing an invariant Kalman filter configured as indicated in section 2/, comprises the following steps.
- This navigation state X 2 comprises the rigid transformation T 2 formed by the pair (R 2 , x 2 ).
- a step 102 the communication interface 4 of the first carrier 1 receives from the communication interface 14 of the second carrier 2 the data representative of the rigid transformation T 2 . These data are then transmitted to the processing unit 10 .
- This innovation calculation is particularly advantageous because it allows satisfying conditions a. and b. set out in the introduction.
- a retraction step 108 the processing unit 10 transforms the linear correction dX 1 into a non-linear correction C 1 of the same nature as ⁇ circumflex over (X) ⁇ 1 (the state ⁇ circumflex over (X) ⁇ 1 is not a vector because it contains rotations).
- the transformation used is any function taking as argument a vector of the dimension of the state X 1 (15 in this case) and returning an object of the same nature as X 1 but a particularly efficient choice is the term-by-term exponential of the Lie group of the pairs of rigid transformations.
- a non-linear update step 110 is then implemented by the processing unit 10 .
- invariance to the left of the estimation error e is obtained. It can of course be envisaged to modify the preceding equations to obtain right invariance (the left invariance being however a preferred embodiment).
- the proprioceptive sensor 3 furthermore acquires movement data of the first carrier 1 in the first frame.
- These movement data typically comprise accelerations and/or velocities, for example angular velocities.
- These acquired movement data are transmitted to the processing unit 10 .
- Step 112 can be implemented before, during, or after any one of steps 102 , 104 , 106 , 108 , 110 .
- a propagation step 114 known per se to those skilled in the art, the processing unit 10 generates a propagated navigation state, from the state X 1 + . To do so, the processing unit 10 applies, in a manner known per se, an evolution model derived from an integration of the data acquired by the proprioceptive sensor 6 .
- the evolution of the estimation error is autonomous (it depends neither on X 1 nor on ⁇ circumflex over (X) ⁇ 1 ).
- the navigation state emission of the second carrier is repeated over time, such that these states are received by the first carrier 1 .
- the processing unit 10 repeats these same steps, 104 , 106 , 108 , 110 , 112 , 114 in new iterations of the invariant Kalman filter, for each new state of the second carrier received.
- the state estimated during the propagation step 112 of a given iteration is used as input data for the innovation calculation 104 and non-linear update 110 steps of a following iteration.
- the first carrier 1 can obtain assistance on its own navigation using the data already available in the second carrier 2 on its own navigation.
- Kalman filters are advantageously implemented in parallel by the processing unit 10 , so as to obtain several estimates of the navigation state of the first carrier 1 .
- the processing unit determines, for each estimate, a data deviation metric of the estimate.
- S is the covariance of the innovation Z as conventionally calculated in the step of updating a conventional Kalman filter.
- the metric L can be calculated for a given measurement.
- the metric L is the sum of the values obtained on a set of the past measurements.
- a merging step 116 the processing unit 10 produces a consolidated estimate of the navigation state of the first carrier based on the estimates and their associated likelihood metrics L.
- the estimate obtained by one of the filters which has the metric that reflects the smallest data deviation is selected as consolidated estimate.
- the consolidated estimate is an average of the estimates determined by the different filters, which is weighted by the metrics.
- the estimated states X 1 not being vectorial in nature, those skilled in the art can use an average adapted to the case of the varieties.
- the estimated state X 1 it is possible to complete the estimated state X 1 with other interesting variables, for example an error state specific to the proprioceptive sensor (bias, scale factor, drift, etc.).
- an error state specific to the proprioceptive sensor bias, scale factor, drift, etc.
- the binary operation * is additive for the proprioceptive sensor error state.
- the matrix R 21 can be replaced by a matrix R 12 which allows switching from the second frame (attached to the second carrier 2 ) to the first frame (attached to the first carrier 1 ).
- the vector x 21 can be replaced by a vector x 12 , which is a translation vector allowing switching from the coordinates of a point in the second frame to the coordinates of the same point in the first frame.
- the proprioceptive measurements of the carrier 1 comprise an angular velocity ⁇ .
- the navigation state X 2 of the second carrier 2 received includes a velocity vector of the second carrier 2 in the reference frame and a rotation matrix representing an attitude of the second carrier in the reference frame.
- This other embodiment allows closely approximating the conditions a. and b. set out in the introduction, and satisfying them only under the assumption that the second carrier is “flat”, that is to say under the assumption that the angular velocity measurements ⁇ are always on the same axis, and that this axis is also the axis of rotation R 21 .
- the vector Z v consists of a first vector Z R v of size 3 representative of a rotation, and a second vector Z v v of size 3 as well.
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Navigation (AREA)
Abstract
Description
X n+1 =f(X n)
where f is a known function (generally called propagation function), which may depend on measurements from sensors. The observations Yn are related to the state of the system by a known observation function h:
Y n =h(X n)
X n+1 =FX n +w n
Y n =HX n +V n
where F is a propagation matrix, H is an observation matrix, wn and Vn are noises that disturb the predictions and the measurements.
{circumflex over (X)} n+1|n =F{circumflex over (X)} n|n
{circumflex over (X)} n+1|n+1 ={circumflex over (X)} n+1|n +K n+1(Y n+1 −H{circumflex over (X)} n+1|n)
where the indices n+1|n and n+1|n+1 respectively designate the estimation calculated at the instant n+1 without taking into account the observation Yn+1 and at the instant n+1 by taking into account the observation Yn+1. The matrix Kn is called “gain matrix”, it can be calculated using a Riccati equation. The estimation error is then defined as:
e n|n =X n −{circumflex over (X)} n|n (after taking into account the observation Y n)
e n+1|n =X n+1 −{circumflex over (X)} n+1|n (before taking into account the observation Y n+1)
It is possible to easily verify that this error follows the following evolution:
e n+1|n Fe n|n (before taking into account the observation Y n+1)
e n+1|n+1=(I−K n+1 H)e n+1|n (after taking into account the observation Y n+1)
where I designates the identity matrix.
-
- a. The propagation function f verifies for any pair a, b of elements of the state space the relation:
f(a*b)=f(a)*f(Id)−1 *f(b)
- a. The propagation function f verifies for any pair a, b of elements of the state space the relation:
-
- b. The observation function h has the form h(X)=l(x, y0), with y0 an element of the space of the observations (to which the Yns belong) and l(.,.) a group action, i.e. a function verifying
l(a*b,y)=l(a,l(b,y))
- b. The observation function h has the form h(X)=l(x, y0), with y0 an element of the space of the observations (to which the Yns belong) and l(.,.) a group action, i.e. a function verifying
{circumflex over (X)} n+1|n =f({circumflex over (X)} n|n)
{circumflex over (X)} n+1|n+1 ={circumflex over (X)} n+1|n*exp(K n [l({circumflex over (X)} n+1|n −1 ,Y n+1)−l(Id,y 0)])
{circumflex over (X)} n+1|n =f({circumflex over (X)} n|n)
{circumflex over (X)} n+1|n+1 ={circumflex over (X)} n+1|n*exp(K n [Y n+1 −h({circumflex over (X)} n+1|n)])
-
- a) The operation to be used for an attitude and velocity estimation problem is described in the following document: Bonnabel, S., Martin, P., & Salaün, E. (2009). Invariant Extended Kalman Filter: theory and application to a velocity-aided attitude estimation problem. In Decision and Control, 2009 held jointly with the 2009 28th Chinese Control Conference, CDC/CCC 2009. Proceedings of the 48th IEEE Conference on (pp. 1297-1304). IEEE.
- b) The operation to be used for an inertial navigation with estimation of the attitude, velocity and position is described in the following document: Barrau, A., & Bonnabel, S. (2017). The invariant extended Kalman filter as a stable observer. IEEE Transactions on Automatic Control, 62(4), 1797-1812.
- c) The operation to be used for the SLAM (Simultaneous Localization And Mapping), That is to say, a navigation using fixed reference points from the carrier's environment, is described in document Barrau, A., & Bonnabel, S. (2015). An EKF-SLAM algorithm with consistency properties. arXiv preprint arXiv:1510.06263.
- d) A list of practical systems for which an operation is known is further described in document Barrau, A., & Bonnabel, S. (2017). Linear observation systems on groups (I).
-
- receiving a navigation state in the reference frame of the second carrier provided by the second carrier,
- acquiring movement data of the first carrier by at least one proprioceptive sensor of the first carrier,
- estimating a navigation state of the first carrier by an invariant Kalman filter using the navigation state of the second carrier as observation data, in which the navigation state of the first carrier comprises:
- first variables representative of a first rigid transformation linking a frame attached to the first carrier to the reference frame, and
- second variables representative of a second rigid transformation linking a frame attached to the second carrier to the frame attached to the first carrier, and
- in which the invariant Kalman filter uses as binary operation an operation comprising a term-by-term composition of the first rigid transformation and of the second rigid transformation.
Z x=log({circumflex over (T)} 1 −1 ○Y○{circumflex over (T)} 21)
where:
-
- {circumflex over (T)}1 is an estimate of the first variables,
- {circumflex over (T)}21 is an estimate of the second variables, in which the second rigid transformation allows switching from the first frame to the second frame,
- Y designates the observation data used by the invariant Kalman filter,
- ○ designates a composition,
- log(⋅) designates a logarithm map of a Lie group.
Z v=log(({circumflex over (R)} 1 T R 2 {circumflex over (R)} 21 , {circumflex over (R)} 1 T(v 2 −{circumflex over (v)} 1)+{circumflex over (R)} 1 T R 2(ω×{circumflex over (x)} 21)))
where:
-
- R1 is an estimate of the rotation matrix representing an attitude of the first carrier.
- {circumflex over (R)}21 is an estimate of the rotation matrix representing the attitude of the second carrier relative to the first carrier,
- {circumflex over (x)}21 is an estimate of a translation vector defining the second rigid transformation,
- R2 is the rotation matrix representing an attitude of the second carrier in the reference frame,
- v2 is the velocity vector of the second carrier in the reference frame,
- ω is the angular velocity of the first carrier,
- × designates a vector product,
- log(⋅) designates a logarithm map of the Lie group SE(3).
-
- for each estimate, determining a likelihood metric of the estimate,
- producing a consolidated estimate of the navigation state of the first carrier based on the estimates and their associated likelihood metrics.
-
- at least one proprioceptive sensor configured to acquire movement data of the first carrier,
- a communication interface for receiving a navigation state from the second carrier provided by the second carrier,
- an invariant Kalman filter configured to estimate a navigation state of the first carrier by using the navigation state of the second carrier as observation data, in which the navigation state comprises:
- first variables representative of a first rigid transformation linking a frame attached to the first carrier to the reference frame, and
- second variables representative of a second rigid transformation linking a frame attached to the second carrier to the frame attached to the first carrier, and
- and in which the invariant Kalman filter uses as binary operation an operation comprising a term-by-term composition of the first rigid transformation and of the second rigid transformation.
X 1=(R 1 , v 1 , x 1 , R 23 , x 21)
where:
-
- R1 is a rotation matrix representing the attitude of the first carrier in the reference frame (rotation component of the transformation which allows switching from coordinates of a point in the first frame to coordinates of the same carrier point in the reference frame),
- v1 is a velocity vector representing the velocity of the first carrier in the reference frame,
- x1 is a position vector representing the position of the first carrier in the reference frame (it is the translation component of the transformation, which allows switching from coordinates of a point in the first frame to coordinates of the same point in the reference frame),
- R21 is a rotation matrix representing a relative attitude between the first frame and the second frame. As an example, here is a matrix which allows switching from the first frame (attached to the first carrier 1) to the second frame (attached to the second carrier 2), the reverse being perfectly possible.
- x21 is a lever arm between the
first carrier 1 and thesecond carrier 2. It is a translation vector allowing switching from the coordinates of a point in the first frame to the coordinates of the same point in the second frame.
-
- a rotation matrix R2 representing the attitude of the second carrier in the reference frame (rotation component of the rigid transformation which allows switching from coordinates of a point in the second frame to coordinates of the same carrier point in the reference frame),
- x2 a position vector representing the position of the second carrier in the reference frame (it is the translation component of the rigid transformation, which allows switching from coordinates of a point in the second frame to coordinates of the same carrier point in the reference frame).
Y=T 2=(R 2 , x 2)
(R 1 ,v 1 ,x 1 ,R 21 ,x 21)*(R′ 1 ,v′ 1 ,x′ 1 ,R′ 21 ,x′ 21)=(R 1 R′ 1 ,v 1 +R 1 v′ 1 ,x 1 +R 1 x′ 1 ,R 21 R′ 21 ,x 21 +R 21 x′ 21)
Z=Z x=log({circumflex over (T)} 1 −1 ○Y○{circumflex over (T)} 21)
where:
-
- Y designates the observation data used by the invariant Kalman filter, which, as recalled, correspond to T2)
- ○ designates the composition operator of the rigid transformations,
- log( ) designates a logarithm map within the meaning of the theory of Lie groups, known to those skilled in the art.
{circumflex over (X)} 1 + ={circumflex over (X)} 1 *C 1
The gain matrix K is chosen so as to stabilize the non-linear estimation error e defined by:
e=X 1 −1 *{circumflex over (X)} 1
where the symbol .−1 is the usual inversion associated with the binary operation *. In this embodiment, invariance to the left of the estimation error e is obtained. It can of course be envisaged to modify the preceding equations to obtain right invariance (the left invariance being however a preferred embodiment).
L=Z T S −1 Z
(R 1 ,v 1 ,x 1 ,R 21 ,x 21 ,B)*(R′ 1 ,v′ 1 ,x′ 1 ,R′ 21 ,x′ 21 ,B′)=(R 1 R′ 1 ,v 1 +R 1 v′ 1 ,x 1 +R 1 x′ 1 ,R 21 R′ 21 ,x 21 +R 21 x′ 21 ,B+B′)
(R 1 ,v 1 ,x 1 ,R 12 ,x 12)*(R′ 1 ,v′ 1 ,x′ 1 ,R′ 12 ,x′ 12)=(R 1 R′ 1 ,v 1 +R 1 v′ 1 ,x 1 +R 1 x′ 1 ,R′ 12 R 12 ,x′ 12 +R′ 12 x 12)
Z=log({circumflex over (T)} 1 −1 ○Y○{circumflex over (T)} 12 −1)
Z=Z v=log (({circumflex over (R)} 1 T R 2 {circumflex over (R)} 21 ,{circumflex over (R)} 1 T(v 2 −{circumflex over (v)} 1)+{circumflex over (R)} 1 T R 2(ω×{circumflex over (x)} 21)))
-
- {circumflex over (R)}1 is an estimate of the rotation matrix R1 contained in the rigid transformation T1. More specifically, R1 is such that the coordinates u∈ 3 of a point in the frame attached to the carrier 1 become R1u+x1 in the reference frame, where x1 is the position of the first carrier in the reference frame.
- {circumflex over (R)}21 and {circumflex over (x)}21 are the estimates of the rotation matrix R21 and of the translation vector x21 defining the rigid transformation T21=(R21, x21). More specifically, R21 and x21 are such that the coordinates u∈ 3 of a point in the frame attached to the carrier 1 become R21u+x21 in the frame attached to the carrier 2,
- R2 is the rotation matrix representing the attitude of the carrier 2 (available as an observation, as indicated above). More specifically, R2 is such that the coordinates u∈ 3 of a point in the frame attached to the carrier 2 become R2u+x2 in the reference frame, where x2 is the position of the carrier 2 in the reference frame (which does not need to be observed for this claim).
- v2 is the velocity of the carrier 2 in the reference frame (available as an observation)
- {circumflex over (v)}1 is the estimated velocity of the carrier 1 in the reference frame.
- × designates the conventional vector product
- log(⋅) designates the logarithm function (reciprocal of the exponential function) of the Lie group SE(3). It should be noted that the object passed as input of the log function is an object belonging to the Lie group SE(3) and being written as a pair consisting of a rotation matrix and a size vector 3.
Claims (17)
Z x=log({circumflex over (T)} 1 − ○Y○{circumflex over (T)} 21)
Z v=log(({circumflex over (R)} 1 T R 2 {circumflex over (R)} 21 , {circumflex over (R)} 1 T(v 2 −{circumflex over (v)} 1)+{circumflex over (R)} 1 T R 2(ω×{circumflex over (x)} 21)))
Z x=log({circumflex over (T)} 1 −1 ○Y○{circumflex over (T)} 21)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1856802 | 2018-07-23 | ||
| FR1856802A FR3084176B1 (en) | 2018-07-23 | 2018-07-23 | METHOD AND DEVICE FOR AIDING THE NAVIGATION OF A CARRIER USING AN INVARIANT KALMAN FILTER AND A NAVIGATION STATE OF A SECOND CARRIER |
| PCT/FR2019/051826 WO2020021194A1 (en) | 2018-07-23 | 2019-07-23 | Vehicle navigation assistance method and device using an invariant kalman filter and a navigation status of a second vehicle |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20210295718A1 US20210295718A1 (en) | 2021-09-23 |
| US11941079B2 true US11941079B2 (en) | 2024-03-26 |
Family
ID=65031489
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US17/262,562 Active 2041-02-11 US11941079B2 (en) | 2018-07-23 | 2019-07-23 | Vehicle navigation assistance method and device using an invariant Kalman filter and a navigation status of a second vehicle |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US11941079B2 (en) |
| EP (1) | EP3827221B1 (en) |
| CN (1) | CN112703367B (en) |
| FR (1) | FR3084176B1 (en) |
| IL (1) | IL280344B2 (en) |
| WO (1) | WO2020021194A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230078005A1 (en) * | 2020-02-03 | 2023-03-16 | Safran | Navigation assistance method for a mobile carrier |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR3086052B1 (en) * | 2018-09-13 | 2020-10-02 | Ixblue | Location system, and associated location method |
| US11668794B2 (en) * | 2020-01-07 | 2023-06-06 | Ford Global Technologies, Llc | Sensor calibration |
| CN115267838A (en) * | 2022-06-22 | 2022-11-01 | 湖北星纪时代科技有限公司 | Method, device, equipment and medium for testing positioning performance |
| CN119881984A (en) * | 2025-01-15 | 2025-04-25 | 新诺北斗航科信息技术(厦门)股份有限公司 | Ship GNSS/IMU integrated navigation method and system based on multi-model self-adaption |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR3013829B1 (en) * | 2013-11-22 | 2016-01-08 | Sagem Defense Securite | METHOD FOR ALIGNING AN INERTIAL PLANT |
| FR3023623B1 (en) * | 2014-07-09 | 2023-05-05 | Sagem Defense Securite | METHOD FOR ESTIMATING THE STATE OF A MOBILE SYSTEM AND CORRESPONDING INERTIAL UNIT. |
| FR3028031B1 (en) * | 2014-10-29 | 2019-09-20 | Safran Electronics & Defense | METHOD FOR ESTIMATING A NAVIGATION STATUS CONSTRAINED IN OBSERVABILITY |
| FR3034514B1 (en) * | 2015-04-01 | 2017-04-21 | Sagem Defense Securite | NAVIGATION TRACKING METHOD OF A MOBILE CARRIER WITH AN EXTENDED KALMAN FILTER |
-
2018
- 2018-07-23 FR FR1856802A patent/FR3084176B1/en not_active Expired - Fee Related
-
2019
- 2019-07-23 WO PCT/FR2019/051826 patent/WO2020021194A1/en not_active Ceased
- 2019-07-23 IL IL280344A patent/IL280344B2/en unknown
- 2019-07-23 US US17/262,562 patent/US11941079B2/en active Active
- 2019-07-23 CN CN201980053365.1A patent/CN112703367B/en active Active
- 2019-07-23 EP EP19761915.8A patent/EP3827221B1/en active Active
Non-Patent Citations (5)
| Title |
|---|
| Barrau et al., "The Invariant Extended Kalman Filteras a Stable Observer", IEEE Transactions On Automatic Control, Apr. 2017, vol. 62, No. 4, pp. 1797-1812 (16 pages). |
| Barrau, "Non-linear state error based extended Kalman filters with applications to navigation", MINES Paris Tech, PhD Thesis, Sep. 15, 2015, pp. 1-177 (178 pages). |
| Bezick et al., "Inertial Navigation for Guided Missile Systems", Johns Hopkins APL Technical Digest, 2010, vol. 28, No. 4, pp. 331-342 (12 pages). |
| International Search Report & Written Opinion dated Oct. 14, 2019, issued by the International Searching Authority in application No. PCT/FR2019/051826. |
| J. Goppert, S. Yantek and I. Hwang, "Invariant Kalman filter application to optical flow based visual odometry for UAVs," 2017 Ninth International Conference on Ubiquitous and Future Networks (ICUFN), Milan, Italy, 2017, pp. 99-104, doi: 10.1109/ICUFN.2017.7993755. (Year: 2017). * |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230078005A1 (en) * | 2020-02-03 | 2023-03-16 | Safran | Navigation assistance method for a mobile carrier |
Also Published As
| Publication number | Publication date |
|---|---|
| FR3084176A1 (en) | 2020-01-24 |
| US20210295718A1 (en) | 2021-09-23 |
| CN112703367B (en) | 2022-03-15 |
| IL280344B1 (en) | 2023-09-01 |
| IL280344B2 (en) | 2024-01-01 |
| CN112703367A (en) | 2021-04-23 |
| IL280344A (en) | 2021-03-01 |
| EP3827221B1 (en) | 2023-03-08 |
| WO2020021194A1 (en) | 2020-01-30 |
| FR3084176B1 (en) | 2020-06-19 |
| EP3827221A1 (en) | 2021-06-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11941079B2 (en) | Vehicle navigation assistance method and device using an invariant Kalman filter and a navigation status of a second vehicle | |
| EP3875907B1 (en) | Method, apparatus, computing device and computer-readable storage medium for positioning | |
| US11688160B2 (en) | Method of generating training data for training a neural network, method of training a neural network and using neural network for autonomous operations | |
| US10859380B2 (en) | Alignment method for an inertial unit | |
| US10345427B2 (en) | Method for tracking the navigation of a mobile carrier with an extended kalman filter | |
| US8886394B2 (en) | Producing data describing states of a plurality of targets | |
| WO2024120187A1 (en) | Method for estimating dynamic target of unmanned aerial vehicle in information rejection environment | |
| US20150134181A1 (en) | Position estimation and vehicle control in autonomous multi-vehicle convoys | |
| EP3748297B1 (en) | Processing method and processing apparatus for positioning data, computing device and storage medium | |
| WO2021004437A1 (en) | Method and system for predictive control of vehicle using digital images | |
| CN111611958B (en) | Method, device and equipment for determining shape of lane line in crowdsourcing data | |
| US10379224B2 (en) | Invariant particle filtering | |
| KR101985344B1 (en) | Sliding windows based structure-less localization method using inertial and single optical sensor, recording medium and device for performing the method | |
| EP3333546B1 (en) | Apparatus and method for data-based referenced navigation | |
| CN112985391B (en) | Multi-unmanned aerial vehicle collaborative navigation method and device based on inertia and binocular vision | |
| El-Shafie et al. | Amplified wavelet-ANFIS-based model for GPS/INS integration to enhance vehicular navigation system | |
| US10565715B2 (en) | Method of estimating the motion of a carrier with respect to an environment and calculation device for navigation system | |
| Steiner et al. | Graph-based terrain relative navigation with optimal landmark database selection | |
| CN116917771A (en) | Method for determining at least one system state using a Kalman filter | |
| US11860285B2 (en) | Method and device for assisting with the navigation of a fleet of vehicles using an invariant Kalman filter | |
| US20230063809A1 (en) | Method for improving road topology through sequence estimation and anchor point detetection | |
| Glavine et al. | Gps integrated inertial navigation system using interactive multiple model extended kalman filtering | |
| EP2287698A1 (en) | Estimating positions of a device and at least one target in an environment | |
| EP4553767A1 (en) | Systems and methods for low-cost height above ground level and terrain data generation | |
| US20250148779A1 (en) | Systems and methods for low-cost height above ground level and terrain data generation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| AS | Assignment |
Owner name: SAFRAN ELECTRONICS & DEFENSE, FRANCE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ROBERT, EMMANUEL;BARRAU, AXEL;BERNAL, THOMAS;SIGNING DATES FROM 20210209 TO 20210224;REEL/FRAME:056836/0815 |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |