Method for correcting an attitude provided by a dead reckoning navigation system by means of a relative positioning system
Patent Information
- Application Number
- EP2023748828
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-07-08
- Filing Date
- 2023-07-10
- Publication Date
- 2025-05-14
AI Technical Summary
Dead reckoning navigation systems face challenges in maintaining accurate attitude and position in urban or indoor environments due to measurement imprecision from inertial sensors, which leads to temporal drift and inaccuracies, and existing solutions like magnetometers are unreliable and costly.
A method for resetting the attitude of a dead reckoning navigation system using a relative positioning system, which estimates positions and adjusts attitude parameters by minimizing a cost function, allowing for precise monitoring of objects moving within a predefined space with a minimal and cost-effective infrastructure.
This method provides accurate and economical attitude resetting with high precision over short distances, enabling effective tracking of people or objects inside buildings with reduced infrastructure requirements and lower sensor precision needs.
Smart Images

Figure 1.1
Abstract
Description
[0001] DESCRIPTION
[0002] METHOD FOR RECALIBRATION OF AN ATTITUDE PROVIDED BY A SYSTEM OF
[0003] Dead reckoning navigation using a relative positioning system
[0004] FIELD OF THE INVENTION
[0005] The present invention relates to dead reckoning navigation techniques, more particularly to techniques for recalibrating an attitude provided by a dead reckoning navigation system. It finds an advantageous application in the case of travel in an urban or “indoor” environment, that is to say inside buildings.
[0006] TECHNOLOGICAL BACKGROUND
[0007] It is now common to track the position of an object by multi-lateration, by measuring the distances between a receiver attached to the object and at least three sources whose location in the environment is known. This is the case, for example, with positioning systems such as GNSS (Global Navigation Satellite System, for example GPS) or those using the infrastructure of a wireless communication network (for example Wi-Fi network, GSM network, etc.). However, these methods are very limited because they do not ensure the availability and accuracy of the information, both of which are affected by possible masking between the sources and the receiver. Their use in an urban or indoor environment therefore requires the deployment of an expensive infrastructure with numerous sources distributed throughout the environment.They also turn out to be dependent on external technologies such as satellites for GNSS which may be unavailable or even deliberately jammed.
[0008] Alternatively, dead reckoning methods are also known to track the relative position of an object in any environment using a motion sensor measuring the object's movement. By relative position, we mean the position of the object in space relative to a point and a reference frame given at initialization. In addition to the position, these methods also make it possible to obtain the orientation (also called "attitude") of the object relative to the same initial reference frame, which is given, in dimension 3, by the Euler angles (roll <p, tangage 0, lacet qj) et, en dimension 2, par le cap qj. Ces méthodes sont préférées en cas de déplacement dans un milieu où le suivi de position par multi-latération est difficile, par exemple les milieux urbains ou « indoor ».
[0009] There are different types of dead reckoning navigation. The most common is so-called "simple" inertial navigation, as implemented in heavy-duty applications such as the navigation of fighter or airliner aircraft, submarines, ships, etc. It is based on inertial measurement units generally comprising a minimum of three accelerometers and three gyrometers arranged in a triaxial arrangement. Typically, the gyrometers "maintain" a reference frame, in which a double time integration of the accelerometer measurements makes it possible to estimate the movement. It is well known that to be able to use this "simple" inertial navigation method, it is necessary to use very high-precision sensors. Indeed, the double time integration of an acceleration measurement means that a constant acceleration error creates a position error that increases proportionally to the square of the time.
[0010] Another known dead reckoning technique is the technique in which the velocity vector information in the object's frame of reference is provided by an external source (for example, an odometer for a car, a log for a boat, or a Pitot tube for an airplane). It is then sufficient to apply a simple integration to this velocity vector information and combine it with orientation information, particularly the heading of the object, to determine its trajectory. For the same measurement inaccuracy of the sensors, the time drift is then less sensitive.
[0011] Most often, the initial attitude is known, for example by initial "alignment" of an inertial device or by supplying it by sensors other than inertial (for example magnetic). However, the measurement imprecision of inertial sensors induces a temporal drift of the measured attitude, which makes the knowledge of the initial attitude obsolete after a more or less long time depending on the precision of the sensors used and leads to inaccuracies in the location of the object. For example, a 1% error in the heading measurement leads, after a displacement of 100 m, to an inaccuracy of 1 m in the location of the object.
[0012] To remedy this, it is known to regularly recalibrate the measurements of a dead reckoning navigation system using another positioning system, so as to best maintain the orientation information of the object, in particular the heading information. For example, it is known from WO 2019 / 020961 to recalibrate the orientation information using a magnetic heading measurement obtained by a magnetometer carried by the object.
[0013] However, this solution is not entirely satisfactory. Magnetometers suffer from their own inaccuracies and drifts, which mean that their measurements are sometimes insufficiently reliable to be used as a basis for recalibration. Furthermore, this solution requires integrating magnetometers into the object whose position is to be monitored, which increases the cost.
[0014] STATEMENT OF THE INVENTION
[0015] One objective of the invention is to propose a simple and economical solution for recalibrating an attitude provided by a dead reckoning navigation system. Another objective is to enable such recalibration with high precision over a short distance. Another objective is to enable, in a simple and economical manner, precise tracking of people moving inside a building.
[0016] To this end, the invention relates, according to a first aspect, to an attitude recalibration method for recalibrating an attitude provided by a dead reckoning navigation system, the recalibration method comprising the following steps: estimation, by the dead reckoning navigation system, for each of a plurality of determination instants included in a movement interval during which the dead reckoning navigation system moves along a movement trajectory, of an estimated position of the dead reckoning navigation system in an arbitrary fixed reference frame at said determination instant, obtaining, for each determination instant, an evaluated position of the dead reckoning navigation system at said determination instant in a predetermined fixed reference frame, said evaluated position having been evaluated by a relative positioning system,and deduction of at least one attitude recalibration parameter by minimizing a cost function comparing the evaluated positions to the estimated positions corrected by means of the or each recalibration parameter.,
[0017] According to particular embodiments of the invention, the attitude recalibration method also has one or more of the following characteristics, taken in isolation or in any technically possible combination(s): the dead reckoning navigation system is worn by a pedestrian, the dead reckoning navigation system preferably being attached to a foot or ankle of the pedestrian; the dead reckoning navigation system comprises a motion sensor for measuring a motion of the dead reckoning navigation system and a processing unit for deducing from the measured motion an attitude and a position of the dead reckoning navigation system; the relative positioning system is chosen from: a multi-angulation system, a multi-lateration system, a map matching system and a visual positioning system,the relative positioning system preferably comprising an ultra-wideband telemetry device; the arbitrary fixed reference frame and the predetermined fixed reference frame share a common axis, an attitude recalibration parameter consisting of a parameter, preferably an angle, of orientation modification by rotation around said common axis; the common axis is a vertical axis; the cost function is representative of an average geometric deviation between the evaluated positions and the estimated positions after application to the evaluated or estimated positions of a geometric transformation comprising a rotation and, preferably, a translation; the rotation is around an axis of rotation and the translation is in a direction orthogonal to said axis of rotation; the step of deducing the recalibration parameter comprises the calculation of a candidate value for the recalibration parameter, the evaluation of a precision value of said candidate value,comparing said precision value with a previous precision value associated with a previous recalibration parameter, and determining the recalibration parameter as a function of the result of the comparison, the recalibration parameter depending on the candidate value and the previous recalibration parameter. the precision value is a function of uncertainties in the estimated positions and the evaluated positions and / or of a mean geometric deviation between the evaluated positions and the estimated positions after application of the candidate value of the recalibration parameter. the deduction of the recalibration parameter comprises the following sub-steps: oa) calculating a first candidate value for the recalibration parameter by minimizing a cost function comparing the evaluated positions for N determination times with the estimated positions for said N determination times corrected by means of the recalibration parameter,ob) calculating a first precision value associated with said first candidate value, oc) calculating a second candidate value for the resetting parameter by minimizing a cost function comparing the positions evaluated for N-1 determination times, corresponding to said N determination times minus the oldest determination time, to the positions estimated for said N-1 determination times corrected by means of the or each resetting parameter, od) calculating a second precision value associated with said second candidate value, oe) comparing the first and second precision values, and of) selecting the first candidate value when the first precision value reflects the best precision; when the precision value reflecting the best precision is constituted by the second precision value,the deduction of the recalibration parameter comprises the following additional sub-steps: o deletion of the evaluated position and the estimated position for the oldest determination time, and o repetition of sub-steps a) to e) with a number N reduced by 1; and the dead reckoning navigation system has an accuracy in distance traveled of the order of a few percent, for example between 1 and 3%, and of a few tens of degrees per hour, for example between 30 and 80 degrees per hour, in heading drift, and the relative positioning system has an accuracy of a few tens of centimeters, for example between 20 cm and 1 m, in position.,
[0018] The invention also relates, according to a second aspect, to a method for locating an object in a predefined space, the method comprising the following steps: starting the dead reckoning navigation system, attitude resetting of the dead reckoning navigation system using a relative positioning system comprising an infrastructure installed at a predefined space access point, so as to obtain an attitude resetting parameter, said attitude resetting implementing an attitude resetting method according to any one of the preceding claims, position resetting of the dead reckoning navigation system using a relative positioning system comprising an infrastructure installed at said predefined space access point, so as to obtain a position resetting parameter, and calculation, by the dead reckoning navigation system, by means of the attitude resetting parameter and the position resetting parameter,of a position calculated by the dead reckoning navigation system in the predetermined reference frame.,
[0019] According to a particular embodiment of the invention, the location method also has the following characteristic: the infrastructure is on board a vehicle itself equipped with a location and orientation system making it possible to calculate the position of the infrastructure in the predetermined reference frame.
[0020] The invention also relates, according to a third aspect, to a dead reckoning navigation system comprising a movement sensor for measuring a movement of the dead reckoning navigation system and a processing unit for deducing from the measured movement an attitude and a position of the dead reckoning navigation system in a fixed reference frame, the processing unit being configured to implement an attitude resetting method according to the first aspect to reset said attitude.
[0021] According to a fourth aspect, the invention relates to a computer program product comprising code instructions for executing an attitude recalibration method according to the first aspect when said program is executed by a processor.
[0022] Finally, according to a fifth aspect, the invention relates to a storage means readable by computer equipment on which is recorded a computer program product comprising code instructions for the execution of an attitude recalibration method according to the first aspect.
[0023] BRIEF DESCRIPTION OF THE FIGURES
[0024] Other characteristics and advantages of the invention will appear on reading the following description, given solely by way of example and with reference to the appended drawings, in which: Figure 1 is a top view of a system for locating an object in a predefined space according to an exemplary embodiment of the invention, Figure 2 is a perspective view of a detail of the locating system of Figure 1, Figure 3 is a diagram of a locating box of the locating system of Figure 1, Figure 4 is a diagram illustrating an exemplary method for locating an object in a predefined space implemented by the system of Figure 1, Figure 5 is a diagram illustrating a heading resetting step of the method of Figure 4, and Figure 6 is a diagram illustrating a sub-step of deducing a heading resetting parameter from the heading resetting step of Figure 5.
[0025] DETAILED DESCRIPTION OF AN EXAMPLE OF IMPLEMENTATION
[0026] The localization system 10 shown in Figure 1 is intended for localizing objects of interest 12 within a predefined space 14. For this purpose, the localization system 10 comprises a plurality of localization boxes 16 each attached to a respective object of interest 12. Here, the localization system 10 also comprises a localization infrastructure 18 arranged at at least one access point 19 to the predefined space 14.
[0027] With reference to Figure 2, each object of interest 12 here consists of a pedestrian. The invention is particularly advantageous in such use because it allows for a very small footprint of the housings 16, which can thus be easily carried ergonomically by pedestrians. Alternatively (not shown), the objects of interest 12 consist of any mobile object whose position knowledge is desired, for example a wheeled vehicle, a drone, etc.
[0028] The predefined space 14 is typically constituted by a building interior. This is for example an industrial site, the pedestrians 12 then typically being technicians working on said industrial site. Alternatively, the predefined space 14 is an intervention site, for example a burning building or a hostage-taking site, the pedestrians 12 then being firefighters or infantrymen intervening on said site.
[0029] Each location box 16 is typically attached to a limb, here a leg, preferably a foot or an ankle, of the pedestrian 12. For this purpose, each location box 16 comprises, as visible in Figure 3, an attachment member 20 constituted here by a bracelet, for example with a self-gripping band which encloses the limb and allows the integral connection. Alternatively (not shown), the attachment member 20 is constituted by any element allowing an integral connection of the location box 16 with the object of interest 12.
[0030] Still with reference to Figure 3, the location box 12 comprises a dead reckoning navigation system 22. It also comprises a relative positioning system 24. In the example shown, it also comprises a communication system 26, typically a wireless communication system, for communication of the location box 12 with an external device such as a mobile terminal 29 (Figure 2), for example a multifunction mobile, or even a remote server (not shown). Optionally, it comprises a storage module 28.
[0031] The dead reckoning navigation system 22 comprises a motion sensor 30 for measuring a motion of the dead reckoning navigation system 22 and a processing unit 32 for deducing from the measured motion an attitude and a position of the dead reckoning navigation system 22 in a predetermined fixed reference frame, for example the East-North-Up reference frame (better known by the acronym ENU). By "fixed reference frame" is meant here and hereinafter that the reference frame is stationary in the terrestrial reference frame.
[0032] In the example described here, the dead reckoning navigation system 22 is configured to work in a two-dimensional frame of reference and to provide only a heading and two position coordinates of the dead reckoning navigation system 22 in a horizontal plane of the predetermined frame of reference. Alternatively (not shown), the dead reckoning navigation system 22 is configured to work in a three-dimensional frame of reference and therefore to provide a roll angle, a pitch angle and a yaw angle of the dead reckoning navigation system 22, as well as its three position coordinates in the predetermined frame of reference. Those skilled in the art will easily be able to transpose the example given here of the two-dimensional case to the three-dimensional case.
[0033] The motion sensor 30 comprises a gyrometer 40 for measuring an angular velocity of the dead reckoning navigation system 22 according to a system of three orthogonal axes defining a moving frame secured to the housing 16, i.e. measuring the three components of an angular velocity vector in said moving frame. It is thus understood that the gyrometer 40 can in fact designate a set of three gyrometers associated with one of the three axes, in particular in tri-axis (i.e. each capable of measuring one of the three components of the angular velocity vector).
[0034] The motion sensor 30 also comprises a member 42 for acquiring a linear speed of the dead reckoning navigation system 22, i.e. the displacement. This acquisition member 42 can make it possible to obtain the linear speed directly or indirectly, and thus be of various types. For example, the acquisition member 42 can consist of one or more accelerometers (not shown). These accelerometers are advantageously arranged in a tri-axis, typically according to the same system of three orthogonal axes as the gyrometer 40. They are sensitive to external forces other than gravitational forces applied to the sensor 30, and make it possible to measure a specific acceleration. The linear speed is then obtained by time integration of this acceleration.
[0035] Alternatively, when the object 12 is a wheeled vehicle, the acquisition member 42 consists of at least two odometers each for one wheel of the vehicle, for example the two rear wheels. By odometer is meant equipment capable of measuring the speed of a wheel by counting the revolutions (“revolution counter”). Generally, odometers have a part fixed to the wheel (for example a magnet), and detect each passage of this fixed part (called “top”) so as to count the number of revolutions per unit of time, which is the rotation frequency. Other techniques are known, for example the optical detection of a mark on the wheel, or the magnetometer of patent FR 2 939 514 which detects the rotation of a metal object such as a wheel. Here the “speed” of a wheel is a scalar, that is to say the norm of the speed of the wheel in the terrestrial reference frame (in the hypothesis of absence of skidding).If the radius of the wheel is known, measuring the rotation frequency allows this speed standard to be estimated.
[0036] Optionally, the motion sensor 30 further comprises a stride detector (not shown) for detecting when the foot of the pedestrian 12 is on the ground, as described for example in document WO 2017 / 060660.
[0037] In the example shown, the processing unit 32 is constituted by a programmable machine, such as a DSP (Digital Signal Processor) or a microcontroller. It comprises a processor or CPU (Central Processing Unit) 44 and a memory 46 of the RAM (Random Access Memory) and / or ROM (Read Only Memory) type. The processor 44 is configured to execute instructions loaded into the memory 46. When the dead reckoning navigation system 22 is powered on, the processor 44 is capable of reading instructions from the memory 46 and executing them. These instructions form a computer program causing the calculation, by the processor 44, of the heading and position of the dead reckoning navigation system 22 in the predetermined fixed reference frame, for example by implementing the method described in WO 2017 / 060660 or FR 2 939 514.
[0038] Alternatively (not shown), the processing unit 32 is constituted by a dedicated machine or component, such as an FPGA (Field-Programmable Gate Array) or an ASIC (Application-Specific Integrated Circuit). The processing unit 32 further comprises a buffer memory 49 for the temporary storage of information necessary for calculating the heading position and the position of the dead reckoning navigation system 22 in the predetermined fixed reference frame.
[0039] Optionally, the dead reckoning navigation system 22 also comprises a network of magnetometers 48 linked to the housing 16, that is to say that they each have a movement substantially identical to that of the housing 16 in the terrestrial reference frame, and spatially spaced from each other. Each magnetometer 48 is a tri-axis magnetometer capable of measuring a magnetic field along three axes. For this purpose, each magnetometer 48 is typically constituted by three single-axis magnetometers (not shown) oriented along axes substantially perpendicular to each other. These axes are preferably the same as those of the system of three orthogonal axes of the gyrometer 40.
[0040] The network of magnetometers 48 is suitable, due to its particular geometry, for allowing the determination, at each measurement instant of the magnetometers 48, of a spatial gradient of the measured magnetic field, in particular the coefficients of this gradient along each of the axes of the moving reference frame linked to the housing 16. Each coefficient of said gradient is for example determined by a method using the vector measurements of the magnetic field carried out by the magnetometers 48, associated with optimization methods of the least square or median filter type or associated with the intrinsic properties of the magnetic field described by Maxwell's equations. However, any other conventional method adapted to calculate the coefficients of the spatial gradient of the magnetic field is suitable.
[0041] The processing unit 32 is then typically configured to adjust the determination of the speed of the dead reckoning navigation system 22 by implementing the method described in EP 2 541 199.
[0042] The dead reckoning navigation system 22 typically has an accuracy of the order of a few percent, for example between 1 and 3%, in distance traveled and of a few tens of degrees per hour, for example between 30 and 80 degrees per hour, in course drift.
[0043] The relative positioning system 24 is capable of identifying a relative position of a point integral with the dead reckoning navigation system 22 relative to a reference system having a known position in the predetermined fixed reference frame, and of deducing therefrom the position of the dead reckoning navigation system 22 in the predetermined fixed reference frame. For this purpose, the relative positioning system 24 comprises a sensor 50 capable of measuring a parameter making it possible to locate the integral point relative to the reference system, and a processing unit 52 for deducing from this parameter a position of the dead reckoning navigation system 22 in the predetermined fixed reference frame. Preferably, the relative positioning system 24 is constituted by a multi-lateration system, in particular by a proximity multi-lateration system.The infrastructure 18 then comprises, at the or each access point 19, at least three beacons 54 (Figure 2) (or “anchors”) each having a known position in the predetermined fixed reference frame and with which the relative positioning system 24 is configured to communicate. For this purpose, the sensor 50 is typically constituted by a wireless communication system capable of communicating with the beacons 54 and of deducing the distance with each beacon 54, for example by round-trip distance measurement (better known by the acronym “TWR”, from the English “two-way ranging”).
[0044] Preferably, the sensor 50 is constituted by an ultra-wideband telemetry device capable of communicating with the beacons 54 and measuring its distance from the beacons 54 via the ultra-wideband protocol (better known by the acronym UWB, from the English “Ultra Wide Band”), which allows for precision in measuring the position of the order of ten centimeters, typically between 20 cm and 1 m. As known to those skilled in the art, the ultra-wideband protocol is a radio communication protocol based on the transmission of very short pulses (of the order of a nanosecond) over a wide frequency spectrum. The communications thus benefit from a wide bandwidth (500 to 1350 MHz) in the range 0.5 to 9.5 GHz (central frequency) depending on the channel used. Alternatively, the sensor 50 is capable of communicating with the beacons 54 via the Bluetooth protocol or the Wi-Fi protocol.
[0045] Alternatively, the multi-lateration system is constituted by a GNSS system.
[0046] The processing unit 52 is then configured to deduce from the distance measurements and the known positions of the beacons 54 the relative position of the sensor 50 in the predetermined fixed reference frame, typically by multi-lateration or by optimization, and to deduce from this position, as well as from the position of the sensor 50 relative to the dead reckoning navigation system 22, the position of the dead reckoning navigation system 22 in the predetermined fixed reference frame.
[0047] According to another embodiment (not shown), the relative positioning system 24 is constituted by a multi-angulation system, the sensor 50 then being able to measure at least one angle between the observation directions of two beacons each having a known position in the predetermined fixed reference frame. The processing unit 52 is then configured to deduce from the angle measurement(s) and from the known position of the beacons 54 the position of the sensor 50 in the predetermined fixed reference frame, typically by multi-angulation, and to deduce from this position, and from the position of the sensor 50 relative to the dead reckoning navigation system 22, the position of the dead reckoning navigation system 22 in the predetermined fixed reference frame.
[0048] According to yet another embodiment (not shown), the relative positioning system 24 is constituted by a map matching system. The sensor 50 is then capable of measuring a parameter of the environment, for example the relief or the magnetic field, and the processing unit 52 is capable of matching this measurement with a map of said parameter which it stores in memory, so as to deduce therefrom the position of the sensor 50 in the predetermined fixed reference frame.
[0049] According to a fourth embodiment (not shown), the relative positioning system 24 is constituted by a visual positioning system. The sensor 50 is then constituted by an imager associated with an image processing system. The imager is configured to acquire images of the environment and the processing system to detect in each image a remarkable point, for example a target, the position of which is known in the predetermined fixed reference frame. The processing unit 52 is then configured to deduce therefrom a relative position of the sensor with respect to the remarkable point, and to deduce from this relative position, as well as from the known position of the remarkable point and the position of the sensor 50 with respect to the dead reckoning navigation system 22, the position of the dead reckoning navigation system 22 in the predetermined fixed reference frame.
[0050] As a variant (not shown), the imager is fixed (it belongs to the infrastructure 18) and it is the remarkable point (typically the target) which is carried by the housing 16. As a further variant, a motion capture configuration can be provided in which several targets are carried by the housing 16 and detected by a fixed imager.
[0051] In the example shown, the processing unit 52 is constituted by a programmable machine, such as a DSP (Digital Signal Processor) or a microcontroller. It comprises a processor or CPU (Central Processing Unit) 56 and a memory 58 of the RAM (Random Access Memory) and / or ROM (Read Only Memory) type. The processor 56 is configured to execute instructions loaded into the memory 58. When the relative positioning system 24 is powered up, the processor 56 is capable of reading instructions from the memory 58 and executing them. These instructions form a computer program causing the calculation, by the processor 56, of the position of the dead reckoning navigation system 22 in the predetermined fixed reference frame from the parameter measured by the sensor 50.Alternatively (not shown), the processing unit 52 is constituted by a machine or a dedicated component, such as an FPGÀ (“Field-Programmable Gate Array”) or an ÀSIC (“Application-Specific Integrated Circuit”).
[0052] In the example shown, the processing unit 52 of the relative positioning system 24 is distinct from that 32 of the dead reckoning navigation system 22. In a variant (not shown) these processing units 32, 52 are combined.
[0053] The communication system 26 is configured to implement short-range wireless communication, for example Bluetooth or Wi-Fi (in particular in an embodiment with a mobile terminal 29) and / or to connect to a mobile network (typically UMTS / LTE / 5G) for long-distance communication. Alternatively (not shown), the communication system 26 is, for example, a wired connection (typically USB) for transferring data from the storage module 28 to another storage module, typically from the mobile terminal 29.
[0054] For example, the communication system 26 is configured to send the position calculated by the dead reckoning navigation system 22 to the mobile terminal 29 for display of the position by the mobile terminal 29 in a navigation software interface.
[0055] In the examples described above, the processing units 32, 52 of the dead reckoning navigation system 22 and of the relative positioning system 24 are integrated into the housing 16. Alternatively (not shown), at least a portion of these processing units 32, 52 is remote, for example in the mobile terminal 29, in the infrastructure 18 and / or in a remote server (not shown). In other words, at least a portion of the steps of calculating the position of the dead reckoning navigation system 22 by the dead reckoning navigation system 22 or by the relative positioning system 24 is performed by the mobile terminal 29, the infrastructure 18 and / or a remote server. The communication system 26 is then configured to send to the mobile terminal 29, to the infrastructure 18 and / or to the remote server the data from the motion sensor 30 and / or the sensor 50.Advantageously, the communication system 26 is also configured to receive from the mobile terminal 29, from the infrastructure 18 and / or from the remote server the position of the dead reckoning navigation system 22 calculated by the dead reckoning navigation system 22 or by the relative positioning system 24.
[0056] Returning to Figures 1 and 2, the infrastructure 18 comprises, as described above, a plurality of beacons 54 arranged at the access points 19 to the predefined space 14. These beacons 54 are typically grouped within portals arranged at the access points 19, such as the portal 60 shown in Figure 2. Each portal 60 includes a minimum of three beacons 54 so as to allow the positioning of pedestrians 12 crossing the access point 19 by multi-lateration.
[0057] The infrastructure 18 is for example a permanent fixed infrastructure. This is particularly the case when the predefined space 14 is an industrial site and the location system 10 is intended to track the movement of technicians on said site. Alternatively, the architecture 18 is a temporary fixed infrastructure. This is for example the case when the predefined space 14 is an intervention site, particularly in the event of a fire: the infrastructure 18 is then brought and installed at one of the access points of the intervention site before the arrival of the firefighters. As a further variant, the infrastructure 18 is a mobile infrastructure. It is typically carried on board a vehicle (not shown) used for transporting pedestrians 12 whose movement is to be tracked to the predefined space 14. This vehicle is then itself equipped with a location and orientation system making it possible to calculate the position of the infrastructure 18 in the predetermined reference frame.This is the case, for example, when the predefined space 14 is an intervention site, particularly in the event of a hostage-taking.
[0058] A method 100 implemented by the location system 10, more particularly by the processing units 32, 52, will now be described, with reference to Figures 4 to 6.
[0059] As visible in Figure 4, the method 100 begins with a first step 102 of starting the dead reckoning location system 22. This first step 102 is typically implemented while the pedestrian 12 carrying the box 16 is still outside the predefined space 14. Typically, step 102 is triggered by the pedestrian 12 pressing a button (not shown) on the box 16. The relative positioning system 24 typically starts concomitantly with step 102.
[0060] After its start, the dead reckoning system 22 provides a position of the pedestrian 12 in an arbitrary fixed reference frame. This position v(t) is assigned of a random error. For simplification, this random error is here assimilated to a . , , . , , . centered Gaussian variable of variance By further simplification, we subsequently assume that there is no spatial correlation between the directions of the plane, that is to say that the terms ( ) and are harmed. For simplification purposes, we consider in the following that the terms are equal, so that the variance can be written reflects an uncertainty about the position v(t) and is the identity matrix of dimension 2. If this uncertainty σ v (t) is a priori variable in time, the amplitude of this variation is generally quite low. It is therefore considered, here and in the following, an uncertainty σ v constant.
[0061] The dead reckoning system 22 also provides a pedestrian heading 12 in said arbitrary fixed frame. This arbitrary fixed frame is a horizontal two-dimensional frame which typically consists of a rotation of the predetermined fixed frame by an angle 0 around the vertical axis and a translation of a horizontal vector Δ. The arbitrary fixed frame thus shares a common axis with the predetermined fixed frame, constituted by the vertical axis. It is chosen arbitrarily by the dead reckoning localization system 22 according to its orientation at startup.
[0062] The relative positioning system 24 provides a horizontal position of the pedestrian 12 in the predetermined fixed reference frame. This position u(t) is affected by a random error. For simplification, this random error is here assimilated to . , , . , , . a centered Gaussian variable of variance By further simplification, we subsequently assume that there is no spatial correlation between the directions of the plane, that is to say that the terms and have harmed. For the sake of simplicity, we consider in the following that the terms are equal, so that the variance r u can be written x I2, where σ u (t) reflects an uncertainty about the position u(t) and is the identity matrix of dimension 2. If this uncertainty σ u (t) is a priori variable in time, the amplitude of this variation is generally quite low. It is therefore considered, here and in the following, an uncertainty σ u constant.
[0063] Step 102 is followed by a step 104 of determining the possibility, for the relative positioning system 24, of evaluating the position of the dead reckoning navigation system 22 in the predetermined fixed reference frame. If the determination is positive, that is to say typically if the box 16 is within range of the beacons 54 of the infrastructure 18, step 104 is followed by a step 106 of resetting the dead reckoning navigation system 22 in position and a step 107 of resetting the dead reckoning navigation system 22 in heading. If the determination is negative, that is to say typically if the box 16 is out of range of the beacons 54 of the infrastructure 18, step 104 is repeated after a time delay.
[0064] During the position resetting step 106, the dead reckoning navigation system 22 estimates the position v(to) of the pedestrian 12 in the arbitrary fixed reference frame at a time to while the relative positioning system 24 evaluates the position of the pedestrian u(to) in the predetermined fixed reference frame at said time t0 and communicates this evaluated position u(to) to the dead reckoning navigation system 22. The dead reckoning navigation system 22 then determines a position resetting parameter <5 consisting of the difference between the evaluated positions u(to) and estimated positions The dead reckoning navigation system 22 then adjusts the estimated position by applying said position adjustment parameter.
[0065] With reference to Figure 5, the heading resetting 107 begins with the movement 110 of the pedestrian 12 following a movement trajectory during a movement interval while the box 16 is within range of the beacons 54 of the infrastructure 18.
[0066] During this movement 110, the heading resetting 107 comprises, for a plurality of evaluation instants i k included in the displacement interval, an evaluation 112 of the position u(i k ) of the pedestrian 12 by the relative positioning system 24 in the fixed reference frame predetermined at said evaluation time i k . This evaluation 112 is followed by the reception 114 of this evaluated position u(i k ) by the dead reckoning navigation system 22.
[0067] In parallel, the heading recalibration 107 also includes, for a plurality of estimation instants t k included in the displacement interval, an estimate 116 of the position v(i k ) of the pedestrian 12 by the dead reckoning navigation system 22 in the arbitrary fixed reference frame at said estimation time T k .
[0068] The reception steps 114 and estimation steps 116 are followed by a step 118 of matching the positions evaluated u(i k ) and estimated v(i k ) by the dead reckoning navigation system 22. Indeed, the recalibration step 107 is based on the exploitation of evaluated positions synchronous with estimated positions. However, these two types of positions coming from different origins, the evaluation times i k generally differ from the estimation times T k . A matching is therefore necessary between the positions evaluated u(i k ) and estimated v(t k ). This matching aims to associate and synchronize the positions evaluated u(i k ) and estimated v(t k ), in order to be able to have, for each, a plurality of determination instants t k , of a pair of evaluated positions u(t k ) and estimated position v(t k ) audit determination time t k. This matching therefore consists of deducing from the set {u(i k )} k evaluated positions u(i k ) at evaluation times i k and of the set {vti k )} k estimated positions v(i k ) at estimation times t k : a set {u(t k )} k of evaluated positions u(t k ) at the times of determination t k , and a set {v(t k )} k of estimated positions v(t k ) at the times of determination t k , For this purpose, the matching comprises for example the interpolation of at least one set or subset among: the set {u(ik)}k of the evaluated positions u(ik) at the evaluation times i k , and the set {v(T k )} k estimated positions v(i k ) at estimation times T k .
[0069] This interpolation preferably uses temporal splines. Preferably, the splines used for the interpolation are differentiable at least twice. The spline representation makes it possible in particular to force the continuity of the trajectory. The spline representation also makes it possible to optimize the various parameters involved, in particular the time synchronization parameters, using a method based on the gradient of a criterion to be minimized. Alternatively, the interpolation uses another approach, such as for example a discrete representation of the trajectory traveled by pedestrian 12.
[0070] Preferably, only the set of estimated positions {v(T k )} k is interpolated, the instants of determination t k being chosen as being equal to the evaluation instants i k : t k = i k . The set {u(t k )} k of evaluated positions u(t k) at the times of determination t k is therefore confused with the set {u(i k )} k evaluated positions u(i k ) at evaluation times i k . Reception 114 by the navigation system at dead reckoning 22 of an estimated position u(i k ) at an evaluation time i k thus constitutes a step in obtaining, by the dead reckoning navigation system 22, an evaluated position u(t k ) of pedestrian 12 at a determination time t k .
[0071] Alternatively, only the set of evaluated positions {u(t k )} k is interpolated, the instants of determination t k being chosen as being equal to the estimation times t k : t k = t k . The matching 118 thus constitutes a step of obtaining, by the dead reckoning navigation system 22, an evaluated position u(t k ) of pedestrian 12 at a determination time t k.
[0072] It should be noted that in the case where the evaluation instants i k correspond to the evaluation times T k , the matching 118 is limited to associating the evaluated positions u(i k ) and estimated v(i k ) at the same times i k , T k , which then become moments of determination t k .
[0073] The matching 118 is followed by the addition 120 of the pair of positions u(t k ), v(t k ) thus matched in the buffer memory 49 then cleaning 122 of the buffer memory 49. This cleaning 122 consists of the deletion from the buffer memory 49 of pairs of positions u(t k ), v(t k ) associated with determination times t kwhich are no longer in the movement interval, the movement interval being understood here as a sliding time window, of predetermined duration, ending on the date of the evaluation instant i k or estimation t k the most recent.
[0074] These steps 120, 122 are followed by a step 124 of deducing a heading resetting parameter 0. This heading resetting parameter 0 is here constituted by a parameter, in particular an angle, of modification of orientation by rotation around an axis of the predetermined reference frame, here the vertical axis. Optionally, the heading resetting 107 also comprises, in parallel with step 124, other steps (not shown) of deducing other heading resetting parameters, for example a parameter of correction of a bias in angular variation of the trajectory.
[0075] With reference to Figure 6, this step 124 comprises a first sub-step 130 of calculating a first candidate value 01 for the heading recalibration parameter 0 with all the points, i.e. all the pairs of positions u(t k ), v(t k ), contained in the buffer 49. This first candidate value 01 is calculated by minimizing a cost function comparing the positions u(t k ) evaluated at the N times of determination t k corresponding to the pairs of positions u(t k ), v(t k ) included in the buffer 49 at the estimated positions v(t k ) for said N determination times t k corrected using the heading recalibration parameter 0 and the position recalibration parameter Δ. This cost function is in particular representative of an average geometric deviation between the evaluated positions {u k} k and the estimated positions {v k} kafter application to the evaluated positions {u k} k of a geometric transformation comprising: a rotation around an axis of the predetermined reference frame, here the vertical axis, by an angle equal to the heading resetting parameter 0, and a translation in a direction orthogonal to said axis of a vector equal to the position resetting parameter A.
[0076] So, the cost function is for example equal to Or :
[0077] {u k} k is the set of positions evaluated at the times of determination; {v k} k is the set of positions estimated at the times of determination; {t k} k is the set of determination instants;
[0078] N is the number of pairs of positions u(t k ), v(t k ) included in buffer 49;
[0079] 0 is the heading resetting parameter;
[0080] R(0) is the rotation matrix representing the modification of the orientation by application of the heading resetting parameter; and
[0081] A is the position resetting parameter.
[0082] The first candidate value 01 is thus equal to atan U1(t k ) is a first position coordinate, along a first axis of the predetermined fixed reference frame, of the estimated position of the dead reckoning navigation system 22 at a determination time t k ;
[0083] - is an average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times; u2(t k ) is a second position coordinate, along a second axis of the predetermined fixed reference frame, of the estimated position of the dead reckoning navigation system 22 at a determination time t k ;
[0084] - is an average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times; v1(t k ) is a first position coordinate, along a first axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k ;
[0085] - is an average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times; v2(t k ) is a second position coordinate, along a second axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k ;
[0086] - is an average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times; and
[0087] N is the number of pairs of positions u(t k ), v(t k ) included in buffer 49.
[0088] Alternatively (not shown), the cost function includes a weighting of the different terms of the sum for example, depending on the likelihood of said terms (typically terms associated with higher variances would be assigned a lower weight) or the geometric distance between the different terms (typically terms that are geometrically close to each other would be assigned a lower weight). Alternatively, the geometric transformation is applied to the estimated positions {v k} k and not to the evaluated positions {u k} k: the terms of the sum are then written As a variant, the transformation geometric also includes: a trajectory correction, parameterized by a parameter b for correcting a bias in angular variation of the trajectory: the terms of the sum are then written ; and / or a homothety, parameterized by a scale factor h: the terms of the sum are then written
[0089] This sub-step 130 is followed by a sub-step 132 of evaluating a first precision value σ θ1 associated with said first candidate value 01. This first precision value σ θ1 is for example a function of the uncertainties σ v , σ u on the estimated positions {v k} k and the evaluated positions {u k} k . It is typically constituted by the standard deviation of the first candidate value 01 and is given by the following formula:
[0090] {u k} k is the set of positions evaluated at the times of determination, {v k} k is the set of positions estimated at the times of determination, {t fc} k is the set of determination times, is the variance of the random error affecting each coordinate of the position evaluated by the relative positioning system 24, is the covariance of the random error affecting each coordinate of the position estimated by the dead reckoning navigation system 22, is a first position coordinate, along a first axis of the predetermined fixed reference frame, of the position evaluated by the dead reckoning navigation system 22 at a determination time t k , is a second position coordinate, along a second axis of the predetermined fixed reference point, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k , v1(t k) is a first position coordinate, along a first axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k , v2(t k ) is a second position coordinate, along a second axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k , - is the average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times
[0091] - is the average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times
[0092] - is the average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times
[0093] - is the average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times, and
[0094] N is the number of pairs of positions u(t k ), v(t k ) included in buffer 49.
[0095] Alternatively, the first precision value is a function of an average deviation observed between the set of evaluated positions and the set of estimated positions {v k} k associated, corrected using the heading recalibration parameter 0 having the first candidate value 01. It is for example given by the following formula:
[0096] N is the number of pairs of positions u(t k ), v(t k ) included in the buffer memory 49, is the set of positions evaluated at the determination times; is the set of positions estimated at the determination times; is the average of the estimated position of the navigation system at dead reckoning 22 over all the determination times v is the average of the estimated position of the navigation system at dead reckoning 22 over all the determination times
[0097] 01 is the heading resetting parameter assigned the first candidate value 01, and
[0098] R(0i) is the rotation matrix representing the modification of the orientation by application of the heading resetting parameter.
[0099] Alternatively, the first precision value is a combination of a function of the uncertainties σ v , σ uon estimated positions and evaluated positions and of a function of an average deviation observed between the set of evaluated positions {u k} k and the set of estimated positions {v k} k associated, corrected using the heading recalibration parameter 0 having the first candidate value 0i.
[0100] In parallel with the sub-steps 130, 132, the deduction step 124 also comprises a sub-step 134 of calculating a second candidate value θ2 for the heading resetting parameter 0 without the oldest point contained in the buffer memory 49, that is to say with all the pairs of positions u(t k ), v(t k ) contained in the buffer memory 49 except the pair of positions u(ti), v(ti) associated with the oldest determination time ti. This second candidate value θ2 is calculated by minimizing a cost function comparing the positions u(t k) evaluated at the N-1 determination times t k corresponding to the pairs of positions u(t k ), v(t k ) the most recent ones included in the buffer 49 at the estimated positions v(t k ) for said N-1 determination times t k corrected using the heading recalibration parameter 0 and the position recalibration parameter A. This cost function is in particular representative of an average geometric deviation between the evaluated positions {u k} k and the estimated positions {v k} k after application to the evaluated positions {u k} k of a geometric transformation comprising: a rotation around an axis of the predetermined reference frame, here the vertical axis, by an angle equal to the heading resetting parameter 0, and a translation in a direction orthogonal to said axis of a vector equal to the position resetting parameter A.
[0101] So, the cost function is for example equal to Or :
[0102] {u k} k is the set of positions evaluated at the times of determination; {v k} k is the set of positions estimated at the times of determination; is the set of times of determination;
[0103] N is the number of pairs of positions u(t k ), v(t k ) included in buffer 49;
[0104] 0 is the heading resetting parameter;
[0105] R(0) is the rotation matrix representing the modification of the orientation by application of the heading resetting parameter; and A is the position resetting parameter.
[0106] The second candidate value θ2 is thus equal to atan2 U1(t k) is a first position coordinate, along a first axis of the predetermined fixed reference frame, of the estimated position of the dead reckoning navigation system 22 at a determination time t k ;
[0107] - is an average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest; u2(t k ) is a second position coordinate, along a second axis of the predetermined fixed reference frame, of the estimated position of the dead reckoning navigation system 22 at a determination time t k ;
[0108] - is an average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest; v1(t k) is a first position coordinate, along a first axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k ;
[0109] - is an average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest; v2(t k ) is a second position coordinate, along a second axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k ;
[0110] - is an average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the earliest; and
[0111] N is the number of pairs of positions u(t k ), v(tk ) included in buffer 49.
[0112] Alternatively (not shown), the cost function includes a weighting of the different terms of the sum for example, depending on the likelihood of said terms (typically terms associated with higher variances would be assigned a lower weight) or the geometric distance between the different terms (typically terms that are geometrically close to each other would be assigned a lower weight). Alternatively, the geometric transformation is applied to the estimated positions {v k} k and not to the evaluated positions {u k} k : the terms of the sum are then written As a variant, the geometric transformation also includes: a trajectory correction, parameterized by a parameter b for correcting a bias in angular variation of the trajectory: the terms of the sum are then written and / or a homothety, parameterized by a scale factor h: the terms of the sum are then written
[0113] This sub-step 134 is followed by a sub-step 136 of evaluating a second precision value σ θ2 associated with said second candidate value θ2. This second precision value σ θ2 is for example a function of the uncertainties σ v , σ u on the estimated positions {v k} k the evaluated positions {u k} k . It is typically constituted by the standard deviation of the second candidate value θ2 and is given by the following formula:
[0114] <T02 0U '
[0115] {uk} k is the set of positions evaluated at the times of determination, {v k} k is the set of positions estimated at the times of determination, {t k} k is the set of determination times, is the covariance of the random error affecting each coordinate of the position evaluated by the relative positioning system 24, is the covariance of the random error affecting each coordinate of the position estimated by the dead reckoning navigation system 22, is a first position coordinate, along a first axis of the predetermined fixed reference frame, of the estimated position of the navigation system by dead reckoning 22 at a determination time t k , u2(t k ) is a second position coordinate, along a second axis of the predetermined fixed reference frame, of the estimated position of the dead reckoning navigation system 22 at a determination time t k , v1(t k) is a first position coordinate, along a first axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k , v2(t k ) is a second position coordinate, along a second axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k , - is the average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest {t k ] k=2 ,
[0116] - is the average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest {t k ] k=2 ,
[0117] - is the average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest {t k ] k=2 ,
[0118] - is the average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest {t k ] k=2 , And
[0119] N is the number of pairs of positions u(t k ), v(t k ) included in buffer 49.
[0120] Alternatively, the second precision value σ θ2 is a function of an average deviation observed between all the evaluated positions {u k} k and the set of estimated positions {v k} kassociated, corrected using the heading 0 recalibration parameter having the second candidate value θ2. It is for example given by the following formula:
[0121] N is the number of pairs of positions u(t k ), v(t k ) included in buffer 49,
[0122] {u k} k is the set of positions evaluated at the times of determination; {v k} k is the set of positions estimated at the determination times; ü is the average of the estimated position of the navigation system 22 over all determination times except the oldest v is the average of the estimated position of the navigation system at dead reckoning 22 over all determination times except the oldest θ2 is the heading resetting parameter assigned the second candidate value θ2, and
[0123] R(θ2) is the rotation matrix representing the modification of the orientation by application of the heading resetting parameter. Alternatively, the first precision value σ θ2 is a combination of a function of uncertainties σ v , σ u on the estimated positions {v k} k and the evaluated positions {u k} k and a function of an average deviation observed between all the evaluated positions {u k} k and the set of estimated positions {v k} k associated, corrected using the heading 0 recalibration parameter having the first candidate value θ2.
[0124] Substeps 132 and 136 are followed by a substep 140 of comparing the first precision value σ θ1 with the second precision value σ θ2 .
[0125] If the first precision value σ θ1 reflects better accuracy than the second σ valueθ2 , that is to say here if σ θ1 < σ θ2 , then step 140 is followed by a step 142 of selecting the first candidate value 01 as the selected candidate value.
[0126] If, on the other hand, the precision value reflecting the best precision is constituted by the second precision value σ θ2 , that is to say here if σ θ1 >σ θ2 , then step 140 is followed by a step 144 of deleting the oldest point of the buffer memory 49, that is to say the pair of positions u(ti), v(ti) associated with the oldest determination instant ti. The remaining determination instants are then renumbered in and the steps 130 to 140 are repeated.
[0127] This maximizes the accuracy of the 0 recalibration parameter.
[0128] Sub-step 142 is optionally followed by a set of sub-steps 150 to 154 aimed at validating the new recalibration parameter 0 from a residue calculation.
[0129] Sub-step 142 is then followed by a sub-step 150 of calculating an expected recalibration residue r exp . This recalibration residual is intended to reflect the expected average gap between all the evaluated positions {u k} k and the set of estimated positions {v k} k associated, corrected using the heading 0 recalibration parameter. It is given by the following formula:
[0130] N is the number of pairs of positions u(t k ), v(t k) included in the buffer memory 49, is the covariance of the random error affecting each coordinate of the position evaluated by the relative positioning system 24, is the covariance of the random error affecting each coordinate of the position estimated by the dead reckoning navigation system 22,
[0131] - is the covariance of the recalibration parameter 0, equal to the square of the standard deviation σ θ1 , discussed above, of the selected candidate value 01, U1(t k ) is a first position coordinate, along a first axis of the predetermined fixed reference frame, of the estimated position of the dead reckoning navigation system 22 at a determination time t k , u2(t k ) is a second position coordinate, along a second axis of the predetermined fixed reference frame, of the estimated position of the dead reckoning navigation system 22 at a determination time t k , v1(t k) is a first position coordinate, along a first axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k , v2(t k ) is a second position coordinate, along a second axis of the arbitrary fixed reference frame, of the estimated position of the navigation system at dead reckoning 22 at a determination time t k ,
[0132] - is the average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times
[0133] - is the average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times
[0134] - is the average of the first position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times and
[0135] - is the average of the second position coordinate of the estimated position of the navigation system at dead reckoning 22 over all determination times
[0136] Sub-step 150 is followed by a sub-step 152 of calculating an observed recalibration residual r° bs . This recalibration residual is intended to reflect the average deviation observed between all the evaluated positions {u k} k and the set of estimated positions {v k} k associated, corrected using the heading recalibration parameter 0 assigned the selected candidate value 01. It is given by the following formula:
[0137] N is the number of pairs of positions u(t k ), v(t k) included in buffer 49,
[0138] {u k} k is the set of positions evaluated at the times of determination; {v k} k is the set of positions estimated at the determination times; ü is the average of the estimated position of the navigation system 22 over all the determination times v is the average of the estimated position of the navigation system at dead reckoning 22 over all the determination times
[0139] 0 is the heading adjustment parameter, and
[0140] R(0) is the rotation matrix representing the modification of the orientation by application of the heading resetting parameter.
[0141] Sub-step 152 is followed by a sub-step 154 of comparing the observed recalibration residue r° bs with the expected recalibration residue r exp , increased by a predetermined threshold <5.
[0142] If the observed recalibration residue r obs is strictly greater than the sum of the expected recalibration residue r exp with the threshold <5, that is to say if the inequality is verified, then substep 154 is followed by a substep 156 of rejection of the selected candidate value. The recalibration parameter 0 then retains its previous value.
[0143] If the observed recalibration residue r° bs is less than or equal to the sum of the expected recalibration residue r exp with the threshold <5, that is to say if the inequality is verified, then sub-step 154 is followed by a sub-step 158 of comparing the precision value σ θn associated with the selected candidate value with a precision value σ θ0 associated with a current value of the recalibration parameter 0. Note that, taking into account the candidate value selection algorithm, precision value σ θnassociated with the selected candidate value is equal to the first precision value σ θ1 described above.
[0144] More specifically, substep 158 comprises comparing the precision value σ θn associated with the selected candidate value with the precision value σ θo associated with the current value of the recalibration parameter 0 increased by a time drift value proportional to the time elapsed between the determination of the selected candidate value and the determination of the current value of the heading recalibration parameter 0. This time drift value is typically equal to (t n - t0) xb, where: t n is a representative instant of the instants of determination {t k}k taken into consideration for the determination of the selected candidate value, t0 is an instant representative of the instants of determination {t k}k taken into account for determining the current value of the heading recalibration parameter 0, and b is a predefined constant representing a typical bias value of the gyrometer 40.
[0145] Each of the instants t0, t n is for example constituted by the average of the determination times {t k}k taken into consideration for the determination of the selected candidate value, respectively for the determination of the current value of the heading resetting parameter 0. Alternatively, each of the instants t0, t n is for example constituted by the instant of determination t k the most recent one taken into account for determining the selected candidate value, respectively for determining the current value of the heading resetting parameter 0.
[0146] In the case where sub-step 158 is implemented for the first time since the start of the dead reckoning navigation system 22, the precision value σ θ0 associated with the current value of the recalibration parameter 0 is preferably infinite.
[0147] Sub-step 158 is followed by a sub-step 160 of determining a future value of the recalibration parameter 0 based on the result of the comparison 158. This future value is typically a function of the candidate value and the current value.
[0148] For example, if the precision value σ θn associated with the selected candidate value is greater than or equal to the precision value σ θ0 associated with the current value increased by the time drift value, that is to say if the following inequality is verified: σ θn > , then the future value is equal to the current value, and if on the other hand the precision value σ θnassociated with the selected candidate value is strictly less than the precision value σ θ0 associated with the current value increased by the time drift value, that is to say if the following inequality is verified: σ θn < σ θ0 + (t n - t0) xb, then the future value is equal to the selected candidate value.
[0149] Alternatively, the future value is equal to a combination of the selected candidate value and the current value depending on the ratio of the precision value σ θn associated with the selected candidate value and the precision value σ θ0 associated with the current value augmented by the time drift value, typically by applying a Kalman filter or Bayesian fusion. For example, the future value is equal to
[0150] 0 n is the selected candidate value, σ θnis the precision value associated with said selected candidate value, 0o is the current value of the heading resetting parameter 0, and σ θo is the precision value associated with said current value.
[0151] This sub-step 160 concludes step 124 of deducing the heading resetting parameter 0.
[0152] Returning to Figure 5, step 124 is followed by a step 126 of adjusting the estimated heading. During this step 126, the dead reckoning navigation system 22 adjusts the estimated heading by applying the heading adjustment parameter This step 126 concludes step 107 of heading recalibration.
[0153] Returning to Figure A, the position resetting steps 106 and heading resetting steps 107 are followed by a step 109 of calculating a position of the pedestrian 12 by the dead reckoning navigation system 22. During this step 109, the dead reckoning navigation system 22 applies the heading and position resetting parameters to determine the position of the pedestrian 12 in the predetermined reference frame. This position is determined by the following formula: where: is a position of pedestrian 12 in the predetermined reference frame calculated by the navigation system using dead reckoning 22, v(t) is the position of pedestrian 12 in the arbitrary reference frame estimated by the navigation system using dead reckoning 22, θ is the heading resetting parameter,
[0154] R(θ) T is the rotation matrix representing the modification of the orientation by applying the inverse of the heading resetting parameter, and Δ is the position resetting parameter.
[0155] The method 100 then loops to step 109 so as to allow continuous updating of the calculated position x(t).
[0156] In parallel, the method 100 returns to step 104, so as to allow a continuous update of the recalibration parameters in heading 0 and in position A each time the pedestrian 12 passes near the beacons 54.
[0157] Thanks to the embodiment described above, it is thus possible to accurately track, in a simple and economical manner, the movement of people inside a building. This objective is in fact achieved thanks to the particularly lightweight infrastructure 18 which only needs to be deployed and the particularly simple location boxes 16 with which the people to be tracked only need to be equipped. The movement sensors 30 equipping these boxes 16 do not need to be very precise since the dead reckoning navigation system can be regularly recalibrated each time a person passes close to the infrastructure 18.
[0158] In particular, the use of UWB technology for the relative positioning system 24 is particularly advantageous because it allows, thanks to the low level of error of UWB localization, to obtain a very precise resetting for a small displacement range. It therefore makes it possible to very significantly reduce the infrastructure requirements. It is also completely transparent for the pedestrian 12, who does not have to perform any special task to ensure the resetting of his location box 16.
Claims
Claims Attitude recalibration method (107) for recalibrating an attitude provided by a dead reckoning navigation system (22), the attitude recalibration method (107) comprising the following steps: estimation (116), by the dead reckoning navigation system (22), for each of a plurality of determination instants included in a movement interval during which the dead reckoning navigation system (22) moves along a movement trajectory, of an estimated position of the dead reckoning navigation system (22) in an arbitrary fixed reference frame at said determination instant, obtaining (114), for each determination instant, an evaluated position of the dead reckoning navigation system (22) at said determination instant in a predetermined fixed reference frame, said evaluated position having been evaluated by a relative positioning system (24),and deducing (124) at least one attitude recalibration parameter by minimizing a cost function comparing the evaluated positions to the estimated positions corrected by means of the or each recalibration parameter. An attitude recalibration method (107) according to claim 1, wherein the dead reckoning navigation system (22) is worn by a pedestrian (12), the dead reckoning navigation system (22) preferably being attached to a foot or ankle of the pedestrian (12). An attitude recalibration method (107) according to claim 1 or 2, wherein the dead reckoning navigation system (22) comprises a motion sensor (30) for measuring a movement of the dead reckoning navigation system (22) and a processing unit (32) for deducing from the measured movement an attitude and a position of the dead reckoning navigation system (22). Attitude recalibration method (107) according to any one of the preceding claims,wherein the relative positioning system (24) is chosen from: a multi-angulation system, a multi-lateration system, a system, map matching and a visual positioning system, the relative positioning system (24) preferably comprising an ultra-wideband ranging device. An attitude registration method (107) according to any one of the preceding claims, wherein the arbitrary fixed reference frame and the predetermined fixed reference frame share a common axis, an attitude registration parameter being constituted by a parameter, preferably an angle, of modification of orientation by rotation around said common axis. An attitude registration method (107) according to any one of the preceding claims, wherein the cost function is representative of an average geometric deviation between the evaluated positions and the estimated positions after application to the evaluated or estimated positions of a geometric transformation comprising a rotation and, preferably, a translation.An attitude recalibration method (107) according to any one of the preceding claims, wherein the step of deducing the recalibration parameter comprises calculating (130) a candidate value for the recalibration parameter, evaluating (132) an accuracy value of said candidate value, comparing (158) said accuracy value with a previous accuracy value associated with a previous recalibration parameter, and determining (160) the recalibration parameter as a function of the result of the comparison (158), the recalibration parameter depending on the candidate value and the previous recalibration parameter. An attitude recalibration method (107) according to claim 7, wherein the accuracy value is a function of uncertainties in the estimated positions and the evaluated positions and / or of an average geometric deviation between the evaluated positions and the estimated positions after application of the candidate value of the recalibration parameter.An attitude recalibration method (107) according to any one of the preceding claims, wherein the deduction (124) of the recalibration parameter comprises the following sub-steps: a) calculation (130) of a first candidate value for the recalibration parameter by minimization of a cost function comparing the positions. evaluated for N determination times to the estimated positions for said N determination times corrected by means of the recalibration parameter, b) calculation (132) of a first precision value associated with said first candidate value, c) calculation (134) of a second candidate value for the recalibration parameter by minimizing a cost function comparing the positions evaluated for N-1 determination times, corresponding to said N determination times minus the oldest determination time, to the estimated positions for said N-1 determination times corrected by means of the or each recalibration parameter, d) calculation (136) of a second precision value associated with said second candidate value, e) comparison (10) of the first and second precision values, and f) selection (142) of the first candidate value when the first precision value reflects the best precision.: Method for attitude recalibration (107) according to claim 9 wherein, when the precision value reflecting the best precision is constituted by the second precision value, the deduction (124) of the recalibration parameter comprises the following additional sub-steps: deletion (144) of the evaluated position and the estimated position for the oldest determination instant, and repetition of sub-steps a) to e) with a number N reduced by 1. Method (100) for locating an object (12) in a predefined space (14), the object (12) carrying a dead reckoning navigation system (22), the method (100) comprising the following steps: starting (102) the dead reckoning navigation system (22), attitude recalibration (107) of the dead reckoning navigation system (22) using a relative positioning system (24) comprising an infrastructure. (18) installed at an access point (19) to the predefined space (14), so as to obtain an attitude resetting parameter, said attitude resetting (107) implementing an attitude resetting method according to any one of the preceding claims, position resetting (106) of the dead reckoning navigation system (22) using a relative positioning system (24) comprising an infrastructure (18) installed at said access point (19) to the predefined space (14), so as to obtain a position resetting parameter, and calculation (109), by the dead reckoning navigation system (22), by means of the attitude resetting parameter and the position resetting parameter, of a calculated position of the dead reckoning navigation system (22) in the predetermined reference frame.Location method (100) according to claim 11, in which the infrastructure (18) is on board a vehicle itself equipped with a location and orientation system making it possible to calculate the position of the infrastructure (18) in the predetermined reference frame. Dead reckoning navigation system (22) comprising a motion sensor (30) for measuring a movement of the dead reckoning navigation system (22) and a processing unit (32) for deducing from the measured movement an attitude and a position of the dead reckoning navigation system (22) in a fixed reference frame, the processing unit being configured to implement an attitude resetting method (107) according to any one of claims 1 to 10 to reset said attitude. Computer program product comprising code instructions for executing an attitude resetting method (107) according to any one of claims 1 to 10 when said program is executed by a processor.Storage means readable by computer equipment on which is recorded a computer program product comprising code instructions for the execution of an attitude recalibration method (107) according to any one of claims 1 to 10.