The invention relates to: a method of identifying a reference point in a signal occurring in a device; to a method of calculating a measure of the distance between a transmitter and a receiver, and to a method of calculating a measure of the distance between a transmitter and a receiver. The invention also relates to a device comprising a recorder arranged to record the value of a register in the NCO; to a system for calculating a measure of the distance between a transmitter and a receiver device, and to a receiver device operable to calculate a measure of the distance between a transmitter and the receiver device from a received signal transmitted by the transmitter.
A known system using time-of-flight measurements to determine distance between two devices is the Global Positioning System (GPS). A GPS satellite transmits a sequence using a Direct Sequence Spread Spectrum technique. When a received receives the signal, a locally generated code can be correlated with the recited satellite signal to determine the distance between the two devices. By finding the distance to an additional three GPS satellites, and using trilateration, the position of the receiver and the offset of the local clock from the satellite clock can be found. Usually, further GPS satellites are used for additional accuracy. GPS receivers typically are dedicated devices and consequently, the internal processes and clock frequencies are selected to match the frequency of the time-of-flight signal modulated onto the satellite signal.
It has been proposed that implementation of time-of-flight functions, similar to GPS technology, in existing radio devices, such as mobile phones and wireless data processing devices, may have many advantages. Not only can the user of such a device determine its exact location on earth, by performing time-of-flight measurements with devices having fixed locations, but the relative distance between two moving devices can also be determined. Moreover, if the radio device constitutes a node in a network of similar devices, the network can update itself depending on the relative distances between the devices. However, existing radio devices were not developed with consideration to location finding systems and, thus, they do not use the same standards. In particular, the frequency of the signals generated by the system clocks of the radio devices may not match the frequency of the time-of-flight signals used in the location finding systems. There may be a price advantage in using a commodity crystal with a common frequency in the radio device, even though its frequency may not be ideal for the time-of-flight application.
Accurate range measurements may also be important in wireless, large, short-range networks. An example of such a network is a network for a smart home, operating according to the ZigBee standard (www.zigbee.org). The communication range of the devices of such a network is short and, consequently, two devices operating within the same network may not be in communication range of each other. However, messages can still be sent between the two nodes, with the help of additional nodes within communication range of both nodes. To increase the security and reliability of the data transfer, suitable routes between the two devices needs to be computed, and to this end, can be useful to know the distance between nodes in the network. Moreover, a proportion of the nodes in these types of network can be mobile and, consequently, the distance measurements need to be updated repeatedly. Since distance between neighbouring devices may be a few metres, an error of a few nanoseconds in the time-of-flight measurements may result in unreliable distance measurements, which can be important if devices have a short communication range.
It is known in the art to use Numerically Controlled Oscillators (NCO) to produce periodic signals with frequencies different from the frequency of the system clock. U.S. Pat. No. 6,650,150 discloses an NCO for use in a radiofrequency signal receiver. However, even though signals approximating the time-of-flight signals used in GPS technology can be produced, the assumed edges of the signal will not necessarily coincide with sampling points in the signal derived from the system clock. This poses a problem when determining the time-of-transmission of a time-of-flight signal, which is typically set as the beginning of a chip of a direct spectrum code in the time-of-flight signal. If the frequency of the sampling signal, derived from the system clock, is the same as or is a multiple of the frequency of the pseudorandom noise sequence to be sent, the assumed time at which the first chip in each frame or sub-frame in the transmitted time-of-flight signal occurs can be arranged to coincide with a clock edge of the sampling signal. The time of transmission of the first chip in a frame can subsequently be calculated by counting the number of samples between a reference time and the clock edge coinciding with the chip and multiplying the number of counted samples with the period of the sampling signal. If the frequency of the sampling signal is not an integer multiple of the frequency of the pseudorandom noise sequence the time-of-transmission of the first frame is likely to fall between two clock edges of the sampling signal and thus, the time of transmission can only be determined approximately. The uncertainty in the time measurement may result in a particularly large proportional error if the distance between the transmitting and receiving node is short.
Moreover, the uncertainty in the time-of-transmission data increases with decreasing sampling frequency if the time-of-transmission has to be approximated to the nearest sampling instant. This problem would be overcome if the sampling rate was increased sufficiently but it is not usually feasible or cost-effective to provide suitably high sampling frequencies.
The invention seeks to mitigate these problems.
According to a first aspect of the invention, there is provided a method of identifying a reference point in a signal occurring in a device, the device including an oscillator arranged to provide a sampling signal at a first frequency, the method comprising
using the sampling signal to control a NCO to provide at an output an NCO output signal approximating a regular signal having a second frequency, and
recording the value of a register in the NCO at a time derived from the sampling signal following the reference point.
In embodiments described in detail hereinafter, the reading step comprises reading the value of the register in the NCO at the sampling point immediately following the reference point. However, it will be appreciated that in some implementations the reading step may comprise reading the value of the register in the NCO at a sampling point a small number of samples following the reference point.
The device may be a transmitter, in which case the signal is generated by the transmitter, and the method further comprises transmitting a signal derived from the NCO output signal.
The device need not be a transmitter. Indeed, the invention is applicable to signals occurring also in receivers and in other devices, as will be appreciated by the skilled person.
The method may further comprise using the recorded value of the register to derive a clock time in the device at the reference point.
Alternatively, the method may further comprise transmitting a message to a receiver wherein the message contains information to allow the time-of-transmission of the reference point in the signal to be calculated at the receiver. In this case, the information may either include identification of a fraction of sample period, the fraction being indicative of the timing of the reference point relative to a sampling point, or alternatively include a value of register at the sampling point and the sampling increment.
The clock time typically will be referred to some reference time, by way of a count of the number of sampling instances or the number of chips since that reference time, and by way of the data from which the fraction of the sampling interval can be determined. The exact way of representing the reference to the reference time is not critical to the invention.
According to a second aspect of the invention, there is provided a method of calculating a measure of the distance between a transmitter and a receiver, the method comprising:
at a transmitter, identifying a reference point in a signal as recited above, and
at the receiver:
According to a third aspect of the invention, there is provided a method of calculating a measure of the distance between a transmitter and a receiver, the method comprising at the receiver:
receiving a signal transmitted by the transmitter;
determining the local time of reception of a reference point in the signal;
receiving a message including:
using the message to derive a clock time at the transmitter at the reference point; and
using the derived transmitter clock time and the local reference point reception time to calculate the measure of the distance between the transmitter and the receiver.
The sampling increment in the embodiments is an add-word.
The second and third aspects of the invention allow the distance between the transmitter and the receiver to be calculated with greater resolution than would be possible if the transmitter were not able to identify the reference point other than at sampling instances.
Advantageously, in any of the above methods the signal includes a PRN code having a chip period related to the second frequency.
According to a fourth aspect of the invention, there is provided a device comprising:
a source of oscillation arranged to provide a sampling signal at a first frequency,
an NCO configured to use the sampling signal to provide at an output an NCO output signal approximating a regular signal having a second frequency; and
a recorder arranged to record the value of a register in the NCO at a time derived from the sampling signal and following a reference point, thereby to allow the reference point in the signal to be identified.
According to a fifth aspect of the invention, there is provided a system for calculating a measure of the distance between a transmitter and a receiver device,
the transmitter being a device as described above, and
the receiver comprising:
According to a sixth aspect of the invention, there is provided a receiver device operable to calculate a measure of the distance between a transmitter and the receiver device from a received signal transmitted by the transmitter, the receiver device comprising:
a processor arranged to determine the local time of reception of a reference point in the signal;
a receiver arranged to receive from the transmitter a message including:
the processor being arranged to use the message to derive a clock time at the transmitter at the reference point, and to use the derived transmitter clock time and the local reference point reception time to calculate the measure of the distance between the transmitter and the receiver.
Embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings, in which
If the device is implemented in a cellular phone, the device further comprises a transceiver 10 and an antenna 11 for receiving and transmitting signals over the cellular network. In an alternative embodiment, the cellular transceiver is integrated with the DSSS transceiver 8 and a single antenna is shared between the two transceivers.
The system of
The regular periodic signal generated by the NCO 17 is passed to the DSSS transceiver unit 8 comprising a PRN generator 19, a modulator 20, a gate 21 and a demodulator 22. The PRN generator produces a 1 or 0 for every chip of the spreading sequence in order to produce the PRN sequence. The chip is the smallest elemental component of the PRN spreading sequence. Ideally, the length of each chip in the output signal of the NCO would be constant and have a duration corresponding to the chip in an ideal time-of-flight signal. However, due to the frequency of the sampling signal provided by the oscillator 15, some chips may be longer and some chips may be shorter than the assumed chip length defined by the ideal DSSS signal. However, the average frequencies are the same, even if there are some differences as to when edges occur. Moreover, due to the technique by which the output signal is created in the NCO, a virtual starting point of a chip in the output signal, corresponding to the starting point of the corresponding chip in the ideal DSSS signal, can be identified or calculated and thereby the corresponding point in the transmitted signal can be accurately determined.
The PRN sequence is repeated for each subframe. The time equating to the beginning of the first chip of the new PRN sequence is hereafter termed a reference point. This reference point constitutes the time-of-transmission (t-o-t) even though that chip will not actually be transmitted until the next sampling instance. The control unit further forwards the t-o-t to the modulator such that a message informing the receiver of the time-of-transmission can be transmitted. Alternatively, it may forward the t-o-t to the CPU and the CPU then forwards a message comprising the t-o-t to the modulator for transmission.
The message including information indicating the time-of-transmission of the time-of-flight signal can be modulated onto a time-of-flight signal transmitted by the DSSS transceiver 8. The message can either be modulated onto the DSSS signal to which it refers, in which case the message could say “This spreading code sequence began at time XXXX”, or it can be sent at some time later, in which case the message could say “The previous spreading sequence began at time XXXX”. Alternatively, the message may be transmitted using other means, for example a second transmitter not using the DSSS technique. If a substantial number of DSSS signals are sent in the system, the message may include information identifying the DSSS signal to which the message refers.
The DSSS transceiver 8 can also receive DSSS signals. This allows bidirectional communication between the receiver and the transmitter of DSSS signals. An incoming signal is sampled at the sampling frequency of the system clock and then demodulated in the demodulator 22. The process of demodulating a DSSS signal is described in more detail below in the context of the processes carried out in the receiver when a DSSS signal is received.
Referring again to
The receiver 122 also receives a message from the transmitter device including information about the time-of-transmission. The information may either be an indication of the calculated time-of-transmission or a time stamp allowing the receiver to calculate the time-of-transmission. The information is forwarded to the distance calculator 126 that derives the time-of-transmission from the received information The distance calculator also receives the time-of-arrival information from the correlator allowing it to determine the accurate time-of-arrival. Using the time-of-transmission and the time-of-arrival the distance calculator 126 determines the time-of-flight of the signal and consequently the distance between the receiver and the transmitter.
The subcomponents of the NCO 17, shown in
The clock signal generated by the NCO is derived from the value of the Most Significant Bit in the phase accumulator register. The Most-Significant Bit (MSB) resets to zero after each overflow, it changes to 1 about half-way through the chip and then resets to zero again at the next overflow. A new chip in the PRN sequence, generated by the PRN generator 19, is triggered at each falling edge of the MSB. A signal, communicating the sampling instant on which the falling edge of the MSB occurs is sent, via output C of the NCO 17, to a shift register (not shown) of the PRN generator 19. The value of a number of the Least-Significant Bits (LSBs) of the register is communicated by a signal, sent via output D, to the control unit 18, such that the residual value of the accumulator register 24 can be determined on sampling instants immediately following overflow.
A typical NCO contains a 32-bit register and thus, the threshold value is equal to 232. The value of the add-word stored in the phase register 23 and added to the accumulator register at each sampling instant determines the frequency of the output signal of the NCO 17. If the value is small, it takes longer to fill up the accumulator register and the output frequency is low. If the value is large, the accumulator gets filled up in a number of clock cycles and the output frequency is relatively high. The add-word is given by
add-word=(fc*232)/fs eq. 1
where fs is the sampling rate of the input signal (i.e. the clock frequency) and fc is the desired rate of the output signal (i.e. the chip frequency). The phase accumulator resister 24 operates on integers only and, thus, the add-word is rounded to the closest integer value.
t-o-t=(counter value)/fs+(add word−time stamp)/(fc*232) eq. 2
Hence, the assumed time of transmission of the leading edge of the corresponding chip can be determined to a higher accuracy than if it was approximated to the nearest sampling instant.
Experiments have shown that when using sampling rates of a few 10s of MHz, the time-of-transmission can be measured using this scheme with nanosecond accuracy. Considering that the radio signals travel approximately 30 cm per nanosecond, the accuracy of the time-of-flight measurement provided by the invention allows distance measurements between devices accurate to a few 10s of centimetres to be obtained. This is the case even though a standard 13 MHz crystal oscillator is used.
A method for finding the time-of-transmission of a DSSS signal between two devices is illustrated by
In an alternative embodiment, the transceiver does not send a digital word representing the Time-of-transmission. Instead, it sends two digital words, one representing the count of the number of samples since a reference time at sampling instant 26, and one representing the fractional part of the time-of-transmission in units of time. In a third alternative embodiment, three digital words are sent, one representing the count of the number of samples since the reference time one containing the timestamp and the add-word, allowing the receiver to calculate the time-of-transmission. In this case, the calculation of eq. 2 is carried out in the receiver.
Although in the embodiments of the invention described, the invention is implemented in DSSS transceivers, the invention could be applied to any digital transceiver in which the transmitted waveform is generated using an NCO. Thus, for example, the invention could be used in a network of nodes constituted by Bluetooth devices. In this case, range measurements may be useful, since some fixed Bluetooth nodes may be interested in the distance between themselves and one or more mobile nodes, so that they can determine whether or not to deliver location-specific content to a given mobile device.
Although Claims have been formulated in this Application to particular combinations of features, it should be understood that the scope of the disclosure of the present invention also includes any novel features or any novel combination of features disclosed herein either explicitly or implicitly or any generalisation thereof, whether or not it relates to the same invention as presently claimed in any Claim and whether or not it mitigates any or all of the same technical problems as does the present invention. The Applicants hereby give notice that new Claims may be formulated to such features and/or combinations of such features during the prosecution of the present Application or of any further Application derived therefrom.
Number | Date | Country | Kind |
---|---|---|---|
0417717.6 | Aug 2004 | GB | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB05/52630 | 8/8/2005 | WO | 2/6/2007 |