NAVIGATIONAL AID
The present invention relates to portable devices, and is particularly concerned with monitoring the location and speed of movement of such portable devices. The facility is of particular utility in monitoring the geographical locations of mobile telephone instruments .
In mobile telephone networks, there is expected shortly to be a requirement for emergency calls emanating from mobile telephones to include information relating to the geographical position of the mobile telephone at the time of making the call. There is also a commercial advantage to the network service provider in knowing the geographical location of the user of a mobile telephone, so that marketing of products or services to the subscriber can be tailored to suit the subscriber's location. The user can also use the position information for navigational purposes, either referring the user's current position to a traditional road atlas or to a computerised navigational system.
The position of a mobile telephone handset may be calculated on the basis of radio signals within the mobile telephone network, either by monitoring the reception of synchronised signals received by the handset from a number of base stations whose locations are known, or by monitoring the time of arrival of a signal from the handset at a number of base stations of known location. Either the relative signal strengths, or the relative
timing of synchronized signals may be measured.
To obtain an unambiguous positional fix on the handset on this basis, a minimum of three base stations must be within range of the handset, and this cannot be guaranteed at all times. Alternatively a single base station may be sufficient to establish the position of the mobile unit, if the base station can determine a bearing from the station to the unit, and a distance based on signal travel time. Such a system however requires a directional antenna at the base station.
An alternative method of determining position is to use a satellite positioning system such as GPS, by incorporating a GPS unit within the handset itself, or within a mounting for the handset which is to be attached to a vehicle. A disadvantage of the GPS system is that when the user is in a city, buildings can often interfere with lines of sight to satellites and prevent a GPS fix from being obtained. There are also multi-paths problems associated with GPS receivers. This is because, the GPS satellite signals reflect of various structures before reaching the receiver, resulting in multiple versions of the received signal, all with slightly different phases. This multi-path problem can result in a loss of synchronisation and can result in errors in the GPS position fixes .
One objective of the present invention is to provide a means by which the speed of movement of a portable or
mobile device can be estimated, so that the current position of the device may be calculated on the basis of the speed and direction and movement of the unit since a last known position.
Another object of the present invention is to provide a navigational aid which can receive signals from, for example, a GPS receiver identifying the position of the unit and which includes a secondary position estimating unit which estimates the position of the navigational aid using dead reckoning techniques. Preferably, the secondary positioning unit determines the speed of the navigational aid by sensing a mechanical or acoustic vibration which varies with speed, from which the current position can be determined.
According to one aspect, the present invention provides a navigational aid comprising: position indicating means for receiving signals from an external source and for determining a position of the navigational aid; means for estimating an orientation of the navigational aid; means for estimating a speed of the navigational aid; and means for estimating the current position of the navigational aid on the basis of a previous position generated by the position indicating means, the estimated speed and the estimated orientation.
According to another aspect, the present invention provides a speed determining device comprising: means for sensing vibration; means for storing data defining a
relationship between the sensed vibration and the speed; and means for determining a speed corresponding to the sensed vibration using the stored data.
According to another aspect, the present invention provides a method and apparatus for providing a warning signal to a vehicle driver when one or more wheels of the vehicle go on to a rumble strip located at the side of the road, the apparatus comprising: means for sensing vibration; means for comparing the sensed vibration with stored data; means for determining whether or not one or more of the wheels of the vehicle are on the rumble strip in dependence upon the comparison; and means for outputting a warning to the user if it is determined that one or more of the wheels are on the rumble strip.
Exemplary embodiments of the present invention will now be described in detail, with reference to the accompanying drawings, in which:
Figure 1 is a partial cutaway view illustrating an interior of a motor vehicle in which a mobile telephone is supported in a mounting bracket fixed to the car;
Figure 2 is a schematic block diagram of the mobile telephone shown in Figure 1;
Figure 3 is a schematic block diagram illustrating the main components of an azimuth sensor forming part of the mobile telephone shown in Figure 2;
Figure 4 is a diagram showing a number of successive positions of the mobile telephone during a movement sequence;
Figure 5 is a schematic block diagram illustrating the main components of a speed sensor forming part of the mobile telephone shown in Figure 2;
Figure 6 is a plot illustrating the way in which the value of an acoustic parameter extracted from an input audio signal varies with speed;
Figure 7 is a flow chart illustrating the operation of the mobile telephone in determining its current position;
Figure 8 is a schematic block diagram illustrating the main components of an alternative speed sensor which may be used in the mobile telephone schematically illustrated in Figure 2;
Figure 9a is a plot of the power spectral density over a frequency band of interest of an input audio signal processed by the speed sensor shown in Figure 8 when the vehicle is travelling at 40 miles per hour in gear 3;
Figure 9b is a plot of the power spectral density over a frequency band of interest of an input audio signal processed by the speed sensor shown in Figure 8 when the vehicle is travelling at 50 miles per hour in gear 4;
Figure 9c is a plot of the power spectral density over a frequency band of interest of an input audio signal processed by the speed sensor shown in Figure 8 when the vehicle is travelling at 60 miles per hour in gear 4;
Figure 9d is a plot of the power spectral density over a frequency band of interest of an input audio signal processed by the speed sensor shown in Figure 8 when the vehicle is travelling at 70 miles per hour in gear 4;
Figure 10 is a schematic block diagram illustrating the main components of an alternative speed sensor which may be used in the mobile telephone schematically illustrated in Figure 2;
Figure 11 is a schematic block diagram illustrating the main components of an alternative speed sensor which may be used in the mobile telephone schematically illustrated in Figure 2 ;
Figure 12 is a plot illustrating a ripple signal on the vehicle battery voltage;
Figure 13 is a schematic block diagram illustrating an alternative form of the speed sensor which may be used in the mobile telephone and which detects speed by detecting a frequency of the ripple signal on the vehicle battery voltage level;
Figure 14 illustrates an alternative form of speed sensor
which may be employed in the mobile telephone shown in Figure 2 ;
Figure 15 illustrates yet another form of speed sensor which may be employed in the mobile telephone illustrated in Figure 2;
Figure 16 illustrates a yet further alternative form of speed sensor which may be used in the mobile telephone shown in Figure 2; and
Figure 17 is a schematic block diagram illustrating the principal components of a personal digital assistant embodying the present invention.
OVERVIEW
Figure 1 is a partially cutaway view illustrating the interior of a vehicle 1. As shown, a mobile telephone 3 is provided in the vehicle mounted in a cradle 5 which is powered from a cigarette lighter socket 7. In this embodiment, the mobile telephone 3 includes a GPS receiver for receiving position, speed and course information of the mobile telephone 3 over the ground. The mobile telephone 3 can then relay this positional information back to the telephone network or to a remote navigation centre for navigational instructions . As will be described below, in addition to the GPS receiver, the mobile telephone 3 also includes a speed sensor for sensing the speed of the mobile telephone, from which the current position of the mobile telephone 3 can be
calculated on the basis of a last known position and the current speed and direction of travel. The speed sensor may then be used to provide positional information even when GPS signals are unavailable.
Figure 2 illustrates in more detail the main components of the mobile telephone 3. As shown, the mobile telephone 3 includes a telephone transceiver circuit 11 having a microphone 13 and a loudspeaker 15. Radio signals are received and sent by the transceiver circuit 11 via an antenna 17. A conventional display 19 and keyboard 21 are provided as a user interface for allowing the user to dial calls, receive text messages, etc.
The telephone transceiver circuit 11 is controlled by a central processing unit (CPU) 23, to which the transceiver circuit 11, the display 19 and the keyboard 21 are linked. Also linked to the CPU 23 are a positioning unit 25 (which in this embodiment is a GPS receiver) with an antenna 27 for receiving position signals from an external source. The GPS positioning unit 25 provides the CPU 23 with a position signal, a speed over the ground signal and a course over the ground (COG) signal, which are constantly updated (every second or so) while the mobile telephone 3 has direct communication with a sufficient number of the GPS satellites .
An azimuth sensor 29 is also provided in the mobile telephone 3 , for outputting a signal indicating the
direction or orientation of the mobile telephone 3 in the horizontal plane. The azimuth sensor 29 is shown in more detail in Figure 3. As shown, the azimuth sensor 29 comprises a compass 30, an azimuth model 32 and an adaptation unit 34. In this embodiment, the compass 30 is a conventional magnetic compass combined with a sensor to detect the relative positions of the mobile telephone and the compass and to provide an output signal indicative of the orientation of the mobile telephone 3 relative to magnetic north. Alternatively, the compass 30 may be an electronic device such as a flux-gate compass or a rotation sensor for detecting rotation of the mobile telephone about a vertical axis and linked to an integrating circuit to provide a continuous indication of the angle through which the handset has been turned since a reference time and direction were recorded. As shown, the signal output from the compass 30 is input to the azimuth model 32 which, in this embodiment, is a look-up table relating compass readings obtained from the compass 30 to an estimated course over the ground reading. In this embodiment, the azimuth model 32 is provided since the body and framework of the vehicle 1 are likely to distort the compass reading. The azimuth model 32 effectively compensates for this distortion caused by the vehicle 1. In this embodiment, the azimuth model 32 is a look-up table which relates readings from the compass 30 to actual courses over the ground measurements obtained from, for example, the GPS positioning unit 25. In this embodiment, this look-up table is constantly updated by the adaptation unit 34
when actual course over the ground measurements are obtained from the GPS positioning unit 25. The adaptation unit 34 may be driven either with correct measurements of the course over the ground from the GPS positioning unit 25 or from the error between the estimated course over the ground provided by the azimuth sensor 29 and the actual course over the ground provided by the GPS positioning unit 25. By adapting the azimuth model in this way, the actual orientation of the compass relative to the vehicle is not relevant, since the azimuth model will correct for this .
The mobile telephone 3 also has a memory 31 including ROM memory for storing operational programs and RAM memory for storing data and for providing a working space for the CPU 23 to perform calculations. In this embodiment, the data stored in the memory 31 comprises the following elements:
1) CURRENTPOS - this is the position data for the current position fix (either estimated by the telephone or provided by the GPS positioning unit 25) .
2) LASTPOS - this is the position data determined immediately before CURRENTPOS.
3) CURRENTSPEED - this is the speed of travel at the current time point which is either provided from the GPS positioning unit 25 or from the speed
sensor 35.
4) COG - this is the current course over the ground, data either provided by the GPS positioning unit 25 or from the azimuth sensor 29.
5) ESTSPEED - this is the estimated speed of travel at the current time point provided by the speed sensor 35.
6 ) ESTCOG - this is the current estimated course over the ground provided by the azimuth sensor 29.
7 ) SPEEDOFFSET - this is a speed error signal between the estimated speed generated by the speed sensor
35 and the actual speed determined by the GPS positioning unit 25.
8) COGOFFSET - this is the angular offset between the estimated course over the ground provided by the azimuth sensor 29 and the actual course over the ground provided by the GPS positioning unit 25.
A speed sensor 35 is provided within the mobile telephone 3 for estimating the current speed of the mobile telephone over the ground. The CPU 23 uses the estimated speed output from the speed sensor 35 together with the course over the ground information generated by the azimuth sensor 29 to determine the current position of the mobile telephone 3, when the GPS positioning unit 25
is unable to provide this information. In particular, the CPU 23 uses "dead reckoning" techniques to determine the mobile telephone' s current position based on the last known position, the estimated speed generated from the speed sensor 35 and from the current course over the ground determined by the azimuth sensor 29.
Finally, a timing circuit 33 provides timing signals at predetermined intervals (or clock cycles) to the CPU 23, to enable the CPU 23 to control the reading of output signals from the positioning unit 25, the azimuth sensor 29 and the speed sensor 35.
Turning now to Figure 4, five successive positions of the mobile telephone 3 are shown. Each position P1...P5 corresponds to the position of the mobile telephone 3 at the beginning of a clock cycle of the timing circuit 33.
As indicated in Figure 3, the mobile telephone 3 moves in a substantially straight line from position Pi through position P2 to position P3, at which point it changes direction. The mobile telephone then moves in a second straight line from position P3 through position P4 to position P5. The different distances travelled between the points indicate that the average speed of the mobile telephone 3 varies, since in this embodiment, the position measurement is performed at regular time intervals .
The CPU 23 reads the output values from the positioning unit 25 at the beginning of each clock cycle of the
timing circuit 33. In the example illustrated in Figure 3, the positioning unit 25 provides position fixes, speeds and course over the ground signals, at points PI, P2 and P3. Each time the CPU 23 receives this information, it stores the values as CURRENTPOS, CURRENTSPEED and COG. The CPU 23 also receives a current estimated speed (ESTSPEED) from the speed sensor 35 together with a current estimated course over the ground (ESTCOG) generated by the azimuth sensor 29. In this embodiment, the CPU 23 generates a speed error signal between the estimated speed generated by the speed sensor 35 and the actual speed determined by the GPS positioning unit 25 and stores this as SPEEDOFFSET. The CPU 23 also calculates the angular offset between the estimated course over the ground provided by the azimuth sensor 29 and the actual course over the ground provided by the GPS positioning unit 25 and stores this as COGOFFSET.
Thus, at point P3, the position of point P3, the speed of travel from point P2 to point P3 and the direction D23 as a magnetic bearing will be stored. If the user in the vehicle 1 then turns left, then by the start of the next clock cycle, the mobile telephone will have moved to point P4, and has been rotated through approximately 75° (anticlockwise as seen from above). In this embodiment, a fixed relationship is maintained between the orientation of the mobile telephone 3 and the direction of travel. This is achieved, in this embodiment, by fixing the orientation of the mobile telephone 3 to the vehicle 1 by mounting it in the cradle 5.
At point P4, the CPU 23 reads the position, speed and course over the ground data from the GPS positioning unit 25 which is then stored in the memory 31 to replace the data previously stored at point P3. If the GPS positioning unit 25 then loses the signal to the GPS satellites, and the user continues to travel in the same direction, then the mobile telephone 3 must calculate the position data for point P5. This is done, in this embodiment, by using the estimated speed generated by the speed sensor 35 and the estimated course over the ground generated by the azimuth sensor 29. In the illustrated example, there has been no change in the course over the ground between points P4 and P5. Therefore, the CPU 23 assumes that the mobile telephone 3 has continued to travel in the same direction as for the leg D34. The CPU 23 therefore calculates the position data for point P5 by multiplying the estimated speed with the elapsed time since the position of P4 was determined, and starting from the position P4 adds this distance to the same direction as D34 to provide a "dead reckoning" position as the predicted position for the mobile telephone 3 at point P5.
If there had been a change in the course over the ground between points P4 and P5, then the CPU 23 assumes that the mobile telephone 3 has preserved its orientation relative to the vehicle's direction of travel and thus uses the estimated course over the ground determined by the azimuth sensor 29 as the course over the ground for the leg D45. The position data for point P5 is then
calculated by multiplying the estimated speed with the elapsed time since the position of P4 was determined to derive the distance of leg D45 (as before), and then applying this distance and the estimated course over the ground to the position data for point P4.
SPEED SENSOR
In the embodiment discussed above, an estimate of the vehicle's speed is determined and used by the CPU 23 to determine the current position of the mobile telephone 3 when GPS data is unavailable. The speed sensor 35 which provides this estimated speed measurement may use a number of different sensing techniques in order to provide this speed estimate. For example, the speed sensor 35 may be hardwired into the vehicle's speedometer. However, this is not preferred since it would require a complex interface to be made between the vehicle's speedometer and the mobile telephone 3. Sensing techniques which do not require any sophisticated connection to parts of the vehicle are preferred. Examples of such speed sensors will now be described.
Firstly, some speed sensors will be described which illustrate how a speed measurement may be obtained by analysing the signal generated by a microphone within the vehicle (which may be the microphone 13 of the mobile telephone 3) . The noise inside a car, ignoring the sound of people talking or the sound produced from audio equipment, is made up of three main components: wind noise, engine noise and tyre noise. Engine noise
dominates at speeds up to about 30 mph and the tyre noise dominates at higher speeds. It has been found that the spectrum of the engine noise depends primarily on the engine speed and typically shows distinct peaks at the fundamental and its harmonics, up to about 500 Hz. Tyre noise is due to two principle generating mechanisms: mechanical vibration of the tyre, typically at about 1 kHz, and "air pumping" by the tread pattern, typically at about 3 to 5 kHz. The amplitude of the tyre noise varies with speed whilst there is little, if any, variation in the spectrum of the tyre noise with speed.
Example 1
The speed sensor shown in Figure 5 is designed to detect the root mean square (RMS) of the acoustic noise which has been found to vary directly with the speed of the vehicle. As shown in Figure 5, in this embodiment, the speed sensor 35 comprises a separate microphone 41 the output of which is filtered by a filter 43 to remove frequencies of no interest. In this embodiment, the filter 43 removes frequencies above 1 kHz. The filtered signal is then converted into digital samples by an analog-to-digital converter 45 and the digital samples are then stored in a buffer 47. A segment (of approximately one second) of the audio data stored in the buffer 47 is then analysed by an acoustic data analysis unit 49 to determine the RMS value of the sampled data within the segment. The determined RMS value is then passed to an acoustic parameter to speed conversion unit 51 which converts the RMS value into an estimated speed
which it outputs to the CPU 23. The acoustic parameter to speed conversion unit 51 effectively stores a function (such as that shown in Figure 6) which relates the RMS value to speed. The function 57 may be stored in the form of a lookup table, parametric equation (such as a polynomial), Expert system, Neural Network or the like.
As those skilled in the art will appreciate, the sound produced by the vehicle 1 travelling over the road will depend oh the road surface and weather conditions. Therefore, a change in these will result in a change in the RMS value output by the analysis unit 49, yet no speed change may have occurred. Consequently, an adaptation unit 53 is provided to adapt the form of the function 57 used in the conversion unit 51, to take into account these changing environmental conditions. In this embodiment, the adaptation unit 53 performs the adaptation using standard feedback control techniques driven either by a correct speed measurement provided by the positioning unit 25 or by the SPEEDOFFSET signal calculated by the CPU 23. If the function relating the amplitude value to speed is stored as a lookup table, then the adaptation unit 53 may be configured to adapt all of the entries upon receipt of a correct speed measurement or upon receipt of the SPEEDOFFSET signal from the CPU 23. Alternatively, the adaptation unit 53 may simply adapt individual entries in the table one at a time upon receipt of a corresponding correct speed measurement. The reader is referred to the book "Adaptive Control", Astrom and Wittenmark, Addision-
Wesley 1995, for further information on adaptive control techniques.
Figure 7 is a flow chart illustrating the operation of the mobile telephone 3 in this embodiment. As shown, initially, the CPU 23 determines whether or not it has received a GPS update since the last clock cycle. If it has, then processing proceeds to step s3 where it stores the current position (CURRENTPOS) as LASTPOS, it copies the current GPS position fix as CURRENTPOS and it updates the time of the last fix. The processing then proceeds to step s5 where the CPU 23 instructs the adaptation unit 53 to update the acoustic parameter to speed conversion unit 51 within the speed sensor 35. In this embodiment, the adaptation unit 53 updates the acoustic parameter to speed conversion unit 51 based on the SPEEDOFFSET signal from the CPU 23. After the acoustic parameter to speed conversion unit 51 has been updated, the processing then proceeds to step s7 where the CPU 23 determines whether or not the speed indicated by the GPS positioning unit 25 is greater than a predetermined azimuth correlation threshold. If it is, then processing proceeds to step s9 where the CPU 23 instructs the adaptation unit 34 within the azimuth sensor 29 to update the azimuth model 32. If the GPS speed is not greater than this azimuth correlation threshold, then step s9 is omitted and the processing for the current clock cycle ends. In this embodiment, the azimuth model 32 is only updated when the car is travelling more than seven miles per hour. This is because, at this speed and above, there is a good
correlation between the orientation of the vehicle and the direction of travel. In contrast, when the vehicle is travelling slowly, there is a poor correlation between the course over the ground and the orientation of the vehicle. Consequently, decision step s7 is used in order to prevent the updating of the model at times when there is such a poor correlation between the sensed orientation and the course over the ground measurement.
If it is determined at step si, that there has been no GPS update since the last clock cycle, then the processing proceeds to step sll where the current position is stored as LASTPOS. The processing then proceeds to step sl3 where the CPU 23 gets the current estimated speed from the speed sensor 35. The processing then proceeds to step sl5 where the CPU 23 gets the current estimated course over the ground from the azimuth sensor 29. The processing then proceeds to step sl7 where the CPU 23 determines the new current position (CURRENTPOS) from the estimated speed, the estimated course over the ground and the elapsed time since the last position measurement was obtained. The time of the last position update is then updated in step sl9 and then the processing ends until the beginning of the next clock cycle when the processing returns to step si again.
Example 2
The speed sensor 35 discussed above was arranged to detect the RMS acoustic noise within the vehicle 1. The problem with this embodiment is that the RMS noise level
is relatively low at low speeds and is affected by other acoustic sources such as people talking or the vehicle' s radio etc. A speed sensor will now be described which senses the engine noise in order to provide a signal that varies with the engine speed. As those skilled in the art will appreciate and as will be described below, in order to convert a measure of the engine speed into an estimate of the vehicle's speed over the ground, the current gear that is engaged must also be known or estimated.
This engine noise speed sensor is shown schematically in Figure 8. In this embodiment, the speed sensor 35 receives the acoustic signal directly from the microphone 13 of the mobile telephone 3. This acoustic signal is input to the filter 43 which removes frequencies above 500 Hz. The filtered signal is then converted into digital samples by the analog to digital converter 45 and the samples are then stored in a buffer 47. In this embodiment, the acoustic data analysis unit 49 performs a frequency analysis on a segment of the audio data stored in the buffer 47. In particular, the acoustic data analysis unit 49 estimates the power spectral density (PSD) of a segment of data samples stored in the buffer 47 ending at the data sample corresponding to the start of the current clock cycle. In this embodiment, each clock cycle is one second long and the data segment analysed by the analysis unit 49 is 1.5 seconds long. In this embodiment, the analysis unit 49 uses Welch's averaged periodigram method for estimating the power
spectral density of the data within the segment. As those skilled in the art will appreciate, other techniques can be used such as the Bartlett technique or the Blackman-Tukey technique to estimate the PSD.
Figure 9 shows the estimated power spectral densities obtained by the analysis unit 49 when the vehicle 1 is travelling at different speeds. In particular, Figure 9a shows the estimated power spectral density obtained by the analysis unit 49 when the vehicle 1 is travelling at 40 mph in gear 3; Figure 9b shows the estimated power spectral density obtained by the analysis unit 49 when the vehicle 1 is travelling at 50 mph in gear 4; Figure 9c is the estimated power spectral density obtained by the analysis unit 49 when the vehicle 1 is travelling at 60 mph in gear 4; and Figure 9d is the estimated power spectral density obtained by the analysis unit 49 when the vehicle 1 is travelling at 70 mph in gear 4. As can be seen from Figures 9a to 9d, there is a very dominant frequency component at around 100 Hz whose position varies with speed. Measurements show that, for a given gear, an increase in speed corresponds to an increase in the frequency of the peak and, for a given speed, an increase in gear corresponds to a decrease in the frequency of the peak. Therefore, the relationship between the frequency of the peak, f, the speed of the vehicle, s, and the gear ratio, g, can be represented by:
f ~ a (i)
where is a constant of proportionality and p and q are unknown positive exponents. Therefore, the speed of the vehicle can be determined from:
Therefore, in this embodiment, the acoustic parameter to speed conversion unit 51 also needs to know the current gear (g) of the vehicle. As shown in Figure 8, this gear information is provided by a gear determination unit 75. In this embodiment, the determination unit 75 determines the current gear that the vehicle is in by tracking the variation in the peak frequency of the power spectral density. In this embodiment, the gear determination unit 75 also receives current GPS speed data on control line 79 when it is available. It uses this actual speed measurement and pre-stored data which defines the relationship between the frequency of the peak, the current gear engaged and the actual speed over the ground to correct its gear determination if necessary. In this embodiment, this pre-stored data is in the form of a look up table (not shown) which is either determined in advance during a training routine or is determined by correlating the relationship between the peak frequency, the gear engaged and the speed over the ground.
In this embodiment, the acoustic parameter to speed conversion unit 51 initially uses equation (2) above to determine the estimated speed (s), with a set to the
value of 2 and with p and q set to the value of 1. These values were derived from various test results that have been carried out. As shown in Figure 8, the speed sensor 35 also includes an adaptation unit 53 which is operable to adjust the values of the parameters , p and q in order to improve the accuracy of the estimate and in order to take into account time variations in the parameters caused by changing environmental conditions. The adaptation unit 53 may use standard control engineering techniques in order to adapt these parameters. Alternatively, it may use Expert System based techniques or Neural Network techniques to carry out the appropriate parameter updates.
Example 3
In the above described speed sensors, a signal from a microphone within the vehicle 1 is analysed to extract a characteristic feature of the acoustic signal which varies with either the speed of the vehicle or the speed of the engine. The first sensor detected a root mean square level of a segment of the acoustic signal and the second detector determined the power spectral density of a segment of the acoustic signal. One problem with the second speed sensor described above is that a relatively long segment of the acoustic signal is required in order to provide reasonable frequency resolution in the power spectral density plot. An alternative technique is to use time domain modelling or parametric modelling techniques using, for example, autoregressive (AR) models or autoregressive moving average (ARMA) models or the
like. In order to reduce the amount of processing that has to be performed by the acoustic analysis unit 49 , the parametric model should be as simple as possible. In this case, the analysis unit would use standard system identification techniques in order to identify the parameter values which best represent a current segment of the audio signal. These techniques are well known to those skilled in the art and will not be described in further detail here. Further information on this type of time domain modelling technique can be found, for example, in the System Identification Toolbox for use with MATLAB, User Guide. The parameters from this model can then be converted into a speed measurement by an appropriate parameter to speed conversion unit. In this case, since several parameters will be input to the conversion unit, the conversion unit will preferably include a Neural Network or an Expert System which can convert the multi-parameter input into an output estimate of the vehicle's speed.
In the second and third example speed sensors described above, the acoustic analysis unit determined the power spectral density for an input data segment or it identified the parametric model which best represented the acoustic data within the segment. As those skilled in the art will appreciate, these techniques are computationally intensive and may not be suitable where processing power is limited. Alternatively, the acoustic analysis unit may be arranged to perform a simple iterative spectrum update or model parameter update from
one time segment to the next. As those skilled in the art will appreciate, such an iterative technique will reduce the amount of computation that has to be calculated for each segment of acoustic data. There are a number of iterative update techniques that may be used, with Bayesian methods being the most robust and simplest to implement. For more information on spectral estimation, the reader is referred to the books entitled "Discrete Random Signals and Statistical Signal Processing" by Therrien, Prentice Hall, 1992 and "Probability, random processes, and estimation theory of engineers" by Starks and Woods, Prentice Hall, 1996. The reader is also referred to the book "Numerical Bayesian Methods Applied to Signal Processing" by O'Ruanaidh and Fitzgerald, Springer-Verlag, 1996, which deals with Bayesian spectral estimation.
Example 4
In the above described speed sensors, a signal from a microphone within the mobile telephone 3 was used to monitor ambient sounds in order to provide a speed estimate of the vehicle. As an alternative, a vibration sensor such as a weight on a spring and/or an accelerometer may be provided in the mobile telephone 3 and the output signal from the vibration sensor may be processed to determine an estimate of the vehicle's speed.
Figure 10 is a schematic block diagram illustrating such an embodiment of the speed sensor 35. As shown, the
speed sensor 35 includes the vibration sensor 61 which senses structural vibration of the vehicle 1. The signal output from the vibration sensor 61 is then passed to a signal analysis unit 63 which processes the signal output from the vibration sensor to generate a characteristic parameter value which varies in dependence upon the speed of the vehicle. Again, the signal analysis unit 61 may perform a time domain analysis or a frequency domain analysis of the signal from the vibration sensor 61. The characteristic parameter value output from the signal analysis unit 63 is then converted into a speed measurement by a signal parameter to speed conversion unit 65. Again, the conversion unit 65 may be a look up table, stored parametric model, Expert System, Neural Network or the like. The speed measurement output by the conversion unit 65 is then passed to the CPU 23 as before. As with the speed sensors described with reference to Figures 5 and 8, the speed sensor 35 in this embodiment also includes the adaptation unit 53 which adapts the conversion unit 65 as before.
In the speed sensor described above with reference to Figure 8, a parameter which varied with the engine speed was determined and combined with an indication of the engaged gear to provide an estimate of the current speed of the vehicle over the ground. As those skilled in the art will appreciate, other signals can be sensed which vary with the engine speed.
Example 5
A speed sensor 35 will now be described with reference to Figure 11 in which the engine speed is determined by remotely detecting radio frequency (RF) emissions from the engine (in this embodiment from the engine's spark plugs (not shown)). In particular, each time a spark plug is energised, a pulse of electromagnetic energy is generated. Since the firing rate of the spark plugs is directly related to the speed of the engine, the engine speed can be estimated by determining the frequency of emission of the pulses generated by the spark plugs. Referring to Figure 11, the speed sensor 35 comprises an RF detector 71 for detecting the radio frequency signals generated by the spark plugs and for converting the signal into a corresponding electrical signal which is passed to a signal analysis unit 73. The signal analysis unit 73 then analyses the equivalent electrical signal to determine the rate at which the spark plugs are being fired and hence to determine the engine speed (rpm) . The determined engine speed is output to a gear determination unit 75 which tracks the engine speed and determines which gear is currently engaged. It does this by looking for significant changes in the determined engine speed. In order that the gear determination unit 75 can track changes in the gears, the signal analysis unit 73 continuously analyses the signal output from the RF detector 71 and provides its determinations to the gear determination unit 75. The engine speed determined by the signal analysis unit 73 is also passed to an rpm to speed conversion unit 77 which also receives the indication of the current gear from the gear
determination unit 75. The conversion unit 77 performs the conversion using pre-stored data defining the relationship between the engine speed, gear and the speed of the vehicle over the ground. Again, this relationship may be in the form of a lookup table, parametric model, Expert System, Neural Network or the like. In this embodiment, the conversion unit 77 only performs the conversion when it is triggered to do so by the CPU applying a trigger signal to the control line 55.
As shown in Figure 11, an adaptation unit 53 is also provided for adapting the conversion unit 77. In this embodiment, the adaptation unit 53 is provided solely for performing the initial calibration of the conversion unit 77 for the current vehicle in which the mobile telephone is mounted. In this embodiment, once the adaptation unit 53 has performed its initial calibration, it is no longer used since the relationship between the firing of the spark plugs and the speed of the engine and the relationship between the speed of the engine and current gear to the speed of the vehicle over the ground do not change significantly during a journey in the vehicle. However, if the user changes vehicle, then this calibration of the conversion unit 77 must be re- performed for the new vehicle.
As in the speed sensor shown in Figure 8 , the gear determination unit 75 also receives, from the CPU 23, current GPS speed data on control line 79 when it is available. The gear determination unit 75 then uses this
actual speed measurement and pre-stored data which defines the relationship between engine speed, the current gear and the speed over the ground to correct its gear determination if necessary. This data will preferably be in the form of a lookup table and may either be pre-stored or it may be derived by correlating the relationship between the engine speed and the speed over the ground for each of the different gears.
Example 6
In the above speed sensor, the engine speed was determined by detecting the RF emissions of the spark plugs. Another phenomenon which can also be used to determine the engine speed is to identify the frequency of a ripple signal on the vehicle battery voltage. The ripple signal is generated by the alternator charging circuit. Since the alternator is directly geared to the engine, the frequency of the ripple is directly proportional to the engine speed (rpm). Figure 12 is a plot showing this ripple signal on the vehicle battery voltage. Figure 13 is a schematic block diagram illustrating the main components of a speed sensor 35 which estimates the speed over the ground by detecting the frequency of this ripple signal.
In this embodiment, the vehicle battery voltage signal is obtained from the cigarette lighter 7 which is used to power the mobile telephone cradle 5. The signal from the cigarette lighter 7 is input to a ripple frequency detector 81 on line 83. The ripple frequency detector 81
determines the frequency of the ripple signal and outputs this to a frequency to rpm conversion unit 85 which determines the corresponding engine speed (rpm) . Since there is a direct relationship between the ripple frequency and the engine speed, in this embodiment, the frequency to rpm conversion unit 85 uses a simple look up table to define the relationship between the ripple frequency and the engine speed. Alternatively, the relationship may be represented by a parametric model, Expert System, Neural Network or the like. As with the speed sensors described with reference to Figures 8 and 11, the determined engine speed is output to a gear determination unit 75 which determines the current gear that is engaged. Both the engine speed and the gear information are then passed to the rpm to speed conversion unit 77 which estimates the vehicle's speed over the ground, when triggered to do so by the CPU 23 (as before). The remaining blocks of the speed sensor 35 are the same as those used in the speed sensor shown in Figure 11 and will not be described again.
As has been discussed above, there are various ways in which the speed of the vehicle can be estimated from within the mobile telephone 3 without having any direct connections to the engine, rev counter, speedometer or the odometer. Whereas the embodiment described above with reference to Figures 12 and 13 required a connection to the cigarette lighter 7, this does not require any complex installation and will usually be available anyway for providing a charging current to the mobile telephone
3.
Example 7
In all of the above embodiments, a single speed measurement was determined. As those skilled in the art will appreciate, two or more of the above techniques may be combined together to provide a more accurate or more reliable speed estimate. Figure 14 is a block diagram of such a speed sensor 35. As shown, in this embodiment, N sensors 91-1 to 91-N are provided, each of which sense a signal which varies with the speed of the vehicle. The signals from the sensors 91 are input to a respective analysis unit 93-1 to 93-N where the respective signal is analysed to extract a characteristic parameter of the signal which varies with speed. These characteristic parameters determined by the analysis units 93 are then input to a respective speed conversion unit 95-1 to 95-N which output a respective estimated speed based on the input characteristic parameter and pre-stored data defining the relationship between the characteristic parameter and the speed of the vehicle over the ground. Each of the estimated speeds are then passed to a speed decision unit 97 which determines an estimated speed which it passes to the CPU 23. As shown in Figure 14, the adaptation unit 53 is also provided in this embodiment for adapting each of the speed conversion units 95 as before. As those skilled in the art will appreciate, if one of the sensors used in this embodiment determines a characteristic parameter which varies with the speed of the engine, then the corresponding analysis
unit 93 will also include the appropriate gear determination unit discussed above and the appropriate engine speed and gear information will then be provided to the corresponding speed conversion unit 95.
In this embodiment, the speed decision unit 97 determines the average of all of the estimated speeds determined by the speed conversion units 95. Alternatively, the speed decision unit 97 may determine a weighted average of the estimated speeds, with the weighting being dependent upon the reliability of the speed conversion unit 95 that provided the estimate. This reliability may be determined by comparing actual GPS speed measurements with the estimated speeds output by each of the speed conversion units 95. Once determined, the weights may be fixed or they may be dynamically updated by the adaptation unit 53. Alternatively, the speed decision unit 97 may be an Expert System, Neural Network or the like. Alternatively still, the speed decision unit 97 might simply choose one of the speeds output from a selected one of the speed conversion units 95. The selection may be random or it may be determined on the basis of how good each of the speed conversion units 95 has been estimating the vehicle's speed.
Example 8
In the speed sensor of Example 7, the characteristic parameter output by a respective analysis units was input to a respective speed conversion unit 95. Figure 15 illustrates an alternative embodiment in which the output
from each analysis unit 93 is input to a single speed conversion unit 99. In this embodiment, the speed conversion unit 99 stores data defining a relationship between all of the characteristic parameters output by the analysis units 93 to a single estimate of the speed of the vehicle over the ground, which is then output to the CPU 23. The data defining this relationship may be a multi-variable parametric model, Expert System or Neural Network.
Example 9
In the speed sensor of Examples 7 and 8, the adaptation unit 53 adapted the speed conversion unit(s) on the basis of a correct speed measurement provided by the CPU 23 or on the basis of the SPEEDOFFSET signal provided by the CPU 23. Figure 16 shows an alternative example in which the adaptation unit 53 receives signals from sensor 91-1 and the characteristic parameter output from analysis unit 93-2 in order to determine an appropriate update for the speed conversion unit(s). For example, sensor 91-1 may be a vibration sensor which generates a signal which varies with structural vibration of the vehicle and the analysis unit 93-2 may output a signal indicative of the engine speed. Based on these signals, the adaptation unit 53 may determine appropriate adjustments to be made to the speed conversion unit(s). The relationship between the appropriate adjustments and the values of these input signals can be learned in advance using standard control engineering techniques .
OTHER ALTERNATIVES
In the above embodiments, various position, speed and course over the ground data is stored at each clock cycle. In an alternative embodiment, the system may be arranged to store values for the speed corresponding to a substantial number of successive clock cycles, and the CPU 23 may be arranged to predict the speed for the present clock cycle on the basis of trends in the speed over the previous clock cycles. For example, if the speed of travel has been decreasing over a number of clock cycles, this decreasing trend may be used to predict the speed at the next clock cycle.
In the above embodiments, the clock cycle was constant. Alternatively, the clock cycle may be controlled by the CPU 23 so as to be variable. For example, if the accuracy of a GPS fix is a hundred metres, then the CPU 23 may adjust the length of a clock cycle so it is approximately equal to the time taken for that mobile telephone to move hundred metres at its current speed. If the accuracy of the GPS position fix is such that the position of the mobile telephone can be determined within ten metres, then a shorter clock cycle may be used if the mobile telephone continues to travel at the same speed. In a situation where the user travels a certain distance by car, and then leaves the vehicle to proceed on foot, the CPU 23 may sense the change in speed as the user leaves the vehicle, and may increase the clock cycle interval accordingly. If successive GPS fixes are available to provide an indication of the walking speed
of the user, then this walking speed may be stored in memory and may be used in "dead reckoning" calculations if the GPS signal is lost while the user is on foot. It is foreseen that the clock cycle interval will typically be less than one second, but may extend to several minutes if the user is moving slowly.
In the above embodiment, the mobile telephone 3 was mounted in a cradle 5 in order to maintain a fixed orientation between the mobile telephone and the vehicle. This is not essential. The CPU may track changes in the orientation of the handset relative to the vehicle by correlating course over the ground readings obtained from the GPS receiver with the signal received from the azimuth sensor. In this way, if the user makes a call using the mobile telephone and puts the handset down in a different orientation, the CPU 23 can detect this and can adapt the look up table used in the azimuth sensor accordingly.
In the above embodiment, a GPS receiver was used in the positioning unit 25. As an alternative to the use of a GPS positioning unit, the mobile telephone may use other position finding techniques which use, for example, terrestrial transmissions from a number of base stations. The base stations may be base stations of the mobile telephone network on which the mobile telephone is operating. In this case, in order to determine actual speed and course over the ground, the positioning unit would have to take successive position measurements and
determine the average speed between the two positions by dividing the distance between the two positions by the elapsed time. Similarly, the course over the ground can be determined from the respective geographical positions of the two positions .
As a further alternative, the position measurement may be determined by the mobile telephone network, with this position information then being transmitted to the mobile telephone, either over a voice communications call or using, for example, a text message.
In the above embodiments, the positioning unit, speed sensor, azimuth sensor and the CPU are all located within the mobile telephone 3. As those skilled in the art will appreciate, this is not essential. One or more of the above components may be provided in a separate unit, such as the telephone cradle 5. For example, a separate GPS receiver may be provided, with the mobile telephone being provided with an input for receiving the GPS signals.
In the above embodiment, a dead reckoning mobile phone has been described which uses two position determining systems, one based on remote signals from, for example, terrestrial base stations or overhead satellites and the other using dead reckoning techniques . As those skilled in the art will appreciate, this type of position sensing may be used in a wide range of portable electronic devices such as personal computers, personal digital assistants (PDA), web browsers and the like. A
positioning device which can be used in connection with a portable or mobile unit such as a laptop computer is shown in Figure 17. The positioning device shown in Figure 17 is intended to be built into or attached to the portable or mobile unit. The same reference numerals have been used to indicate elements of the positioning device which are the same as those used in the mobile telephone described above. As shown, the positioning device is very similar to the mobile telephone shown in Figure 2 except there is no telephone transceiver circuit, microphone, speaker or a telephone aerial. The remaining elements are the same and will not, therefore, be described again.
In the above embodiments, a compass was provided in the mobile device for estimating the current orientation of the mobile device from which an estimate of the vehicle's course over the ground was also estimated. Other techniques could be used to provide an estimate of the course over the ground. For example, map data of the geographical area may be stored and the user's current and previous positions could be used to determine the road on which the user is travelling. Consequently, if the GPS positioning unit is unable to obtain signals from the GPS satellites, then the CPU could predict the course of travel from the stored map data if it assumes that the user continues travelling along the same road.
The speed sensors described above in Examples 1 to 3 all sensed the acoustic noise within the vehicle. As those
skilled in the art will appreciate, the microphone for sensing the acoustic signal may be placed outside the vehicle in order to reduce any effects caused by people talking in the vehicle or by acoustic signals generated by the vehicle's audio system.
In a further modification for the embodiments which detect either acoustic or mechanical vibration, the sensed signal may also be passed to a rumble strip determination unit (not shown) which detects whether or not the user of the vehicle has strayed from the centre of the road on to the rumble strip at the edge of the road. As those skilled in the art will appreciate, the rumble strip is designed to alert the user if they are too close to the side of the road such that when the wheels of the vehicle hit the rumble strip, the amount of vibration felt in the car increases and the tyre noise also increases. However, sometimes this additional vibration or additional tyre noise is not noticed by the user. Therefore, in this alternative embodiment, the rumble strip determination unit is arranged to monitor the vibration signal and to determine when the user strays on to the rumble strip by detecting this increased vibration either generally (e.g. by comparison with a threshold) or at a predetermined frequency that is characteristic of the vibration caused by the rumble strip. If such a determination is made, then the determination unit outputs a signal to the CPU to cause it to generate an audible or visual alarm ( such as to cause the mobile telephone to ring) , in order to warn the
user that they are close to the edge of the road. As those skilled in the art will appreciate, this alternative may be provided in combination with the positioning system discussed above or it may be provided as a separate unit which is designed solely to detect when the vehicle goes on to the rumble strip.
In the above embodiments, when a position fix has been obtained from the GPS receiver, it is assumed that it is correct. However, often the GPS receiver provides incorrect position fixes, course over the ground indications and speed over the ground indications . As those skilled in the art will appreciate, under these conditions, upon receipt of these erroneous GPS signals, the adaptation units will perform an incorrect adaptation of the conversion units . In embodiments where the adaptation unit receives signals from sources other than the GPS receiver, this can be avoided simply by not using the GPS signals to perform the adaptation. A further alternative would be to, in effect, filter the GPS data in order to discard data that is clearly wrong. This can be achieved, for example, by comparing current GPS data with previous GPS data to see whether or not the indicated change is physically possible. Such an embodiment could operate by setting a limit on the amount that the GPS data can change from one time point to the next and discarding data if it exceeds this change.
In the above embodiment, a number of processing units have been described for use in speed sensors,
navigational aids and rumble strip detectors. As those skilled in the art will appreciate, these processing units may be dedicated hardware circuits or they may be computer software modules run on a conventional programmable processor. The computer program or programs used to configure such a programmable processor to carry out the processing discussed above may be in the form of source code, object code, a code intermediate source and object code such as a partially compiled form, or in any other form. Such computer programs may be stored in memory at the time of manufacture of the device or it may be loaded into memory by either downloading the program file from, for example, the Internet or from a storage medium such as a CD ROM or the like.