Method for reducing errors in two-way ranging between two transceivers due to a clock frequency offset
Abstract
A method reduces errors in two-way ranging between transceivers due to a frequency offset. A first transceiver measures a time CA1 between transmitting a request frame and receiving a reply frame, and a time CA2 between receiving a first information bit of the reply frame and receiving a last information bit of the reply frame. A second transceiver measures a time CB2 between receiving the request frame and transmitting the last information bit of the reply frame, and a time CB1 between receiving a first information bit of the request frame and a last information bit of the request frame. A correction factor is applied according to and the one-way time is where Ti is an ideal period of the clocks of the transceivers.

Term
1.5 yearsto projected expiry
Projected expiry 20 March 2028, counted from filing; an application has no term until it is granted.
- Priority
- Filed
- Published
- Today
- Projected expiry
14 claims: 5 independent, 9 dependent
- 1A method for reducing errors in two-way ranging between two transceivers due to a clock frequency offset, comprising:measuring, in a first transceiver, a time CA1 between transmitting a request frame and receiving a reply frame, and a time CA2 between receiving a first information bit of the reply frame and receiving a last information bit of the reply frame;measuring, in a second transceiver, a time CB2 between receiving the request frame and transmitting the last information bit of the reply frame, and a time CB1 between receiving a first information bit of the request frame and a last information bit of the request frame;applying a correction factor αc=CB1CA2 to the time CB2 to obtain an estimated time C^B2=/CB2αc;anddetermining a one-way time of flight according to T^t=CA1-C^B22Ti, in which Ti is an ideal period of the clocks of the first and second transceiver and the one-way time of flight corresponds to a range between the two transceivers.
- 12A method for reducing errors in two-way ranging between two transceivers due to a clock frequency offsets, comprising:transmitting a request frame from a first transceiver to a second transceiver in a wireless communications network while measuring transmit timing information associated with the transmitting of the request frame using a clock of the first transceiver;receiving the request frame in the second transceiver while measuring receive timing information associated with the receiving of the request frame using a clock of the second transceiver, in which the clocks of the first and second transceivers have a frequency offset;transmitting a reply frame from the second transceiver to the first transceiver in response to receiving the request frame while measuring transmit information associated with the transmitting of the reply frame using the clock of the second transceiver;receiving the reply frame in the first transceiver while measuring using the clock of the first transceiver;transmitting the receive timing information associated with the receiving of the request frame and the transmit information associated with the transmitting of the reply frame to the first transceiver;anddetermining a ratio of the frequency offset of the clocks of the first and second transceivers using the transmit timing information associated with the transmitting of the request frame, the receive timing information associated with the receiving of the request frame, the transmit information associated with the transmitting of the reply frame to the first transceiver, and the receive timing information associated with the receiving of the reply frame to correct a ranging error due to the frequency offset.
- 14Computer program, comprising program code means which, when executed on a computer system, instructs the computer system to perform the method of any one of the preceding claims.
Independent claims5
56 paragraphs, as filed
The present invention relates generally to radio communication systems, and more particularly to determining distances between transceivers using two-way ranging, which is known as radio ranging.
As shown in <figref idref="f0001">Figure 1</figref>, a conventional communication frame 100 for a wireless network includes as fields: a preamble 110, a start of frame delimiter (SFD) 120, a physical layer header (PHY) 130, and a physical layer sevice data unit (PSDU) 140.
The PSDU typically includes a payload, see IEEE 802.15.4a-D7 standard, November 2006, incorporated by reference. The preamble 110 can be used for acquisition and ranging. The SFD 120 is used for frame synchronization. The detection of the SFD indicates the beginning of the PHY 130 and the PSDU 140. The frame 100 has a time duration of T<sub>1</sub> 160, and a time duration of the PHY and PSDU is T<sub>2</sub> 150.
<figref idref="f0002">Figure 2</figref> shows a conventional ranging method. To estimate a distance between a first transceiver A 210 and a second transceiver B 220 in a wireless communications network, the first transceiver A 210 transmits 201 a request frame to the second transceiver B 220. <figref idref="f0002">Figure 2</figref> also shows a time axis 240 for the transceiver A and a time axis 250 for the transceiver B 220. The transceiver A 210 records a time <i>t</i><sub>1</sub> that the request frame was transmitted according to a clock of the transceiver A 210. Upon receiving the request frame, the transceiver B 220 transmits 202 a reply frame to the transceiver A 210. The transceiver A 210 measures the time of arrival (TOA) <i>t</i><sub>2</sub> of the reply frame according to its clock.
A delay at the transceiver B 220 between receiving the request frame and transmitting the reply frame is <maths id="math0001" num=""><math display="inline"><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup></math><img file="EP1992964A2_D0001.tif" /></maths> 250. The transceiver B 220 transmits 205 the delay 250 to the transceiver A 210 in a timestamp report. An estimate of the distance <i>D</i> between the transceiver A 210 and the transceiver B 220 is the time for the round trip <maths id="math0002" num=""><math display="inline"><msubsup><mi>T</mi><mi mathvariant="italic">round</mi><mi>A</mi></msubsup></math><img file="EP1992964A2_D0002.tif" /></maths> 270 minus the delay at the transceiver B 220 divided by two and multiplied by the speed of light. <maths id="math0003" num="(1)"><math display="block"><mi>D</mi><mo>=</mo><mfrac><mfenced separators=""><msub><mi>t</mi><mn>2</mn></msub><mo>-</mo><msub><mi>t</mi><mn>1</mn></msub></mfenced><mn>2</mn></mfrac><mo></mo><mi>c</mi><mo>=</mo><mfrac><mfenced separators=""><msubsup><mi>T</mi><mi mathvariant="italic">round</mi><mi>A</mi></msubsup><mo>-</mo><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup></mfenced><mn>2</mn></mfrac><mo></mo><mi>c</mi><mn>.</mn></math><img file="EP1992964A2_D0003.tif" /></maths>
A corresponding one-way flight time <i>T<sub>t</sub></i> 260 is <maths id="math0004" num="(2)"><math display="block"><msub><mi>T</mi><mi>t</mi></msub><mo>=</mo><mfrac><mfenced separators=""><msubsup><mi>T</mi><mi mathvariant="italic">round</mi><mi>A</mi></msubsup><mo>-</mo><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msubsup></mfenced><mn>2</mn></mfrac><mn>.</mn></math><img file="EP1992964A2_D0004.tif" /></maths>
The conventional method as specified in method in the IEEE 802.15.4a Standard Draft 7 does not address errors due to a frequency offset between the clocks of the transceivers. Indeed, in practical applications, the measurements of <maths id="math0005" num=""><math display="inline"><msubsup><mi>T</mi><mi mathvariant="italic">round</mi><mi>A</mi></msubsup></math><img file="EP1992964A2_D0005.tif" /></maths> and <maths id="math0006" num=""><math display="inline"><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup></math><img file="EP1992964A2_D0006.tif" /></maths> are different from their true value due to the frequency offset. The clock tolerance of the transceiver A 210 is <i>e<sub>A</sub></i>, and the clock tolerance of the transceiver B 220 as <i>e<sub>B</sub></i> .
After factoring in the clock tolerances, the one-way time of flight estimate <i>T̂<sub>t</sub></i> becomes <maths id="math0007" num="(3)"><math display="block"><msub><mover><mi>T</mi><mo>^</mo></mover><mi>t</mi></msub><mo>=</mo><mfrac><mrow><msubsup><mi>T</mi><mi mathvariant="italic">round</mi><mi>A</mi></msubsup><mo></mo><mfenced separators=""><mn>1</mn><mo>+</mo><msub><mi>e</mi><mi>A</mi></msub></mfenced><mo>-</mo><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup><mo></mo><mfenced separators=""><mn>1</mn><mo>+</mo><msub><mi>e</mi><mi>B</mi></msub></mfenced></mrow><mn>2</mn></mfrac><mn>.</mn></math><img file="EP1992964A2_D0007.tif" /></maths>
A residual error <i>e<sub>tw</sub></i> is a difference between the time of flight estimate with ideal clocks and with clocks with tolerances <i>e<sub>A</sub></i> and <i>e<sub>B</sub></i>. Then, <maths id="math0008" num="(4)"><math display="block"><msub><mi>e</mi><mi mathvariant="italic">tw</mi></msub><mo>=</mo><msub><mi>T</mi><mi>t</mi></msub><mo></mo><msub><mi>e</mi><mi>A</mi></msub><mo>+</mo><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup><mo></mo><mfenced separators=""><msub><mi>e</mi><mi>A</mi></msub><mo>+</mo><msub><mi>e</mi><mi>B</mi></msub></mfenced><mn>.</mn></math><img file="EP1992964A2_D0008.tif" /></maths>
Generally, <maths id="math0009" num=""><math display="inline"><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup><mo>≫</mo><msub><mi>T</mi><mi>t</mi></msub><mn>.</mn></math><img file="EP1992964A2_D0009.tif" /></maths> Therefore, Equation (4) approximates to <maths id="math0010" num="(5)"><math display="block"><msub><mi>e</mi><mi mathvariant="italic">tw</mi></msub><mo>≈</mo><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup><mo></mo><mfenced separators=""><msub><mi>e</mi><mi>A</mi></msub><mo>+</mo><msub><mi>e</mi><mi>B</mi></msub></mfenced><mn>.</mn></math><img file="EP1992964A2_D0010.tif" /></maths>
It is desired to reduce the residual error <i>e<sub>tw</sub></i>. Therefore, a mechanism is needed to reduce the effect of clock frequency offset on the range error.
The invention provides a method for reducing ranging errors due to a clock frequency offset in two-way ranging between radio transceivers, which minimizes impacts of clock frequency offsets on range estimation between two devices using two-way time of arrival measurements.
A first transceiver measures a time <i>C</i><sub><i>A</i>1</sub> between transmitting a request frame and receiving a reply frame, and a time <i>C</i><sub><i>A</i>2</sub> between receiving a first information bit of the reply frame and receiving a last information bit of the reply frame.
A second transceiver measures a time <i>C</i><sub><i>B</i>2</sub> between receiving the request frame and transmitting the last information bit of the reply frame, and a time <i>C</i><sub><i>B</i>1</sub> between receiving a first information bit of the request frame and a last information bit of the request frame.
A correction factor <maths id="math0011" num=""><math display="inline"><msub><mi>α</mi><mi>c</mi></msub><mo>=</mo><msqrt><mfrac><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>1</mn></mrow></msub><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>2</mn></mrow></msub></mfrac></msqrt></math><img file="EP1992964A2_D0011.tif" /></maths> is applied according to <maths id="math0012" num=""><math display="inline"><msub><mover><mi>C</mi><mo>^</mo></mover><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub><mo>=</mo><msub><mmultiscripts><mo>/</mo><mprescripts /><none /><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub></mmultiscripts><msub><mi>α</mi><mi>c</mi></msub></msub><mo>,</mo></math><img file="EP1992964A2_D0012.tif" /></maths> and the one-way time of flight is <maths id="math0013" num=""><math display="inline"><msub><mover><mi>T</mi><mo>^</mo></mover><mi>t</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>1</mn></mrow></msub><mo>-</mo><msub><mover><mi>C</mi><mo>^</mo></mover><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub></mrow><mn>2</mn></mfrac><mo></mo><msub><mi>T</mi><mi>i</mi></msub><mo>,</mo></math><img file="EP1992964A2_D0013.tif" /></maths> where <i>T<sub>i</sub></i> is an ideal period of the clocks of the transceivers.
The present invention will now be described by way of non-limiting example with reference to the accompanying drawings, in which: <ul id="ul0001" list-style="none"><li><figref idref="f0001">Figure 1</figref> is a block diagram of a conventional frame used in wireless communications between transceivers;</li><li><figref idref="f0002">Figure 2</figref> is a timing diagram of a conventional two-way time of arrival based ranging method;</li><li><figref idref="f0003">Figure 3</figref> is a block diagram of a structure of a request frame 300 according to an embodiment of the invention;</li><li><figref idref="f0004">Figure 4</figref> is a block diagram of a structure of a reply frame 400 according to an embodiment of the invention;</li><li><figref idref="f0005">Figure 5</figref> is a block diagram of a two-way ranging method according to an embodiment of the invention;</li><li><figref idref="f0006">Figure 6</figref> is a block diagram of an operation of timing counters at transceivers according to an embodiment of the invention; and</li><li><figref idref="f0007">Figure 7</figref> is a flow diagram of the method according to an embodiment of the invention.</li></ul>
The embodiments of my invention provide two-way ranging methods for estimating a distance between a first transceiver A and a second transceiver B in a wireless communications network. The method reduces errors due to frequency offsets in clocks of the transceivers.
As shown in <figref idref="f0003">Figure 3</figref>, a request frame 300 includes as fields: a preamble 301, a start of frame delimiter (SFD) 302, a physical layer header (PHY) 303, and request physical layer service data unit (PSDU<sub>request</sub>) 304. The PHY 303 and PSDU<sub>request</sub> 304 can carry data or information bits of the request frame 300. A time duration of the data or information bit fields 303 and 304 is denoted by <i>T</i><sub>frame1</sub> 350.
As shown in <figref idref="f0004">Figure 4</figref>, a reply frame 400 includes the preamble 301, the start of frame delimiter (SFD) 302, a physical layer header (PHY) 403 and a reply physical layer service data unit (PSDU<sub>reply</sub>) 404. A time duration of the data or information bit fields 403 and 404 of the reply frame is <i>T</i><sub>frame2</sub> 450.
The time durations <i>T</i><sub>frame1</sub> 350 and <i>T</i><sub>frame2</sub> 450 for the information bits can be different. However, for simplicity of this description, the duration for both <i>T</i><sub>frame1</sub> 350 and <i>T</i><sub>frame2</sub> 450 can be generally denoted by <i>T</i><sub>frame</sub>.
<figref idref="f0005">Figure 5</figref> shows a timing diagram of a ranging method according to an embodiment of the invention. The block diagram of the method is shown in <figref idref="f0006">Figure 6</figref>. <figref idref="f0007">Figure 7</figref> shows the method steps. The transceiver A 510 includes a transmit clock 511, and the transceiver B 520 includes a receive clock B 512.
An ideal clock period (cycle) is <i>T<sub>i</sub></i>. The clock period is determined by a frequency of a crystal of the clock. The ideal clock frequency is specified by the manufacturer. In real systems, however, the clock frequency can be offset from the ideal frequency due to, e.g., manufacturing inconsistencies or environmental conditions. Therefore, the actual clock period of the transceiver A 510 is <i>T<sub>a</sub></i>, and the actual clock period of the transceiver B 520 is <i>T<sub>b</sub></i>. It is desired to minimize errors due to this frequency offset.
As shown in <figref idref="f0006">Figure 6</figref>, a transceiver A 510 transmits the request frame, see inset 300 for start and end of frame fields, to a transceiver B 520. Transceiver A 510 starts 740 a first transmit counter A<sub>1</sub> when the SFD 302 of the request frame 300 is emitted by an antenna 700 of the first transceiver.
The request frame is received in the second transceiver B 520. Transceiver B 520 starts 770 first and second receive counters B<sub>1</sub> and B<sub>2</sub> when detecting the end of the SFD 302 of the request frame 300 at the antenna 720 of the second transceiver B 520.
Tranceiver B 520 stops 730 its first receive counter B<sub>1</sub> when receiving a last information bit of the request frame 300, which is at the end of the request PSDU 304.
Transceiver B 520 determines a difference between the start and stop values of the first receive counter B<sub>1</sub>. The first receive counter B<sub>1</sub> measures a duration <i>C</i><sub><i>B</i>1</sub> 703, where <maths id="math0014" num="(6)"><math display="block"><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>1</mn></mrow></msub><mo>=</mo><mfrac><msub><mi>T</mi><mi mathvariant="italic">frame</mi></msub><msub><mi>T</mi><mi>i</mi></msub></mfrac><mo></mo><mfrac><msub><mi>T</mi><mi>a</mi></msub><msub><mi>T</mi><mi>b</mi></msub></mfrac><mo>,</mo></math><img file="EP1992964A2_D0014.tif" /></maths>
The transceiver B 520 prepares the reply frame 400 and transmits the reply frame to transceiver A 510.
Transceiver B 520 stops 760 the second receive counter B<sub>2</sub> when the end of the SFD 302 of the reply frame 400 is emitted by its antenna 720. The difference between the start and stop values of the second receive counter B<sub>2</sub> is denoted as <i>C</i><sub><i>B</i>2</sub> 704, and it measures a turn around time <maths id="math0015" num="(7)"><math display="block"><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub><mo>=</mo><mfrac><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup><msub><mi>T</mi><mi>b</mi></msub></mfrac><mo>,</mo></math><img file="EP1992964A2_D0015.tif" /></maths> where <maths id="math0016" num=""><math display="inline"><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup></math><img file="EP1992964A2_D0016.tif" /></maths> is the <i>true turn around time</i> according to the ideal clock period.
In step 750, transceiver A 510 stops its first transmit counter A<sub>1</sub> and starts a second transmit counter A<sub>2</sub> when it detects the end of the SFD 302 of the received reply frame 400.
A difference <i>C</i><sub><i>A</i>1</sub> 701 between the start and stop values of the first receive counter A<sub>1</sub> corresponds to <maths id="math0017" num="(8)"><math display="block"><msub><mi>C</mi><msub><mi>A</mi><mn>1</mn></msub></msub><mo>=</mo><mfrac><mrow><mn>2</mn><mo></mo><msub><mi>T</mi><mi>t</mi></msub><mo>+</mo><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup></mrow><msub><mi>T</mi><mi>a</mi></msub></mfrac><mo>,</mo></math><img file="EP1992964A2_D0017.tif" /></maths> where <i>T<sub>t</sub></i> is the one-way flight time of the frame from transceiver A 510 to transceiver B 520.
Transceiver A 510 stops 780 the second transmit counter A<sub>2</sub> when it receives the last bit of the PSDU<sub>reply</sub> 404 of the received reply frame 400 at the antenna 700. The difference between the start and stop values of the second transmit clock A<sub>2</sub> is denoted as <i>C</i><sub><i>A</i>1</sub> 702 and it measures the time <maths id="math0018" num="(9)"><math display="block"><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>2</mn></mrow></msub><mo>=</mo><mfrac><msub><mi>T</mi><mrow><mi mathvariant="italic">frame</mi><mo></mo><mn>2</mn></mrow></msub><msub><mi>T</mi><mi>i</mi></msub></mfrac><mo></mo><mfrac><msub><mi>T</mi><mi>b</mi></msub><msub><mi>T</mi><mi>a</mi></msub></mfrac></math><img file="EP1992964A2_D0018.tif" /></maths>
Transceiver B 520 transmits the counter values <i>C</i><sub><i>B</i>1</sub> 703 and <i>C</i><sub><i>B</i>2</sub> 704 to transceiver A 510 in a timestamp report 500.
Transceiver A 510 determines a correction factor <maths id="math0019" num=""><math display="inline"><msub><mi>α</mi><mi>c</mi></msub><mo>=</mo><mfrac><msub><mi>T</mi><mi>a</mi></msub><msub><mi>T</mi><mi>b</mi></msub></mfrac></math><img file="EP1992964A2_D0019.tif" /></maths> 705 as a square root of the ratio of <i>C</i><sub><i>B</i>1</sub> and <i>C</i><sub><i>A</i>2</sub>. It can be seen after dividing the expression in Equation (6) by the expression in Equation (9) that <maths id="math0020" num=""><math display="inline"><msup><mfenced open="[" close="]"><mfrac><msub><mi>T</mi><mi>a</mi></msub><msub><mi>T</mi><mi>b</mi></msub></mfrac></mfenced><mn>2</mn></msup><mo>=</mo><mfrac><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>1</mn></mrow></msub><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>2</mn></mrow></msub></mfrac><mn>.</mn></math><img file="EP1992964A2_D0020.tif" /></maths>
Transceiver A 510 divides <i>C</i><sub><i>B</i>2</sub> 704 by the correction factor α<i><sub>c</sub></i> 705 to obtain an estimate <i>Ĉ</i><sub><i>B</i>2</sub> 707.
The time of flight estimate <i>T̂<sub>t</sub></i> 708 is determined by the transceiver A 510 as <maths id="math0021" num="(10)"><math display="block"><msub><mover><mi>T</mi><mo>^</mo></mover><mi>t</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>1</mn></mrow></msub><mo>-</mo><msub><mover><mi>C</mi><mo>^</mo></mover><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub></mrow><mn>2</mn></mfrac><mo></mo><msub><mi>T</mi><mi>i</mi></msub></math><img file="EP1992964A2_D0021.tif" /></maths>
Note that the ideal time period <i>T<sub>i</sub></i> 706 is known to both transceivers, e.g., it is the time specified by the manufacturer.
Ranging Example
A ranging system has the following example values: <ul id="ul0002" list-style="none" compact="compact"><li><i>T<sub>frame</sub></i> = 100 µs;</li><li>ideal clock frequency is 500 MHz, i.e., the ideal period <i>T<sub>i</sub></i> = 1/500 MHz;</li><li>clock frequency of transceiver A 510 is 495 MHz, that is, <i>T<sub>a</sub></i> = 1/495 MHz;</li><li>clock frequency of transceiver B 520 is 495 MHz, i.e., <i>T<sub>b</sub></i> =1/495 MHz;</li><li>distance between transceivers A and B is 10 m, i.e., true one way time of flight is <i>T<sub>t</sub></i> = 30 ns; and true turn around time is <maths id="math0022" num=""><math display="inline"><msubsup><mi>T</mi><mi mathvariant="italic">ta</mi><mi>B</mi></msubsup><mo>=</mo><mn>1</mn><mspace width="1em" /><mi mathvariant="italic">ms</mi><mn>.</mn></math><img file="EP1992964A2_D0022.tif" /></maths></li></ul>
After transmission of the request and reply frames, the corresponding example counter values are: <ul id="ul0003" list-style="none" compact="compact"><li><i>C</i><sub><i>B</i>1</sub> = 51515 clock periods according to transceiver B clock;</li><li><i>C</i><sub><i>A</i>2</sub> = 48529 clock periods according to transceiver A clock; <maths id="math0023" num=""><math display="block"><msub><mi>α</mi><mi>c</mi></msub><mo>=</mo><msqrt><mfrac><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>1</mn></mrow></msub><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>2</mn></mrow></msub></mfrac></msqrt><mo>=</mo><mn>1.0303</mn><mo>;</mo></math><img file="EP1992964A2_D0023.tif" /></maths></li><li><i>C</i><sub><i>B</i>2</sub><i>=</i> 510,000 clock periods according to transceiver B clock;</li><li><i>C<sub>A1</sub></i> = 495,030 clock periods according to transceiver A clock;</li><li><i>Ĉ</i><sub><i>B</i>2</sub> = <i>C<sub>B2</sub></i> /<i>α<sub>c</sub></i> = 495,000; and <maths id="math0024" num=""><math display="block"><msub><mover><mi>T</mi><mo>^</mo></mover><mi>t</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>1</mn></mrow></msub><mo>-</mo><msub><mover><mi>C</mi><mo>^</mo></mover><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub></mrow><mn>2</mn></mfrac><mo></mo><msub><mi>T</mi><mi>i</mi></msub><mo>=</mo><mn>30</mn><mspace width="1em" /><mi mathvariant="italic">ns</mi><mn>.</mn></math><img file="EP1992964A2_D0024.tif" /></maths></li></ul>
This is equal to the true time of flight for a 10 meter separation between the transceivers A and B.
Method Overview
As shown in <figref idref="f0007">Figure 7</figref>, the embodiments of the invention provide a method for reducing ranging errors due to the effect of clock frequency offsets between clocks of two transceivers. In practice, a transceiver clock frequency can differ from its ideal clock frequency as specified by the manufacturer due to any of a number of conditions, including but not limited to uncontrollable fabrication processes and environmental conditions. If two transceivers 510 and 520 are performing ranging, the transceivers can have different clock periods or frequencies.
For example, a one nanosecond timing error causes a 30 cm range error. Therefore, an accurate measurement of time is important for precision ranging in the order of centimeters.
According to the embodiments of the invention, if the ranging transceivers know their relative clock frequency offset, the frequency offset related range error can be reduced. To achieve this, each transceiver uses two counters or two instants of a single counter to measure various time periods as described below and shown in the Figures.
The first transceiver 510 measures the number of clock cycles or periods, that is, timing information <i>C</i><sub><i>A</i>1</sub> 701, between the transmission of the request frame 300 and the reception of the reply frame 400.
The first transceiver 510 also measures the number of clock cycles between the reception of the first data or information bit of the reply frame, i.e., the beginning of PHY header, and the last information bit of the reply frame, i.e., at the end of data payload of the PSDU<sub>reply</sub>. This counter value is denoted as <i>C</i><sub><i>A</i>2</sub> 702.
The responding second transceiver 520 measures the number of clock cycles between the reception of the request frame and the completion of transmission of the reply frame. This counter value is denoted as <i>C</i><sub><i>B</i>2</sub> 704.
The second transceiver 520 also measures the number of cycles between the reception of the first information bit of the request frame, i.e., the beginning of PHY header, and the last information bit of the request frame, i.e., the end of the data payload of the PSDU<sub>request</sub>. This counter value is denoted as <i>C</i><sub><i>B</i>1</sub> 703.
The second transceiver 520 transmits <i>C</i><sub><i>B</i>1</sub> and <i>C</i><sub><i>B</i>2</sub> to the first transceiver 510.
The first transceiver 510 determines the correction factor 705 as <maths id="math0025" num=""><math display="block"><msub><mi>α</mi><mi>c</mi></msub><mo>=</mo><msqrt><mfrac><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>1</mn></mrow></msub><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>2</mn></mrow></msub></mfrac></msqrt><mn>.</mn></math><img file="EP1992964A2_D0025.tif" /></maths>
Then, the first receiver 510 applies the correction factor to <i>C</i><sub><i>B</i>2</sub> to obtain a best estimate 707 <maths id="math0026" num=""><math display="block"><msub><mover><mi>C</mi><mo>^</mo></mover><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub><mo>=</mo><msub><mmultiscripts><mo>/</mo><mprescripts /><none /><msub><mi>C</mi><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub></mmultiscripts><msub><mi>α</mi><mi>c</mi></msub></msub><mn>.</mn></math><img file="EP1992964A2_D0026.tif" /></maths>
Then, the first transceiver can determine the one-way time of flight 708 as <maths id="math0027" num=""><math display="block"><msub><mover><mi>T</mi><mo>^</mo></mover><mi>t</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>C</mi><mrow><mi>A</mi><mo></mo><mn>1</mn></mrow></msub><mo>-</mo><msub><mover><mi>C</mi><mo>^</mo></mover><mrow><mi>B</mi><mo></mo><mn>2</mn></mrow></msub></mrow><mn>2</mn></mfrac><mo></mo><msub><mi>T</mi><mi>i</mi></msub><mn>.</mn></math><img file="EP1992964A2_D0027.tif" /></maths>
This time of flight corresponds to the range or distance between the two transceivers.
It should be noted that the first transceiver could transmit its timing information to the second receiver, in which the second transceiver can perform the ranging.
Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.
It will be appreciated that the above described methods may be implemented by an appropriate computer program.
53 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41 Sheet 42 Sheet 43 Sheet 44 Sheet 45 Sheet 46 Sheet 47 Sheet 48 Sheet 49 Sheet 50 Sheet 51 Sheet 52 Sheet 53
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| JP2012510056A | Cited by | Japan | Search report |
| JP2012510056A | Cited by | Japan | Examiner |
| US9645225B2 | Cited by | United States of America | Applicant |
| CN105911543A | Cited by | China | Search report |
| US11102746B2 | Cited by | United States of America | Applicant |
| US8750267B2 | Cited by | United States of America | Applicant |
| US10942250B2 | Cited by | United States of America | Applicant |
| JP2012510056A | Cited by | Japan | Search report |
| RU2697838C1 | Cited by | Russian Federation | Search report |
| WO2017196583A3 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US10064154B2 | Cited by | United States of America | Applicant |
| US6107959A | Cites | United States of America | Search report |
5 priority claims, no other members on record
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 749517 | United States of America | – | |
| 74951707 | United States of America | A | |
| 74951707 | United States of America | A | |
| 749517 | – | – | – |
| US20070749517 | – | – | – |
20 legal events, as 3 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Register noted 'licences of right' (sect. 46/1977)746 | 746 | GB | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| De no longer designated stateR108 | R108 | DE | |
| Designation fees paidAKX | AKX | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1992964
- Publication, DOCDB
- 1992964
- Publication, EPODOC
- EP1992964
- Application
- 8251001
- Application, DOCDB
- 08251001
- Application, EPODOC
- EP20080251001
Titles3
- German
- Verfahren zur Reduzierung von Fehlern in Zwei-Wege-Verfahren zwischen zwei Sende- und Empfangsgeräten aufgrund einer Taktfrequenzverschiebung
- English
- Method for reducing errors in two-way ranging between two transceivers due to a clock frequency offset
- French
- Procédé pour la réduction d'erreurs dans une télémétrie bidirectionnelle entre deux émetteurs-récepteurs dus à un décalage de la fréquence de l'horloge
Classification
- CPC, 3
- G01S13/825
- G01S7/40
- G01S13/74
- IPC, 2
- G01S13 74
- G01S19 27
Designated states38
- Contracting states, 34
- Austria
- Belgium
- Bulgaria
- Switzerland
- Cyprus
- Czechia
- Germany
- Denmark
- Estonia
- Spain
- Finland
- France
- United Kingdom
- Greece
- Croatia
- Hungary
- Ireland
- Iceland
- Italy
- Liechtenstein
- Lithuania
- Luxembourg
- Latvia
- Monaco
and 10 moreShow fewer
- Malta
- Netherlands (Kingdom of the)
- Norway
- Poland
- Portugal
- Romania
- Sweden
- Slovenia
- Slovakia
- Türkiye
- Extension states, 4
- Albania
- Bosnia and Herzegovina
- North Macedonia
- Serbia