EP4232849A1 - Procédé de détection d'un masquage d'un ou plusieurs satellites, dispositif électronique de détection et produit programme d'ordinateur associé - Google Patents

Procédé de détection d'un masquage d'un ou plusieurs satellites, dispositif électronique de détection et produit programme d'ordinateur associé

Info

Publication number
EP4232849A1
EP4232849A1 EP21799258.5A EP21799258A EP4232849A1 EP 4232849 A1 EP4232849 A1 EP 4232849A1 EP 21799258 A EP21799258 A EP 21799258A EP 4232849 A1 EP4232849 A1 EP 4232849A1
Authority
EP
European Patent Office
Prior art keywords
satellite
group
instant
satellites
calculation
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.)
Pending
Application number
EP21799258.5A
Other languages
German (de)
English (en)
Inventor
Nicolas Martin
Muhammed HALEP
Christian Mehlen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thales SA
Original Assignee
Thales SA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Thales SA filed Critical Thales SA
Publication of EP4232849A1 publication Critical patent/EP4232849A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/22Multipath-related issues
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining 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/42Determining position
    • G01S19/51Relative positioning

Definitions

  • TITLE Method for detecting masking of one or more satellites, electronic detection device and associated computer program product
  • the present invention relates to a method for detecting masking of one or more satellites by an obstacle for a GNSS receiver on board a mobile carrier.
  • the present invention also relates to an electronic detection device and a computer program product associated with this method.
  • the invention is applicable to the field of tracking the position of mobile object(s) by satellite. More particularly, the invention is applicable for motor and railway land vehicles, maritime vehicles, air vehicles, and for an object carried by a user.
  • the positioning of an object can be achieved from a GNSS receiver receiving GNSS signals from satellites.
  • GNSS refers to Geolocation and Navigation by a Satellite System.
  • An example of such a system is the GPS system (Global Positioning System) or the GALILEO system.
  • a satellite is said to be visible to a GNSS receiver, if the GNSS receiver receives GNSS signals from this satellite.
  • a satellite is said to be visible and locked if the GNSS receiver produces pseudo-distance measurements between its antenna and that of the satellite and demodulates a navigation message contained in a signal from the satellite.
  • the reception, by the receiver, of GNSS signals from 4 separate satellites is generally sufficient to determine the position of the GNSS receiver in space.
  • the determination of this position is in particular carried out as a function of the travel time of the GNSS signals originating from each satellite.
  • a path traveled by the GNSS signals, transmitted by each satellite and received by the GNSS receiver is substantially linear and direct.
  • the signals are said to be direct.
  • GNSS signals coming from at least one satellite are likely to bounce off at least one surface of the obstacle or obstacles, before reaching the GNSS receiver.
  • Such signals are called indirect, as opposed to direct signals.
  • the receiver In the case where the receiver receives, from the same satellite, both direct and indirect signals, the receiver is in a so-called multipath situation.
  • NLOS Non Line of Sight
  • NLOS situations appear in particular when the mobile carrier carrying the GNSS receiver moves in a cluttered environment.
  • a cluttered environment can include any structure, natural or man-made, that may interfere with the path between the GNSS receiver and a satellite.
  • the structure masks the satellite, from the point of view of the GNSS receiver. This then leads to a strong attenuation of the amplitude of the direct signals relative to that of the indirect signals.
  • Such a situation of NLOS is represented in figure 1 where the direct signals are denoted D and the indirect signals are denoted M.
  • the determination of the position of the receiver is impaired. Indeed, the distance between the masked satellite and the receiver is fictitiously lengthened because of the rebound(s) of the signals originating from the masked satellite on one or more surfaces of the structures. In the example of Figure 1, the determined position of the receiver is then the position P'.
  • GNSS receiver it is impossible for a GNSS receiver to know a priori whether the GNSS signals received are direct or indirect.
  • the object of the invention is therefore to provide a method for detecting masking of one or more satellites.
  • the object of the invention is a method for detecting masking of one or more satellites by an obstacle for a GNSS receiver on board a mobile carrier, the method comprising the following steps: continuous reception, at each instant of acquisition and for each of M satellites, of a code pseudo-distance measurement and of a variation of carrier pseudo-distances, M being an integer; calculation of a resolved position of the receiver and a calculated position of each satellite; detection of masking of at least one satellite from the following sub-steps:
  • the detection method comprises one or more of the following characteristics, taken in isolation or in all technically possible combinations:
  • the method comprises, prior to the calculation sub-step, the following steps:
  • time of generation of at least one group of N satellites, the satellites of the or each group of N satellites being chosen from among the M satellites, N being an integer less than or equal to M, and
  • the detection step includes for each group, the following sub-steps, after the calculation sub-steps:
  • the calculation step also includes and for each instant of acquisition, the calculation:
  • the generation step includes a selection sub-step, for each satellite, of GNSS signals at each instant of acquisition for which:
  • the generation step also includes the following sub-steps:
  • the residue calculation sub-step further comprises for each group of satellites:
  • the invention also relates to a computer program product comprising software instructions which, when implemented by computer equipment, implement the detection method, as defined above.
  • the invention also relates to an electronic detection device comprising technical means suitable for implementing the detection method, as defined above.
  • Figure 1 is a schematic view explaining the multi-path problem when geolocating a wearer in a congested environment
  • Figure 2 is a schematic view of an electronic detection device, embedded on a carrier, according to the invention
  • Figure 3 is a flowchart of a detection method implemented by the detection device of Figure 2;
  • Figure 4 is an explanatory diagram of a generation step of the method of Figure 3, illustrated on an example.
  • a carrier 5 is mobile in an environment.
  • the wearer 5 embeds a GNSS receiver 10 able to receive GNSS signals and an electronic detection device 15 configured to detect masking of one or more satellites and, if necessary, determine a list of satellite(s) masked by an obstacle, during the reception of GNSS signals by the GNSS receiver 10.
  • the carrier 5 is for example an aircraft, such as a drone, moving in space in three dimensions, or a land or sea vehicle moving in a plane in two dimensions, or for example a railway vehicle moving in one direction following a railway line.
  • aircraft such as a drone, moving in space in three dimensions, or a land or sea vehicle moving in a plane in two dimensions, or for example a railway vehicle moving in one direction following a railway line.
  • the GNSS receiver 10 is configured to receive GNSS signals from satellite(s) belonging to the same GNSS system, such as for example the GPS system.
  • the GNSS receiver 10 comprises for example a reception antenna 12 known per se and a calculation module 13.
  • the antenna 12 is configured to receive GNSS signals from a plurality of satellites and transmit them in the form of electrical signals to the calculation module 13.
  • the GNSS signals include, for each satellite S i visible and locked, an identifier of the satellite S i , a transmission time t em,i of the signals by the satellite S i and the ephemeris of the satellite S i .
  • Each piece of GNSS signal information is coded on a carrier transmitted by the satellite.
  • the calculation module 13 is for example capable of determining the position of the receiver 10 from the GNSS signals using techniques known per se.
  • the calculation module 13 is also configured to calculate and transmit to the detection device 15, at each instant of acquisition t h and for each visible and locked satellite S i , the following information: a code pseudo-range measurement PR( i, h ), a carrier pseudo distance variation measurement DR(i, h ) between the acquisition instant t h and a previous instant t h-1 for example according to the equation:
  • DR(i, h ) PR car (i, h) - PR car (i, h - 1) where PR car (i, h) is a carrier pseudo-range at the acquisition time t h .
  • the calculation module 13 is also configured to transmit to the detection device 15 the ephemeris of each satellite S i and the transmission time of the signals from each satellite S i .
  • the acquisition times t h are periodically spaced according to a first predetermined frequency f 1 .
  • the detection device 15 comprises an input module 17, a processing module 20 and an output module 25.
  • the input module 17, the processing module 20 and the output module 25 are each produced in the form of software stored in one or more storage means (such as a hard disk or a flash disk) and implemented by one or more processors, memory (RAM) and other computer components known per se. These components are then included in the same computer or in different computers/servers. In the latter case, the computers/servers are connected by a local or global network.
  • storage means such as a hard disk or a flash disk
  • RAM random access memory
  • the computers/servers are connected by a local or global network.
  • modules 17, 20, and 25 take the form, at least partially, of an independent electronic component, such as for example a programmable logic circuit of the FPGA type (of the English field-programmable gate array) or other.
  • an independent electronic component such as for example a programmable logic circuit of the FPGA type (of the English field-programmable gate array) or other.
  • the input module 17 is configured to receive, at each instant of acquisition t h , the information calculated by the calculation module 13, namely representative signals.
  • the input module 17 is configured to transmit to the processing module 20 the information received.
  • the processing module 20 is configured to process the signals, coming from the GNSS receiver 10, in order to detect the presence of a hidden satellite.
  • the processing module 20 is configured to determine, if necessary, the list of hidden satellite(s). For this, the processing module 20 is configured to process the GNSS signals as described below in relation to the detection method according to the invention.
  • the output module 25 is connected to the processing module 20.
  • the output module 25 is configured to transmit to a user or to another electronic device, not shown, information relating to the presence, or absence, of satellite(s). ) hidden(s), and if necessary a list of hidden satellite(s).
  • the output module 25 is configured to communicate with a user, this communication takes place, for example, using a screen not shown. In the case where the output module 25 is intended to communicate with another electronic device, the output module 25 is for example intended to communicate with the calculation module 13. The output module 25 is then, for example, configured to send an alert signal to the calculation module 13 in the event of detection of satellites hidden, and if necessary to send to the calculation module 13 the list of hidden satellite(s).
  • FIG. 3 presenting a flowchart of this method
  • FIG. 4 illustrating a step of the method on an example.
  • the carrier 5 moves in a cluttered environment and the GNSS receiver 10 receives, via its antenna 12, GNSS signals from a plurality of satellites.
  • the calculation module 13 calculates the information mentioned above and transmits it to the detection device 15.
  • the input module 17 receives at each instant of acquisition t h and for each of the M satellites S i the code pseudo-distance measurement PR(i, h) and the variation of carrier pseudoranges DR(i,h).
  • the M satellites correspond to the satellites visible and hooked by the GNSS receiver 10.
  • the visible satellites are understood here in the sense of satellites whose GNSS signals reach the GNSS receiver 10, without considering whether the GNSS signals, coming from these satellites, travel a path direct or indirect.
  • the acquisition step 110 is for example implemented by the input module 17.
  • the processing module 20 calculates, for each instant of acquisition t h :
  • the processing module 20 has the quantities calculated at each instant of acquisition t h for which the GNSS signals have been received by the receiver 10.
  • the calculation step 120 is carried out by the calculation module 13 not included in the detection device 15. The aforementioned calculated elements are then received by the input module 17, from the calculation module 13, and transmitted to the processing module 20.
  • the processing module 20 generates, at a generation instant t k , at least one group G j of satellites, and advantageously a plurality of groups G j of satellites.
  • the processing module 20 applies for example the following sub-steps, detailed by way of example with reference to FIG. 4.
  • the processing module 20 selects for each satellite S i , the data of the GNSS signals at each instant of acquisition t h for which:
  • the signal-to-noise ratio C/N0 (i, h ) of the GNSS signals coming from this satellite S i at this acquisition instant t h meets a first criterion; and the elevation angle ⁇ (i, h) of this satellite S i at this instant of acquisition t h meets a second criterion.
  • the first criterion is for example that the signal to noise ratio C/N0 (i, h) be greater than 30 dBHz.
  • the second criterion is for example that the elevation angle ⁇ (i, h) is greater than 5°.
  • the GNSS signals from a satellite S i will only be taken into account in the following sub-steps, at acquisition times t h for which the signal-to-noise ratio C/N0(i, h) of the satellite S i meets the first criterion and the elevation angle ⁇ (i, h) of the satellite meets the second criterion.
  • the processing module 20 orders the satellites S i in decreasing order of valid reception duration without discontinuity.
  • a valid reception is understood here in the sense of a reception of GNSS signals having been selected during the selection sub-step 131.
  • the duration of reception without discontinuity corresponds to a duration since which the input module 17 receives the GNSS signals uninterrupted.
  • the processing module 20 classifies the satellites S i by decreasing duration from which their GNSS signals have been selected in an uninterrupted manner.
  • the satellite, subsequently named S 1 corresponds to the satellite having the longest valid reception duration without discontinuity.
  • the satellite subsequently named S M corresponds to the satellite having the shortest valid reception duration without discontinuity.
  • the processing module 20 During a first generation sub-step 133, the processing module 20 generates a first group G 1 of satellites.
  • the first group G 1 of satellites comprises N satellites, N being a predetermined integer, advantageously equal to 5 or 6.
  • the processing module 20 generates the first group G 1 as comprising the first N satellites S 1 to S N , after their classification during the classification sub-step 132, as represented in FIG. 4 at point a.
  • FIG. 4 represents several tables with double entries, of which an abscissa represents the successive acquisition instants t h and an ordinate represents the satellites classified according to their valid reception duration without discontinuity.
  • Each box in the table is associated with an acquisition time t h and a satellite S i .
  • Each box is either filled in by a statement indicating that a pseudo-range variation of a valid GNSS signal was received at the acquisition time t h for the satellite S i or by a cross in the opposite case.
  • the first group G 1 whose data is framed by a bold outline, includes the first five satellites.
  • the duration of valid reception without discontinuity of each of the first five satellites corresponds to the difference between the instant of generation t k and the instant t k ⁇ 5 .
  • the duration of valid reception without discontinuity of the sixth satellite Se is equal to the difference between the instant of generation t k and the instant t k -2 .
  • the valid duration of reception without discontinuity is equal to the difference between the instant of generation t k and the instant t k ⁇ 1 .
  • the processing module 20 generates a second group G 2 of satellites, from the first group G 1 of satellites. For this, the processing module 20 generates a group G j comprising the N satellites of the first group G 1 and the satellite, absent from the first group G 1 , having the longest valid reception duration without discontinuity.
  • the second group G 2 comprises the first N satellites, and the satellite S N+1 corresponding to the satellite S i absent from the first group G 1 having the longest valid reception duration without discontinuity.
  • the second group G 2 of satellites therefore comprises six satellites, namely the first six satellites, after the classification sub-step 132, as outlined in bold at point b.
  • the second generation sub-step 134 is reiterated from the second group G 2 of satellites.
  • a third group G 3 is generated.
  • the third group G 3 comprises each of the satellites of the second group and the remaining satellite having the longest valid reception duration without discontinuity, namely the seventh satellite S 7 .
  • the third group G 3 therefore comprises the seven satellites for which data from the GNSS signals have been selected, as represented in bold at point c.
  • the second generation sub-step 134 is therefore not repeated a third time.
  • the processing module 20 associates a time of birth t n with each group G j of satellites.
  • the instant of birth t n corresponds to an instant from which valid GNSS signals, coming from each of the satellites, have been received without discontinuity.
  • the instant of birth t n of a respective group G j corresponds to the instant of generation t k minus the shortest valid reception duration without discontinuity among those of each of the satellites of the group G j .
  • the instant of birth t n of the first group G 1 is therefore t k-5 because valid signals from each of the satellites have been received, by the input module 17, without discontinuity since this instant t k-5 .
  • the instant of birth t n associated with the second group G 2 is instant t k-2 because valid signals have been received without interruption from five of these satellites from instant t k-5 and from valid signals were received without interruption from the sixth satellite S 6 , only from time t k-2 .
  • Concerning the third group G 3 for reasons similar to the second group, the instant of birth t n is the instant t k ⁇ 1 .
  • the processing module 20 detects the presence of at least one masked satellite, and if necessary, determines the list of masked satellite(s). For this, the processing module 20 analyzes for each group G j , a quantity, called residual, specific to this group G j , by comparison with a first threshold. The residual is obtained from the GNSS signals received from the satellites of this group G j since the instant of birth t n of this group G j .
  • the detection step 170 includes the following sub-steps.
  • the processing module 20 calculates, for each group G j of satellites, the residue representative of an inconsistency of the signals GNSS received from at least one satellite of this group G j relative to the other satellites of this group G j .
  • the processing module 20 calculates, at generation instant t k and at the instant of birth t n , a pseudo-distance calculated respectively PR cal (i, k) and PR cal (i,n), linked to each satellite S i of the group G j , for example according to the formulas:
  • the processing module 20 calculates a first estimated position, valid at the generation time t k , by applying a PVT (Position Velocity Time) algorithm known in or, from the code pseudo-distances PR(i, k) and the calculated pseudo-distances PR cal (i, k) of each satellite S i .
  • PVT Position Velocity Time
  • the processing module 20 calculates, for each satellite S i , a reconstituted pseudo-distance PR′(i,n,k), valid at the time of birth t n , from the variations of carrier pseudo-distance DR( i, h) between the instant of birth t n and the instant of generation t k and from the code pseudo-distance PR(i, k) at the instant of generation t k , for example according to the formula next :
  • the processing module 20 also calculates a second estimated position, valid at the instant of birth t n , by application of the PVT algorithm, from the reconstituted pseudo-distances PR′(i,n,k) and the pseudo- calculated distances of each satellite S i .
  • the processing module 20 calculates a first pseudo-distance difference vector Z k each component of which corresponds, for each satellite of the group G j , to the difference between the code pseudo-distance PR(i, k) resulting from the GNSS signals received and the calculated pseudo-distance PR cal (i, k) at the instant of generation tk ; and a second pseudorange difference vector
  • the first and second pseudo-distance difference vectors are then obtained according to the following formula:
  • the processing module 20 also calculates, for the instant of generation t k and for the instant of birth t n , respectively a first H k and a second H n observation matrices, for example according to the following formulas:
  • the first Z k respectively the second Z nk , pseudo-distance difference vectors and matrices (H k and H n ) of observation make it possible to define a system of linear equations of which one unknown is a first X k , respectively a second X n,k , position deviation vector of the GNSS receiver at the instant of generation t k , respectively at the instant of birth t n .
  • the system of linear equations is then written in the following form:
  • Z n,k, H n . Xn ,k ; or :
  • the coefficients of the first X k and second X n,k position deviation vectors are the unknowns of the linear system of equations.
  • T is the matrix transpose operator; and
  • -1 is the matrix inverse operator.
  • the processing module 20 calculates the residual as being the difference between approximation errors committed during the calculation of the solution of each of the systems of linear equations by the least squares algorithm.
  • the processing module 20 calculates the first and second positions estimated at instants of generation t k and of birth t n from the resolved positions of the receiver at the instants of generation t k and of birth t n at the first and second approximate solutions, according to the equation:
  • the processing module 20 then recalculates, for each satellite S i , the calculated pseudo-distance PR cal (i, k) at the instant of generation t k from the first position Position G .(k) and a pseudo- reconstituted calculated distance PR cal '(i, k, n) at the moment of birth t n from the second position according to the formula:
  • the processing module 20 calculates the residue according to the formula: which is equivalent to:
  • the calculation of the residue is simplified. Indeed, if the position of the GNSS receiver 10 has varied slightly between the instants of birth t n and of calculation t k , then the first H k and second H n observation matrices are substantially similar.
  • the calculation module 20 then calculates the approximate solution of the second position deviation vector from the first observation matrix H k . In a similar way, the calculation of the residue is then expressed according to the formula next :
  • the processing module 20 detects a masking of at least one satellite of group G j .
  • the processing module 20 If, for at least one group G j , the processing module 20 has detected, during the detection sub-step 172, a masking, and the group G j comprises at least six satellites, then the processing module 20 reiterates, during a reiteration sub-step 173, the calculation sub-step 171 for each subgroup of this group G j , then producing a new residue specific to this subgroup.
  • Each sub-group is distinct from the other sub-groups and includes all the satellites of the group G j except one.
  • a determination sub-step 174 if the new residue of a subgroup is lower than a second threshold while the respective new residues of the other subgroups linked to the same group G j are higher than the second threshold, then the processing module 20 determines a respective masked satellite as being the absent satellite of the sub-group.
  • the second threshold is for example equal to the first threshold.
  • the processing module 20 detects, during the detection sub-step 172, the masking of at least one satellite of the second group G 2 . If, moreover, the new residue, associated with the subgroup in which the third satellite S 3 is absent, is lower than the second threshold, and the new residues respectively associated with the other subgroups resulting from the second group G 2 are higher than the second threshold, then the processing module 20 determines that the third satellite S 3 is masked.
  • the generation 130, association 140 and detection 170 steps are repeated periodically at a second predetermined frequency f 2 .
  • the second frequency f 2 is for example equal to the first frequency f 1 .
  • the second frequency f 2 is lower than the first frequency f 1 .
  • the first frequency f 1 is for example twice the second f 2 . So the steps of generation 130, association 140 and detection 170 are repeated each time the GNSS signals are received by the input module 10 twice.
  • the output module 25 communicates to a user or to the calculation module 13, an alert signal if a masked satellite has been detected during the detection step 170.
  • output 25 communicates to the user or to the calculation module 13, the list of hidden satellite(s) if it was determined during the detection step 170.
  • the detection of hidden satellite(s) is improved because it can be carried out on an on-board system from low computing power, in particular thanks to the formation of group(s) G j .
  • the groups G j having a low number of satellites but a long valid reception duration without discontinuity and the groups G j having a short valid reception duration without discontinuity but a large number of satellites allow better masking detection and better determination of the list of masked satellites.
  • the selection sub-step 131 makes it possible to ensure that the data coming from the GNSS signals received from the satellites can be used in the detection of masking of satellite(s).

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

