Processing

Please wait...

Settings

Settings

Goto Application

1. WO1997024584 - A ZERO MOTION DETECTION SYSTEM FOR IMPROVED VEHICLE NAVIGATION SYSTEM

Note: Text based on automatic Optical Character Recognition processes. Please use the PDF version for legal matters

[ EN ]

A ZERO MOTION DETECTION SYSTEM FOR
IMPROVED VEHICLE NAVIGATION SYSTEM

FIELD OF THE INVENTION
The present invention relates generally to vehicle navigation systems. More particularly, the present invention relates to an improved vehicle navigation system and method for error reduction at low or no vehicle speed.

BACKGROUND OF THE INVENTION
The Navigation Satellite Timing and Ranging (NAVSTAR) GPS is a space-based satellite radio navigation system developed by the U.S. Department of Defense (DoD). GPS receivers provide land, marine, and airborne users with continuous three-dimensional position, velocity, and time data.
The GPS system consists of three major segments: Space, Control, and User as illustrated in Figure 1. The space segment consists of a nominal constellation of 24 operational satellites which have been placed in 6 orbital planes above the Earth's surface. The satellites are in circular orbits in an orientation which normally provides a GPS user with a minimum of five satellites in view from any point on Earth at any one time.
Each satellite continuously broadcasts navigation data. This navigation data, which is computed and controlled by the GPS Control Segment, includes the satellite's time, its clock correction and ephemeris parameters, almanacs, and health status for all GPS satellites. From this information, the user computes the satellite's precise position and clock offset.
The controlling segment consists of a Master Control Station and a number of monitor stations at various locations around the world. Each monitor station tracks all the GPS satellites in view and passes the signal measurement data back to the Master Control Station. There, computations are performed to determine precise satellite ephemeris and satellite clock errors. The Master Control Station generates the upload of user navigation data from each satellite. This data is subsequently rebroadcast by the satellite as part of its navigation data message.

The user segment is the collection of all GPS receivers and their application support equipment such as antennas and processors. This equipment allows users to receive, decode, and process the information necessary to obtain accurate position, velocity, and timing measurements.
GPS based position solutions are inherently poor under low vehicle dynamics.

Some current systems use a hard wired speed signal or odometer input to help correct or calibrate distance errors under low or zero speed conditions. This hard wired approach increases the overall system cost, requires specialized knowledge ofthe vehicle's wiring system, and requires a specialized wiring harness to interface to each individual automobile. In addition, certain systems require a calibration procedure to determine the zero offset of the motion sensor. For example, in a system using a compass or gyro, the user must press a calibration button and drive in a circle and come to a stop for a minimum period of time to determine zero offsets for those devices. Using the road network of a map database, if a vehicle is travelling on a straight path, the system can calculate the zero offset for the gyro. Odometers were previously used for zero motion but are generally ambiguous below 3mph and also required hard wiring. Other systems require a rotational sensor to determine a vehicle's change in heading under these low dynamic or other unfavorable GPS conditions.
Accordingly, there is a need for an improved vehicle navigation system which can more accurately, efficiently and cost-effectively reduce errors in the position
determination at low or no speeds than current vehicle navigation systems.

SUMMARY OF THE INVENTION
The zero motion detection system for an improved vehicle navigation system can take advantage of the recent availability of low cost micro-machined and piezoelectric sensors, and partially overcomes the low dynamics and line of sight limitations of GPS receivers without resorting to the hard wired approach described above. The sensors introduce system level errors due to their inherent DC offset and drift rates. The improved vehicle navigation system minimizes both the sensor induced errors and GPS low dynamic limitations by using a zero motion detection system as a self contained (within the navigation system), vehicle independent device The zero motion detection system allows recalibration of zero offsets at every zero motion state, and provides a true zero velocity indicator Furthermore, the system enhances portability by eliminating the need for the hard-wired approach
In certain embodiments, the sensors descπbed above provide an analog output proportional to either acceleration (micro-machined accelerometer), or rate of rotation (piezoelectric gyro) with a DC offset voltage This offset voltage greatly affects the accuracy of the measurement This offset voltage is also affected by temperature, vehicle load, and physical mounting of device in relation to the vehicle By measuring and detecting the amplitude of vibrations, and compaπng this amplitude to a pre-defined threshold, the improved vehicle navigation system can determine that a vehicle is either in motion or at rest
If the vehicle is at rest, the improved vehicle navigation system averages the sensor's leadings to use as the DC offset voltage for this sensor The improved vehicle navigation system passes a zero motion signal to the GPS based positioning engine that indicates a zero motion state The positioning engine can use this information to lock heading changes and calibrate velocity measurements When the vehicle is determined to be in motion again, the improved vehicle navigation system locks the DC offset measurement gathered during the zero motion state, and the positioning engine is released to update changes in heading and velocity
Thus, the improved vehicle navigation system eliminates the "wandering" effect of the GPS position while the vehicle is at rest This also allows the improved vehicle navigation system to use less expensive amplifier/sensor combinations in high
performance navigation systems

