The invention relates to a method for estimating the attitude of a vehicle by using a global navigation satellite system.
The invention can be applied in heavy-duty vehicles, such as trucks, buses and construction equipment. Although the invention will be described with respect to a truck, the invention is not restricted to this particular vehicle, but may also be used in other vehicles such as motorcars.
Contemporary vehicle positioning solutions are using a global navigation satellite system (GNSS) in order to obtain heading information about said vehicle. However, the heading information is usually only provided when said vehicle is moving.
Moreover, global navigation satellite system information is usually combined with information of at least one inertial measurement unit (IMU) or other vehicle data to increase the availability of said heading information. This, however, is only possible when said vehicle has first been moving. Furthermore, this also suffers from sensor calibration issues where inaccurately calibrated sensors will cause said information to drift, i.e. become inaccurate.
Moreover, there is also an issue with the global navigation satellite system providing said heading information of the antenna (which is not the same as the attitude, e.g. the direction, of said vehicle).
One option to solve the above mentioned problems is to combine the global navigation satellite system heading information, inertial measurement unit data, vehicle speed and wheel base (and thereby the slip angle) to calculate the attitude of said vehicle instead of the antenna heading. However, this is challenging since it is hard to estimate the effective wheel base of a vehicle, in particular a truck, with dynamic geometries and properties, such as liftable rear axles, different load conditions etc.
J. Pinchin et al., “Precise Kinematic Positioning Using Single Frequency GPS Receivers and an Integer Ambiguity Constraint”, Proceedings of IEEE/ION PLANS 2008, pages 600-605 (XP056006728) discloses a system for baseline-constrained GNSS attitude measurement.
N. Parikh et al., “Implementation of a Least Mean Square Approach for a Low-Cost Short Baseline Attitude Determination”, Proceedings of ION GNSS 2007, pages 818-826 (XP056010162) discloses a further approach to baseline-constrained attitude estimation using GNSS sensors with a baseline of the order of 1 meter.
An object of the invention is to provide a method for estimating the attitude of a vehicle, which provides an accurate vehicle attitude.
The object is achieved by a method according to claim 1.
According to a first aspect of the invention, the object is achieved by a method for estimating the attitude of a vehicle by using a global navigation satellite system having a plurality of satellites, wherein the vehicle comprises at least a first antenna and a second antenna having a separation to each other, comprising the steps of: detecting that said vehicle is moving and not turning and obtaining a heading of at least one of the antennas using the GNSS; calculating an integer ambiguity fix corresponding to the relative position vector of the first and second antenna using said heading and the separation of said first and second antenna; and determining the attitude of the vehicle, including validating candidate values of the attitude obtained from the GNS by analysing residuals in respect of the relative position vector.
Thus, a method is proposed, wherein a vehicle having two antennas is used to estimate the attitude of said vehicle, in particular by using a relative position vector and said separation of said antennas.
In particular, a method is provided wherein double difference is used. By placing two global navigation satellite system antennas, and in particular two global navigation satellite system receivers, on said vehicle providing raw satellite observables, it is possible to apply real time kinematic (RTK) algorithms to find the relative position of the antennas enabling to calculate the attitude of said vehicle. Moreover, as long as the real time kinematic integer ambiguity fix for said antennas is known, it is possible to calculate the fix, even when the truck is stationary.
An advantage of the provided method is to calculate the attitude of a vehicle in situations where it would not be possible with known global navigation satellite system receivers, in particular by utilizing two antennas, e.g. two global navigation satellite system antennas on said vehicle.
In one example, when said vehicle is moving and not turning, e.g. the yaw rate of said vehicle equals zero, the attitude of said vehicle is equal to the direction of movement of said antennas (GNSS heading). Knowing this and the separation of said antennas, the integer ambiguity fix may be calculated. Once a possible candidate is evaluated, said candidate may validated by analysing the residuals of said relative position calculation. For example, by the following steps: 1) Is said vehicle moving in high enough speed to provide accurate GNSS heading? 2) Is said vehicle currently not turning (yaw rate=0)? 3) Calculate said relative position of said antennas using current GNSS heading and the known separation of the antennas. Additionally, use roll estimate if available or assume roll is zero. 4) Calculate said integer ambiguities for RTK fix based on relative position estimation. 5) Calculate said relative position using the ambiguity candidates and validate the solution using the residuals. 6) Validate the solution using know properties (residuals, separation, roll, GNSS heading, etc.).
In a further example, the step of detecting that said vehicle is moving and not turning comprises the step of: estimating the movement speed of said vehicle.
Preferably, the movement speed is estimated via vehicle sensors, e.g. by at least one wheel speed sensor.
In a preferred embodiment, the step of detecting that said vehicle is moving and not turning also comprises the step of: estimating the yaw rate of said vehicle.
Thus, the yaw rate is used to determine whether said vehicle is turning or not.
In a preferred embodiment, the method further comprises the step of: storing the integer ambiguity fix, in particular for the antennas.
Preferably, the data is stored in a memory or a memory device. Preferably, the stored data comprises at least the real time kinematic integer ambiguity fix.
In particular, said integer ambiguity fix is stored to be used while the fix is valid, preferably until the phase-lock is lost. Thus, said integer ambiguity is preferably not stored to a persistent memory.
Thus, the proposed method may also be used while said vehicle is stationary, in particular by using said stored data.
In a more preferred embodiment, the attitude of said vehicle is estimated while said vehicle is stationary, in particular by using said stored integer ambiguity fix.
In a further embodiment, the method also comprises the step of: defining a search space for possible candidates values of the attitude and evaluating all possible candidate within in the search space with respect to the relative position vector.
Preferably, the search space for possible candidates is defined based on the uncertainty of the GNSS heading, which in turn is based on the number of satellites, vehicle speed and yaw rate.
The GNSS heading is then used together with the known antenna separation to estimate a relative position uncertainty.
The relative position uncertainty can then be used to, for each, satellite define the potential ambiguity factors to be included in the search space.
Thus, the proposed method evaluates not one but all possible candidates within said search space, in particular defined by an estimated uncertainty.
In particular, there are factors which could influence the possibility of finding the correct fix. Including, not knowing the roll of said vehicle or inaccuracies in the yaw rate information, e.g. by sensor errors. Defining a search space, however, may overcome this.
According to a second aspect of the invention, the object is achieved by a computer program comprising program code means for performing the steps of said method described above or below when said program is run on a computer.
According to a third aspect of the invention, the object is achieved by a computer readable medium carrying a computer program comprising program code means for performing the steps of said method described above or below when said program product is run on a computer.
According to a fourth aspect of the invention, the object is achieved by an estimation unit for estimating the attitude of a vehicle, wherein the estimation unit is configured to perform the steps of said method described above or below.
According to a fifth aspect of the invention, the object is achieved by a movement estimation device for a vehicle, wherein the movement estimation device comprises optionally a computer and at least one of: an above or below described computer program, an above or below described computer readable medium, an above or below described estimation unit.
According to a sixth aspect of the invention, the object is achieved by a vehicle comprising an above or below described movement estimation device.
In one embodiment, said vehicle further comprises at least a first antenna and a second antenna for communicating with a global navigation satellite system, in particular to provide raw satellite observables.
In a preferred embodiment, said vehicle also comprises at least a first receiver and a second corresponding receiver for communicating with the global navigation satellite system.
In a more preferred embodiment, said vehicle also comprises at least one movement speed estimation unit having at least one movement speed sensor. Preferably, said vehicle also comprises at least one yaw rate estimation unit.
Hence, said vehicle comprises at least one sensor obtaining that said vehicle is moving and not turning.
With reference to the appended drawings, below follows a more detailed description of embodiments of the invention cited as examples.
In the drawings:
Still other objects and features of embodiments herein will become apparent from the following detailed description considered in conjunction with the accompanying drawings. It is to be understood, however, that the drawings are designed solely for purposes of illustration and not as a definition of the limits hereof, for which reference should be made to the appended claims. It should be further understood that the drawings are not necessarily drawn to scale and that, unless otherwise indicated, they are merely intended to conceptually illustrate the structures and procedures described herein.
Hence, said vehicle comprises at least a first antenna 1200 and a second antenna 1210 having a separation d to each other for communicating with the global navigation satellite system 2000. In a preferred embodiment, said vehicle 1000 also comprises two receivers for communicating with the global navigation satellite system 2000.
Moreover, said vehicle 1000 also comprises a movement estimation device 1100 and a movement speed estimation unit 1300.
Said movement estimation device 1100 comprises a computer program 1110, a computer readable medium 1120 and an estimation unit 1130.
Said movement estimation device 1100 is further adapted for performing said above or below described method 100 for estimating the attitude A of said vehicle 1000.
In particular, said movement estimation device 1100 is connected to said antennas 1200, 1210 and said movement speed estimation unit 1300.
Preferably, said antennas 1200, 1210 are installed at the roof of said vehicle 1000 and the movement speed estimation unit 1300 comprises a movement speed sensor 1310, which is arranged for estimating the angular velocity of at least one wheel of said vehicle 1000.
Said global navigation satellite system 2000 comprises at least a plurality of satellites 2010, 2020, 2030, 2040 interacting with said antennas 1200, 1210 of said vehicle 1000, in particular via the signals S1, S1′, S2; S2′, S3, S3′, S4, S4′.
Thus, said vehicle 1000 is adapted for double difference via said antennas 1200, 1210.
One way of estimating said attitude A of said vehicle 1000 is proposed in
Said vehicle 1000 has an attitude A and said antennas 1200, 1210 are mounted at the roof at said vehicle 1000, having a separation d to each other. Preferably, said antennas 1200, 1210 are installed at said roof such that said separation d is square to said attitude A.
The method 100 comprises the steps of: detecting that said vehicle is moving and not turning 110; calculating an integer ambiguity fix 120; and validating the integer ambiguity fix 130.
In a first step 110, the movement of said vehicle is detected and also whether said vehicle is turning or not. If said vehicle is not turning and the movement speed of said vehicle is high enough to provide accurate GNSS heading, a second step is started.
In the second step 120, an integer ambiguity fix is calculated, in particular by using a relative position calculation and the separation of said first and second antenna, in particular the separation of said antennas of said vehicle as shown in
In a third step 130, the integer ambiguity fix is validated, in particular by analysing the residuals of the relative position calculation, as mentioned in said second step 120.
With continued reference to
The method 100 comprises the steps of: detecting that said vehicle is moving and not turning and obtaining a heading of at least one of the antennas 110; calculating an integer ambiguity fix corresponding to the relative position vector of the first and second antenna 120; and determining the attitude of the vehicle using the integer ambiguity fix 130.
In a first step 110, the movement of said vehicle is detected and also whether said vehicle is turning or not. If said vehicle is not turning and the movement speed of said vehicle is high enough to provide an accurate GNSS heading, a heading v is obtained for at least one of the antennas. (Clearly, the GNSS heading may be an approximation of the attitude A of the vehicle. To estimate the attitude A with improved accuracy, however, this method 100 uses the GNSS heading as one of several inputs.) Then a second step is initiated.
In the second step 120, the relative position vector D is estimated which satisfies r1210=r1200+D, where r1200, r1210 are position vectors of the first and second antennas 1200, 1210. An estimate D* of the relative position vector D will be used to derive an integer ambiguity fix.
In the third step 130, the attitude A of the vehicle is determined, wherein candidate values of the attitude obtained from the GNSS are validated by analysing residuals in respect of the estimated relative position vector estimate D*, which is applied to find the integer ambiguity fix. The estimate D* corresponds to the number of wavelengths, per GNSS satellite 2010, 2020, 2030, 2040, by which a carrier phase measurement is to be corrected in a double-differenced comparison of data received at the first and second antennas 1200, 1210. The correction may be termed integer ambiguity fix.
The integer ambiguity estimation may include solving a constrained optimization problem, as in P. Teunissen, “The least-squares ambiguity decorrelation adjustment: a method for fast GPS integer ambiguity estimation”, Journal of Geodesy, 70, 65-82, 1995.
The validation may alternatively apply a LAMBDA method, as in above-cited XP056006728 or XP056010162. The ratio test disclosed therein may include applying a threshold, with which the calculated ratio of integer residuals is compared. The threshold may be a number which depends on the expected noisiness of the carrier phase measurements. Alternatively or additionally, it may be required that the threshold be satisfied for several consecutive samples, such as 3-5 samples.
In particular, the third step 130 may comprise minimizing an objective function over 3, the space of integer triplets, wherein the objective function includes a term expressing the difference between D*, the estimate of the relative position vector on the basis of the GNSS heading, and {circumflex over (D)}, a float estimate of the relative position vector computed from GNSS position vector candidates representing the first and second antennas 1200, 1210. Such an objective function will penalize any GNSS position vector candidates that are incompatible with the estimate of the relative position vector based on the GNSS heading. Conversely, the objective function will tend to validate position vector candidates that are in good agreement with D*. The validated position vector candidates are generally a useful basis for determining the attitude A of the vehicle.
Alternatively, the third step 130 can be implemented by modifying the method disclosed in S. M. Martin, GPS carrier phase tracking in difficult environments using vector tracking for precise positioning and vehicle attitude estimation, doctoral dissertation, Auburn University, 2017, in which a Kalman filter is used to estimate low-precision floating-point estimates of the carrier ambiguities. In the Kalman filter, according to this reference, the floating-point estimates are improved by including a measurement with low uncertainty of the distance between two antennas; a residual of this distance (baseline residual) is appended to the measurement vector of the Kalman filter, as one new component. The present invention makes available an estimate D* of the relative position vector between the two antennas 1200, 1210, so that three new components can be added to the measurement vector of the Kalman filter; this may improve the accuracy of Martin's method significantly.
The present approach is efficient at least when the GNSS heading has better accuracy than the GNSS position vector candidates. This condition is satisfied in a broad range of situations, since the GNSS heading is computed from a plurality of GNSS measurements. Therefore, the GNSS heading can be obtained using a state-of-the-art method, e.g., by reading an output from a commercially available GNSS receiver during uniform movement of the vehicle 1000.
Concerning the second step 120, the following is a possible approach to determine D*, the estimate of the relative position vector on the basis of the GNSS heading ν. The true relative position vector D satisfies:
|D|=d (1)
D⊥e
z (2)
D⊥ν (3)
where ez denotes a basis vector of a local east-north-up (ENU) reference frame. Condition (1) expresses the known separation distance. Condition (2) holds for zero roll when the antennas are at equal height, but regardless of the pitch of the vehicle. Condition (3) holds when the separation is square to the attitude A and the vehicle is not turning. An estimate satisfying conditions (1), (2) and (3) is:
where × denotes vector product. This estimate may be applied to find an integer ambiguity fix for determining the attitude A.
Here, it has been assumed that one GNSS heading is used, from either the first or second antenna 1200, 1210. In variations of the method, two GNSS headings ν1, ν2 may be used to find the integer ambiguity fix. For example, an average v=½(ν1+ν2) of the two GNSS headings may be used to compute D*. Alternatively, two separate estimates D*1, D*2 are computed on the basis of a respective GNSS heading ν1, ν2, and an average of both, D*=½ (D*1+D*2), is fed into the third step 130. Further alternatively, the two separate estimates D*1, D*2 are computed and differences with respect to each estimate are included in the objective function.
A generalized version of the method 100 can be performed also in situations where condition (3) does not apply. If the first and second antennas 1200, 1210 are mounted such that the true relative position vector D differs by an angle α with respect to the lateral direction of the vehicle, then D* according to the above equation is to be rotated back, namely, by an angle −α with respect to ez. This is accounted for by the following expression for D* in the ENU reference frame:
The first, simplified expression for D* corresponds to the special case α=0.
The carrier ambiguities remain constant as long as the GNSS receiver maintains phase lock; the integer ambiguity fix is valid for this duration. Therefore, the method 100 may comprise an additional step of storing the integer ambiguity fix, which is available after the third step 130, in a memory. The stored data may be used in order to estimate the attitude A later, even after the vehicle 1000 has moved to a different position and/or orientation. This way, the later attitude estimation can be performed while no fresh GNSS heading is available, as may be the case during slow driving, much maneuvering, reversing or when the vehicle 1000 is stationary. The stored integer ambiguity fix may be retrieved and used for the purpose of estimating the attitude A in each of these situations.
The method 100 comprises the steps of: detecting that said vehicle is moving and not turning 110; calculating an integer ambiguity fix 120 and validating the integer ambiguity fix 130.
In a first step, the movement of said vehicle is detected and also whether said vehicle is turning or not. If said vehicle is not turning and the movement speed of said vehicle is high enough to provide accurate GNSS heading, a second step is started.
The first step also comprises: estimating the movement speed of said vehicle (112) and estimating the yaw rate of said vehicle (114).
In the second step 120, an integer ambiguity fix is calculated, in particular by using a relative position calculation and the separation of said first and second antenna, in particular the separation of said antennas of said vehicle as shown in
The second step also comprises a calculation wherein at least the relative position of said antennas (1200, 1210) is calculated and/or estimated. For this, a search space may be defined (160) in order to obtain multiple possible candidates of the integer ambiguity fix. Preferably, the step also comprises: evaluating all possible candidates within the search space.
In a third step 130, the integer ambiguity fix is validated, in particular by analysing the residuals of the relative position calculation, as mentioned in said second step 120.
Afterwards, in a fourth step 140, the validated integer ambiguity fix may be stored in a memory.
The stored data may then be used in a fifth step 150, wherein the attitude of said vehicle is estimated, even when said vehicle is stationary, in particular by using said stored validated integer ambiguity fix.
The aspects of the present disclosure have mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the invention, as defined by the appended patent claims.
Number | Date | Country | Kind |
---|---|---|---|
PCT/EP2018/084590 | Dec 2018 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2019/083137 | 11/29/2019 | WO | 00 |