La présente invention concerne un procédé de détection d'un masquage d'un ou plusieurs satellites par un obstacle pour un récepteur GNSS embarqué sur un porteur mobile, le procédé comprenant les étapes suivantes : - réception (110), pour chacun de M satellites, d'une mesure de pseudo-distance de code et d'une variation de pseudo-distances de porteuse; - calcul (120) d'une position résolue du récepteur et d'une position calculée de chaque satellite (S,); - détection (170) d'un masquage d'au moins un satellite à partir des sous-étapes suivantes : - calcul (171), à un instant de calcul et pour chaque satellite, d'une pseudo-distance calculée et d'une pseudo-distance reconstituée à un instant antérieur; - détection (174) d'un masquage d'au moins un satellite par analyse d'une grandeur dite résidu calculée par application d'un algorithme de moindre carré.

Description

TITRE : Procédé de détection d’un masquage d’un ou plusieurs satellites, dispositif électronique de détection et produit programme d’ordinateur associé
La présente invention concerne un procédé de détection d’un masquage d’un ou plusieurs satellites par un obstacle pour un récepteur GNSS embarqué sur un porteur mobile.
La présente invention concerne également un dispositif électronique de détection et un produit programme d’ordinateur associé à ce procédé.
L’invention est applicable au domaine du suivi de position d’objet(s) mobile(s) par satellites. Plus particulièrement, l’invention est applicable pour des véhicules terrestres automobiles et ferroviaires, des véhicules maritimes, des véhicules aériens, et pour un objet porté par un utilisateur.
De manière connue en soi, le positionnement d’un objet est réalisable à partir d’un récepteur GNSS recevant des signaux GNSS issus de satellites.
La dénomination GNSS fait référence à la Géolocalisation et Navigation par un Système de Satellites. Un exemple d’un tel système est le système GPS (de l’anglais Global Positionning System) ou encore le système GALILEO.
Un satellite est dit visible pour un récepteur GNSS, si le récepteur GNSS reçoit des signaux GNSS issus de ce satellite.
Un satellite est dit visible et accroché si le récepteur GNSS produit des mesures de pseudo-distance entre son antenne et celle du satellite et démodule un message de navigation contenu dans un signal du satellite.
Lorsque le récepteur GNSS évolue dans un milieu dégagé, la réception, par le récepteur, de signaux GNSS issus de 4 satellites distincts est généralement suffisante pour déterminer la position du récepteur GNSS dans l’espace.
La détermination de cette position est notamment effectuée en fonction du temps de trajets des signaux GNSS issus de chaque satellite.
Dans un environnement dégagé, c’est-à-dire dépourvu d’obstacles, un trajet parcouru par les signaux GNSS, émis par chaque satellite et reçus par le récepteur GNSS, est sensiblement linéaire et direct. Dans un tel cas, les signaux sont dits directs.
Le terme « direct » qualifie ici un trajet, parcouru par des signaux, sans rebond sur une quelconque surface avant d’atteindre sa cible.
Cependant, lorsque l’environnement est encombré par au moins un obstacle, tel qu’un immeuble ou tout autre objet présent notamment dans le milieu urbain, la réception de signaux GNSS n’est plus uniquement directe. Plus précisément, les signaux GNSS issus d’au moins un satellite sont susceptibles de rebondir sur au moins une surface du ou des obstacles, avant d’atteindre le récepteur GNSS. De tels signaux sont dits indirects, en opposition aux signaux directs.
Dans le cas où le récepteur reçoit, d’un même satellite, à la fois des signaux directs et indirects, le récepteur est dans une situation dite de multi-trajets (de l’anglais multipath).
En situation de multi-trajets, si l’amplitude des signaux indirects est faible devant celle des signaux directs, alors des procédés connus, notamment basés sur des multi- corrélateurs, permettent de rejeter les signaux indirects et donc de s’extirper de la situation de multi-trajets.
Toutefois, lorsque l’amplitude des signaux indirects domine celle des signaux directs, les procédés précités sont inefficaces. Une telle situation est nommée NLOS (de l’anglais Non Line of Sight).
Les situations de NLOS apparaissent notamment lorsque le porteur mobile, embarquant le récepteur GNSS, évolue dans un environnement encombré. Comme expliqué précédemment, un environnement encombré peut comprendre toute structure, naturelle ou artificielle, susceptible de s’interposer sur le trajet entre le récepteur GNSS et un satellite. Ainsi, la structure masque le satellite, du point de vue du récepteur GNSS. Cela conduit alors à une forte atténuation de l’amplitude des signaux directs relativement à celle des signaux indirects. Une telle situation de NLOS est représentée en figure 1 où les signaux directs sont notés D et les signaux indirects sont notés M.
Dans une situation de NLOS, la détermination de la position du récepteur est altérée. En effet, la distance, entre le satellite masqué et le récepteur, est fictivement allongée à cause de la ou des rebonds des signaux issus du satellite masqué sur une ou des surfaces des structures. Dans l’exemple de la figure 1, la position déterminée du récepteur est alors la position P’.
L’homme du métier notera qu’il est impossible pour un récepteur GNSS de savoir a priori si les signaux GNSS reçus sont directs ou indirects.
Les documents “An unscented Kalman filter-based maximum likelihood ratio for NLOS bias detection, A.Giremus et al, EUSIPCO 2008" et “Detecting, estimating and correcting multipath biases affecting GNSS signals using a marginalized likelihood ratio- based method, C. Cheng et al, ISAE, 2016" décrivent des procédés de détection de situation NLOS et de détermination, d’un ou des satellites, parmi une constellation de satellites, responsable de la situation NLOS. Pour cela, ces procédés évaluent un rapport de vraisemblance logarithmique (de l’anglais log-likelihood ratio) associé à l’apparition d’un biais dans les signaux GNSS reçus de la part d’un satellite respectif. Cependant, ce procédé induit une grande charge de calcul. Une telle charge de calcul est notamment discriminante pour des systèmes embarqués ayant une puissance de calcul modérée.
Le but de l’invention est donc de fournir un procédé de détection d’un masquage d’un ou plusieurs satellites.
À cet effet, l’objet de l’invention est un procédé de détection d’un masquage d’un ou plusieurs satellites par un obstacle pour un récepteur GNSS embarqué sur un porteur mobile, le procédé comprenant les étapes suivantes : réception en continu, à chaque instant d’acquisition et pour chacun de M satellites, d’une mesure de pseudo-distance de code et d’une variation de pseudo-distances de porteuse, M étant un nombre entier ; calcul d’une position résolue du récepteur et d’une position calculée de chaque satellites ; détection d’un masquage d’au moins un satellite à partir des sous-étapes suivantes :
- pour chaque satellite et pour chaque instant de réception, calcul, à un instant de calcul, d’une pseudo-distance calculée à partir de la position résolue du récepteur et de la position calculée de chaque satellite et calcul d’une pseudo-distance reconstituée à un instant antérieur à partir de la pseudo-distance de code et de chaque variation de pseudo- distances de porteuse entre l’instant antérieur et l’instant de calcul ;
- détection d’un masquage d’au moins un satellite par analyse d’une grandeur dite résidu calculée par application d’un algorithme de moindre carré, à partir de la mesure de pseudo-distances de code à l’instant de calcul, des positions résolues du récepteur et des positions calculées de chacun des satellites à l’instant de calcul et à l’instant antérieur, des pseudo-distances calculées et de la pseudo-distance reconstituée.
Suivant d’autres aspects avantageux de l’invention, le procédé de détection comprend une ou plusieurs des caractéristiques suivantes, prises isolément ou suivant toutes les combinaisons techniquement possibles :
- le procédé comprend préalablement à la sous-étape de calcul, les étapes suivantes :
- génération à un instant, dit instant de génération, d’au moins un groupe de N satellites, les satellites du ou de chaque groupe de N satellites étant choisis parmi les M satellites, N étant un nombre entier inférieur ou égal à M, et
- pour le ou chaque groupe de N satellites, association d’un instant de naissance précédant l’instant de génération à partir duquel les signaux GNSS issus de chacun des satellites de ce groupe de N satellites ont tous été reçus de manière ininterrompue, l’étape de détection étant itérée pour chaque groupe, lors de la sous-étape de calcul, l’instant de calcul étant égal à l’instant de génération et l’instant antérieur étant égal à l’instant de naissance du groupe ;
- l’étape de détection comprend pour chaque groupe, les sous-étapes suivantes, postérieur à la sous étapes de calcul :
- si, pour au moins un groupe de satellites, le résidu est supérieur à un premier seuil, alors détection d’un masquage d’au moins un satellite dans ce groupe et réitération de la sous-étape de calcul du résidu pour chaque sous-groupe de ce groupe, chaque sous-groupe comprenant chaque satellite du groupe sauf un ; et
- si, pour un sous-groupe, le résidu est inférieur à un deuxième seuil, alors détermination d’un satellite masqué comme étant le satellite absent du sous-groupe ;
- l’étape de calcul comprend en outre et pour chaque instant d’acquisition, le calcul :
- d’un rapport signal sur bruit estimé ;
- d’un angle d’élévation de chaque satellite à partir de la position résolue du récepteur GNSS et de la position calculée de ce satellite ; - l’étape de génération comprend une sous-étape de sélection, pour chaque satellite, de signaux GNSS à chaque instant d’acquisition pour lequel :
- le rapport signal sur bruit des signaux GNSS issus de ce satellite à cet instant respecte un premier critère ; et
- l’angle d’élévation de ce satellite à cet instant respecte un deuxième critère - l’étape de génération comprend en outre les sous-étapes suivantes :
- génération d’un premier groupe comprenant les N satellites dont les signaux GNSS sont sélectionnés, lors de la sous-étape de sélection, depuis un instant le plus antérieur à l’instant de génération;
- génération d’un deuxième groupe à partir du premier groupe, le deuxième groupe comprenant chaque satellite du premier groupe et le satellite, absent du premier groupe, dont les signaux GNSS sont sélectionnés, lors de la sous-étape de sélection, depuis un instant le plus antérieur à l’instant de génération; et
- si au moins un satellite dont les signaux GNSS ont été sélectionnés lors de la sous-étape de sélection à l’instant de génération et est absent de chaque groupe déjà généré, alors réitération de la deuxième sous- étape de génération à partir du dernier groupe généré;
- la sous-étape de calcul du résidu comprend en outre pour chaque groupe de satellites :
- calcul d’une pseudo-distance reconstituée pour chaque satellite, à partir de la pseudo-distance de code à l’instant de génération et des variations de pseudo-distance de porteuse entre l’instant de naissance et l’instant de génération,
- calcul d’une première, respectivement d’une deuxième, solution approchée d’un premier, respectivement d’un deuxième, système linéaire, chaque système linéaire dépendant respectivement de la première et de la deuxième pseudo-distances calculées, de la pseudo- distance de code à l’instant de génération et de la pseudo-distance reconstituée ; et
- calcul du résidu à partir des première et deuxième solutions approchées ;
- les étapes de génération, d’association et de détection sont répétées périodiquement.
L’invention a également pour objet un produit programme d’ordinateur comportant des instructions logicielles qui, lorsque mises en œuvre par un équipement informatique, mettent en œuvre le procédé de détection, tel que défini ci-dessus.
L’invention concerne également un dispositif électronique de détection comprenant des moyens techniques adaptés pour implémenter le procédé de détection, tel que défini ci-dessus.
Ces caractéristiques et avantages de l’invention apparaitront à la lecture de la description qui va suivre, donnée à tire d’exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels :
- [Fig 1] La figure 1 est une vue schématique expliquant le problème de multi- trajets lors de la géolocalisation d’un porteur en milieu encombré ;
- [Fig 2] la figure 2 est une vue schématique d’un dispositif électronique de détection, embarqué sur un porteur, selon l’invention ; - [Fig 3] la figure 3 est un organigramme d’un procédé de détection mis en œuvre par le dispositif de détection de la figure 2 ; et
- [Fig 4] la figure 4 est un schéma explicatif d’une étape de génération du procédé de la figure 3, illustré sur un exemple.
En référence à la figure 2, un porteur 5 est mobile dans un environnement. Le porteur 5 embarque un récepteur GNSS 10 apte à recevoir des signaux GNSS et un dispositif électronique de détection 15 configuré pour détecter un masquage d’un ou plusieurs satellites et, le cas échéant déterminer une liste de satellite(s) masqué(s) par un obstacle, lors de la réception des signaux GNSS par le récepteur GNSS 10.
Le porteur 5 est par exemple un aéronef, tel qu’un drone, se déplaçant dans l’espace selon trois dimensions, ou alors un véhicule terrestre ou maritime se déplaçant dans un plan selon deux dimensions, ou alors par exemple un véhicule ferroviaire se déplaçant selon une seule direction en suivant une voie ferrée.
Le récepteur GNSS 10 est configuré pour recevoir des signaux GNSS de la part de satellite(s) appartenant à un même système GNSS, tel que par exemple le système GPS. Le récepteur GNSS 10 comprend par exemple une antenne de réception 12 connue en soi et un module de calcul 13.
L’antenne 12 est configurée pour recevoir des signaux GNSS issus d’une pluralité de satellites et les transmettre sous forme de signaux électriques au module de calcul 13.
Les signaux GNSS comprennent pour chaque satellite Si visible et accroché, un identifiant du satellite Si, un temps d’émission tem,i des signaux par le satellite Si et les éphémérides du satellite Si. Chaque information des signaux GNSS est codée sur une porteuse qui est émise par le satellite.
Le module de calcul 13 est par exemple apte à déterminer la position du récepteur 10 à partir des signaux GNSS en utilisant des techniques connues en soi. Le module de calcul 13 est également configuré pour calculer et transmettre au dispositif de détection 15, à chaque instant d’acquisition th et pour chaque satellite Si visible et accroché, des informations suivantes: une mesure de pseudo-distance de code PR(i, h ), une mesure de variation de pseudo distance de porteuse DR(i, h ) entre l’instant d’acquisition th et un instant précédent th-1 par exemple selon l’équation:
[MATH 1]
DR(i, h ) = PRcar(i, h) - PRcar(i, h - 1) où PRcar(i, h) est une pseudo-distance de porteuse à l’instant d’acquisition th.
Le module de calcul 13 est également configuré pour transmettre au dispositif de détection 15, les éphémérides de chaque satellite Si et le temps d’émission des signaux de la part de chaque satellite Si. Les instants d’acquisition th sont périodiquement espacés selon une première fréquence f1 prédéterminée.
Le dispositif de détection 15 comprend un module d’entrée 17, un module de traitement 20 et un module de sortie 25.
Selon un mode de réalisation privilégié, le module d’entrée 17, le module de traitement 20 et le module de sortie 25 sont réalisés chacun sous la forme d’un logiciel stocké dans un ou plusieurs moyens de stockage (tel qu’un disque dur ou un disque flash) et implémentés par un ou plusieurs processeurs, mémoire (RAM) et autres composants d’ordinateur connus en soi. Ces composants sont alors inclus dans un même ordinateur ou dans différents ordinateurs/serveurs. Dans ce dernier cas, les ordinateurs/serveurs sont connectés par un réseau local ou global.
En outre ou de manière alternative, au moins une partie de ces modules 17, 20, et 25 prennent la forme, au moins partiellement, d’un composant électronique indépendant, tel que par exemple un circuit logique programmable de type FPGA (de l’anglais field- programmable gate array) ou autre.
Le module d’entrée 17 est configuré pour recevoir, à chaque instant d’acquisition th, les informations calculées par le module de calcul 13, à savoir des signaux représentatifs.
Le module d’entrée 17 est configuré pour transmettre au module de traitement 20 les informations reçues.
Le module de traitement 20 est configuré pour traiter les signaux, issus du récepteur GNSS 10, afin de détecter la présence d’un satellite masqué. Le module de traitement 20 est configuré pour déterminer, le cas échéant, la liste de satellite(s) masqué(s). Pour cela, le module de traitement 20 est configuré pour procéder au traitement des signaux GNSS tels que décrits ci-après en relation avec le procédé de détection selon l’invention.
Le module de sortie 25 est connecté au module de traitement 20. Le module de sortie 25 est configuré pour transmettre à un utilisateur ou à un autre dispositif électronique non représenté, une information relative à la présence, ou l’absence, de satellite(s) masqué(s), et le cas échéant une liste de satellite(s) masqué(s).
Si le module de sortie 25 est configuré pour communiquer avec un utilisateur, cette communication s’effectue, par exemple, à l’aide d’un écran non-représenté. Dans le cas où le module de sortie 25 est destiné à communiquer avec un autre dispositif électronique, le module de sortie 25 est par exemple destiné à communiquer avec le module de calcul 13. Le module de sortie 25 est alors, par exemple, configuré pour envoyer un signal d’alerte au module de calcul 13 en cas de détection de satellites masqués, et le cas échéant pour envoyer au module de calcul 13 la liste de satellite(s) masqué(s).
Le procédé de détection mis en œuvre par le dispositif électronique de détection 15 selon l’invention sera désormais expliqué en référence à la figure 3 présentant un organigramme de ce procédé et à la figure 4 illustrant une étape du procédé sur un exemple.
Initialement, le porteur 5 se déplace dans un environnement encombré et le récepteur GNSS 10 reçoit, par son antenne 12, des signaux GNSS issus d’une pluralité de satellites. Le module de calcul 13 calcule les informations mentionnées ci-dessus et les transmet au dispositif de détection 15.
Lors d’une étape de réception 110, le module d’entrée 17 reçoit à chaque instant d’acquisition th et pour chacun des M satellites Si la mesure de pseudo-distance de code PR(i, h) et la variation de pseudo-distances de porteuse DR(i, h).
Les M satellites correspondent aux satellites visibles et accrochés par le récepteur GNSS 10. Les satellites visibles sont entendus ici au sens de satellites dont des signaux GNSS atteignent le récepteur GNSS 10, sans considérer si les signaux GNSS, issus de ces satellites, parcourent un trajet direct ou indirect.
L’étape d’acquisition 110 est par exemple mise en œuvre par le module d’entrée 17.
Les étapes suivantes sont, sauf mention explicite contraire, mises en œuvre par le module de traitement 20.
Lors d’une étape de calcul 120, le module de traitement 20 calcule, pour chaque instant d’acquisition th :
- une position calculée (xi(h),yi(h),zi(h)) de chaque satellite Si à partir des mesures de pseudo-distances de code PR(i, h ) et des éphémérides de ce satellite contenus également dans les signaux GNSS reçus, selon une technique connue en soi ;
- une position résolue (x(h ),y( h),z( h)) du récepteur GNSS, selon également une technique connue en soi ;
- un rapport signal sur bruit estimé C/N0 (i, h ) pour chaque satellite Si;
- un angle d’élévation δ(i, h) de chaque satellite à partir de la position résolue (x(h ),y( h),z( h)) du récepteur GNSS et de la position calculée (xi(h),yi(h),zi(h)) dudit satellite Si, en utilisant une technique connue en soi.
Ainsi, à l’issue de l’étape de calcul 120, le module de traitement 20 dispose des grandeurs calculées à chaque instant d’acquisition th pour lequel les signaux GNSS ont été reçu par le récepteur 10. En variante, l’étape de calcul 120 est réalisée par le module de calcul 13 non- inclus dans le dispositif de détection 15. Les éléments calculés précités sont alors reçus par le module d’entrée 17, depuis le module de calcul 13, et transmis au module de traitement 20.
Lors d’une étape de génération 130, le module de traitement 20 génère, à un instant de génération tk, au moins un groupe Gj de satellites, et avantageusement une pluralité de groupes Gj de satellites. Pour cela, le module de traitement 20 applique par exemple les sous-étapes suivantes, détaillées à titre d’exemple en référence à la figure 4.
Lors d’une sous-étape de sélection 131 , le module de traitement 20 sélectionne pour chaque satellite Si, les données des signaux GNSS à chaque instant d’acquisition th pour lequel :
- le rapport signal sur bruit C/N0 (i, h ) des signaux GNSS issus de ce satellite Si à cet instant d’acquisition th respecte un premier critère ; et l’angle d’élévation δ(i, h) de ce satellite Si à cet instant d’acquisition th respecte un deuxième critère.
Le premier critère est par exemple que le rapport signal sur bruit C/N0 (i, h ) soit supérieur à 30 dBHz. Le deuxième critère est par exemple que l’angle d’élévation δ(i, h) soit supérieur à 5°.
Ainsi, les signaux GNSS issus d’un satellite Si ne seront pris en compte dans les sous-étapes suivantes, qu’aux instants d’acquisition th pour lesquels le rapport signal sur bruit C/N0(i, h) du satellite Si respecte le premier critère et l’angle d’élévation δ(i, h) du satellite respecte le deuxième critère.
Lors d’une sous-étape de classement 132, le module de traitement 20 ordonne les satellites Si par ordre décroissant de durée de réception valide sans discontinuité. Une réception valide est entendue ici au sens d’une réception de signaux GNSS ayant été sélectionnés lors de la sous-étape de sélection 131. La durée de réception sans discontinuité correspond à une durée depuis laquelle le module d’entrée 17 reçoit les signaux GNSS de manière ininterrompue.
Autrement dit, lors de la sous-étape de classement 132, le module de traitement 20 classe les satellites Si par durée décroissante depuis laquelle leurs signaux GNSS sont sélectionnés de manière ininterrompue. Ainsi, le satellite, nommé par la suite S1, correspond au satellite ayant la durée de réception valide sans discontinuité la plus longue. Au contraire, le satellite nommé par la suite SM correspond au satellite ayant la durée de réception valide sans discontinuité la plus courte. L’homme du métier notera que, si les signaux GNSS issus d’un satellite Si respectif à l’instant de génération tk ne sont pas sélectionnés ou si aucun signal n’est reçu de ce satellite à l’instant de génération tk, alors la durée de réception valide sans discontinuité du satellite Si est égale à 0.
Lors d’une première sous-étape de génération 133, le module de traitement 20 génère un premier groupe G1 de satellites. Le premier groupe G1 de satellites comprend N satellites, N étant un entier prédéterminé, avantageusement égal à 5 ou à 6. Pour cela, le module de traitement 20 génère le premier groupe G1 comme comprenant les N premiers satellites S1 à SN, après leur classement lors de la sous-étape de classement 132, comme représenté sur la figure 4 au point a.
La figure 4 représente plusieurs tableaux à double entrées, dont une abscisse représente les instants d’acquisition th successifs et une ordonnée représente les satellites classés selon leur durée de réception valide sans discontinuité. Chaque case du tableau est associé à un instant d’acquisition th et un satellite Si. Chaque case est soit remplie par une mention indiquant qu’une variation de pseudo-distance d’un signal GNSS valide a été reçue à l’instant d’acquisition th pour le satellite Si soit par une croix dans le cas contraire. Sur la figure 4 au point a, le premier groupe G1, dont les données sont encadrées par un tracé en gras, inclut les cinq premiers satellites.
Sur la figure 4 au point a, la durée de réception valide sans discontinuité de chacun des cinq premiers satellites correspond à la différence entre l’instant de génération tk et l’instant tk-5. La durée de réception valide sans discontinuité du sixième satellite Se est égale à la différence entre l’instant de génération tk et l’instant tk-2. Enfin, pour le septième et dernier satellite S7, la durée valide de réception sans discontinuité est égale à la différence entre l’instant de génération tk et l’instant tk-1.
Lors d’une sous-étape de génération 134, le module de traitement 20 génère un deuxième groupe G2 de satellites, à partir du premier groupe G1 de satellites. Pour cela, le module de traitement 20 génère un groupe Gj comportant les N satellites du premier groupe G1 et le satellite, absent du premier groupe G1, ayant la durée de réception valide sans discontinuité la plus longue. Autrement dit, le deuxième groupe G2 comprend les N premiers satellites, et le satellite SN+1correspondant au satellite Si absent du premier groupe G1 ayant la durée de réception valide sans discontinuité la plus longue.
Dans l’exemple de la figure 4, le deuxième groupe G2 de satellites comprend donc six satellites, à savoir les six premiers satellites, après la sous-étape de classement 132, comme encadré en gras au point b.
Lors d’une sous-étape de réitération 135, si aucun groupe Gj ne comprend l’ensemble de satellites pour lesquels des données ont été sélectionnées lors de l’étape de sélection 131 , alors le module de traitement 20 réitère la deuxième sous-étape de génération 135 à partir du dernier groupe Gj généré.
Dans l’exemple de la figure 4, des données de signaux issus de chaque de satellites ont été sélectionnées, or le deuxième groupe G2 ne comprend que six satellites, alors la deuxième sous-étape de génération 134 est réitérée à partir du deuxième groupe G2 de satellites. Ainsi, un troisième groupe G3 est généré. Le troisième groupe G3 comprend chacun des satellites du deuxième groupe et le satellite restant ayant la durée de réception valide sans discontinuité la plus longue, à savoir le septième satellite S7. Le troisième groupe G3 comprend donc les sept satellites pour lesquels des données issues des signaux GNSS ont été sélectionnées, comme représenté en gras au point c. La deuxième sous-étape de génération 134 n’est donc pas réitérée une troisième fois.
Lors d’une étape d’association 140, le module de traitement 20 associe à chaque groupe Gj de satellites un instant de naissance tn. L’instant de naissance tn correspond à un instant à partir duquel des signaux GNSS valides, issus de chacun des satellites, ont été reçus sans discontinuité. Autrement dit, l’instant de naissance tn d’un groupe Gj respectif correspond à l’instant de génération tk moins la durée de réception valide sans discontinuité la plus courte parmi celles de chacun des satellites du groupe Gj .
Dans l’exemple de la figure 4, l’instant de naissance tn du premier groupe G1 est donc tk-5 car des signaux valides issus de chacun des satellites ont été reçus, par le module d’entrée 17, sans discontinuité depuis cet instant tk-5. L’instant de naissance tn associé au deuxième groupe G2 est l’instant tk-2 car des signaux valides ont été reçus sans discontinuité de la part de cinq de ces satellites à partir de l’instant tk-5 et des signaux valides ont été reçus sans discontinuité de la part du sixième satellite S6, uniquement à partir de l’instant tk-2. Concernant le troisième groupe G3, pour des raisons similaires au deuxième groupe l’instant de naissance tn est l’instant tk-1.
Lors d’une étape de détection 170, le module de traitement 20 détecte la présence d’au moins un satellite masqué, et le cas échéant, détermine la liste de satellite(s) masqué(s). Pour cela, le module de traitement 20 analyse pour chaque groupe Gj , une grandeur, dite résidu , propre à ce groupe Gj , par comparaison à un premier seuil. Le résidu est obtenu à partir des signaux GNSS reçus des satellites de ce groupe Gj depuis l’instant de naissance tn de ce groupe Gj .
Plus précisément, l’étape de détection 170 comprend les sous-étapes suivantes.
Lors d’une sous-étape de calcul 171 , le module de traitement 20 calcule, pour chaque groupe Gj de satellites le résidu représentatif d’une incohérence des signaux GNSS reçus de la part d’au moins un satellite de ce groupe Gj relativement aux autres satellites de ce groupe Gj.
Pour un groupe Gj comprenant N satellites, N étant un nombre entier inférieur ou égal à M, dont l’instant de naissance est l’instant tn, le module de traitement 20 calcule, à l’instant de génération tk et à l’instant de naissance tn, une pseudo-distance calculée respectivement PRcal(i, k) et PRcal(i,n), liée à chaque satellite Si du groupe Gj, par exemple selon les formules :
[MATH 1] où, pour rappel :
(x(/c),y(/c),z(/c)) et (x(n),y(n),z(n)) correspondent aux positions résolues du récepteur GNSS 10, respectivement aux instants de génération tk et de naissance tn ; et
(xi(k),yi(k),zi(k)) et (xi(n),yi(n),zi(n)) correspondent aux positions calculées du satellite Si, respectivement aux instants de génération tk et de naissance tn.
Toujours lors de la sous-étape de calcul 171 , le module de traitement 20 calcule une première position estimée, valable à l’instant de génération tk, par application d’un algorithme PVT (de l’anglais Position Velocity Time) connu en soit, à partir des pseudo- distances de code PR(i, k) et des pseudo-distances calculées PRcal(i, k) de chaque satellite Si.
Le module de traitement 20 calcule, pour chaque satellite Si, un pseudo-distance reconstituée PR'(i,n, k), valable à l’instant de naissance tn, à partir des variations de pseudo-distance de porteuse DR(i, h) entre l’instant de naissance tn et l’instant de génération tk et à partir de la pseudo-distance de code PR(i, k) à l’instant de génération tk, par exemple selon la formule suivante :
[MATH 2]
Le module de traitement 20 calcule également une deuxième position estimée, valable à l’instant de naissance tn, par application de l’algorithme PVT, à partir des pseudo-distances reconstituées PR'(i,n, k) et des pseudo-distances calculées de chaque satellites Si.
Toujours lors de la sous-étape de calcul 171 , le module de traitement 20 calcule un premier vecteur de différence de pseudo-distance Zk dont chaque composante correspond, pour chaque satellite du groupe Gj , à la différence entre la pseudo-distance de code PR(i, k) issue des signaux GNSS reçus et la pseudo-distance calculée PRcal (i, k) à l’instant de génération tk ; et un deuxième vecteur de différence de pseudo-distance
Zn, k dont chaque composante correspond, pour chaque satellite du groupe Gj , à la différence entre la pseudo-distance reconstituée PR'(i, n, k) et la pseudo-distance calculée PRcal(i,n) à l’instant de naissance tn. Les premiers et deuxièmes vecteurs de différence de pseudo-distance sont alors obtenus selon la formule suivante :
[MATH 3]
; et
Le module de traitement 20 calcule également, pour l’instant de génération tk et pour l’instant de naissance tn, respectivement une première Hk et une deuxième Hn matrices d’observation, par exemple selon les formules suivantes :
[MATH 4] où :
Les premiers Zk, respectivement les deuxièmes Zn k, vecteurs de différence de pseudo-distance et matrices (Hk et H n) d’observation permettent de définir un système d’équations linéaires dont une inconnue est un premier Xk, respectivement un deuxième Xn,k, vecteur d’écart de position du récepteur GNSS à l’instant de génération tk, respectivement à l’instant de naissance tn. Le système d’équations linéaires s’écrit alors sous la forme suivante :
[MATH 5] Zk = Hk. Xk ; et
Zn,k, = Hn. Xn,k ; où :
Les coefficients des premier Xk et deuxième Xn,k vecteurs d’écart de position sont les inconnues du système d’équations linéaire.
L’homme du métier notera que si le groupe Gj comprend plus de quatre satellites, ledit système d’équations linéaires ne possède pas toujours de solution. Toutefois, une solution approchée peut être obtenue par application d’un algorithme de moindres carrés, connu en soi, conduisant dans le cas présent aux formules suivantes :
[MATH 6] où : sont respectivement les solutions approchées des premier Xk et deuxième Xn vecteurs d’écart de position ;
(...)T correspond l’opérateur de transposée matricielle ; et (...)-1 correspond à l’opérateur d’inverse matricielle.
Le module de traitement 20 calcule le résidu comme étant la différence entre des erreurs d’approximation commises lors du calcul de la solution de chacun des systèmes d’équations linéaires par l’algorithme de moindres carrés.
Pour cela le module de traitement 20 calcule les première et deuxième positions estimées aux instants de génération tk et de naissance tn à partir des positions résolues du récepteur aux instants de génération tk et de naissance tn aux première et deuxième solutions approchées, selon l’équation :
Le module de traitement 20 recalcule ensuite, pour chaque satellite Si, la pseudo- distance calculée PRcal (i, k) à l’instant de génération tk à partir de la première position PositionG .(k) et une pseudo-distance calculée reconstituée PRcal'(i, k, n) à l’instant de naissance tn à partir de la deuxième position selon la formule :
[MATH 7]
Toujours lors de la sous-étape de calcul 171 , le module de traitement 20 calcule le résidu selon la formule : qui est équivalent à :
En approximant le résidu par linéarisation, il s’exprime selon la formule : [MATH 9]
Toujours lors de la sous-étape de calcul 171 , si la différence entre la position résolue du récepteur GNSS 10 à l’instant de génération tk et à l’instant de naissance tn est inférieure à un deuxième seuil, alors le calcul du résidu est simplifié. En effet, si la position du récepteur GNSS 10 a faiblement variée entre les instants de naissance tn et de calcul tk, alors les premières Hk et deuxièmes Hn matrices d’observation sont sensiblement similaires. Le module de calcul 20 calcule alors la solution approchée du deuxième vecteur d’écart de position à partir de la première matrice d’observation Hk. De manière similaire, le calcul du résidu s’exprime alors selon la formule suivante :
[MATH 10]
Lors d’une sous étape de détection 172, si pour au moins un groupe Gjde satellites, le résidu est supérieur au premier seuil, le module de traitement 20 détecte un masquage d’au moins un satellite du groupe Gj.
Si, pour au moins un groupe Gj, le module de traitement 20 a détecté, durant la sous-étape de détection 172, un masquage, et que le groupe Gj comprend au moins six satellites, alors le module de traitement 20 réitère, lors d’une sous-étape de réitération 173, la sous-étape de calcul 171 pour chaque sous-groupe de ce groupe Gj, produisant alors un nouveau résidu propre à ce sous-groupe. Chaque sous-groupe est distinct des autres sous-groupes et comprend l’ensemble des satellites du groupe Gj sauf un.
Lors d’une sous-étape de détermination 174, si le nouveau résidu d’un sous- groupe est inférieur à un deuxième seuil alors que les nouveaux résidus respectifs des autres sous-groupes liés au même groupe Gj sont supérieurs au deuxième seuil, alors le module de traitement 20 détermine un satellite masqué respectif comme étant le satellite absent du sous-groupe. Le deuxième seuil est par exemple égal au premier seuil.
À titre d’exemple, dans le cas de la figure 4, si le résidu lié au deuxième groupe G2 est supérieur au premier seuil, alors le module de traitement 20 détecte, lors de la sous-étape de détection 172 le masquage d’au moins un satellite du deuxième groupe G2. Si en outre, le nouveau résidu, associé au sous-groupe dans lequel le troisième satellite S3 est absent, est inférieur au deuxième seuil, et que les nouveaux résidus respectivement associés aux autres sous-groupes issus du deuxième groupe G2 sont supérieurs au deuxième seuil, alors le module de traitement 20 détermine que le troisième satellite S3 est masqué.
Les étapes de génération 130, d’association 140 et de détection 170 sont réitérées périodiquement à une deuxième fréquence f2 prédéterminée. La deuxième fréquence f2 est par exemple égale à la première fréquence f1. Ainsi, à chaque réception de signaux GNSS par le module d’entrée 17, le module de traitement 20 génère des nouveaux groupes, associe une date de naissance à chaque nouveau groupe Gj et détecte un masquage au sein des nouveaux groupes Gj.
En variante, la deuxième fréquence f2 est inférieure à la première fréquence f1. La première fréquence f1 est par exemple le double de la deuxième f2. Alors, les étapes de génération 130, d’association 140 et de détection 170 sont réitérées chaque fois que les signaux GNSS sont reçus par le module d’entrée 10 deux fois.
Lors d’une étape de communication 180, le module de sortie 25 communique à un utilisateur ou au module de calcul 13, un signal d’alerte si un satellite masqué a été détecté lors de l’étape de détection 170. En outre le module de sortie 25 communique à l’utilisateur ou au module de calcul 13, la liste de satellite(s) masqué(s) si elle a été déterminée lors de l’étape de détection 170.
Avec le procédé selon l’invention, la détection de satellite(s) masqué(s) est améliorée car elle est réalisable sur un système embarqué à partir d’une faible puissance de calcul, notamment grâce à la formation de groupe(s) Gj .
En outre, avec la formation selon les sous-étapes de l’étape de génération, les groupes Gj ayant un faible nombre de satellites mais une longue durée de réception valide sans discontinuité et des groupes Gj ayant une courte durée de réception valide sans discontinuité mais un grand nombre de satellites permettent une meilleure détection de masquage et une meilleure détermination de la liste de satellites masqués.
En outre, la sous-étape de sélection 131 permet d’assurer que les données issues des signaux GNSS reçus de la part des satellites sont exploitables dans la détection de masquage de satellite(s).