BRIEF DESCRIPTION OF THE DRAWINGS
Other aspects and advantages of the present invention may become apparent upon reading the following detailed description and upon reference to the drawings in which'

FIG 1 is a general illustration of the various segments in the NAVSTAR GPS system;

FIG. 2 shows variations of an improved vehicle navigation system according to the principles of the present invention,
FIG 3 shows a block/data flow diagram of a version of the improved vehicle navigation system of FIG. 2,
FIG 4a shows a block diagram of a zero motion detect system according to the principles of the present invention, and FIG. 4b shows a flow chart for the operation of the zero motion detect system of FIG. 4a;
FIGS. 5a and 5b show a general flow chart ofthe operation of certain
embodiments of the improved vehicle navigation system of FIG. 2; and
FIGS. 6a-6d show general diagrams illustrating how the improved vehicle navigation system updates the heading information with the map heading for position propagations
While the invention is susceptible to various modifications and alterative forms, specifics thereof have been shown by way of example in the drawings and will be described in detail It should be understood, however, that the intention is not to limit the invention to the particular embodiment described On the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.

DETAILED DESCRIPTION OF THE DRAWINGS
An illustrative embodiment of the improved position determination system according to the principles ofthe present invention and methodology is described below as it might be implemented using a zero motion detection signal providing a zero motion signal to reduce errors in GPS position determinations and sensors. In the interest of clarity, not all features of an actual implementation are described in this specification It will of course be appreciated that in the development of any such actual implementation (as in any development project), numerous implementation-specific decisions must be made to achieve the developers' specific goals and subgoals, such as compliance with system- and business-related constraints, which will vary from one implementation to another. Moreover, it will be appreciated that such a development effort might be complex and time- consuming, but would nevertheless be a routine undertaking of device engineering for those of ordinary skill having the benefit of this disclosure.
Aspects of the improved vehicle navigation system has application in connection with a variety of system configurations. Such a vehicle navigation system is disclosed in copending patent application serial no. 'S8/580 ,150 , entitled "Improved Vehicle Navigation System And Method" filed concurrently with this application. Other configurations are possible as would be understood by one of ordinary skill in the art.
FIG. 2 illustrates, in block diagram form, exemplary arrangements of an improved vehicle navigation system 10 for an automobile 12. In this embodiment, the improved vehicle navigation system uses GPS signals for position determination. As such, the improved vehicle navigation system 10 uses a GPS antenna 14 to receive the GPS signals. The antenna 14 is preferably of right-hand circular polarization, has a gain minimum of --3dBiC above 5 degree elevation, and has a gain maximum of +6 dBiC. Patch or Helix antennas matching these specifications can be used. The GPS antenna 14 can be connected to a preamplifier 16 to amplify the GPS signals received by the antenna 14. The pre-amplifier 16 is optional, and the GPS antenna can be directly connected to a GPS receiver \β.
The GPS receiver 18 continuously determines geographic position by measuring the ranges (the distance between a satellite with known coordinates in space and the receiver's antenna) of several satellites and computing the geometric intersection of these ranges. To determine a range, the receiver 18 measures the time required for the GPS signal to travel from the satellite to the receiver antenna. The timing code generated by each satellite is compared to an identical code generated by the receiver 18. The receiver's code is shifted until it matches the satellite's code. The resulting time shift is multiplied by the speed of light to arrive at the apparent range measurement.
Since the resulting range measurement contains propagation delays due to atmospheric effects, and satellite and receiver clock errors, it is referred to as a
"pseudorange." Changes in each of these pseudoranges over a short period of time are also measured and processed by the receiver I S. These measurements, referred to as delta range measurements or "delta-pseudoranges," are used to compute velocity. Delta ranges are in meters per second which are calculated by the receiver from pseudoranges, and the GPS receiver 18 can track the carrier phase of the GPS signals to smooth out the psuedoranges The velocity and time data is generally computed once a second If one of the position components is known, such as altitude, only three satellite pseudorange measurements are needed for the receiver It? to determine its velocity and time In this case, only three satellites need to be tracked.
As shown in FIG. 2, the GPS receiver 18 provides GPS measurements to an application unit 22. The application unit 22 consists of application processing circuitry 24, such as a processor, memory, busses, the application software and related circuitry, and interface hardware 26 In one embodiment of the present invention, the application unit 22 can be incorporated into the GPS receiver 18 The interface hardware 26 integrates the various components of the vehicle navigation system 10 with the application unit 22.
The system 10 can include a combination of the features, such as those shown in dashed lines. For example, the improved vehicle navigation system could rely upon information provided by the GPS receiver 18, an accelerometer 28 (which in certain embodiments is an orthogonal axes accelerometer) and the map database 30 to propagate vehicle position. In additional embodiments, the improved vehicle navigation system 10 uses the accelerometer 28, an odometer 29 and a map database 30 according to other aspects of the present invention. Other embodiments can include a speed sensor 34, a heading sensor 36, such as a gyro, compass or differential odometer, and a one or two way communication link 38. Other configurations and combinations are possible which incorporate aspects ofthe present invention as would be understood by one of ordinary skill in the art. Moreover, the improved vehicle navigation system can be incorporated in an advanced driver information system which controls and provides information on a variety of automobile functions.
FIG. 3 shows a block and data flow diagram for the improved vehicle navigation system 10 which reveals the flexibility and accuracy of certain embodiments of the improved vehicle navigation system. The GPS receiver 18 provides position information, velocity information, psuedoranges and delta pseudoranges to the sensor integrator 40.

The sensor integrator 40 uses the velocity information to determine a current position for the vehicle In this embodiment, if GPS velocity information is not available, the sensor integrator 40 can calculate GPS velocity using the available delta range measurements to determine a current position GPS velocity information is denved from a set of delta range measurements, and if only a subset of delta range measurements is available, the vehicle navigation system can deπve GPS velocity information from the subset of delta range measurements The vehicle navigation system uses the GPS position information at start-up as a current position and duπng other times of operation as a check against the current position If the current position fails the check, then the GPS position can replace the current position
If GPS velocity information is not available, certain embodiments can obtain the information used to propagate the vehicle position from the sensors The sensor 28, which is a multiple axis accelerometer, provides acceleration information for at least two orthogonal axes (lateral, longitudinal andor vertical) to the application unit The odometer 29 provides information which can be used in place ofthe information denved from the accelerometers Other available information can include the odometer distance and GPS heading, a distance calculation and map heading, the GPS speed information and map heading, gyro heading and longitudinal speed and other variations
A map database 30 stores map information, such as a road network, and provides map mformation to the application unit 22 The map database should have some level of known accuracy, confidence, or defined error In this embodiment, every change in street segment heading is designated as a shape point which has a heading with a fixed measurement error A user interface 46, which includes a display and keyboard, allows interaction between the user and the improved vehicle navigation system 10 In this embodiment, if the difference between the current heading and the map heading is less than a threshold value, then the map heading is used as the heading Application processor 22 calibrates va from vG when possible The GPS position information is used as an overall check on the current position For example, ύ$(t)-xd(t)\<(185*PDOP), where PDOP is the "position dilution of precision" a common variable computed automatically in the GPS engine, then x(t) is left unchanged, ! ^ ~x(t)=x(t) Otherwise, x(t)=XG(t) In certain embodiments, all raw inputs could go into a Kalman filter arrangement which outputs the velocity vector In any event, if GPS is available or not, the sensor integrator 40 provides the current position and a velocity (speed and heading) to a map matching block 42. The map matching block 42 provides road segment information for the road segment that the vehicle is determined to be travelling on, such as heading, and a suggested position. The sensor integrator 40 can update the heading component ofthe velocity information with the heading provided by the map matching block 42 to update the current position. If the map matching block 42 indicates a good match, then the map matched position can replace the current position. If not, the sensor integrator propagates the previous position to the current position using the velocity information. As such, the sensor integrator 40 determines the current position and provides the current position to a user interface and/or route guidance block 46.
The map matching block 42 also provides correction data, such as a distance scale factor and/or offset and a turn rate scale factor and/or offset, to a sensor calibration block 44. The sensor integrator 40 also provides correction data to the sensor calibration block 44. The correction data from the sensor integrator 40, however, is based on the GPS information. Thus, accurate correction data based on the GPS information is
continuously available to calibrate the sensors 28 (2 or 3 axis accelerometer) as well as for other sensors 29, 34 and 36 depending on the particular embodiment. The correction data from the map matching block may be ignored by the sensor calibration block 44 until a good match is found between the map information and the current position. If a highly accurate match is found by map matching 42, most likely after a significant maneuver such as a change in direction, the map matched position is used as a reference point or starting position for position propagation according to the principles ofthe present invention.
The sensor calibration block 44 contains the sensor calibration parameters, such as scale factors and zero factors for the sensors 28 and 29 and provides the calibration parameters to the sensor integrator 40 to calibrate the sensors 28-36. In one embodiment, the system can combine the sensor integrator 40 and sensor calibration 44 into GPS engine 18 using its processor. In certain embodiments, the route guidance and user interface, the sensor integrator 40 and the sensor calibration 44 is performed on an application specific integrated circuit (ASIC).

If the accuracy of a current position is determined to be high (for example, a map matched position at a isolated turn), the improved vehicle navigation system 10 can update the current position with the known position After the vehicle has moved a distance from the known position which is now a previous position, the improved vehicle navigation system must accurately propagate the vehicle position from the previous position to the current position.
In a particular embodiment of the improved navigation system of FIG. 2 using zero motion detection, a GPS receiver 18, an orthogonal axes accelerometer 28 and an odometer 29, the calculations that will be performed to compute the vehicle position will take place in three coordinate frames. The vehicle position will be reported in geodetic coordinates (latitude, longitude, altitude) The non-GPS data will be provided in body or platform coordinates The GPS velocities and the equations used for velocity propagation of position will take place in the North, East, Down frame.
The geodetic frame is a representation of the Earth Centered Earth Fixed (ECEF) coordinates that is based on spherical trigonometry This is the coordinate frame that the mapping database uses. Its units are degrees and meters displacement in height above the geoid. These coordinates will be with respect to the WGS-84 Earth model, which is the Earth model used by the Global Positioning System (GPS) This is mathematically equivalent to the North American Datum 1 83 (NAD 83) system which the mapping database is referenced to The North East Down frame is a right-handed orthonormal coordinate system fixed to the vehicle with its axes pointing to the True North, True East, and True Down (perpendicular to the Earth) directions. The body coordinates form a right-handed orthonormal coordinate system with their origin at the navigation unit, the x axis pointing toward the nose of the vehicle, the right axis pointing out the right door of the vehicle and the z axis pointing down perpendicular to the Earth.
During normal operation of a particular embodiment ofthe system (with an odometer and orthogonal axes accelerometer), and with GPS information available, the following are the equations that will be used for computing the vehicle position and the calibration of the accelerometers and odometer.

Definitions
v = position vector [latitude longitude altitude]
x = velocity vectoi [north east down]
x = acceleration vector [north east down]
Q * = Transformation matrix which rotates a vector from the Body
coordinate frame to the North East Down coordinate frame

The following superscripts will be used to denote the origin of the data
G = GPS
A = Accelerometer
O = Odometer
The following subscripts will denote time - either time of validity or time period of integration
t = current time
t- l = time of last data set before the current data set
t-2 = time of data set before t-l
Note that t- l and t-2 do not necessarily imply a one second difference, but only data collection and/or data validity times

The following subscripts will denote coordinate reference frames
N = North East Down
B Body (Nose Right Door Down)
G = Geodetic (latitude longitude height)
To use the information from the non-GPS sensors, their data needs to be rotated from the body frame to the North East Down frame This is a rotation about the yaw axis measured in degrees from True North to the Nose Axis ofthe vehicle The equations for

- Λ' _ 8 -B 1
x - C N ( X J
The steady state position propagation equation is based on the physical definition of velocity and acceleration The cui rent position is equal to the previous position plus the integral of velocity plus the double integral of acceleration X, = x ,., -r \ j ώ τ j ( j X*dt)dt
t-l t- l t-l
The following information is collected at time t
Xt-I The velocity from GPS which was valid at the previous second. This consists of.
xe = Velocity in the True East direction (meters/second),
x" = Velocity in the True North direction (meters/second);
xu = Velocity in the Up direction (meters/ second),
; The acceleration computed from GPS velocities that was valid from time t-2 to time t-l,
The raw GPS position;
jrj The speed computed from the number of odometer counts that occurred from time t-l to time t; and
ϊ The acceleration computed from the accelerometers which occurred from time t-l to time t.
The following other information is available for use at time t, but was collected at a previous time'
χ^_2 The velocity from GPS which was valid two time units ago,
x,.j The position computed at the previous time;
A i The acceleration, computed from the accelerometers, from time t-2 to time t-l ; and jc°., The velocity computed from the odometer counts from time t-2 to time t-l

When GPS is available and has produced a valid position and velocity solution, the following equation will be used for the propagation ofthe vehicle position:

X ι-I + idt + J ( \ ϊdt)dt
t- l t - l t- l
or

This equation is: the current position is equal to the previous position plus the GPS velocity (vector) times the delta time plus the GPS acceleration from two time periods ago minus the Accelerometer acceleration from two time periods ago (a correction factor) plus the Accelerometer acceleration from the current second. In certain embodiments, other sensor information, such as the odometer information, can be used in the above equations if it is determined to be more appropriate than the accelerometer information.

Also computed at this second are:
(1) the GPS heading 1 computed as the inverse tangent of the East and North
velocities:


(2) the distance from time t-l to time t, computed from the GPS velocity valid at time t-l and the double integration ofthe longitudinal Accelerometer acceleration from time t-l to time t:

s = <J(xl, * Δt / + (xl, * Δt/ +±χf * fΔt/ ;

(3) the distance from time t-2 to time t-l, computed from the GPS velocity and
acceleration from time t-2 to time t-l . This will be used as a calibration factor for both the Vehicle Speed Sensor and the Longitudinal accelerometer:

s = <J(xβ,.2 * Δt/ + (χ1.2 * At )2 + fi, * (At)2 ;

(4) the change in heading from time t-2 to time t-l from the GPS heading computed at those times. This is used as a correction factor for the lateral accelerometer.

Δθ = θ 2 - θfl, To maintain the system accuracy when GPS velocity information is not available, each sensor needs to have calibrations performed on it The calibrations will be performed using known good data from the GPS receiver 18 The GPS receiver 18 has velocity accuracy to within one meter per second The GPS velocity information becomes less accurate in low velocity states of less than 1 5 m/s The GPS velocity information is time tagged so that it matches a particular set of odometer and accelerometer data on a per second basis Map matching provides correction factors, but they are based on long term trends and not directly associated with any specify time interval Sensor calibration using the GPS velocities will involve the following sensors in this particular embodiment Odometer (Vehicle Speed Sensor) Calibration The odometer output is the number of ticks of a counter, with a specified number of ticks to be equal to one unit of linear distance traversed An example is that the GM Vehicle Speed Sensor has 4000 pulses per mile This will have a default value from the factory and a calibrated value stored in FLASH thereafter The odometer will be calibrated once per second from the GPS velocity and acceleration that occurred over that same time period, when valid GPS data is available
Lateral Accelerometer The lateral accelerometer measures centripetal acceleration It is used to compute turn angle from the equation Turn angle in radians is equal to the quotient of centripetal acceleration and tangential velocity The Lateral accelerometer has two values which need to be calibrated The zero offset and the scale factor The zero offset is the measurement that the accelerometer outputs when a no acceleration state exists The scale factor is the number that is multiplied by the difference between the accelerometer read value and the accelerometer zero offset to compute the number of G's of acceleration The first derivative of the GPS velocities will be used to compute the scale factor calibration The zero motion detect system which is discussed in FIGs 4a and 4b will be used to compute the accelerometer zero offset value
Longitudinal Accelerometer The longitudinal accelerometer measures the acceleration along the nose/tail axis of he vehicle, with a positive acceleration being out the nose (forward) and a negative acceleration being out the lear of he vehicle The Lonmtudinal accelerometer has two values which need to be calibrated The zero offset and the scale factor The zero offset is the measurement that the accelerometer outputs when an no acceleration state exists The scale factor is the number that is multiplied by the difference between the accelerometer read value and the accelerometer zero offset to compute the number of G's of acceleration The first derivative of the GPS velocities will be used to compute the scale factor calibration The zero motion detect system shown in FIGs 4a and 4b will be used to compute the accelerometer zero offset value
FIG 4a shows the zero motion detect system with a motion sensor 64 (an orthogonal axes accelerometer in this embodiment) providing motion signals with an offset An amplifier 65 amplifies the motion signals, and in this particular embodiment, the motion signals are digitized in an analog to digital converter 67 The motion signals are provided to a zero motion detection and offset calculation block 69 which is in the application unit 22 (FIG 2) The vehicle navigation system determines a zero motion state by comparing samples of the motion signals from the motion sensor 64, such as an accelerometer, a gyro, or piezoelectric sensors with a threshold (the threshold is determined by vehicle vibration characteristics for the type of vehicle that the unit is mounted in, or the threshold for motion sensor could be set using other sensors which suggest zero motion, such as odometer, GPS or DGPS) The vehicle navigation system uses at least one of the samples to determine the zero offsets if the zero motion state is detected At least two samples are preferred to compare over a time interval and averaging those samples to obtain a zero offset for the motion sensor 64 If a zero motion state exists, the vehicle navigation system sets a zero motion flag 71 and uses at least one of the samples to determine the zero offset for the sensor providing the processed motion signals
The system also provides offset data signals 73 which reflect the zero offset for the sensor providing the motion signals or the raw data used to calculate the zero offset Upon detecting a zero motion state, the vehicle navigation system can resolve ambiguity of low velocity GPS measurements because the velocity is zero GPS velocities do not go to zero, so ambiguities exist when in a low velocity state of less than 1 5 m/s If a zero motion flag is on, then the ambiguities are resolved because the system is not moving As such, the system freezes the heading and can also set the speed component of velocity to zero.
The following high level language program shows the operation of this particular embodiment ofthe zero motion detect system.

NUMSAMPLES = 16 (in filter array)
WORD DATA[NUMSAMPLES-1]
WORD NOISE

FOR (1=0; I < NUMSAMPLES; I++)
NOISE = NOISE + j DATA[I] - DATA[I+1]|
If (NOISE > THRESHOLD)
ZERO_MOTION_FLAG = 0
ELSE

ZERO_MOTION FLAG = 1.
FIG. 4b shows a flowchart of a variation of the zero motion detect system. At step 75, the system intializes the variables I and NOISE to zero, and at step 77, the first value ofthe array is read. The counter I is incremented at step 79, and the system reads the next sample at step 81. At step 83, the system begins to accumulate the differences between consecutive samples of the motion signals. The system loops through steps 81-87 until all the samples have been read and the difference between consecutive samples accumulated in the variable NOISE. Once all the samples have been read, the system compares the variable NOISE with the threshold value at step 89. If the NOISE variable is greater than the threshold, then the system determines that motion has been detected in step 91. If the NOISE variable is less than the threshold, the system sets the zero motion flag and determines that the velocity is zero at step 93. The setting of the zero motion flag can set distance changes to zero, lock the heading and current position. Additionally, at step 95, the system calculates the zero offset for the sensor being sampled.
With regard to FIG. 4b and the high level program above, the system is described as sampling the motion signals from one sensor 64, such as one axis of the orthogonal axes accelerometer. In this particular embodiment, the motion signals for each ofthe orthogonal axes ofthe accelerometer is sampled and zero offsets for each is determined. Furthermore, zero offsets, sensor calibration or resolving of ambiguities can be acco plished for other sensors using the zero motion detection system according to the principles of the present invention.
FIGS. 5a and 5b show a general flowchart illustrating how the improved vehicle navigation system 10 propagates a previous position to a current position. At step 150, the improved vehicle navigation system determines if the vehicle is in a zero motion state as described above. If so, the system, at step 152, sets the change in distance to zero, locks the heading and current position, and calibrates the zero offsets.
If the system determines that the vehicle is moving, the system proceeds to step 154 to determine if a GPS solution is available. If GPS is available, the system uses the GPS velocity information to determine the current position. As shown in step 156, the system calculates a east and north accelerations as follows:
e-acc = e-vel - last.e-vel (1)
n-acc = n-vel - last.n-vel (2).
The accelerations are used to calculate east and north displacements as follows:
e-dist = (e-vel*Δ t) + l/2(e-acc*Δ t)2) (3)
n-dist = (n-vel*Δ t) + l/2(n-acc*Δ t)2 (4).
The current position is calculated as follows:
lat = lat + (n-dist * degrees/meter) (5)
long = long + (e-dist * degrees/meter) (6),
where degrees/meter represents a conversion factor of meters to degrees, taking into consideration the shrinking number of meters in a degree of longitude as the distance from the Equator increases. Finally, at step 156, the system calibrates the sensor items, such as the accelerometer scale factors and the odometer distance using information from the equations described above. The system can keep the sensors well calibrated because calibrating can occur once per second (scale factors) if the vehicle speed is above 1 .5 m/s. The use of GPS velocities for position propagation in a vehicle navigation system is described in U.S. patent application ser. no. 08/579 ,902 , entitled "Improved Vehicle Navigation System And Method Using GPS Velocities" and filed concurrently with this application.

If a full GPS solution is not available at step 154, the system checks at step 158 whether any GPS measurements are available. If so, the system computes the velocity information from the available subset of delta range measurements at step 160. If, at step 162, the velocity information is good, the system calculates current position using the equations 1 -6 at step 164 but without calibrating the acceleration scale factors and the odometer distance in this embodiment. If the GPS velocity is determined not to be good at step 162, the system checks the heading component ofthe GPS velocity at step 166. If the GPS heading component is determined to be valid, then at step 168, the change in distance is set with the odometer distance, and the heading is set with the GPS heading calculated from the GPS delta range measurements. Alternatively, an odometer is not used, and the distance is derived from the longitudinal acceleration information. With this heading and distance, the system calculates a position (lat, long) at step 170 using the equations as follows:
e-dist = Δ Dist * sin(heading) (7)
n-dist =Δ Dist * cos(heading) (8).
After calculating the east and north distances, the system determines the vehicle position using equations 5 and 6, but calibration is not performed at this point in this embodiment.

If the system determines at step 166 that the GPS heading is not valid (GPS blockage or low velocity) or at step 158 that the GPS measurements are insufficient, the system falls back on the orthogonal axes accelerometer(s) and the odometer in this particular embodiment. GPS velocity information is subject to errors at speeds of less than 1.5m/s, unless using a more accurate GPS system. For example, in a vehicle navigation system using DGPS, the threshold velocity is lower because ofthe higher accuracy ofthe system. As such, the vehicle navigation system proceeds to step 172 to determine the change in distance using lateral and longitudinal acceleration information from the orthogonal axes accelerometer(s). At step 174, the system compares the longitudinal distance from the accelerometer with the odometer distance, and if the difference between them exceeds a threshold value, the odometer distance is used at step 176. If the difference is less than the threshold, then the accelerometer distance or the odometer distance can be used for the distance at step 178. As shown in dashed step 173, if an odometer is not used, the distance is derived from the longitudinal acceleration information. Once the change in distance is determined, the system calculates the position at step 180 using the following equations to determine heading as follows:
speed = Δ Dist / Δ t (9)
Δ θ = a , ( lateral acceleration) / longitudinal speed (10)
heading = heading +ΔΘ (modulo 360°) (1 1).
After determining heading, the system uses equations 7 and 8 to determine the east and north distances and equations 5 and 6 to determine position.
The use of multiple, orthogonal axes acceleration information to propagate a vehicle position from a previous position to a current position is described in more detail in copending U.S. patent application no. 08/580 ,177 , entitled "Improved Vehicle Navigation System And Method Using A Multiple Axes Accelerometer" and filed concurrently with this application.
After determining the initial current position at step 156, 164, 170 or 180, the system proceeds to step 182 where the current position is compared with the GPS position. If the current position is within an acceptable distance (within 100m for example) from the GPS position, the system determines that the current position is valid at step 184. If not, the system replaces the current position with the GPS position at step 186. At this point, the system sends to a map matching step 188 a position and velocity, which has speed and heading components. Depending on the configuration ofthe map database 30, other information can be sent to the map matching block 188, such as heading and distance based on the current and previous positions, a current position and figures of merit (FOM) for each.
The map matching block 188 sends back a map matched current position, distance, heading, FOMs for each and calibration data. In this embodiment, the map matching block 188 interrogates the map database 30 (FIG. 2) to obtain a heading ofthe mapped path segment which the vehicle is determined to be traversing. The map matching block 188 updates the heading associated with the current position, which was based on GPS and/or sensor calculations, to obtain an updated current position. As such, the map matching block 188 uses the map heading to update the heading based on the GPS velocity information, the heading based on the GPS position information of step 186, the heading from the sensors, or the heading based on a current position determined through a combination of GPS and sensor information, such as an embodiment with all raw inputs going into a Kalman filter.
As shown in FIG. 6a, the vehicle navigation system 10 uses GPS velocity information to propagate a previous position 191 to a current position 192 (by adding displacements 194 and 196 obtained from the velocity information (integrated) to the previous position). In FIG. 6b, if GPS information is not available, the vehicle navigation system uses sensor information to propagate the previous position 191 to current position 192 using heading and distance 198. If the difference between the GPS heading (or current heading from the sensors if GPS is not used) and the map heading is within a threshold, then the map heading is used as the heading for position propagation. The vehicle navigation system 10 can accomplish this in alternative ways. For example, as shown in FIG. 6c using GPS velocities, the vehicle navigation system 10 rotates the GPS velocity vector 200 to align with the map heading 202 if the GPS and map headings are within the threshold and integrates the rotated GPS velocity vector 204 to obtain the displacements 208 and 210. As shown, the updated current position 206 is obtained by applying orthogonal displacements 208 and 210 to the previous position 191. In FIG. 6d, if the vehicle navigation system uses sensor information to propagate the previous position 191 to current position 1 2 using heading and distance 198, the map heading 202 can be used as the heading for position propagation to the updated current position 206. The use of map heading to update the information obtained from the non-GPS sensors or a combination of GPS and other sensors can be accomplished in a similar manner as would be understood by one of skill in the art. Depending on the information available and the particular embodiment, the improved vehicle navigation system can react differently to the information provided by the map matching block 188.
Thus, the improved vehicle navigation system provides several significant advantages, such as flexibility, modularity, and accuracy at a cheaper cost because updating can be performed at a complete stop The principles of the present invention, which have been disclosed by way of the above examples and discussion, can be implemented using various navigation system configurations and sensors The improved vehicle navigation system, for instance, can be implemented without using an odometer connection and obtaining distance information from the accelerometer inputs when GPS is not available to improve portability and installation costs Moreover, the improved vehicle navigation system can obtain dead reckoning information from GPS signals when a full set of GPS measurements is available, and use its sensors when anything less than a full set of GPS signals is available Those skilled in the art will readily recognize that these and various other modifications and changes may be made to the present invention without strictly following the exemplary application illustrated and described herein and without departing from the true spirit and scope of the present invention, which is set forth in the following claims