Abstract:
The invention relates to an apparatus and method for augmenting the 3 dimensional position information obtained from the NAVSTAR satellite-based global positioning system (“GPS”) system. Such systems can be impacted by physical obstacles that prevent the receipt of the satellite signals or as a result of sun spot activity that introduces noise into the signals thus causing them to become intermittently unavailable and/or making them less accurate in the course of normal operation. Therefore, an improved positioning solution that can operate under such poor GPS operational conditions is needed. The apparatus and method of the invention augments GPS with dead reckoning techniques when GPS signals are unavailable or inaccurate. The apparatus and method of the invention demonstrates highest value when applied to blasthole drill positioning applications in open-pit mines.

Description:
TECHNICAL FIELD 
       [0001]    The invention relates to an apparatus and method for augmenting the three-dimensional position information obtained from the NAVSTAR satellite-based global positioning system (“GPS”) system. The apparatus and method demonstrates highest value when providing augmented position information to high-precision GPS-based guidance systems on blasthole drills that are routinely used in open pit (surface) mines. 
       BACKGROUND 
       [0002]    Dead reckoning is a navigational technique which has been in use for centuries. Dead reckoning calculates the current position of an object based on a previous position of the object in view of the speed and direction travelled from the previous position. Disadvantageously, dead reckoning is subject to significant error, particularly when speed and direction are not measured accurately. 
         [0003]    The NAVSTAR (US government owned and operated) GPS constellation comprises a network of 27 Earth orbiting satellites. A complementary space-based network called GLONASS (Russian government owned and operated) consists of an additional 24 satellites. In order to determine the position of an object using GPS/GLONASS, a GPS, GLONASS or combined GPS/GLONASS receiver on the object must determine the location of at least four GPS/GLONASS satellites and the distance between the object and each of the at least four satellites. Disadvantageously, the GPS/GLONASS system cannot be used to calculate position when the GPS/GLONASS receiver does not receive signals from at least four GPS/GLONASS satellites. 
         [0004]    The introduction of high-precision global positioning systems (“HPGPS”) to the surface mining industry has resulted in significant improvements in productivity, and is expected to take an essential role as an enabling technology in future efforts to automate mining activities. In a standard system, GPS/GLONASS output is used directly for positioning. However, such systems can be impacted by physical obstacles that prevent the receipt of the satellite signals or as a result of sun spot activity that introduces noise into the signals thus causing them to become intermittently unavailable and/or making them less accurate in the course of normal operation. Therefore, an improved positioning solution that can operate under such poor GPS operational conditions is needed. The apparatus and method of the invention augments GPS with dead reckoning techniques when GPS signals are unavailable or inaccurate. 
       SUMMARY OF THE INVENTION 
       [0005]    The invention relates to an augmented GPS (“aGPS”) apparatus and method, which alleviates the availability problem of a GPS receiver only (does not take into account a loss of GLONASS receiver signal) by combining it with dead reckoning techniques. The invention may be used in relation to a number of vehicle types (for example: tracked vehicles such as blasthole drills, excavators and bulldozers, or rubber tired vehicles such as haul-trucks and graders). The invention is particularly suited to blasthole drills. During operation, a blasthole drill typically travels for two minutes, stops and has its jacks lowered, drills for between thirty (30) and sixty (60) minutes, has its jacks retracted and travels an additional two (2) minutes where the process is repeated. In most cases, it is desirable for the blasthole drill to travel in a straight line for an extended period of time and distance. 
         [0006]    The augmented GPS of the invention introduces an intermediate step between the GPS receiver and the machine. Under normal conditions, the GPS output of the invention is identical to a GPS system. However, under degrading space-based GPS satellite conditions, the system instead estimates the motion of the machine based on local sensor measurements, and uses this to extrapolate the last known GPS position. This constructed position is output in place of the unavailable GPS position. This process of extrapolation continues until either the GPS situation improves, or the uncertainty in the constructed position exceeds a predefined maximum allowable value. The target precision of this system is to estimate the vehicle position within six (6) inches of its true value over a travelled distance of one hundred (100) feet (0.5%). 
         [0007]    In accordance with one aspect of the present invention, there is provided an augmented global positioning system (“aGPS”) for a vehicle comprising:
       (a) an aGPS computer;   (b) a standard global positioning system (“GPS”) system operatively connected to said aGPS computer, the standard GPS comprising:
           (i) a high-precision GPS receiver;   (ii) a navigation system; and   (iii) a switch for alternating between a use of the standard GPS and the aGPS; and   
           (c) a chorus subsystem operatively connected to the standard GPS, the chorus subsystem comprising:
           (i) a chorus data acquisition (DAQ) module;   (ii) a gyroscope operatively connected to the chorus DAQ; and   (iii) at least two rotation sensors operatively connected to the chorus DAQ.   
               
 
         [0017]    In accordance with another aspect of the present invention, there is provided a method for determining the position of a moving vehicle using augmenting global positioning system (“aGPS”), the method comprising the steps of:
       (a) calculating a first position of the vehicle using a global positioning system (“GPS”);   (b) upon losing the GPS signal, measuring the movement of the vehicle and calculating the position of the vehicle using the last known position of the vehicle from the GPS combined with dead reckoning;   (c) upon reacquiring a GPS signal, comparing the first position of the vehicle to the calculated position; and   (d) correcting error in said calculated position.       
 
     
    
     
       BRIEF DESCRIPTION OF THE FIGURES 
         [0022]      FIG. 1  is a schematic showing a first embodiment of the invention; 
           [0023]      FIG. 2  is a prospective side view showing an exemplary mounting location of a wheel sensor assembly; and 
           [0024]      FIG. 3  is a flow chart showing a method of augmenting GPS according to an embodiment of the invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0025]    Referring to  FIG. 1 , a first embodiment of a high-availability global positioning system with local sensor augmentation ( 10 ) of the invention is shown. The system ( 10 ) is preferably used with blasthole drills, for example the Atlas Copco™ PV-271 blasthole drill. The system comprises a standard GPS system ( 20 ), an aGPS computer ( 30 ), and a chorus subsystem ( 40 ). 
         [0026]    The standard GPS system ( 20 ) comprises a dual-antenna high-precision GPS receiver ( 22 ), a navigation system ( 24 ), and a switch ( 26 ). The switch ( 26 ) allows the system to alternate between operation when a GPS signal is available, during which time the standard GPS system ( 20 ) is used, and when the GPS signal is not available, during which time the chorus subsystem ( 40 ) is used. 
         [0027]    The aGPS computer ( 30 ) acts as the processing unit for system ( 10 ), receiving sensor data as input and producing vehicle position information as output. 
         [0028]    The chorus subsystem ( 40 ) comprises a left rotation sensor ( 42 ), a right rotation sensor ( 44 ), and a chorus enclosure ( 50 ). Preferably, the left rotation sensor ( 42 ) and the right rotation sensor ( 44 ) are rotary encoders capable of measuring angular positions of the left and right wheels of the vehicle. The sensors ( 42 ) and ( 44 ) use a polarized magnet-sensor pair to sense the angular positions of the left and right drive motors, which directly drive the vehicle&#39;s crawler tracks. From sensors ( 42 ) and ( 44 ), the distance travelled by the vehicle is measured. The chorus enclosure ( 50 ) comprises a gyroscope ( 52 ) and a chorus data acquisition module ( 54 ). The gyroscope ( 52 ) obtains angular rate measurements about the vehicle&#39;s turning axis of rotation. For example, the gyroscope may be an ADIS16130 single-axis MEMS gyroscope produced by Analog Devices™. The chorus data acquisition module ( 54 ) comprises a supporting hardware unit which forwards sensor measurements from the left rotation sensor ( 42 ), right rotation sensor ( 44 ), and the gyroscope ( 52 ) to the aGPS computer ( 30 ). 
         [0029]    Referring to  FIG. 2 , an exemplary mounting location of a wheel sensor assembly is shown. A magnetic wheel sensor assembly ( 60 ) is shown in association with a hydraulic propel motor ( 62 ) of a crawler track ( 64 ). The magnetic wheel sensor assembly ( 60 ) consists of a polarized magnet ( 66 ) and a nearby magnetic pickup sensor ( 68 ). The sensor is preferably a two-axis magnetometer (essentially a digital compass). The magnet ( 66 ) is rigidly attached to the wheel and rotates with it, thus the magnet&#39;s “north” rotates with the wheel. The sensor is able to sense the direction of this magnetic “north” as it rotates, thus providing an instantaneous angular position of the wheel. Alternatively, rotary encoders of any type capable of the required precision may be substituted for the magnet-based sensors. 
         [0030]    Referring to  FIG. 3 , a method of the present invention is shown. During normal operation, a vehicle receives positional information from the standard GPS system ( 20 ) (Step  100 ). However, upon losing the GPS signal, the movement of the vehicle is measured and the new vehicle position is calculated in using chorus subsystem ( 40 ) (Step  200 ). This Step  200  comprises measuring the distance the vehicle has travelled using at least two wheel sensors. Step  200  further comprises measuring the direction the vehicle has travelled. Preferably, this is performed using at least one gyroscope ( 52 ). Step  200  may be repeated as necessary in response to intermittent GPS signals. Upon reacquiring a GPS signal, the first position of the vehicle is compared to the calculated position of Step  200  and any error in the calculated position is corrected (Step  300 ). Alternatively, the process may stop when the calculated position exceeds a predefined maximum allowable value (Step  400 ). 
         [0031]    The aGPS computer ( 30 ) contains a filter algorithm in order to maintain an optimal estimate of the position and orientation of the vehicle as it travels from point to point. The filter is an unscented Kalman filter (UKF)-based design incorporating wheel rotation sensors ( 42 ,  44 ), a gyroscope ( 52 ), and a HPGPS ( 22 ) which is intermittently unavailable. 
       Nomenclature 
       [0032]    In the following description, capital letters are used to denote quantities in an absolute “world” reference frame and lowercase letters to denote those in other reference frames. The global frame is a Cartesian frame predefined by the mine site and measured in metres. Mine site coordinates are specified in terms of a Northing (metres in the N direction), Easting (metres in the E direction), and an ellipsoidal height. For convenience, the “world frame” is a right-handed 3-D Cartesian frame comprising (X, Y, Z), where X is in the direction of the Easting, Y is in the direction of the Northing, and Z points upward and is related to the ellipsoidal height. 
         [0033]    A vehicle&#39;s local frame is defined similarly. It is a right-handed Cartesian frame comprising (x,y,z), where x is measured in the vehicle&#39;s “forward” direction, y is measured in the “leftward” direction, and z in the upward direction. The vehicle&#39;s frame is defined to be directly between the track midpoints, at ground level. Orientations are specified in terms of the coordinate axes. Rotations and orientations about the world frame&#39;s (X, Y, Z) axes are denoted Θ X , Θ Y , Θ Z  respectively. Similarly, in the vehicle frame, Θ X , Θ Y , Θ Z  are used for orientations. A hat (̂) is used to denote an estimated quantity. 
       State 
       [0034]    Assuming the vehicle travels in a 2-D plane, only a subset of state variables are needed to achieve the desired accuracy. The state to be estimated is denoted q and consists of the global position and orientation of the vehicle&#39;s frame. It is represented as: 
         [0000]    
       
         
           
             q 
             = 
             
               
                 [ 
                 
                   
                     
                       X 
                     
                   
                   
                     
                       Y 
                     
                   
                   
                     
                       
                         Θ 
                         Z 
                       
                     
                   
                 
                 ] 
               
               . 
             
           
         
       
     
         [0000]    The state q has an associated 3×3 covariance matrix P. 
       Initialization 
       [0035]    The above filter must be initialized using an absolute coordinate reference. Initialization can occur when two conditions are simultaneously met:
       1. an RTK GPS fix is available. With this, the state variables X and Y can be initialized with the vehicle&#39;s current location in the absolute world coordinate frame; and   2. the vehicle is moving in a straight line, either forward or reverse. Since a single-antenna GPS receiver cannot measure its orientation, a heading is constructed based on consecutive GPS readings as detailed in the section entitled “Absolute Heading Estimate”, below.       
 
         [0038]    Since the RTK fix is not always available and since the vehicle spends most of its time stationary, it can take a long time for the above two conditions to be met under normal operating conditions. However, this can be remedied by making use of dual-antenna GPS hardware. The provision of a dual-antenna GPS hardware would remove condition “2” and allow the filter to initialize any time the RTK fix is available, regardless of the vehicle&#39;s motion. 
       Absolute Heading Estimate 
       [0039]    While in theory, the GPS can reports its orientation via the HDT message, this is not a viable option likely due to the low speed of the drill. As an alternative, a heading can be constructed using the output GPS coordinates while the vehicle is moving. 
         [0040]    If the vehicle is moving, assuming two consecutive GPS coordinate readings (X 1 , Y 1 ) with uncertainty (σ X1 , σ Y1 ) and (X 2 , Y 2 ) with uncertainty (σ X2 , σ Y2 ), the heading Θ Z  can be computed as 
         [0000]    
       
         
           
             
               β 
               = 
               
                 
                   
                     Y 
                     2 
                   
                   - 
                   
                     Y 
                     
                       1 
                        
                       
                           
                       
                     
                   
                 
                 
                   
                     X 
                     2 
                   
                   - 
                   
                     X 
                     1 
                   
                 
               
             
             , 
             
               
 
             
              
             
               
                 Θ 
                 Z 
               
               = 
               
                 
                   arctan 
                    
                   
                     ( 
                     β 
                     ) 
                   
                 
                 . 
               
             
           
         
       
     
         [0000]    Using the standard error propagation formula, the uncertainties are 
         [0000]    
       
         
           
             
               
                 σ 
                 β 
               
               = 
               
                 
                   
                     
                       1 
                       
                         
                           ( 
                           
                             
                               X 
                               2 
                             
                             - 
                             
                               X 
                               1 
                             
                           
                           ) 
                         
                         2 
                       
                     
                      
                     
                       ( 
                       
                         
                           σ 
                           
                             Y 
                              
                             
                                 
                             
                              
                             2 
                           
                           2 
                         
                         + 
                         
                           σ 
                           
                             Y 
                              
                             
                                 
                             
                              
                             1 
                           
                           2 
                         
                       
                       ) 
                     
                   
                   + 
                   
                     
                       
                         
                           ( 
                           
                             
                               Y 
                               2 
                             
                             - 
                             
                               Y 
                               1 
                             
                           
                           ) 
                         
                         2 
                       
                       
                         
                           ( 
                           
                             
                               X 
                               2 
                             
                             - 
                             
                               X 
                               1 
                             
                           
                           ) 
                         
                         4 
                       
                     
                      
                     
                       ( 
                       
                         
                           σ 
                           
                             X 
                              
                             
                                 
                             
                              
                             2 
                           
                           2 
                         
                         + 
                         
                           σ 
                           
                             X 
                              
                             
                                 
                             
                              
                             1 
                           
                           2 
                         
                       
                       ) 
                     
                   
                 
               
             
             , 
             
               
 
             
              
             and 
           
         
       
       
         
           
             
               σ 
               
                 Θ 
                 Z 
               
             
             = 
             
               
                 
                   σ 
                   β 
                 
                 
                   1 
                   + 
                   
                     β 
                     2 
                   
                 
               
               . 
             
           
         
       
     
         [0000]    Since the above process implicitly assumes that the vehicle is moving in a straight line (i.e. {dot over (Θ)} Z =0), an addition error component, σ m , is defined to account for error due to movement during the measurement. This additional error can be expressed as: 
         [0000]    
       
         
           
             
               
                 σ 
                 m 
               
               = 
               
                 
                   
                     d 
                     R 
                   
                   - 
                   
                     d 
                     L 
                   
                 
                 W 
               
             
             , 
           
         
       
     
         [0000]    where d R  and d L  are the differential distances moved by the tracks during the measurement interval, and W is the distance between the tracks. If the vehicle is actually moving in a straight line, then d R ≈d L  and σ m ≈0. Thus, σ Θ     Z    is defined to be: 
         [0000]    
       
         
           
             
               σ 
               
                 Θ 
                 Z 
               
             
             = 
             
               
                 
                   σ 
                   β 
                 
                 
                   1 
                   + 
                   
                     β 
                     2 
                   
                 
               
               + 
               
                 
                   σ 
                   m 
                 
                 . 
               
             
           
         
       
     
         [0041]    A number of conditions on the input data are enforced before applying the above procedure to construct a heading estimate. If any of these conditions fail, no computed heading is available. The conditions are: 
         [0042]    1. Both GPS data points (X 1 , Y 1 ) and (X 2 , Y 2 ) must have RTK precision. 
         [0043]    2. There is a minimum distance between the GPS data points. The distance d is computed using the formula: 
         [0000]        d =√{square root over (( X   2   −X   1 ) 2 +( Y   2   −Y   1 ) 2 )}
 
         [0044]    The threshold used is d min =0.1 m. Thus, this condition is met if d≧d min . 
         [0045]    3. The track speed of the left and right tracks must be similar. This confirms that the drill is travelling in a straight line, either forward or backward. The distance travelled by each track during the interval between data points denoted dr L  and dr R  are computed using the difference sin angular values with a constant found by calibration. The absolute value of their difference Δdr is then compared against a threshold value Δdr max . 
       Absolute Position Estimate 
       [0046]    The absolute position X, Y, Z is obtained directly from the HPGPS&#39; PTNL, PJK message. Since the GPS is not located at the defined machine origin, the reported values must be transformed into the machine frame using the most recent estimate of Θ Z . Defining the offset of the GPS antenna in the vehicle&#39;s frame as (x GPS , y GPS ), the absolute position of the GPS is 
         [0000]    
       
         
           
             
               
                 
                   
                     [ 
                     
                       
                         
                           
                             X 
                             GPS 
                           
                         
                       
                       
                         
                           
                             Y 
                             GPS 
                           
                         
                       
                     
                     ] 
                   
                   = 
                   
                     
                       [ 
                       
                         
                           
                             X 
                           
                         
                         
                           
                             Y 
                           
                         
                       
                       ] 
                     
                     + 
                     
                       
                         [ 
                         
                           
                             
                               
                                 cos 
                                  
                                 
                                     
                                 
                                  
                                 
                                   Θ 
                                   Z 
                                 
                               
                             
                             
                               
                                 
                                   - 
                                   sin 
                                 
                                  
                                 
                                     
                                 
                                  
                                 
                                   Θ 
                                   Z 
                                 
                               
                             
                           
                           
                             
                               
                                 sin 
                                  
                                 
                                     
                                 
                                  
                                 
                                   Θ 
                                   Z 
                                 
                               
                             
                             
                               
                                 cos 
                                  
                                 
                                     
                                 
                                  
                                 
                                   Θ 
                                   Z 
                                 
                               
                             
                           
                         
                         ] 
                       
                        
                       
                         [ 
                         
                           
                             
                               
                                 x 
                                 GPS 
                               
                             
                           
                           
                             
                               
                                 y 
                                 GPS 
                               
                             
                           
                         
                         ] 
                       
                     
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0047]    The corresponding covariance P is obtained directly from the GST message. This formulation can be extended to the full 3D case later if necessary. 
       Vehicle Kinematic Model 
       [0048]    A tracked vehicle is modelled as a differential-drive vehicle with two wheels separated by a distance W. Using measurements from the wheel encoders and an experimentally-determined calibration constant, the differential distances each track has moved since the last step can be measured. For the right and left tracks respectively, these are Δr R  and Δr L . The updated equation is 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         
                           
                             q 
                             
                               k 
                               + 
                               1 
                             
                           
                           = 
                             
                            
                           
                             
                               q 
                               k 
                             
                             + 
                             
                               
                                 G 
                                 
                                   s 
                                   , 
                                   k 
                                 
                               
                                
                               
                                 u 
                                 k 
                               
                             
                           
                         
                       
                     
                     
                       
                         
                           = 
                             
                            
                           
                             
                               [ 
                               
                                 
                                   
                                     
                                       x 
                                       k 
                                     
                                   
                                 
                                 
                                   
                                     
                                       y 
                                       k 
                                     
                                   
                                 
                                 
                                   
                                     
                                       θ 
                                       
                                         z 
                                         , 
                                         k 
                                       
                                     
                                   
                                 
                               
                               ] 
                             
                             + 
                             
                               
                                 
                                   [ 
                                   
                                     
                                       
                                         
                                           0.5 
                                            
                                           cos 
                                            
                                           
                                               
                                           
                                            
                                           
                                             θ 
                                             
                                               z 
                                               , 
                                               k 
                                             
                                           
                                         
                                       
                                       
                                         
                                           0.5 
                                            
                                           cos 
                                            
                                           
                                               
                                           
                                            
                                           
                                             θ 
                                             
                                               z 
                                               , 
                                               k 
                                             
                                           
                                         
                                       
                                     
                                     
                                       
                                         
                                           0.5 
                                            
                                           sin 
                                            
                                           
                                               
                                           
                                            
                                           
                                             θ 
                                             
                                               z 
                                               , 
                                               k 
                                             
                                           
                                         
                                       
                                       
                                         
                                           0.5 
                                            
                                           sin 
                                            
                                           
                                               
                                           
                                            
                                           
                                             θ 
                                             
                                               z 
                                               , 
                                               k 
                                             
                                           
                                         
                                       
                                     
                                     
                                       
                                         
                                           1 
                                           / 
                                           W 
                                         
                                       
                                       
                                         
                                           
                                             - 
                                             1 
                                           
                                           / 
                                           W 
                                         
                                       
                                     
                                   
                                   ] 
                                 
                                  
                                 
                                   [ 
                                   
                                     
                                       
                                         
                                           Δ 
                                            
                                           
                                               
                                           
                                            
                                           
                                             r 
                                             R 
                                           
                                         
                                       
                                     
                                     
                                       
                                         
                                           Δ 
                                            
                                           
                                               
                                           
                                            
                                           
                                             r 
                                             L 
                                           
                                         
                                       
                                     
                                   
                                   ] 
                                 
                               
                               . 
                               
                                   
                                 
                                   ( 
                                   3 
                                   ) 
                                 
                               
                             
                           
                         
                       
                     
                   
                     
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
       State Update 
       [0049]    The filter&#39;s UKF-based estimation algorithm uses the familiar predict-update cycle to maintain its state estimate. 
         [0050]    The prediction (a-priori) step is always done and is based on dead reckoning measurements. The basic premise is to use the kinematic model, described above, in a UKF a-priori step with a modification incorporating both wheel encoders and the z-gyro as measurements for rotation. First, the rotation due to wheels Δθ w  and the uncertainty σ w  of the same is defined: 
         [0000]    
       
         
           
               
             
               
                 
                   Δσ 
                   w 
                 
                 = 
                 
                   
                     
                       
                         
                           Δ 
                            
                           
                               
                           
                            
                           
                             r 
                             L 
                           
                         
                         - 
                         
                           Δ 
                            
                           
                               
                           
                            
                           
                             r 
                             R 
                           
                         
                       
                       W 
                     
                      
                     
                       
 
                     
                      
                     
                       σ 
                       w 
                     
                   
                   = 
                   
                     
                       
                         
                           
                             ( 
                             
                               
                                 
                                   F 
                                   w 
                                 
                                  
                                 Δ 
                                  
                                 
                                     
                                 
                                  
                                 
                                   r 
                                   R 
                                 
                               
                               + 
                               
                                 C 
                                 w 
                               
                             
                             ) 
                           
                           2 
                         
                         + 
                         
                           
                             ( 
                             
                               
                                 
                                   F 
                                   w 
                                 
                                  
                                 Δ 
                                  
                                 
                                     
                                 
                                  
                                 
                                   r 
                                   L 
                                 
                               
                               + 
                               
                                 C 
                                 w 
                               
                             
                             ) 
                           
                           2 
                         
                       
                       W 
                     
                   
                 
               
               , 
             
           
         
       
     
         [0000]    where F w  and C w  are constants. Next a simple condition is used to determine whether the vehicle is currently moving: 
         [0000]    
       
         
           
             
               
                 
                   Δ 
                    
                   
                       
                   
                    
                   
                     r 
                     R 
                   
                 
                 + 
                 
                   Δ 
                    
                   
                       
                   
                    
                   
                     r 
                     L 
                   
                 
               
               2 
             
             ≥ 
             
               D 
               min 
             
           
         
       
     
         [0000]    where D min  is a constant threshold. Depending on whether the condition (4) is true, one of the following is performed: 
         [0051]    1. If (4) is true, the vehicle is moving. Thus a rotation measurement is obtained from the z-gyro: 
         [0000]      Δθ g   =Tg   z   −b   z  
 
         [0000]      σ g S g′ 
       where g z  is the current raw measurement from the gyroscope (in units of rad/s), T is the timestep, b z  is the constant gyro bias (discussed below in step “2”), and S g  is the constant uncertainty of the gyro measurements. Next the combined equivalent measurement and uncertainty as the uncertainty-weighted mean of the values from the wheels and the gyro is calculated:       
 
         [0000]    
       
         
           
             
               σ 
               c 
             
             = 
             
               
                 
                   1 
                   
                     
                       1 
                       
                         σ 
                         w 
                         2 
                       
                     
                     + 
                     
                       1 
                       
                         σ 
                         g 
                         2 
                       
                     
                   
                 
                 . 
                 
                   
 
                 
                  
                 
                   Δθ 
                   c 
                 
               
               = 
               
                 
                   
                     σ 
                     c 
                   
                    
                   
                     ( 
                     
                       
                         
                           Δσ 
                           w 
                         
                         
                           σ 
                           w 
                           2 
                         
                       
                       + 
                       
                         
                           Δθ 
                           g 
                         
                         
                           σ 
                           g 
                           2 
                         
                       
                     
                     ) 
                   
                 
                 . 
               
             
           
         
       
       
         
           
             With the uncertainties correctly adjusted, this scheme tends to trust the gyroscope measurements more while moving, and the wheel sensor measurements while moving slowly or stationary. 
           
         
       
     
         [0054]    2. If (4) is false, we consider the vehicle to be stationary. In this case, the combined rotation values are those of the wheels alone: 
         [0000]      Δθ c =Δθ w  
 
         [0000]      σ c =σ w .
 
         [0000]    Since the gyroscope&#39;s bias b z  drifts over time, the (stationary) time can be used to estimate its current value. A (normal) Kalman filter is used to track both the gyroscope bias b z  and its uncertainty σ b . The expression Δθ g −Δθ w  represents a measurement of its current value, and incorporates it into b z  using one step of the Kalman filter. This filter is effectively only an a-posteriori step. 
         [0055]    The a-priori step is then done using an unscented transformation, and incorporating Δθ c  in place of Δθ w  in the deconstructed model (2). 
         [0056]    The update step is done according to one of the cases below. 
         [0057]    1. Case 1: RTK fix available and the conditions of “Absolute Heading Estimation” are fulfilled. In such a case, a heading is constructed as detailed in that section. The machine state q is transformed into the GPS frame using the inverse of Equation (1), and a full-state update is done in the GPS frame using the usual UKF update step with the recent GPS position and constructed heading. 
         [0058]    2. Case 2: RTK fix available, but the conditions of “Absolute Heading Estimate” are not fulfilled. In such a case, the machine state q is transformed into the GPS frame using the inverse of Equation (1), and a partial-state update is done in the GPS frame using the usual UKF update step with the recent GPS (X, Y) position. 
         [0059]    3. Case 3: RTK is not available, in which case, the update step is skipped. 
         [0060]    A person of skill in the art would recognize that the type, number, and position of said sensors and gyroscope may be varied according to the intended use. 
         [0061]    The scope of the claims should not be limited by the preferred embodiments set forth in the examples, but should be given the broadest interpretation consistent with the description as a whole.