Claims

REVENDICATIONS
1. Procédé de détection d’un masquage d’un ou plusieurs satellites par un obstacle pour un récepteur GNSS embarqué sur un porteur mobile, le procédé comprenant les étapes suivantes : réception (110) en continu, à chaque instant d’acquisition (th) et pour chacun de M satellites ( Si), d’une mesure de pseudo-distance de code (PR(i, h)) et d’une variation de pseudo-distances de porteuse (DR(i, h)), M étant un nombre entier ; calcul (120) d’une position résolue (x(k ),y( k),z( k)) du récepteur et d’une position calculée (xi(k),yi(k),zi(k) ) de chaque satellites (Si) ; détection (170) d’un masquage d’au moins un satellite à partir des sous-étapes suivantes : pour chaque satellite ( Si) et pour chaque instant d’acquisition (th), calcul (171 ), à un instant de calcul (tc), d’une pseudo-distance calculée (PRcal(i, c)) à partir de la position résolue du récepteur (x(c), y(c), z(c)) et de la position calculée de chaque satellite (xi(c),yi(c),zi(c)) et calcul (171 ) d’une pseudo-distance reconstituée (PR'(i, a, c)) à un instant antérieur (ta) à partir de la pseudo-distance de code (PR(i, c)) et de chaque variation de pseudo-distances de porteuse (DR (i, h )) entre l’instant antérieur (ta) et l’instant de calcul (tc) ; détection (174) d’un masquage d’au moins un satellite par analyse d’une grandeur dite résidu calculée par application d’un algorithme de moindre carré, à partir de la mesure de pseudo-distances de code (PR(i, c)) à l’instant de calcul (tc), des positions résolues du récepteur (x(c),y(c),z(c), (x(a),y(a),z(a)) et des positions calculées de chacun des satellites (xi(c),yi(c),zi(c),xi(a),yi(a),zi(a)) à l’instant de calcul (tc) et à l’instant antérieur (ta), des pseudo-distances calculées (PRcal(i, c), PRcal(i, a)) et de la pseudo-distance reconstituée (P R' (i, a, c)) .
2. Procédé selon la revendication 1 , comprenant préalablement à la sous- étape de calcul (171), les étapes suivantes : génération (130) à un instant (tk), dit instant de génération, d’au moins un groupe (Gj) de N satellites, les satellites du ou de chaque groupe (Gj) de N satellites étant choisis parmi les M satellites, N étant un nombre entier inférieur ou égal à M ; et
- pour le ou chaque groupe (Gj) de N satellites, association (140) d’un instant de naissance (tn) précédant l’instant de génération ( tk) à partir duquel les signaux GNSS issus de chacun des satellites de ce groupe (Gj) de N satellites ont tous été reçus de manière ininterrompue, l’étape de détection (170) étant itérée pour chaque groupe (Gj), lors de la sous-étape de calcul (171), l’instant de calcul (tc) étant égal à l’instant de génération ( tk) et l’instant antérieur (ta) étant égal à l’instant de naissance (tn) du groupe (Gj).
3. Procédé selon la revendication 2, dans lequel l’étape de détection (170) comprend pour chaque groupe (Gj), les sous-étapes suivantes, postérieur à la sous étapes de calcul (171) :
- si, pour au moins un groupe (Gj) de satellites, le résidu est supérieur à un premier seuil, alors détection (172) d’un masquage d’au moins un satellite dans ce groupe (Gj) et réitération (173) de la sous- étape (171 ) de calcul du résidu pour chaque sous-groupe de ce groupe (Gj), chaque sous-groupe comprenant chaque satellite du groupe (Gj) sauf un ; et
- si, pour un sous-groupe, le résidu (R(k,p)) est inférieur à un deuxième seuil, alors détermination (174) d’un satellite masqué comme étant le satellite absent du sous-groupe.
4. Procédé selon l’une quelconque des revendication précédentes, dans lequel l’étape de calcul (120) comprend en outre et pour chaque instant d’acquisition (th), le calcul :
- d’un rapport signal sur bruit (C/N O(i, h)) estimé ;
- d’un angle d’élévation δ(i, h) de chaque satellite à partir de la position résolue (x(h ),y( h),z( h)) du récepteur GNSS et de la position calculée (xi(h),yi(h),zi(h)) de ce satellite (Si).
5. Procédé selon les revendications 2 et 4, dans lequel l’étape de génération (130) comprend une sous-étape (131) de sélection, pour chaque satellite (Si), de signaux GNSS à chaque instant d’acquisition (th) pour lequel : - le rapport signal sur bruit (C/N0 (i, h )) des signaux GNSS issus de ce satellite ( Si) à cet instant (th) respecte un premier critère ; et
- l’angle d’élévation ( δ(i, h)) de ce satellite (Si) à cet instant (th) respecte un deuxième critère.
6. Procédé selon la revendication 5, dans lequel l’étape de génération (130) comprend en outre les sous-étapes suivantes : génération (133) d’un premier groupe (G1) comprenant les N satellites dont les signaux GNSS sont sélectionnés, lors de la sous-étape de sélection (131 ), depuis un instant le plus antérieur à l’instant de génération (tk) ; génération (134) d’un deuxième groupe (G2) à partir du premier groupe (G1), le deuxième groupe (G2) comprenant chaque satellite du premier groupe (G1) et le satellite, absent du premier groupe (G1), dont les signaux GNSS sont sélectionnés, lors de la sous-étape de sélection (131 ), depuis un instant le plus antérieur à l’instant de génération (tk) ; et
- si au moins un satellite dont les signaux GNSS ont été sélectionnés lors de la sous-étape de sélection (131) à l’instant de génération (tk) et est absent de chaque groupe (G,) déjà généré, alors réitération (135) de la deuxième sous- étape de génération (134) à partir du dernier groupe (Gj) généré.
7. Procédé selon la’ revendication 3 ou 5, dans lequel la sous-étape de calcul (171 ) du résidu comprend en outre pour chaque groupe (Gj) de satellites :
- calcul d’une pseudo-distance reconstituée (PR'(i, k,n)) pour chaque satellite (Si), à partir de la pseudo-distance de code (PR (k )) à l’instant de génération (tk) et des variations de pseudo-distance de porteuse entre l’instant de naissance (tn) et l’instant de génération (tk),
- calcul d’une première respectivement d’une deuxième solution approchée d’un premier, respectivement d’un deuxième, système linéaire, chaque système linéaire dépendant respectivement de la première (PRcal(i, k)) et de la deuxième (PRcal(i,n) ) pseudo- distances calculées, de la pseudo-distance de code (PR(k )) à l’instant de génération (tk) et de la pseudo-distance reconstituée (PR'(i, k,n)); et - calcul du résidu à partir des première et deuxième solutions approchées.
8. Procédé selon l’une quelconque des revendications 2 à 7 dans lequel, les étapes de génération (130), d’association (140) et de détection (170) sont répétées périodiquement.
9. Produit programme d’ordinateur comportant des instructions logicielles qui, lorsque mises en œuvre par un équipement informatique, mettent en œuvre le procédé de détection selon l’une quelconque des revendications précédentes.
10. Dispositif électronique de détection (15) comprenant des moyens techniques adaptés pour implémenter le procédé de détection selon l’une quelconque des revendications 1 à 8.
EP21799258.5A 2020-10-26 2021-10-25 Procédé de détection d'un masquage d'un ou plusieurs satellites, dispositif électronique de détection et produit programme d'ordinateur associé Pending EP4232849A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2010946A FR3115608B1 (fr) 2020-10-26 2020-10-26 Procede de detection d'un masquage d'un ou plusieurs satellites, dispositif electronique de detection et produit programme d'ordinateur associe
PCT/EP2021/079542 WO2022090157A1 (fr) 2020-10-26 2021-10-25 Procédé de détection d'un masquage d'un ou plusieurs satellites, dispositif électronique de détection et produit programme d'ordinateur associé

Publications (1)

Publication Number Publication Date
EP4232849A1 true EP4232849A1 (fr) 2023-08-30

Family

ID=74347252

Family Applications (1)

Application Number Title Priority Date Filing Date
EP21799258.5A Pending EP4232849A1 (fr) 2020-10-26 2021-10-25 Procédé de détection d'un masquage d'un ou plusieurs satellites, dispositif électronique de détection et produit programme d'ordinateur associé

Country Status (5)

Country Link
US (1) US20230393289A1 (fr)
EP (1) EP4232849A1 (fr)
CA (1) CA3196129A1 (fr)
FR (1) FR3115608B1 (fr)
WO (1) WO2022090157A1 (fr)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1729145B1 (fr) * 2005-06-02 2013-08-07 GMV Aerospace and Defence S.A. Procédé et système permettant de fournir la solution de position GNSS avec une intégrité garantie dans un environnement non contrôlé

Also Published As

Publication number Publication date
US20230393289A1 (en) 2023-12-07
WO2022090157A1 (fr) 2022-05-05
CA3196129A1 (fr) 2022-05-05
FR3115608B1 (fr) 2023-03-31
FR3115608A1 (fr) 2022-04-29

Similar Documents

Publication Publication Date Title
EP1839070B2 (fr) Recepteur de positionnement par satellite a integrite et continuite ameliorees
EP1804071B1 (fr) Procédé d'optimisation des traitements de données de localisation en présence de plusieurs constellations de positionnement par satellites
EP2339377B1 (fr) Récepteur de positionnement par satellites
CN109313272B (zh) 使用速度积分的改进gnss接收器
EP1712930B1 (fr) Système et procédé de détermination de la vitesse instantanée d'un objet
EP1836507A1 (fr) Procede et dispositif de positionnement
WO2009112483A1 (fr) Dispositif et procede de surveillance d'integrite en temps reel d'un systeme de navigation par satellite
WO2020249874A1 (fr) Procede et systeme de localisation ponctuelle d'un vehicule a l'arret sur une voie de garage a l'aide de balises virtuelles
EP2331983B1 (fr) Procédé pour optimiser une acquisition d'un signal à spectre étalé provenant d'un satellite par un récepteur mobile
CA2805619A1 (fr) Procede d'estimation de la direction d'arrivee de signaux de navigation sur un recepteur apres reflexion par des parois dans un systeme de positionnement par satellite
EP2500750B1 (fr) Procédé et dispositif pour la calibration d'un récepteur.
EP2743729A1 (fr) Procédé et système de détection d'anomalie sur des signaux de navigation par satellites et système d'hybridation comportant un tel système de détection
EP4232849A1 (fr) Procédé de détection d'un masquage d'un ou plusieurs satellites, dispositif électronique de détection et produit programme d'ordinateur associé
WO2021032749A1 (fr) Detection d'une operation de leurrage d'un recepteur de signaux satellitaires
EP2015097B1 (fr) Procédé de détermination de limite de protection autour d'une position d'un corps mobile calculée à partir de signaux satellitaires
FR3020687A1 (fr) Procede de determination de la position d'un recepteur de systeme de navigation par satellites, et systeme associe
Leikvoll On the Feasibility of Real-time Sea Level Monitoring using Ground-based GNSS-Reflectometry Measurements
EP4343379A1 (fr) Procédé et dispositif de détection d obstacles proches par radar passif multistatique gnss pour plateformes mobiles
EP4283324A1 (fr) Procede et systeme de localisation d'un noeud mobile par mesures radio utilisant une carte de visibilite
WO2022269199A1 (fr) Procede d'estimation et de prediction d'un indice de contenu electronique total a la verticale des mers et oceans
EP4307010A1 (fr) Methode mac de monitoring, avec compensation de biais commun, de l'integrite d'un procede de positionnement ponctuel par balises virtuelles
FR3137972A1 (fr) Méthode MAC de monitoring, avec compensation de biais commun, de l’intégrité d’un procédé de positionnement ponctuel par balises virtuelles
FR3120133A1 (fr) Navigation lors d'une opération de leurrage d'un récepteur de signaux satellitaires
FR2945700A1 (fr) Procede de transmission d'informations de position par un dispositif mobile

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20230425

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230902

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)