1. Field of the Invention
This invention relates to a portable navigation device comprising an accelerometer, a GPS receiver, and a calibration module. The calibration module generates calibration parameters that enable acceleration data from the accelerometer to be accurately converted into speed and heading data and integrated over time to give distance data. The term GPS refers to the GPS satellite navigation system, and any equivalent or similar system, such as Galileo.
2. Description of the Prior Art
It is well known to integrate GPS with dead reckoning systems and for the GPS to be used to calibrate the output from the dead reckoning sensors. Reference may be made to “Integration of GPS and Dead-Reckoning Navigation Systems” by Wei-Wen Kao, Vehicle Navigation & Information Systems Conference Proceedings P-253 ISBN 1-56091-191-3. The basic approach there is to use the absolute position accuracy of GPS to provide feedback signals to correct the dead-reckoning errors, while the smoothness and constant availability of the dead-reckoning signals are used to correct GPS position errors (e.g. due to multipath propagation and the selective availability that was imposed at the time the paper was written, 1991). Later systems were designed to correct for the inclination (‘pitch’) and tilt (‘roll’) in embedded or built in automotive systems; reference may be made to EP 1096230, which is also helpful in providing a detailed background. The contents of this publication are incorporated by reference.
However, most current generation automotive navigation devices are not embedded systems at all, but instead portable systems. These pose significant challenges because they are typically removably mounted on suction mounts against the vehicle windshield. These devices are therefore rarely fixed with the same orientation (i.e. pitch, roll or yaw) and in fact any of these factors can alter even during a drive.
The invention is a portable navigation device comprising an accelerometer, a GPS receiver, and a calibration module. The calibration module generates calibration parameters that enable acceleration data from the accelerometer to be accurately converted into speed and heading data, in which the calibration parameters are calculated from GPS derived speed and heading data and resolve or otherwise compensate for (i) the attitude of the portable device with respect to the horizontal plane (‘pitch’) and (ii) the angle between the forward direction of the device and the driving direction of a vehicle the device is mounted in (‘yaw’).
The angle between the forward direction of the device and the driving direction of the vehicle the device is mounted in (i.e. ‘yaw’) can be altered at any time by a user of the device and the calibration module will automatically calculate calibration parameters that resolve or otherwise compensate for this changed angle. Modelling yaw is important but prior art systems concentrated on compensating for just pitch and roll, principally because they were focussed on embedded systems. But for portable navigation systems, yaw is a surprisingly important attribute to resolve.
In one implementation, the device calculates calibration parameters for each successive valid GPS-derived speed and heading fix. The device then stores the calculated calibration parameters, and clears any stored calibration parameters that are of more than a predefined age (e.g. 5 seconds old).
Unlike typical prior art system that combine GPS and dead-reckoning systems at the same time, the device may determine its position exclusively using data derived from the accelerometer if the GPS signal is lost and valid calibration parameters are available; when a GPS fix is available, then no assistance from the accelerometer is provided.
In operation, one implementation stores a predefined number of samples of speed and heading calibration parameters together with time and accelerometer data. The device checks that at least n seconds of data is stored and then compares stored GPS and accelerometer data for each n second epoch is compared against thresholds of speed and age.
The portable navigation device can be a touch-screen controlled automotive navigation device. This can be removably mounted onto a vehicle windscreen using a suction mount. It could also be a handheld device, and may also operate as a mobile telephone.
This section describes an Assisted Satellite Navigation (ASN) option for automotive, portable navigation devices. ASN uses a dual axis accelerometer to predict the position when no GPS is available. It may also include an on-board gyrometer for improved accuracy.
To be useful the accelerometer has to be calibrated. The calibration has to be performed to resolve:
The attitude causes part of the acceleration of the earth's gravity field to leak through in the measured accelerations. The angle causes the effect that a single longitudinal or lateral acceleration influences both axes of the accelerometer. If the device is mounted upside down, the lateral axis will be reversed. This situation is set by the user in the preference settings (, and used by the software.
The position used in the device is either a pure GPS solution or a pure ASN solution. These modes are discussed in the next two sections.
2. Behavior if GPS is Available
GPS positions are received typically every second (1 Hz). If GPS positions are available, these are passed unaltered. The speed and heading are passed into the calibration module. This module tries to calculate a set of calibration parameters that is used to convert acceleration into speed and heading. These parameters are recalculated every time a valid GPS fix is received.
The accelerations are tested for reasonable values (sanity check), the values should be less then 20 m/s2, i.e. twice the acceleration of the earths gravity. If accepted, they are accumulated and stored. If a GPS fix is received, the age of the last added GPS data is checked. If this age is more than 5 seconds, the calibration is reset. This has the effect that a gap in the GPS data of less than 5 seconds does not invalidate the calibration. In this time span ASN is invoked (if the calibration is valid). If the speed and heading are accepted, they are stored together with its time and the accelerometer data. The last 30 samples are kept, previous ones are discarded. After this a calibration is attempted.
First is a check that at least 30 seconds of data is present. Next, the stored GPS and accelerometer data for each epoch is checked for the following conditions:
To proceed with the calibration, ¾ of the buffer (30 seconds at 1 Hz is 30 samples) should be available (i.e. 22 samples). A period of 30 seconds of GPS data is needed. The GPS speed and heading are matched against the accelerometer data by a least squares calculation. The observations are weighted based on their age, older observations get less weight. After a first match the data with the largest w-test static are removed, to eliminate outliers. Fifteen percent of the speed and 15% of the heading data is removed. After this a new calibration (without the removed observations) is performed. This results in a set of calibration parameters that is used for ASN when needed.
3. Behavior if GPS is Unavailable
If the GPS receiver looses track of the satellites, no valid GPS position is available. In this situation ASN is used, if the system is calibrated. The calibration parameters together with the accelerations are used to calculate the speed and heading of the vehicle. These are integrated in time to give the ASN derived position. This continues until one of the following conditions is reached:
The last two conditions may occur due to small error in the calibration parameters. Once there are valid GPS positions again, the calibration is invalidated. The new data will be used to compute a new calibration.
4. Zero Velocity Updates
By looking at the raw accelerometer observations it is possible to detect if the vehicle is stationary. This information is used to update the internal filter and thus used only internally. As of now it is not used in any other functions.
5 Map Matching
To improve the performance of ASN feedback from the map matcher is accepted. The position is map matched in normal fashion. This makes that the position that is shown on the screen stays on the road. Also the heading between two consecutive positions is computed, and the predicted heading is corrected to match the map matched heading.
System Architecture
In contrast to conventional embedded devices which execute all the OS and application code in place from a large mask ROM or Flash device, an implementation of the present invention uses a new memory architecture. The device, includes conventional items such as a microprocessor, power source, display and related rivers. In addition, it includes a SD card reader; a SD card is shown slotted into position. The device has internal DRAM and XIP Flash.
The device hence uses three different forms of memory:
On boot up the proprietary boot loader will prompt for the user to insert the supplied SD card. When this is done, the device will copy a special system file from the SD card into RAM. This file will contain the Operating System and navigation application. Once this is complete control will be passed to the application. The application then starts and access non-volatile data e.g. maps from the SD card.
When the device is subsequently switched off, the RAM contents is preserved so this boot up procedure only occurs the first time the device is used.
Device also includes a GPS receiver with integral antenna.
The following other signals are also connected via the dock to the navigation device:
1. Power from the vehicle
2. A signal to automatically mute the car audio system during a spoken command
3. A signal to switch on and off the device automatically with the vehicles ignition switch or key
4. Audio output signals to play spoken commands on the vehicles audio system.
GO Product Specification
Introduction
GO is a stand-alone fully integrated personal navigation device that implements the present invention. It will operate independently from any connection to the vehicle.
Target Markets
Go is intended to address the general personal navigation market. In particular it is designed to extend the market for personal navigation beyond the “early adopter” market. As such it is a complete stand-alone solution; it does not require access to a PC, PDA or Internet connection. The emphasis will be on completeness and ease of use.
Although Go is a complete personal navigation solution it is primarily intended for in vehicle use. The primary target market is anybody who drives a vehicle either for business or pleasure.
To successfully address this market Go must satisfy the following top-level requirements:
Go is an in-vehicle personal navigation device. It is designed as an appliance, that is, for a specific function rather than a general purpose one. It is designed for the consumer after-sales automotive market. It will be simple to use and install by the end user, although a professional fitting kit will be optionally supplied.
The principal features are:
Go will use a customised version of embedded Linux. This will be loaded from an SD card by a custom boot-loader program which resides in Flash memory
Hard Buttons
Go will have only one hard button, the power button. It is pressed once to turn on or off Go. The UI will be designed so that all other operations are easily accessible through the pen based UI. There will also be a concealed hard reset button.
Architecture
Go architecture is based around a highly integrated single chip processor designed for mobile computing devices. This device delivers approximately 200 MIPs of performance from an industry standard ARM920T processor. It also contains all the peripherals required excluding the GPS base-band. These peripherals include DRAM controller, timer/counters, UARTs, SD interface and LCD controller.
The main elements of this architecture are:
The Go block diagram is at
Power Management
Go will be powered from an integrated Li-Ion 2200 mAH rechargeable battery. This battery can be charged, and the device powered (even if the battery contains no charge) from an externally supplied +5V power source. This external +5V power source is supplied via the docking connector or a DC jack socket.
This +5V supply will be generated from the vehicle's main supply rail or from a mains adapter externally. The device will be turned on and off by a single button. When the device is turned off the DRAM contents will be preserved by placing the RAM in self-refresh so that when switched on Go will resume from where it was switched off. There will also be a wake-up signal available through he docking connector, this can be used to auto-switch on Go when the vehicle ignition is switched on.
There will also be a small hidden reset switch.
System Memory Architecture
In contrast to conventional embedded devices which execute all the OS and application code in place from a large mask ROM or Flash device, Go will be based on a new memory architecture which is much closer to a PC.
This will be made up of three forms of memory:
A 52 mm diameter speaker is housed in Go to give good quality spoken instructions. This will be driven by an internal amplifier and audio codec. Audio line out will also be present on the docking connector.
SD Memory Slot
Go will contain one standard SD card socket. These are used to load system software and to access map data.
Display
Go will use a transflective 3.5″ TFT backlit display It will be a ‘standard’ ¼ VGA display as used by PocketPC PDA's. It will also contain a touch panel and bright CCFL backlight.
Power Supplies
Power Supply—AC adapter socket
4.75V to 5.25V (5.00V+/−5%) @ 2A
Power Supply—Docking Connector
4.75V to 5.25V (5.00V+/−5%) @ 2A
Variants
It shall be possible to assemble and test the following variants of Go:
Standard (Bluetooth depopulated, 32 Mbyte RAM)
In the Standard variant the Bluetooth function is not populated, and 32 Mbytes RAM is fitted.
Bluetooth Option (Future Variant)
The product design should include Bluetooth although it is not populated in the standard variant to minimise BOM cost. The design should ensure that all other functions (including GPS RF performance) operate without degradation when the Bluetooth function is operating.
64 Mbyte RAM Option (Future Variant)
The product design should ensure it is possible to fit 64 Mbyte RAM instead of 32 Mbyte.
Subassemblies
Go consists of various electrical subassemblies.
RF Cable
The RF cable feeds the RF signal from an external GPS antenna (which connects to Go via the RF docking connector) to the RF PCB where the GPS module is situated.
External Connectors
Docking Connectors
Two Docking Connectors provide an interface to external Docking Stations.
PWR Power connection
PU Pull-Up resistor within the unit
O/D Open-Drain output
PD Pull-Down resistor within the unit
RF Docking Connector
The RF Docking Connector allows connection of an external active GPS antenna via a Docking Station.
AC Adapter Socket
The AC adapter socket allows power to be supplied from a low cost AC adapter or CLA (Cigarette Lighter Adapter).
USB Connector
The USB connector allows connection to a PC by means of a standard mini USB cable.
SD Card Socket
A hard locking SD card socket suitable for high vibration applications supports SDIO, SD memory and MMC cards.
(Although Go provides hardware support for SDIO, software support will not be available at the time of product introduction)
Processor
The processor is the ARM920T based SOC (System on chip) operating at approx 200 Mhz.
RAM
Go will be fitted with RAM to the following specification:
Flash Memory
Go will be fitted with a minimum of 256 kbyte of 16-bit wide Flash Memory to contain the following:
The following devices can be used depending on price and availability.:
GPS Internal Antenna
The GPS internal antenna is attached directly to the RF PCB.
GPS External (Active) Antenna Switching
When an external antenna is connected via the RF Docking Connector, the GPS antenna source is automatically switched to the external antenna.
Accelerometer
A solid state accelerometer is connected directly to the processor to provide information about change of speed and direction.
Auxiliary Functions
Ignition Synchronization
Ignition Wakeup
A rising edge on the Docking Station IGNITION signal will wakeup the unit. The IGNITION signal may be connected to a 12V or 24V vehicle battery.
Ignition State Monitoring
The state of the Docking Station IGNITION signal is detected and fed to a GPIO pin to allow software to turn off the unit when the ignition signal goes low.
Standard Peripherals
The following peripherals will be included as standard with Go.
The following optional peripherals will be available at or after the time of launch of Go
Number | Date | Country | Kind |
---|---|---|---|
0604709.6 | Mar 2006 | GB | national |
0604708.8 | Mar 2006 | GB | national |
0604704.7 | Mar 2006 | GB | national |
0604706.2 | Mar 2006 | GB | national |