Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR ITERATIVE TARGET LOCATION IN A MULTIPLE RECEIVER TARGET LOCATION SYSTEM
Document Type and Number:
WIPO Patent Application WO/2015/186084
Kind Code:
A1
Abstract:
The present invention provides methods for an active RFID tag target location system that provides for an iterative recalculating of a target location estimate by successively testing receiver TOA and DTOA error measurements and discarding outlier receivers. The present invention works to reduce the erratic effects that multipath channel interference and random noise play in target location systems due to incorrect identification of the main pulse of the transmit signal. In addition to providing for a greater accuracy and consistency in a TOA-based target location system, the method also provides for an opportunity to reduce a transmission bandwidth associate with the TOA transmission by the multiple receivers. The method may be considered a post-processing element, as the determination of TOA and DTOA may require a real-time calculation, where the timing constraints for the ensuing target location estimate may be less severe.

Inventors:
RICHLEY EDWARD A (US)
TURNER BELINDA (US)
WANG CHANG (US)
Application Number:
PCT/IB2015/054213
Publication Date:
December 10, 2015
Filing Date:
June 03, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZIH CORP (US)
International Classes:
G01S5/02
Foreign References:
US20100150117A12010-06-17
EP1235077A22002-08-28
US5901172A1999-05-04
Other References:
WANG YONGCAI ET AL: "An Algorithmic and Systematic Approach for Improving Robustness of TOA-Based Localization", 2013 IEEE 10TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS & 2013 IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND UBIQUITOUS COMPUTING, IEEE, 13 November 2013 (2013-11-13), pages 2066 - 2073, XP032606302, DOI: 10.1109/HPCC.AND.EUC.2013.297
GUVENC I ET AL: "A Survey on TOA Based Wireless Localization and NLOS Mitigation Techniques", IEEE COMMUNICATIONS SURVEYS, IEEE, NEW YORK, NY, US, vol. 11, no. 3, 1 October 2009 (2009-10-01), pages 107 - 124, XP011272510, ISSN: 1553-877X, DOI: 10.1109/SURV.2009.090308
Attorney, Agent or Firm:
MCKAY, Douglas E. et al. (Bank of America Plaza101 South Tryon Street, Suite 400, Charlotte North Carolina, US)
Download PDF:
Claims:
THAT WHICH IS CLAIMED:

1. A method for determining target location in a multiple receiver target location system, comprising:

receiving, from a plurality of receivers, time of arrival (TO A) data associated with a location tag transmission;

determining a candidate combination based on the received TOA data;

calculating a tag location estimate for each candidate combination;

determining a data quality indicator (DQI) for each tag location estimate; and determining a DQI adjusted solution having the lowest DQI from the tag location estimates.

2. The method of Claim 1 further comprising:

generating at least one supplemental candidate combination by discarding at least one TOA data;

calculating a supplemental tag location estimate for each supplemental candidate combination;

determining a DQI for each supplemental tag location estimate; and

determining a supplemental DQI adjusted solution having the lowest DQI from the supplemental tag location estimates.

3. The method of Claim 2, wherein generating the at least one supplemental candidate combination by discarding the TOA data further comprises:

determining a largest negative TOA error value; and

removing a selected TOA data associated with the largest negative TOA error value.

4. The method of Claim 2, wherein the generating at least one supplemental candidate combination, calculating the supplemental tag location estimate, and determining the supplemental DQI adjusted solution are performed iteratively.

5. The method of Claim 1 further comprising:

determining if the DQI adjusted solution having the lowest DQI satisfies a predetermined quality threshold; and outputting the tag location estimate in an instance in which the DQI adjusted solution

satisfies the predetermined quality threshold 6. The method of Claim 1 further comprising:

determining whether candidate receiver TOA data is available for removal; and outputting a location failure in an instance in which there is no candidate receiver TOA data available for removal. 7. The method of Claim 6, wherein the determining whether candidates are available for removal further comprises:

determining a number of receivers associated with the received TOA data; and comparing the number of receivers associated with the received TOA data to a predetermined minimum receiver quantity threshold.

8. The method Claim 7, wherein the minimum receiver quantity threshold comprises a predetermined number of receivers.

9. The method of Claim 7, wherein the minimum receiver quantity threshold comprises a predetermined percentage of receivers of a receiver grid.

10. A method for determining target location in a multiple receiver target location system, comprising:

receiving, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission;

calculating a tag location estimate based on the TOA data;

determining a largest error TOA data;

removing the largest error TOA data; and

recalculating the tag location estimate based on the TOA data associated with the tag transmission without the largest error TOA data.

1 1. The method of Claim 10 further comprising:

determining if a minimization function value associated with the tag location estimate satisfies a predetermined threshold; and outputting the tag location estimate in an instance in which the minimization function value satisfies the predetermined threshold.

12. The method of Claim 10 further comprising:

determining if a number of receivers associated with the TOA data satisfies a predetermined threshold; and

outputting an error in an instance in which the number of receivers fails to satisfy the predetermined threshold. 13. The method of Claim 10, wherein the determining the largest error TOA data, removing the largest error TOA data, and recalculating the tag location estimate are performed iteratively.

14. The method of Claim 10, wherein the largest error TOA data is the most negative value indicative of a late receipt of the location tag transmission.

15. A method for determining target location in a multiple receiver target location system, comprising:

receiving, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission;

calculating tag location and associated TOA errors using a minimization function; recording the tag location, TOA errors, and receiver combinations associated with the TOA data;

determining the calculated receiver combinations satisfy a receiver combination threshold;

selecting a new combination of receivers in an instance in which the receiver combination threshold has not been satisfied;

selecting TOA data associated with the new combination of receivers; and calculating a tag location and associated TOA errors using the minimization function for the TOA data associated with the new combination of receivers.

16. The method of Claim 15 further comprising:

determining if the TOA error for the TOA data associated with the new

combination of receivers is a smallest error of the calculated minimization functions; and recording the tag location, TOA errors, and receiver combination for the TOA data associated with the new combination of receivers, in an instance in which the TOA error for the TOA data associated with the new combination of receiver is the smallest error of the calculated minimization functions.

17. A computer program product comprising at least one non-transitory computer- readable storage medium having computer-executable program code portions stored therein, the computer-executable program code portions comprising program code instructions configured to:

receive, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission;

determine a candidate combination based on the received TOA data;

calculate a tag location estimate for each candidate combination;

determine a data quality indicator (DQI) for each tag location estimate; and determine a DQI adjusted solution having the lowest DQI from the tag location estimates.

18. The computer program product of Clam 17, wherein the computer-executable program code portions comprising program code instructions are further configured to: generate at least one supplemental candidate combination by discarding at least one TOA data;

calculate a supplemental tag location estimate for each supplemental candidate combination;

determine a DQI for each supplemental tag location estimate; and

determine a supplemental DQI adjusted solution having the lowest DQI from the supplemental tag location estimates.

19. The computer program product of Claim 18, wherein generating the at least one supplemental candidate combination by discarding the TOA data further comprises: determine a TOA data with a largest negative TOA error value, indicative of a late receipt of the location tag transmission; and

remove the TOA data associated with the largest negative TOA error value.

20. The computer program product of Claim 18, wherein the generating at least one supplemental candidate combination, calculating the supplemental tag location estimate, and determining the supplemental DQI adjusted solution are performed iteratively.

21. The computer program product of Clam 17, wherein the computer-executable program code portions comprising program code instructions are further configured to: determine if the DQI adjusted solution having the lowest DQI satisfies a predetermined quality threshold; and

output the tag location estimate in an instance in which the DQI adjusted solution satisfies the predetermined quality threshold.

22. The computer program product of Clam 17, wherein the computer-executable program code portions comprising program code instructions are further configured to: determine whether candidate receiver TOA data is available for removal; and output a location failure in an instance in which there is no candidate receiver TOA data available for removal.

23. The computer program product of Claim 22, wherein the determining whether candidates are available for removal further comprises:

determine a number of receivers associated with the received TOA data; and comparing the number of receivers associated with the received TOA data to a predetermined minimum receiver quantity threshold.

24. The computer program product of Claim 23, wherein the minimum receiver quantity threshold comprises a predetermined number of receivers.

25. The computer program product of Claim 22, wherein the minimum receiver quantity threshold comprises a predetermined percentage of receivers of a receiver grid.

26. A computer program product comprising at least one non-transitory computer- readable storage medium having computer-executable program code portions stored therein, the computer-executable program code portions comprising program code instructions configured to: receive, from a plurality of receivers, time of arrival (TO A) data associated with a location tag transmission;

calculate a tag location estimate based on the TOA data;

determine a largest error TOA data;

remove the largest error TOA data; and

recalculate the tag location estimate based on the TOA data associated with the tag transmission data without the largest error TOA data.

27. The computer program product of Clam 26, wherein the computer-executable program code portions comprising program code instructions are further configured to: determine if a minimization function value associated with the tag location estimate satisfies a predetermined threshold; and

output the tag location estimate in an instance in which the minimization function value satisfies the predetermined threshold.

28. The computer program product of Clam 26, wherein the computer-executable program code portions comprising program code instructions are further configured to: determine if a number of receivers associated with the TOA data satisfies a predetermined threshold; and

output an error in an instance in which the number of receivers fails to satisfy the predetermined threshold.

29. The computer program product of Claim 26, wherein the determining the largest error TOA data, removing the largest error TOA data, and recalculating the tag location estimate are performed iteratively.

30. The computer program product of Claim 26, wherein the largest error TOA data is the most negative value indicative of a late receipt of the location tag transmission. 31. A computer program product comprising at least one non-transitory computer- readable storage medium having computer-executable program code portions stored therein, the computer-executable program code portions comprising program code instructions configured to: receive, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission;

calculate tag location and associated TOA errors using a minimization function; record the tag location, TOA errors, and receiver combinations associated with the TOA data;

determine if calculated receiver combinations satisfy a receiver combination threshold;

select a new combination of receivers in an instance in which the receiver combination threshold has not been satisfied;

select TOA data associated with the new combination of receivers; and calculate a tag location and associated TOA errors using the minimization function for the TOA data associated with the new combination of receivers.

32. The computer program product of Clam 31 , wherein the computer-executable program code portions comprising program code instructions are further configured to: determine if the TOA error for the TOA data associated with the new combination of receivers is a smallest error of the calculated minimization functions; and

record the tag location, TOA errors, and receiver combination for the TOA data associated with the new combination of receivers, in an instance in which the TOA error for the TOA data associated with the new combination of receivers is the smallest error of the calculated minimization functions.

33. An apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and computer program code configured to, with the processor, cause the apparatus to at least:

receive, from a plurality of receivers, time of arrival (TOA) data, associated with a location tag transmission;

determine a candidate combination based on the received TOA data;

calculate a tag location estimate for each candidate combination;

determine a data quality indicator (DQI) for each tag location estimate; and determine a DQI adjusted solution having the lowest DQI from the tag location estimates.

34. The apparatus of Claim 33, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

generate at least one supplemental candidate combination by discarding at least one TOA data;

calculate a supplemental tag location estimate for each supplemental candidate combination;

determine a DQI for each supplemental tag location estimate; and

determine a supplemental DQI adjusted solution having the lowest DQI from the supplemental tag location estimates.

35. The apparatus of Claim 33, wherein generating the at least one supplemental candidate combination by discarding the TOA data further comprises:

determine a largest negative TOA error value; and

removing a selected TOA data associated with the largest negative TOA error value.

36. The apparatus of Claim 34, wherein the generating at least one supplemental candidate combination, calculating the supplemental tag location estimate, and determining the supplemental DQI adjusted solution are performed iteratively.

37. The apparatus of Claim 33, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

determine if the DQI adjusted solution having the lowest DQI satisfies a predetermined quality threshold; and

output the tag location estimate in an instance in which the DQI adjusted solution satisfies the predetermined quality threshold

38. The apparatus of Claim 33, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

determine whether candidate receivers TOA data is available for removal; and output a location failure in an instance in which there is no candidate receiver TOA data available for removal.

39. The apparatus of Claim 38, wherein the determining whether candidates are available for removal further comprises:

determine a number of receivers associated with the received TOA data; and compare the number of receivers associated with the received TOA data to a predetermined minimum receiver quantity threshold.

40. The apparatus of Claim 39, wherein the minimum receiver quantity threshold comprises a predetermined number of receivers. 41. The apparatus of Claim 39, wherein the minimum receiver quantity threshold comprises a predetermined percentage of receivers of a receiver grid.

42. An apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and computer program code configured to, with the processor, cause the apparatus to at least:

receive, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission;

calculate a tag location estimate based on the TOA data;

determine a largest error TOA data;

remove the largest error TOA data; and

recalculate the tag location estimate based on the TOA data associated with the tag transmission without the largest error TOA data.

43. The apparatus of Claim 42, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

determine if a minimization function value associated with the tag location estimate satisfies a predetermined threshold; and

output the tag location estimate in an instance in which the minimization function value satisfies the predetermined threshold.

44. The apparatus of Claim 42, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

determine if a number of receivers associated with the TOA data satisfies a predetermined threshold; and output an error in an instance in which the number of receivers fails to satisfy the predetermined threshold.

45. The apparatus of Claim 42, wherein the determining the largest error TOA data, removing the largest error TOA data, and recalculating the tag location estimate are performed iteratively.

46. The apparatus of Claim 42, wherein the largest error TOA data is the most negative value indicative of a late receipt of the location tag transmission.

47. An apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and computer program code configured to, with the processor, cause the apparatus to at least:

receive, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission;

calculate tag location and associated TOA errors using a minimization function; record the tag location, TOA errors, and receiver combinations associated with the TOA data;

determine if the calculated receiver combinations satisfy a receiver combination threshold;

select a new combination of receivers in an instance in which the receiver combination threshold has not been satisfied;

select TOA data associated with the new combination of receivers; and

calculate a tag location and associated TOA errors using the minimization function for the TOA data associated with the new combination of receivers.

48. The apparatus of Claim 47, wherein the at least one memory and computer program code are further configured to, with the processor, cause the apparatus to:

determine if the TOA error for the TOA data associated with the new combination of receivers is a smallest error of the calculated minimization functions; and

record the tag location, TOA errors, and receiver combination for the TOA data associated with the new combination of receivers, in an instance in which the TOA error for the TOA data associated with the new combination of receivers is the smallest error of the calculated minimization functions.

Description:
METHOD FOR ITERATIVE TARGET LOCATION IN A MULTIPLE RECEIVER TARGET LOCATION SYSTEM

FIELD

Embodiments discussed herein are related to radio frequency locating and, more particularly, to systems, methods, apparatuses, computer readable media and other means for target location by high-resolution time-of-arrival (TO A) determination in a multiple receiver target location system.

BACKGROUND

A number of deficiencies and problems associated with UWB Real Time Locating Systems particularly related to target location accuracy are identified herein. Through applied effort, ingenuity, and innovation, exemplary solutions too many of these identified problems are embodied by the present invention, which is described in detail below.

BRIEF SUMMARY OF THE INVENTION

Systems, methods, apparatuses, and computer readable media are disclosed for providing iterative target location in a multiple receiver target location system. A brief summary is provided in the following.

In an example embodiment, a method, apparatus, and computer program product for determining target location in a multiple receiver target location system is provided including receiving, from a plurality of receivers, time of arrival (TO A) data associated with a location tag transmission, determining a candidate combination based on the received TOA data, calculating a tag location estimate for each candidate combination, determining a data quality indicator (DQI) for each tag location estimate, and determining a DQI adjusted solution having the lowest DQI from the tag location estimates.

In some example embodiments, the method, apparatus, and computer program product also comprises generating at least one supplemental candidate combination by discarding at least one TOA data, calculating a supplemental tag location estimate for each supplemental candidate combination, determining a DQI for each supplemental tag location estimate, and determining a supplemental DQI adjusted solution having the lowest DQI from the supplemental tag location estimates. In some example embodiments of the method, apparatus, and computer program product, generating the at least one supplemental candidate combination by discarding the TOA data also includes

determining a largest negative TOA error value and removing a selected TOA data associated with the largest negative TOA error value.

In some example embodiments of the method, apparatus, and computer program product, the generating at least one supplemental candidate combination, calculating a supplemental tag location estimate, and determining a supplemental DQI adjusted solution are performed iteratively. In some example embodiments, the method, apparatus, and computer program product also includes determining if the DQI adjusted solution having the lowest DQI satisfies a predetermined quality threshold and outputting the tag location estimate in an instance in which the DQI adjusted solution satisfies the predetermined quality threshold. In some example embodiments, the method, apparatus, and computer program product also includes determining whether candidate receiver TOA data is available for removal and outputting a location failure in an instance in which there is no candidate receiver TOA data available for removal.

In some example embodiments of the method, apparatus, and computer program product, the determining whether candidates are available for removal also includes determining a number of receivers associated with the received TOA data and comparing the number of receivers associated with the received TOA data to a predetermined minimum receiver quantity threshold. In some example embodiments of the method, apparatus, and computer program product, the minimum receiver quantity threshold comprises a predetermined number of receivers. In some example embodiments of the method, apparatus, and computer program product, the minimum receiver quantity threshold comprises a predetermined percentage of receivers of a receiver grid.

In a further example embodiment, a method, apparatus, and computer program product for determining target location in a multiple receiver target location system are provided including receiving, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission, calculating a tag location estimate based on the TOA data, determining a largest error TOA data, removing the largest error TOA data, and recalculating the tag location estimate based on the TOA data associated with the tag transmission without the largest error TOA data. In some example embodiments, the method, apparatus, and computer program product also include determining if a minimization function value associated with the tag location estimate satisfies a predetermined threshold and outputting the tag location estimate in an instance in which the minimization function value satisfies the

predetermined threshold. In some example embodiments, the method, apparatus, and computer program product also include determining if a number of receivers associated with the TOA data satisfies a predetermined threshold and outputting an error in an instance in which the number of receivers fails to satisfy the predetermined threshold.

In some example embodiments of the method, apparatus, and computer program product, the determining the largest error TOA data, removing the largest error TOA data, and recalculating the tag location estimate are performed iteratively. In some example embodiments of the method, apparatus, and computer program product, the largest error TOA data is a most negative value indicative of a late receipt of the location tag transmission.

In another example embodiment, a method, apparatus, and computer program product for determining target location in a multiple receiver target location system are provided including receiving, from a plurality of receivers, time of arrival (TOA) data associated with a location tag transmission, calculating tag location and associated TOA errors using a minimization function, recording the tag location, TOA errors, and receiver combinations associated with the TOA data, determining the calculated receiver combinations satisfy a receiver combination threshold, selecting a new combination of receivers in an instance in which the receiver combination threshold has not been satisfied, selecting TOA data associated with the new combination of receivers, and calculating a tag location and associated TOA errors using the minimization function for the TOA data associated with the new combination of receivers.

In some example embodiments, the method, apparatus, and computer program product also include determining if the TOA error for the TOA data associated with the new combination of receiver is a smallest error of the calculated minimization functions and recording the tag location, TOA errors, and receiver combination for the TOA data associated with the new combination of receivers, in an instance in which the TOA error for the TOA data associated with the new combination of receiver is the smallest error of the calculated minimization functions. BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

Figure 1 shows a timing diagram 100 for an RTLS tag transmission in an example high-resolution TOA determination system, in accordance with example embodiments of the present invention;

Figure 2 shows a timing diagram 200 for an RTLS tag transmission in an example high-resolution TOA determination system, in accordance with example embodiments of the present invention;

Figure 3 A illustrates a two-dimensional graphical representation of an over- determined TOA target location method in a multiple receiver target location system, in accordance with example embodiments of the present invention;

Figure 3B illustrates a two-dimensional graphical representation of a critically- determined TOA target location method in a multiple receiver target location system, in accordance with example embodiments of the present invention;

Figure 3C illustrates a two-dimensional graphical representation of an over- determined TOA target location method comparing TOA errors in a multiple receiver target location system, in accordance with example embodiments of the present invention;

Figures 4A-4C illustrate flow charts showing example methods for an iterative recalculating of an RTLS tag transmitter location based on TOA measurements by the set of receivers in the receiver grid;

Figure 5 illustrates an exemplary environment using a radio frequency locating system for providing performance analytics in accordance with some embodiments of the present invention;

Figure 6 illustrates an exemplary receiver in a RTLS system comprising a RTLS receiver that may be configured in accordance with some embodiments of the present invention; and

Figure 7 illustrates an example TOA and recovery circuit function from the exemplary receiver in the RTLS system of Figure 6, in accordance with some embodiments of the present invention. DETAILED DESCRIPTION OF THE INVENTION

Example embodiments of the present invention now may be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the inventions are shown. Indeed, these inventions may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.

Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

As such, example embodiments described herein comprise methods for an active Real Time Locating System (RTLS) tag target location system that provides for less than one-nanosecond (1 nsec) time of arrival (TO A) accuracy and resolution and significantly reduces the channel effects of multipath interference, even in low signal-to-noise ratio (SNR) applications. To accomplish these objectives, the example embodiments provide for an iterative and adaptive windowing function in one or more of the receivers of the receiver grid that captures multiple reflections of multiple transmissions from one or more of the associated target RTLS tags. EXAMPLE METHOD FOR ITERATIVE TARGET LOCATION IN A

MULTIPLE RECEIVER TOA SYSTEM

The present invention provides for an iterative recalculating of a target location estimate by successively testing receiver TOA error measurements and discarding outlier receivers. Embodiments of the present invention work to reduce the erratic effects that multipath channel interference and random noise play in target location systems due to incorrect identification of the main pulse of the transmit signal.

The TOA iterative location system of the present invention can be better appreciated with a cursory understanding of the corresponding TOA detection system. That is, it may be more clear why an errant TOA provided by one or more of the receivers 13a-l in the receiver grid is removed from the RTLS location function performed at the Central Processor/Hub 1 1 when it is understood how the TOA measurement is made, and the types of errors that may result in a TOA error. To this end, the first two figures, FIG. 1 and FIG. 2, are presented as a primer to describe the pertinent details of the RTLS TOA detection and registration function for the present invention.

FIG. 1 shows a timing diagram 100 for an adjustable timing window function 220, in accordance with example embodiments of the present invention. FIG. 1 comprises timing diagrams associated with a transmitter (TX) clock 101 , a receiver (RX) clock 201 , and a time snippet of the RX clock 201 , hereafter identified as RX' clock 202, that corresponds to an RX pulse 1 1 1R' receive event. The TX clock 101 provides for the timing relationship of a TX series of pulses H IT associated with a preamble 1 10, whereby the preamble 1 10 is an element of the RTLS tag transmission. The TX series of pulses 1 1 IT comprises a collection of individual, identical TX pulses 1 1 IT'. The TX clock 101 is resident at an example transmitter in the tag field.

The RX clock 201 provides for the timing relationship of an RX pulse train 21 1R, corresponding to the TX series of pulses H IT, whereby the RX pulse train 21 1R is itself comprised of the previously identified series of the RX pulses 1 1 1R', each corresponding to its respective TX pulse 1 1 IT' in the TX series of pulses H IT. The RX clock 201 is resident at an example receiver in the receiver grid. Each RX pulse 1 1 1R' comprises an RX pulse signature 212, representing one or more of an earliest pulse 215, a series of echoes 216A-B, and possible noise pulses 217, whereby the RX pulse signature 212 is associated with the RX' clock 202, as shown in FIG. 1, and is also associated with the corresponding TX pulse 1 1 IT'.

The adjustable timing window function 220, implemented at the receiver, provides for a capture and registration of the RX pulse signature 212 associated with the RX pulse 1 1 1 R', shown in the RX' clock 202 timing diagram. The adjustable timing window function 220 is comprised of a series wide detection windows 221 -230 and narrow detection windows 231-233, and an associated set of functions to adaptively position the series of wide and narrow detection windows 221-233 to center the RX pulse 1 1 1R' in the corresponding window. In some embodiments, as in the present example shown in FIG. 1 , there are ten wide detection windows 221-230. In some embodiments, as in the present example shown in FIG. 1 , there are three narrow detection windows 231-233. For notation convenience, the last window in the series of narrow detection windows 221 -233 is called a final detector window 233.

In an example embodiment, as shown in FIG. 1 , a first detection window 221 may be centered at 480 nsec, for example, with a width of 150 nsec. The center of the first detector window is a function of a first registered detection, wherein the present example registers a first registered detection at a second echo 216B of the RX pulse 1 1 1R'. The width of the first detection window 221 may be a function of an expected distance from the RTLS tag transmitter to the receiver.

The first detection window 221 may be adaptively updated by a second detection window 222 as provided by evidence of a second registered detection, wherein the present example registers a second registered detection at a first echo 216A of the RX pulse 1 1 1R'. In the example embodiment, the second detection window 222 may be centered at 460 nsec with a width of 150 nsec. Similarly, the second detection window 222 may be adaptively updated by a third detection window 223 as provided by evidence of a third registered detection, wherein the present example registers a third registered detection at the earliest pulse 215 of the RX pulse 1 1 1 R'. In the example embodiment, the third detection window 223 may be centered at 415 nsec with a width of 150 nsec.

The series of wide detection windows 221-230 continue to be adaptively updated by the registered detections of RX pulses 1 1 1R' that comprise the RX pulse train 211R corresponding to the TX series of pulses 11 IT in the preamble 1 10. In some examples, a final wide detector window 230 may be declared after a detection of ten RX pulses 11 1R'. At which point a final wide detector window 230 is determined, the registered detections for the series of wide detection windows 221-230 ends, and the series of narrow detection windows 231-233 is implemented.

A first narrow detection window 231 may be centered at the center of the final wide detection window 230. The width of the first narrow detection window 231 is 30 nsec, in some examples. However, note that, as FIG. 1 demonstrates, a timing shift may result with the registered detection of the RX pulse 1 11 R' associated with the first narrow detection window 231 , and the first narrow detection window 231 may not be exactly centered. The placement of the first narrow detection window 231 , in this example centered at 425 nsec, graphically represents such a shift, as the earliest pulse 215 associated with the RX pulse 1 1 1R' appears to be registered along the RX' clock 202 timing diagram closer to 415 nsec. Each of the series of narrow detection windows 231-233 are comprised of three 10 nsec, disjoint timing windows 231 A-C, 232A-C, and 233A-C. Detections for the RX pulses 1 1 1R' that comprise the RX pulse train 21 1R are registered in parallel in each of the three disjoint timing windows 231 A-C, for example, to detennine to which of the three disjoint timing windows 231 A-C the detection should be assigned. The purpose of the series of narrow detection windows 231-233 is to ensure that the final detection associated with the final RX pulse 1 1 1R' in the RX pulse train 21 1R is registered in a final center disjoint timing window 233B associated with the final detector window 233. A slide narrow window function 235 to slide the series of narrow detection windows 231-233 left and right (235L, 235R) in 10 nsec increments, for example, is provided as a method to achieve the aforementioned requirement, and as such the final detection associated with the final RX pulse 1 1 IR' in the RX pulse train 21 1R is registered in the center of the final detector window 233, in the final center disjoint timing window 233B.

As implemented, the RX pulse 1 1 IR' detectors themselves may comprise several detectors and several functions that may effect an improvement in detection resolution. For example, the detectors may comprise several distinct detection levels or threshold levels that may be used to determine whether the magnitude of the earliest pulse 215, one or more of the echoes 216A-B, or a noise pulse 217 is in fact a signal, or just low-level background noise interference. As one possible TOA error, an echo 216A-B may be incorrectly identified as the earliest pulse 215. The TOA error may occur, for example, in a physical environment whereby the earliest pulse 215 is effectively blocked from reaching the receiver, but an echo 216A-B is registered as a detection. A scenario such as this may show an RX pulse 1 1 IR' registration in only one of the several TOA detectors, the detector corresponding to the lowest threshold level. FIG. 2 addresses the event of a TOA error that results from registering an echo 216A-B incorrectly as the earliest pulse 215.

FIG. 2 shows an example embodiment of a timing diagram 200, corresponding to the receiver 13e, for the adjustable window timing function 220, in accordance with example embodiments of the present invention. Example timing diagram 200 for receiver 13e (shown in FIG. 5), as with timing diagram 100 shown in FIG. 1, comprises timing diagrams associated with the TX clock 101 , RX clock 201 , and RX' clock 202, and the associated TX pulses and TX series of pulses 1 1 IT' and 1 1 IT, and RX pulse 21 IR' and RX pulse train 1 1 1R. However, in this example shown in FIG. 2, the RX pulse signature 212, the earliest pulse 215, the series of echoes 216A-B, and the possible noise pulses 217, represents a physical environment whereby the second echo 216B is the strongest signal in the signature 212. As such, the adjustable timing window function 220, implemented at the receiver, provides for a capture and registration of the second echo 216B in the RX pulse signature 212, not the earliest pulse, as demonstrated previously for the adjustable window function 220 embodiment, shown in FIG. 1. As shown in FIG. 2, the slide narrow window function 235R slides the series of narrow detection windows 231 -233 to the right in 10 nsec increments to capture the final detection associated with the final RX pulse 1 1 1 R' in the RX pulse train 21 1R, whereby the final detection is registered in the center of the final detector window 233; that is, in the final center disjoint timing window 233B, centered at 485 nsec.

In the event that a detection system functioning at receiver 13e, depicted in FIG. 5, fails to correctly identify the earliest pulse 215 from the RX pulse signature 212, as demonstrated in the present example, an incorrect TOA is reported to a first minimizing function resident at the Central Processor/Hub 1 1. An unknown TOA timing error 5t e , is associated with the TOA registered by the receiver 13e, whereby the TOA timing error is comprised of at least the aforementioned detection registration error, in this case the difference between the correct earliest pulse 215 TOA detection of approximately 414 nsec and the incorrect second echo 216B TOA detection, e.g. a late arrival, of

approximately 482 nsec. As can appreciated, an uncorrected error of this magnitude, an error of approximately 68 feet for the TOA registered for receiver 13e in the present example, may corrupt the RTLS location function performed at the Central Processor/Hub 1 1.

Other error sources may include, but are not limited to, an asynchronous set of receiver 13a-l clocks, whereby in the present example, the RX clock 202 is not correctly synchronized to the RX clocks in the other receivers 13a-l, as depicted in FIG. 5, used at the Central Processor/Hub 1 1 in the RTLS location function. However, for the most part, it is expected that the TOA error Stj associated with other error sources, such as an RX clock 202 synchronization, are small with respect to an incorrect identification of the earliest pulse 215, as shown in FIG. 2.

In some examples, the TOA detection and registration at receiver 13e, for example, may incorrectly identify the earliest pulse 215 intermittently. That is, the RTLS location function at the Central Processor/Hub 1 1 will alternately be sent a correct TO A, as in FIG. 1 , and an incorrect TOA, as shown in FIG. 2, with an error of 5t e for the TOA associated with receiver 13e. Left uncorrected, the RTLS location function at the Central

Processor/Hub 1 1 will in turn alternately return from the first minimizing function, to be described in detail in the following section, a first location estimate X 0 , Yo, Z 0 that is expected to 'skip' or 'jump' back and forth between alternately changing first location estimates. The method of the present invention reduces or eliminates the erratic first location estimate X 0 , Yo, Z 0 behavior, in this example, associated with incorrect earliest pulse 215 detections, and consequently, incorrect TOA registrations..

FIG. 3 A shows a two dimensional (2D) graphical representation of a TOA target location method in a multiple receiver target location system and an example embodiment of a method for an iterative recalculating of an active RFID tag transmitter target location based on TOA measurements by the set of receivers 31 1-314, which may be substantially similar to receivers 13a-l of FIG. 5. It is understood in the present example shown in FIGs. 3 A-3C that a terminology of circles is consistent with a 2D treatment and rendering of the aforementioned method, making FIGs. 3A-3C, for example, easier to track than a three dimensional (3D) rendering. Of course, moving from the present 2D example to a 3D example requires an associated unit increase in a minimum number of receivers 31 1-314 necessary for a location estimate in the RTLS system, both for a critically-determined and an over-determined estimate, to be described later.

A set of circles 300 A, shown in FIG. 3 A, represent the geometry of the TOA location system, relating distance and time. The respective radii 301 , 302, 303, and 304 of the set of circles 300 represent subsequently determined time-of-flight (TOF) estimates for a set of receivers 31 1 , 312, 313, and 314, corresponding to receivers 31 1-314, from the set of receivers 31 1 -314 in the receiver grid, such as the receiver grid including receivers 13a- 1 of Figure 5, wherein the receivers 311-314 fixed physical locations are represented by crosses (+) at the circle centers for the set of circles 300A.

The radiuses of each circle may be interpreted as TO As t l s t 2 , t 3 , and , relative to an estimated transmission time t 0 , as measured by the receivers 311-314 receive clocks. The circles 300 A each represent an RFID tag transmit time estimate of the unknown true target transmit time t 0 '. Thereby, the TOF estimates Δίι-Δΐ 4 , which are equal to the differences between the TO As ti-t 4 and the first target tag transmit time estimate to, corresponding to the distances between the circle centers and the respective circles 300A, can be readily interpreted as the radii 301-304 associated with the receivers 31 1-314. A final location estimate may be determined by iterative recalculation of a target location as discussed below in Figs. 4A-4C.

FIG. 3B shows an example embodiment 300B of a method for an iterative recalculating of an RFID tag transmitter target location based on TOA measurements by the set of receivers 31 1-313 in the receiver grid, in accordance with example embodiments the present invention. FIG. 3B presents an enlarged, magnified view of the previously described intersection of circles 31 1-313; that is, the n th location estimate X n , Y n , Z n , point 350', in which circles 31 1-313 are coincident.

FIG. 3C shows an example embodiment of a method for an iterative recalculating of a 2D RFID tag transmitter target location based on TOA measurements by the set of five receivers 31 1 -315 in the receiver grid, now including the fifth receiver 315, identified as receiver 13e. As in FIG. 3 A, the collection of circles 300C represent time-of-flight (TOF) estimates Δΐι-Δί 4 and At 5 for a set of receivers 31 1-315, in the receiver grid (not shown), wherein the receivers 31 1-314 and 315 fixed physical locations are represented by crosses (+) at the circle centers for the set of circles 300C.

The circle radii also each represent TO As ti, t 2 , t 3 , t 4 , and t 5 relative to an RFID tag transmit time estimate, or first target time estimate to, an estimate of the unknown true target transmit time to'. The circles 300C themselves represent TO As tj-t 4 and t 5 , as before, measured by the receivers 31 1 -314 and 315 receiver clocks relative to an estimated target tag transmission time.

FIG. 4A illustrates a flow chart of a process 40Afor an iterative recalculation of a target location in a multiple receiver target location system, in accordance with

embodiments of the present invention.

At block 400, the Central Processor/Hub 1 1 may receive TOA data, such as TOA timestamps t]-t n received from the receivers, such as from receivers 31 1-314, the received TOA data being measured by the respective receiver clocks. The circles 300C, shown in the example embodiment given in FIG. 3C, represent the TOAs t]-t 5 as measured by the set of receivers 311-315 receiver clocks. A reception of a complete set of TOAs 400 (e.g., TOAs from receivers 31 1-315) at the Central Processor/Hub 1 1, as designated in FIG. 4A, represents an interrupt and/or start point for the process for the iterative recalculation of the target location by TOAs. In an example embodiment, the receiver clocks may be synchronized in frequency, but not necessarily in phase. As such, a set of receiver clock synchronization offsets ΔΦ η may be applied to each of the participating receivers, for example, receivers 31 1-315, in the RTLS TOA location estimate. The set of receiver clock synchronization offsets ΔΦ η may be garnered from a process involving an RX clock synchronization function for RX clocks 201, shown in FIGs. 1 -2, and described in detail in the following sections referencing FIGs. 5-7, whereby a set of clock synchronization offsets ΔΦ η are applied to respective TO As at receivers 31 1-315, for example, where each of the respective receiver clocks are offset with respect to a reference tag, as discussed in further detail in FIG. 5.

At block 402, a current candidate combination is generated based on the received TOA data, such as the TOA data received in block 400. In some examples, the current candidate combination consists of each receiver that provided TOA data. Alternatively or additionally, a subset of the receivers may make up the current candidate combination in an instance in which an error is detected or the like. For example, if the difference in arrival times from any two receivers represents a distance greater than the physical distance between the same two receivers, it can be determined that one of the receivers received a substantially delayed signal. That is, if: c(tj - ti) > du = - Xjf + (y 4 - y y ) 2 + (z t - zjf (1) then timestamp tj can be discarded as being not from a direct signal.

At block 404, the RTLS target locations system may calculate tag locations based on the remaining received TOA data. The calculation of tag location is based on a minimizing function. The minimizing function is configured to calculate a location estimate (X, Y, Z) and the transmit time estimate t 0 for a candidate combination of receivers of a receiver grid of N receivers. The Z dimension is assumed fixed, in some examples, for two dimensional location determinations. The minimizing function is derived from the TOA errors for the receivers, where the individual TOA errors, Sj, are as described in Equation 2: sj = dj - c (tj - t 0 ) (2) where Sj represents the TOA error for the ; ' th receiver, and

I 2 2 2

dj = (X - Xj ) + ( — j) + Z - Zj) is the distance from computed location (X, Y, Z) to

receiver j, and t 0 is the computed transmission time. The computed location and transmission time, {X, Y, Z, t 0 ), are determined by minimizing the sum of squares of the TOA errors: min x ,Y, z ,t 0 {S =∑ j sf) (3) where the summation is taken over TOA data from all receivers in the candidate combination.

There may be one or more candidate combinations of TOA data for which locations will be computed. In many cases, there will be one combination consisting of the entire set of remaining TOA data. In other cases, there may be several candidate combinations, each consisting of a subset of the remaining TOA data.

At block 406, the RTLS target location system determines a best solution from the one or more candidate combinations, based on results of their respective tag location calculations. This determination is based on the resulting data quality indicator, or DQI, values from each location calculation of each candidate TOA combination. When a minimum, S min , is found, DQI is taken as the mean or per-receiver, value of S min . Thus, DQI = S min /N, where N is the total number of receivers participating in the candidate combination. The DQI value is a measure of agreement amongst the TOA measurements, and indicates the degree to which the TOA measurements correspond to direct line-of- sight propagation paths as opposed to paths from unknown and uncontrolled reflected signals. The DQI is derived as a result of the minimization process used to compute a location for a candidate set of TOA values.

If all TOA values are perfect and from direct paths, then DQI will be zero. Any non-zero value is an estimate of the deviation of the TOA measurements from perfect data and is an indication of the confidence of the computed location. The solution with the lowest DQI value from amongst the one or more candidate combinations may be used as the best solution at record tag location block 406.

At decision block 408, the RTLS target location system determines whether the solution identified, such as the solution determined at block 406, satisfies a quality threshold. This threshold is a configurable parameter which is used to determine the acceptability of a solution. If the DQI from the solution chosen in block 406 is below this threshold value, then that solution is taken as the overall solution, and the location computation for that tag transmission. Acceptance of the solution is indicated by block 410. In an instance in which the threshold is not satisfied at decision block 408, indicating a larger than acceptable error value, then at decision block 412, the RTLS target location system determines whether additional candidates for removal are available (e.g., the system may require a sufficient number of receivers so as to be able generate a location estimate after one or more receivers are discarded). In some examples, the RTLS target location system may compare the number of receivers, such as the number of receivers in the current candidate combination, to a minimum receiver quantity threshold. In an example embodiment the minimum receiver quantity threshold may be a

predetermined number of receivers. In some examples, such as a two-dimensional (2D) location estimate in a 2D RTLS system, the minimum receiver quantity threshold (number of TOAs and receivers) may be four. In another example, such as a three-dimensional (3D) location estimate in a 3D RTLS system, the minimum receiver quantity threshold (number of TOAs and receivers) may be five. Although a 2D RTLS location estimate may be determined based on three receivers and 3D RTLS location estimates may be determined based on four receivers, the additional receivers allows for an overdetermined location to be determined. The overdetermined location allows for the location estimate to be tested for agreement among the TOAs, as discussed herein. In some example embodiments, the minimum receiver quantity threshold may be a percentage of the available receivers, such as 25%, 50%, 75%, 90%, or any other percentage of available receivers. In an instance in which the minimum receiver quantity threshold is a percentage of available receivers, the percentage may be set at or above the minimum number of receivers for determining an overdetermined location.

In an instance in which the RTLS target location system determines that the minimum receiver quantity threshold is not satisfied at block 412, the method fails indicating that a location cannot be determined for a particular iteration. In an instance in which a location cannot be determined due to insufficient receiver TOAs, the RTLS target location system may record a locate error, or "fail" at block 414. In an instance in which the RTLS target location system determines that the minimum receiver quantity threshold is satisfied, then further refinement may be attempted at block 416.

At block 416, further elimination, or pruning, of the receiver TOA data can be performed. This pruning can be performed in an exhaustive manner by forming N candidate combinations out of the set of TOAs used in the previous best solution, each with one receiver TOA missing. Other combinations can be envisioned in which more than one receiver is removed to form candidate combinations. However, it is possible that exhaustive pruning can lead to the removal of legitimate, direct path TOA data in the pursuit of a lower DQI value. This simple method is unable to discriminate between TO As from a direct or reflected path.

Preferably, some intelligence can be applied to the pruning process by evaluating the individual contributions to the minimized function, S min , to determine the most likely receiver TOA or TO As to have been resulting from a non-direct or reflected signal. There are several ways to perform this intelligent pruning. Some of these are based on a Taylor expansion of the minimization function, while maintaining minimization conditions, as one particular TOA is perturbed by an amount of Stj. The incremental response to this change is a change in the four-dimensional quantity (X, Y, Z, t 0 ) for any given solution.

Defining the four-space vector R = Xx + Yy + Zz + t 0 t 0 , to represent the position and transmit time of a minimized solution, S(R), the second-order Taylor expansion of S min can be determined. In an instance in which a receiver's timestamp is perturbed by an amount Stj, the minimization function may be altered. The perturbation may lead to a new position and time vector, R' = R + AR. A new minimization function S' may result from the perturbation. The new minimization function may be determined to second order in perturbed quantities:

S' (R') = VVS | 5 - 2 (s ; - | s + AR Vs ; | s ) (c5t y ) + {c6tjf (4)

The change in position and time as a result of the perturbed timestamp may be the value of AR which minimizes S'. AR may be found from the gradient with respect to AR, giving the condition:

Where J = S |^ is the Jacobian of the gradient of S, evaluated at the

unperturbed location R.

Putting the position change, AR, from Equation 5 into Equation 4 may yield the net effect on the minimization function of a change Stj in one TOA of the following:

S min R + AR) = S min R) - 2Sj(cStj) + (6) where the second order coefficient, α-, is derived from the inverse of the Jacobian matrix J of the gradient of S(R) : a; = 1 - 2 (¾ + t 0 ) J '1■ (v, + t 0 ) (7) vj = l(X - xj)x + (Y - yj )y + (Z - Zj )z ]/dj (8) and:

/ = 2∑ i (v i + t 0 ) (D i + t 0 ) (9) In a first-order method, the receiver with correspondingly most negative value of Sj is a good candidate for removal, since the TOA from that receiver would reduce S min ( + AR) , as shown in Equation (6), most quickly for a negative value of Stj, as would be the case if it were the result of a delayed signal. This method works well in many cases.

A preferred method is to determine, according to the approximation of Equation (6), what value of tj will cause the greatest reduction in S min (R + AR) for negative values, only, of Stj . The second order approximation will exhibit a minimum at Stj = Sj/cij, and a corresponding estimate of S min (R + AR) of (S min (R) — sf/dj). The receiverj, with corresponding least value of {S min (R) — sf /dj), or, equivalently, greatest value of ( sf/dj), while having a negative value of Stj = Sj/aj is a very good candidate for removal. This choice indicates the receiver TOA which is not only delayed, but were it not delayed would most significantly reduce the value of the minimization function.

Other methods of pruning, either exhaustive or intelligent, can be performed. For example, a higher-order Taylor expansion can be implemented to gain a more accurate estimate of signal delays responsible for unacceptable DQI values. In alternative or additional examples, multiple receivers may be removed at each iteration.

Following the removal of the one or more receivers at block 412, the process returns to block 404 with one or more candidate combinations. As described above, the method iterates until a threshold is satisfied at block 408 or the method fails by way of failing to satisfy a receiver quantity threshold at block 412.

FIG. 4B shows a flow chart summarizing a step-by-step process 40B that enables an example embodiment of the method for an iterative recalculation of a target location in a multiple receiver target location system, in accordance with the present invention. At block 420, TO As t lt ... , t n are received by the Central Processor/Hub in the multiple receiver RTLS target location system. At block 422, a minimizing function is applied to the measured TOAs, such as TOAs t 1( ... , t n . The TOA minimizing function is configured to calculate a first location estimate X lt Ύ , Ζ^ and the first target transmit time estimate toi for a receiver grid of n receivers. Using the first location estimate, the TOA minimizing function calculates the TOA errors s ki for the n receivers, where the TOA errors s ki are as described in Equation 12 for I = 1.

Ski = CM - χ κΥ + (Xi - y k ) 2 + i - ¾) 2 ) - c(t k - t 01 ) (12)

Where: s kl represents the TOA error for the k receiver during

iteration

xk > k' z k represents the location of the k receiver

X Y t ,∑i represents the location estimate for the 1 th iteration t k represent the TOA at the k th receiver

t 01 represents the transmit time estimate for the 1 th iteration c represents the speed of light, in vacuum.

In some example embodiments, the minimizing function comprises minimizing a sum of the squares of the TOA errors s 1∑ , In some example embodiments, the minimizing function comprises minimizing a root-mean-square (RMS) of the TOA errors s ii > > Sni ~ The minimizing function comprising minimizing the sum of squares for example is given in Equation 13.

Si — mm Xl Y lZl tol (13) (14) Where: S, represents the minimizing function value for the 1 iteration,

07 represents the standard deviation of the TOA errors for the

ith

iteration.

represents the number of receivers providing data for the I 1 iteration.

Alternatively or additionally, and in an example embodiment, the TOA minimizing function may be repeated and the TOA errors s kl may be recalculated for estimated locations and transmit times proximate the first estimated locations and first estimated transmit time, until a minimum value is returned for the minimizing function value5 t . In such examples, the best first location estimate (X 1 , Y L T Z x ) and the best first target transmit time estimate t 01 are determined, along with the TOA errors s kl associated with each of the n receivers.

At decision block 424, the RTLS target location system determines if the minimum function value 5^ or σ satisfies a predetermined threshold value. That is, if the first minimizing function value σ 1 is less than a predetermined or programmable threshold value indicating an acceptable error value, sometimes called a DQI value, then the first minimizing function value S x is determined acceptable and the location estimate

Y 1 , Z-L) and the target time transmit estimate t 01 are recorded. In an instance in which the threshold is satisfied, the method ends after the location estimate (X X , Y L T Z^) and the target time transmit estimate t 0 i are recorded as is shown in block 426.

In an instance in which the minimizing function value Si is greater than the predetermined or programmable threshold value at block 424, indicating a larger than acceptable error value, then at block 428, the RTLS target location system determines whether a minimum number of receivers are available for a location determination (e.g., the system as a sufficient number of receivers so as to be able generate a location estimate or overdetermined location estimate). In some examples, the RTLS target location system may compare the number of receivers to a minimum threshold. In some examples, such as a two-dimensional (2D) position estimate in a 2D RTLS system, the minimum threshold (number of TO As and receivers) may be four. In another example, such as a three- dimensional (3D) position estimate in a 3D RTLS system, the minimum threshold (number of TO As and receivers) may be 5.

In an instance in which the RTLS target location system determines that the minimum threshold is not satisfied then, at block 430, the method fails indicating that a location cannot be determined. In an instance in which a location cannot be determined due to insufficient receiver TO As, the RTLS target location system may record a locate error, or "fail".

In an instance in which the RTLS target location system determines that the minimum threshold is satisfied then, at block 432, the RTLS target system removes a receiver with the largest TOA error value as determined in equation 12, e.g. the receiver which would have the largest effect on S^f removed to correct the error (late TOA). Specifically, in some examples the RTLS target location system may remove a receiver from the set of n receivers, wherein the receiver that is removed is associated with the maximum TOA error s kl fvom the set of n TOA errors s , ... , s ni> as given in Equation 15.

THEN: Discard the k th receiver. Where: s ki represent the TOA error for the k th receiver for iteration

1.

σ χ represents the standard deviation of the TOA errors for iteration 1.

Ni represents the number of receivers participating in iteration 1

γ-ι represents a scalar multiplier.

In an example embodiment, γ may be a fixed scalar multiplier; alternatively, y x may change dynamically. Following the removal of the receiver related to the maximum TOA error s ki from the set of n TOA errors s Ul ... , s nl at step 432, the process 40B returns to step 422.

FIG. 4C shows a flow chart summarizing a step-by-step process 40C that enables an example embodiment of the method for an iterative recalculation of a target location in a multiple receiver target location system, in accordance with the present invention. The step-by-step process 40C represents an iterative recalculation of a target location for an RTLS target location system.

At block 434, TOAs t x , ... , t 5 are received by the Central Processor/Hub in the multiple receiver RTLS target location system. At block 436, the RTLS target location system may calculate a minimizing function value S k using a TOA minimizing function, such as the TOA minimizing function described above with respect to Figure 4B.

At decision block 438, the RTLS target locations system may test the minimizing function value error^ calculated by the TOA minimizing function at step 436, against all previously calculated error values. In an instance in which the minimizing function value error is S fc the smallest error when compared to other error calculations, the receiver combination and the minimum function value error S k is recorded in step 440.

At block 442, the RTLS target location system may determine if all m

combinations of receivers has been selected and calculated, e.g. if a receiver combination threshold has been satisfied. In an instance in which all respective combination of receivers has been selected and a position estimate (X k , Y k , Z k ) and a set of TO A errors S k associated with each of the m sets of receiver combinations has been calculated, the process 40C is completed at step 444 with the position estimate being selected based on the combination of receivers, k* that had the smallest error calculation as determined in block 438.

In an instance in which the RTLS target location system has not calculated a position estimate (X k , Y k , Z k ) and a set of TO A errors S k associated with each of the m sets of receiver combinations, then, at block 446, a new combination of n or fewer TO As from the associated original receiver set is selected in a (n,K) th permutation. In an example embodiment, the RTLS target location system may remove and replace receivers TO As iteratively until each of the m receiver combinations has been calculated. The process may continue at step 436.

In some examples, an advantage of process 40B in Figure 4B is minimal processing time and processing power requirements. Additionally, 40B is more likely to discriminate late arrival TOAs. In other examples, an advantage of process 40C in Figure 4C is a more complete analysis of possible TOA combinations, resulting in, predictably, a better, more accurate RTLS location estimate. (X k *, Y k *, Z k *).

At this point, it is important to draw the distinction between a critically-determined RTLS location system and an over-determined RTLS location system. For the 2D example presented in FIG. 3A, the independent variables estimated for the first minimizing function, given in Equations 10-1 1 , are the first location estimate (X x , χ, Ζ^) and the first target transmit time estimate t Q1 . In 2D, the first location estimate is represented by the coordinates (¾, Y 1 , Z 1 ), and combined with the first target transmit time t 01 , provides for three independent variables.

As such, a collection of three TOA constraints from the three receivers 13a-c, for example, critically determines the dependent TOA errors s x , ... , s 3 . That is, represented graphically, the three circles 31 1 -313 from the set of circles 300 intersect at a point, whereby the circles 31 1 -313 represent the first target location estimate, as previously noted, the radii 301 -303 represent the TOFs Δΐ1 -Δί3, and the resulting TOA errors s 1 ( ... , s 3 are each zero.

As such, a collection of three TOA constraints from the three receivers 13a-c, for example, critically determines the dependent TOA errors s x , ... , s 3 . Represented graphically, the three circles 31 1-313 from the set of circles 300 intersect at a point, whereby the circles 31 1-313 represent the first target location estimate, as previously noted, the radii 301-303 represent the TOFs Δί1 -Δί3, and the resulting TO A errors s X) ... , s 3 are each zero.

FIG. 3B graphically represents an example step in the iteration of the minimizing function, given in equations 12-14, wherein the independent variables (X, Y, Z) and t 0 are converging such that the first minimizing function value S is approaching zero; that is, that each of the TO A errors5 1( ... , s 3 are simultaneously converging to zero, as discussed in the previous section. In the example presented in FIG. 3B, the three TOA errors are equal to each other, and the final location estimate (X, Y, Z), the point 350', it follows, has already converged.

As can be appreciated, provided with three TOAs tj-t 3 from three receivers 31 1- 313, FIG. 3B graphically represents a critically-determined 2D RTLS location system. FIG. 3A, on the other hand, provides for four TOAs t \ - from four receivers 31 1-314, and as such FIG. 3A graphically represents an over-determined 2D RTLS location system.

Returning to FIG. 3 A, it can be appreciated that the method for comparing TOA errors ... , s 4 , as defined in Equation 2, wherein the four receivers 31 1-314 in FIG. 3A provide for an over-determined RTLS location system, does not work. The reason:

removing any one of the four receivers 31 1-314 from the 2D RTLS location system yields a critically-determined system, wherein each first minimizing function value s k is zero.

That is, each location estimate (X, Y , Z) and associated first target transmit time estimate t 0 from each combination of three receivers from the set of four receivers 31 1- 314 is equally valid. As such, to conduct a test for comparing TOA error, as described in Equation 15, there must be at least five TOAs ti-t 5 generated from five receivers 31 1-315 for the 2D RTLS location system.

Also, it can be appreciated that where the foregoing descriptions and arguments have been made and are applicable to a 2D RTLS location system, the descriptions and arguments apply equally to a 3D RTLS location system, whereby the number of TOAs and receivers associated with a critically-determined system, an over-determined systems, and the minimum requirements for implementation of a method for comparing TOA errors s x , ... , s 4 „ given in Equation 15, are each increased by one. That is, for a 3D RTLS location system, a critically-determined system requires four TOAs, and over-determined system requires at least five TOAs, and minimum requirements for implementation of a method for comparing TOA errorss 1( ... , s 5 , given in Equation 15, is six TO As and six receivers 31 1 -316.

In the example presented graphically in FIG. 3C, the first minimizing function may now produce a first location estimate (¾, Y 1 , Z 1 ) 350", in accordance with Equations 12- 14. Implementation of a method for comparing TOA errors s ls s s , given in Equation 1 15, may determine that the TOA error s 5 is significantly larger than the TOA errors s 1; ... , s 4 , that TOA t 5 associated with the receiver 315 (13e) is an outlier, and should be discarded.

In such case, the example embodiment of the method for an iterative recalculating of a 2D RFID tag transmitter target location based on TOA measurements is rerun with the remaining set of four receivers 31 1 -314 in the receiver grid, as depicted in FIG. 3 A. In a second iteration, Equations 12-15 provide form identical functions as the first iteration, searching the space-time regime now for a second location estimate X 2 , Y 2 , Z 2 and a second target transmit time t 2 to find the second minimizing function value δΤ 2 for minimizing the second minimizing function in Equations 12-14.

As with the first location estimate (X x , Y X , Z^), the second location estimate

X 2 , Y 2 , Z 2 is made by minimizing a second minimizing function value S 2 from a second minimizing function, wherein the second minimizing function comprises a set of distance or timing errors, TOA errors5 1( ... , s 4 between TOF estimates Δίι-Δΐ 4 and the distance from the circle centers to the second location estimate (X 2 , Y 2 , Z 2 ).

In some embodiments, the second minimizing function comprises minimizing a sum of the squares of the TOA errors s ... , s 4 . In some embodiments, the second minimizing function comprises minimizing an RMS of the TOA errors ... , s 4 . The second minimizing function comprising minimizing the sum of squares and the second minimizing function comprising minimizing the RMS map directly onto Equations 12-14, respectively, presented previously for FIG. 3A.

As shown previously in FIG. 3A, the present invention addresses the TOA measurement errors in the set of receivers 31 1 -315 in the receiver grid, shown in FIG. 3C, and presents a method for iteratively recalculating the second minimizing function to significantly improve the second location estimate {X 2 , Y 2 , Z 2 ) over and above the first location estimate (X lt F 1; Z ) discarding TOA errors that are outliers. The method for comparing the TOA errors, s ... , s 4 following completion of the second minimizing function, maps directly onto the method for comparing the TOA errors s lt ... , s 4 ,given in Equation 15, presented previously in conjunction with the first minimizing function and FIG. 3A.

The method for iteratively recalculating the second minimizing function, in accordance with the geometry associated with FIG. 3A, allows for a second scalar multiplier y 2 to be introduced into the second minimizing function. In one embodiment, y may be a fixed scalar multiplier. In one embodiment, y 2 ma Y change dynamically. In one embodiment, y 2 may be a fixed scalar multiplier, but have a different value from y x .

In some embodiments, the iterative recalculating of X Y t , Z t ) and t ol may continue for a prescribed number of iterations. In some embodiments, the iterative recalculating of(X h Yi, Z ) and t ol may continue until such point that no further TO A errorss fc; , and no additional associated receivers, such as the receiver 315 (13e) in the example from FIG. 3C, are discarded, in accordance with the / th minimizing function. A final location estimate (X m , Y m , Z m ) resulting from a final iterative recalculating for target location -specifically, the final result in accordance with the m th minimizing function- represents the final target location estimate for the RTLS TOA target location system, in this example, whereby the final target location estimate for the geometry presented in FIG. 3 A, is denoted by point 350.

For the example shown iteratively in FIG. 3C, then FIG. 3A, the second location estimate (X 2 , Y2 > ^ 2 ) may provide for a smaller value for the second minimizing function value σ 2 for the second minimizing function; that is, σ 2 < σ . The smaller second minimizing function value σ 2 for the second minimizing function may represent an improvement in the accuracy of the second location estimate (X 2 , Υζ, Ζι- ) over the first location estimate (X Q , Y Q , Z 0 ). The potential improvement in accuracy represented by the second location estimate {X 2 , Yz > ¾ may be a direct effect of the absence of the TOA error t 5 , the absence of the receiver 315 (13e) from FIG. 3C, from the second

minimization function. If so, it may be that erratic effects associated with target location in the TOA target location system may be attributed to the receiver 315 from FIG. 3C, and further may be a direct result of a multipath channel associated with the receiver 315 or a random noise received at the receiver 315.

EXAMPLE REAL TIME LOCATING SYSTEM FIG. 5 illustrates an exemplary locating system 500 useful for calculating a location by an accumulation of location data or time of arrivals (TO As) at a central processor/hub 1 1 , whereby the TOAs represent a relative time of flight (TOF) from RTLS tags 12a-f as recorded at each receiver 13a-l (e.g., UWB reader, etc.). A timing reference clock is used, in some examples, such that at least a subset of the receivers 13a-l may be synchronized in frequency, whereby the relative TOA data associated with each of the RTLS tags 12a-f may be registered by a counter associated with at least a subset of the receivers 13a-l. In some examples, a reference tag 14a-b, preferably a UWB transmitter, positioned at known coordinates, is used to determine a phase offset between the counters associated with at least a subset of the of the receivers 13a-l. The RTLS tags 12a-f and the reference tags 14a-b reside in an active RTLS field 18. The systems described herein may be referred to as either "multilateration" or "geolocation" systems, terms that refer to the process of locating a signal source by solving an error minimization function of a location estimate determined by the difference in time of arrival (DTOA) between TOA signals received at multiple receivers 13a-l.

In some examples, the system comprising at least the tags 12a-f and the receivers 13a-l is configured to provide two dimensional and/or three dimensional precision localization (e.g., sub foot resolutions), even in the presence of multipath interference, due in part to the use of short nanosecond duration pulses whose TOF can be accurately determined using detection circuitry, such as in the receivers 13a-l, which can trigger on the leading edge of a received waveform. In some examples, this short pulse characteristic allows necessary data to be conveyed by the system at a higher peak power, but lower average power levels, than a wireless system configured for high data rate

communications, yet still operate within local regulatory requirements.

In some examples, to provide a preferred performance level while complying with the overlap of regulatory restrictions (e.g., FCC and ETSI regulations), the tags 12a-f may operate with an instantaneous -3dB bandwidth of approximately 400 MHz and an average transmission below 187 pulses in a 1 msec interval, provided that the packet rate is sufficiently low. In such examples, the predicted maximum range of the system, operating with a center frequency of 6.55 GHz, is roughly 200 meters in instances in which a 12 dbi directional antenna is used at the receiver, but the projected range will depend, in other examples, upon receiver antenna gain. Alternatively or additionally, the range of the system allows for one or more tags 12a-f to be detected with one or more receivers positioned throughout a football stadium used in a professional football context. Such a configuration advantageously satisfies constraints applied by regulatory bodies related to peak and average power densities (e.g., effective isotropic radiated power density ("EIRP")), while still optimizing system performance related to range and interference. In further examples, tag transmissions with a -3dB bandwidth of approximately 400 MHz yields, in some examples, an instantaneous pulse width of roughly 2 nanoseconds that enables a location resolution to better than 30 centimeters.

Referring again to FIG. 5, the object to be located has an attached tag 12a-f, preferably a tag having a UWB transmitter, that transmits a burst (e.g., multiple pulses at a 1 Mb/s burst rate, such as 1 12 bits of On-Off keying (OOK) at a rate of 1 Mb/s), and optionally, a burst comprising an information packet utilizing OOK that may include, but is not limited to, ID information, a sequential burst count or other desired information for object or personnel identification, inventory control, etc. In some examples, the sequential burst count (e.g., a packet sequence number) from each tag 12a-f may be advantageously provided in order to permit, at a Central Processor/Hub 1 1 , correlation of TOA

measurement data from various receivers 13a-l.

In some examples, the tag 12a-f may employ UWB waveforms (e.g., low data rate waveforms) to achieve extremely fine resolution because of their extremely short pulse (i.e., sub-nanosecond to nanosecond, such as a 2 nsec (lnsec up and lnsec down)) durations. As such, the information packet may be of a short length (e.g. 1 12 bits of OOK at a rate of 1 Mb/sec, in some example embodiments), that advantageously enables a higher packet rate. If each information packet is unique, a higher packet rate results in a higher data rate; if each information packet is transmitted repeatedly, the higher packet rate results in a higher packet repetition rate. In some examples, higher packet repetition rate (e.g., 12 Hz) and/or higher data rates (e.g., 1 Mb/sec, 2 Mb/sec or the like) for each tag may result in larger datasets for filtering to achieve a more accurate location estimate. Alternatively or additionally, in some examples, the shorter length of the information packets, in conjunction with other packet rate, data rates and other system requirements, may also result in a longer battery life (e.g., 7 years battery life at a transmission rate of 1 Hz with a 300mAh cell, in some present embodiments).

Tag signals may be received at a receiver directly from RTLS tags, or may be received after being reflected en route. Reflected signals travel a longer path from the RTLS tag to the receiver than would a direct signal, and are thus received later than the corresponding direct signal. This delay is known as an echo delay or multipath delay. If reflected signals are sufficiently strong enough to be detected by the receiver, they can corrupt a data transmission through inter-symbol interference. In some examples, the tag 12a-f may employ UWB waveforms to achieve extremely fine resolution because of their extremely short pulse (e.g., 2 nsec) durations. Furthermore, signals may comprise short information packets (e.g., 1 12 bits of OOK) at a somewhat high burst data rate (1 Mb/sec, in some example embodiments), that advantageously enable packet durations to be brief (e.g., 1 12 usee) while allowing inter-pulse times (e.g., 998 nsec) sufficiently longer than expected echo delays, avoiding data corruption

Reflected signals can be expected to become weaker as delay increases due more reflections and to the longer distances traveled. Thus, beyond some value of inter-pulse time (e.g., 998 nsec), corresponding to some path length difference (e.g., 299.4 m.), there will be no advantage to further increases in inter-pulse time (and, hence lowering of burst data rate) for any given level of transmit power. In this manner, minimization of packet duration allows the battery life of a tag to be maximized, since its digital circuitry need only be active for a brief time. It will be understood that different environments can have different expected echo delays, so that different burst data rates and, hence, packet durations, may be appropriate in different situations depending on the environment.

Minimization of the packet duration also allows a tag to transmit more packets in a given time period, although in practice, regulatory average EIRP limits may often provide an overriding constraint. However, brief packet duration also reduces the likelihood of packets from multiple tags overlapping in time, causing a data collision. Thus, minimal packet duration allows multiple tags to transmit a higher aggregate number of packets per second, allowing for the largest number of tags to be tracked, or a given number of tags to be tracked at the highest rate.

In one non-limiting example, a data packet length of 1 12 bits (e.g., OOK encoded), transmitted at a data rate of 1 Mb/sec (1 MHz), may be implemented with a transmit tag repetition rate of 1 transmission per second (1 TX/sec). Such an implementation may accommodate a battery life of up to seven years, wherein the battery itself may be, for example, a compact, 3 -volt coin cell of the series no. BR2335 (Rayovac), with a battery charge rating of 300 mAhr. An alternate implementation may be a generic compact, 3-volt coin cell, series no. CR2032, with a battery charge rating of 220 mAhr, whereby the latter generic coin cell, as can be appreciated, may provide for a shorter battery life.

Alternatively or additionally, some applications may require higher transmit tag repetition rates to track a dynamic environment. In some examples, the transmit tag repetition rate may be 12 transmissions per second (12 TX/sec). In such applications, it can be further appreciated that the battery life may be shorter. The high burst data transmission rate (e.g., 1 MHz), coupled with the short data packet length (e.g., 1 12 bits) and the relatively low repetition rates (e.g., 1 TX/sec), provide for two distinct advantages in some examples: (1) a greater number of tags may transmit independently from the field of tags with a lower collision probability, and/or (2) each independent tag transmit power may be increased, with proper consideration given to a battery life constraint, such that a total energy for a single data packet is less that an regulated average power for a given time interval (e.g., a 1 msec time interval for an FCC regulated transmission).

Alternatively or additionally, additional sensor or telemetry data may be transmitted from the tag 12a-f to provide the receivers 13a-l with information about the environment and/or operating conditions of the tag. For example, the tag may transmit a temperature to the receivers 13a-l. Such information may be valuable, for example, in a system involving perishable goods or other refrigerant requirements. In this example embodiment, the temperature may be transmitted by the tag at a lower repetition rate than that of the rest of the data packet. For example, the temperature may be transmitted from the tag to the receivers at a rate of one time per minute (e.g., 1 TX/min.), or in some examples, once every 720 times the data packet is transmitted, whereby the data packet in this example is transmitted at an example rate of 12 TX/sec.

Alternatively or additionally, the tag 12a-f may be programmed to intermittently transmit data to the receivers 13a-l in response to a signal from a magnetic command transmitter (not shown). The magnetic command transmitter may be a portable device, functioning to transmit a 125 kHz signal, in some example embodiments, with a range of approximately 15 feet or less, to one or more of the tags 12a-f. In some examples, the tags 12a-f may be equipped with at least a receiver tuned to the magnetic command transmitter transmit frequency (e.g., 125 kHz) and functional antenna to facilitate reception and decoding of the signal transmitted by the magnetic command transmitter.

In some examples, one or more other tags, such as a reference tag 14a-b, may be positioned within and/or about a monitored region. In some examples, the reference tag 14a-b may be configured to transmit a signal that is used to measure the relative phase (e.g., the count of free-running counters) of non-resettable counters within the receivers 13a-l.

One or more (e.g., preferably four or more) receivers 13a-l are also positioned at predetermined coordinates within and/or around the monitored region. In some examples, the receivers 13a-l may be connected in a "daisy chain" 19 fashion to advantageously allow for a large number of receivers 13a-l to be interconnected over a significant monitored region in order to reduce and simplify cabling, provide power, and/or the like. Each of the receivers 13a-l includes a receiver for receiving transmissions, such as UWB transmissions, and preferably, a packet decoding circuit that extracts a time of arrival (TO A) timing pulse train, transmitter ID, packet number, and/or other information that may have been encoded in the tag transmission signal (e.g., material description, personnel information, etc.) and is configured to sense signals transmitted by the tags 12a-f and one or more reference tags 14a-b.

Each receiver 13a-l includes a time measuring circuit that measures times of arrival (TOA) of tag bursts, with respect to its internal counter. The time measuring circuit is phase-locked (e.g., phase differences do not change and therefore respective frequencies are identical) with a common digital reference clock signal distributed via cable connection from a Central Processor/Hub 1 1 having a central timing reference clock generator. The reference clock signal establishes a common timing reference for the receivers 13a-l. Thus, multiple time measuring circuits of the respective receivers 13a-l are synchronized in frequency, but not necessarily in phase. While there typically may be a phase offset between any given pair of receivers in the receivers 13a-l, the phase offset is readily determined through use of a reference tag 14a-b. Alternatively or additionally, each receiver may be synchronized wirelessly via virtual synchronization without a dedicated physical timing channel.

In some example embodiments, the receivers 13a-l are configured to determine various attributes of the received signal. Since measurements are determined at each receiver 13a-l, in a digital format, rather than analog in some examples, signals are transmittable to the Central Processor/Hub 1 1. Advantageously, because packet data and measurement results can be transferred at high speeds to a receiver memory, the receivers 13a-l can receive and process tag (and corresponding object) locating signals on a nearly continuous basis. As such, in some examples, the receiver memory allows for a high burst rate of tag events (i.e., information packets) to be captured.

Data cables or wireless transmissions may convey measurement data from the receivers 13a-l to the Central Processor/Hub 1 1 (e.g., the data cables may enable a transfer speed of 2 Mbps). In some examples, measurement data is transferred to the Central Processor/Hub at regular polling intervals.

As such, the Central Processor/Hub 1 1 determines or otherwise computes tag location (i.e., object location) by processing TOA measurements relative to multiple data packets detected by the receivers 13a-l. In some example embodiments, the Central Processor/Hub 1 1 may be configured to resolve the coordinates of a tag using nonlinear optimization techniques.

In some examples, TOA measurements from multiple receivers 13a-l are processed by the Central Processor/Hub 1 1 to determine a location of the transmit tag 12a-f by a differential time-of-arrival (DTOA) analysis of the multiple TOAs. The DTOA analysis includes a determination of tag transmit time t 0 , whereby a time-of- flight (TOF), measured as the time elapsed from the estimated tag transmit time t 0 to the respective TOA, represents graphically the radii of spheres centered at respective receivers 13a-l. The distance between the surfaces of the respective spheres to the estimated location coordinates (X 0 , Y 0 , Z 0 ) of the transmit tag 12a-f represents the measurement error for each respective TOA, and the minimization of the sum of the squares of the TOA measurement errors from each receiver participating in the DTOA location estimate provides for both the location coordinates (X 0 , Yo, Z 0 ) of the transmit tag and of that tag's transmit time t 0 .

In some examples, the system described herein may be referred to as an "over- specified" or "over-determined" system. As such, the Central Processor/Hub 1 1 may calculate one or more valid (i.e., most correct) locations based on a set of measurements and/or one or more incorrect (i.e., less correct) locations. For example, a location may be calculated that is impossible due the laws of physics or may be an outlier when compared to other calculated locations. As such one or more algorithms or heuristics may be applied to minimize such error.

The starting point for the minimization may be obtained by first doing an area search on a coarse grid of x, y and z over an area defined by the user and followed by a localized steepest descent search. The starting position for this algorithm is fixed, in some examples, at the mean position of all active receivers. No initial area search is needed, and optimization proceeds through the use of a Davidon-Fletcher-Powell (DFP) quasi-Newton algorithm in some examples. In other examples, a steepest descent algorithm may be used.

One such algorithm for error minimization, which may be referred to as a time error minimization algorithm, may be described in Equation 16:

0 - Xjf + (y - yj) 2 + (z - Zj) 2 ] (16) Where N is the number of receivers, c is the speed of light, X j , Y j , Z j are the coordinates of the j th receiver, t j is the arrival time at the jth receiver, and t 0 is the tag transmit time. The variable t 0 represents the time of transmission. Since t 0 is not initially known, the arrival times, t j , as well as t 0 , are related to a common time base, which in some examples, is derived from the arrival times. As a result, differences between the various arrival times have significance for determining location as well as t 0 .

The optimization algorithm to minimize the error S in Equation 16 may be the Davidon-Fletcher-Powell (DFP) quasi-Newton algorithm, for example. In some examples, the optimization algorithm to minimize the error S in Equation 13 may be a steepest descent algorithm. In each case, the algorithms may be seeded with an initial location estimate (X, Y, Z) that represents the two-dimensional (2D) or three-dimensional (3D) mean of the positions of the receivers 13a-l that participate in the RTLS location determination.

In some examples, the RTLS system comprises a receiver grid, whereby each of the receivers 13a-l in the receiver grid keeps a receiver clock that is synchronized, with an initially unknown phase offset, to the other receiver clocks. The phase offset between any receivers may be determined by use of a reference tag that is positioned at a known coordinate position (Xj, Υτ, Ζτ). The phase offset serves to resolve the constant offset between counters within the various receivers 13a-l, as described below.

In further example embodiments, a number N of receivers 13a-l {Rj : j=l , . . . , N} are positioned at known coordinates (X R . , Y Rj , Z R .), which are respectively located at distances d R .from a reference tag 14a-b, such as given in Equation 17: d Rj = J(¾ . - X T ) 2 + (Y R] - Yrf + (Z R . - Z T ) 2 (17)

Each receiver Rj utilizes, for example, a synchronous clock signal derived from a common frequency time base, such as a clock generator. Because the receivers are not synchronously reset, an unknown, but constant offset Oj exists for each receiver's internal free running counter. The value of the constant offset Oj is measured in terms of the number of fine resolution count increments (e.g., a number of nanoseconds for a one nanosecond resolution system).

The reference tag is used, in some examples, to calibrate the radio frequency locating system as follows: The reference tag emits a signal burst at an unknown time xR. Upon receiving the signal burst from the reference tag, a count N R . as measured at receiver Rj is given in Equation 18 by:

Ν η . = βτ κ + 0 } + βά κ ./α (18)

Where c is the speed of light and β is the number of fine resolution count increments per unit time (e.g., one per nanosecond). Similarly, each object tag T, of each object to be located transmits a signal at an unknown time τ; to produce a count N j , as given in Equation 19:

At receiver Rj where dj is the distance between the object tag T, and the receiver 13a-l Rj . Note that - is unknown, but has the same constant value for all receivers Rj . Based on the equalities expressed above for receivers Rj and Rk and given the reference tag 14a-b information, phase offsets expressed as differential count values are determined as given in Equations 20 and 21 :

N R . - N Rk = (Oj - O k ) + (^ - (20) Or,

(Oj - O k ) = (N r . - N Rk ) - β - - d f) = A jk (21 )

Where Aj k is constant as long as d R .— d Rk remains constant, (which means the receivers and reference tag are fixed and there is no multipath situation) and β is the same for each receiver. Note that Aj k is a known quantity, since N Rj , N Rk , β, d R ./c, and d Rk /c are known. That is, the phase offsets between receivers Rj and Rk may be readily determined based on the reference tag 14a-b transmissions. Thus, again from the above equations, for a tag 12a-f (Ti) transmission arriving at receivers Rj and Rk, one may deduce the following Equations 22 and 23 :

Or, d - d ik = (c/β) [N i} - N ik - A jk ] (23) Each arrival time, t j , can be referenced to a particular receiver (receiver "1") as given in Equation 24:

t j= i (V ._ Δ . ι} (24)

The minimization, described in Equation 13, may then be performed over variables (X, Y, Z, t 0 ) to reach a solution (Χ', Υ', Ζ', t 0 ').

EXAMPLE RECEIVER ARCHITECTURE

Figure 6 illustrates an exemplary receiver 13a-l in a UWB receiver system 600 comprising a UWB receiver that may be configured in accordance with some

embodiments of the present invention. In an example embodiment, data packets are transmitted to the receivers 13a-l and intercepted by UWB antenna 21. A UWB receiver 22 is provided at each receiver 13a-l. The UWB receiver can, for example, be designed in accordance with the system described in commonly-owned U.S. Patent 5,901 ,172, which is incorporated by reference herein in its entirety.

UWB receiver 22, provided for at receivers 13a-l, allows for an analog signal stream that is digitized, then processed by a UWB TO A and data recovery circuits 24. The analog stream is digitized by up to three or more parallel, concurrent, independent analog- to-digital converters (ADCs) functioning with three distinct threshold levels, resulting in up to three or more digital data streams 23A-C that are sent to the UWB TOA and data recovery circuits 24. In some embodiments, the threshold levels applied to the analog signal stream in the UWB receiver 22 are a function of a signal-to-noise ratio (SNR) present in the communication channel. In some embodiments, the threshold levels are set dynamically as a function of one or more of an antenna preamp gain and an estimated RTLS tag range.

The UWB TOA and data recovery circuits 24 perform as many as three or more parallel, concurrent, identical signal processing functions on the three or more digital data streams 23A-C. The three or more UWB TOA and data recovery circuits 24 may be configured to receive data packets that correspond to RTLS tags 12a-f. The UWB TOA and data recovery circuits 24 may provide for a packet framing and extraction function as part of the data recovery circuit, whereby an RTLS tag 12a-f identification may be extracted. The RTLS identification may be extracted by the TX identification field 120B of the data packet, as described previously. In some embodiments, the UWB TOA and data recovery circuits 24 are implemented by field programmable gate arrays (FPGAs). The TOA and extracted data packet is sent by TOA line 25 to an arbitrate/buffer function 26.

The arbitrate/buffer function 26 effectively selects the TOA line 25 data provided by the UWB TOA and data recovery circuits 24. The arbitrate/buffer function 26 selects the TOA line 25 that converges to the earliest TOA from the up to three or more TOA and data recovery circuits 24 driven by the digital data stream 23A-C. The arbitrate/buffer function 26 provides for a series of serial messages, or tag message 27, to send to a tag queue function 28, whereby each of the tag messages 27 is identified by an RTLS tag 12a- f and an associated TOA.

The tag queue function 28 provides for a formatting and ordering of the collection of RTLS tag identifiers and TO As, effectively a first-in first-out (FIFO) memory buffer awaiting a transmission to the central processor/hub 1 1. Upon a tag queue function 28 trigger, a tag data packet 29 is sent to a formatting and data coding/decoding function 30 that, in turn, repackages the tag data packet 29 and transmits a synchronous tag data packet 3 OB to the central processor/hub 1 1.

The synchronous tag data packet 3 OB transmitted by the formatting and data coding/decoding function 30 to the central processor/hub 1 1 is synchronized by a 10 MHz receiver clock 40, received from the previous receiver clock in the "daisy chain" 19, and transmitted to the next receiver clock in the "daisy chain" 19 following a synchronous frequency up/down convert. The receiver clock 40 drives a phase-locked loop (PLL) 41 , whereby a frequency divider in a feedback loop in conjunction with a voltage-controlled oscillator (VCO) provides for a 100 MHz receiver clock 42-43 that is synchronized in phase to the 10 MHz receiver clock 40. The 100 MHz receiver clock 42 is provided to synchronize all logic blocks in the UWB receiver 13a-l and to provide for a TOA coarse time 45, sent by line 46 to the TOA and data recovery circuits 24 to be used in the TOA determination. The 100 MHz receiver clock 43 provides for the parallel set of fine detector windows 340, a basis of a set of receiver timing windows used to capture and register pulses transmitted by RTLS tags 12a-f in the TOA determination, as described previously with respect to FIG. 3.

A second function of the formatting and data coding/decoding function 30 is a buffering, reformatting, and repeating of a central processor data 30A-B received and transmitted between the receiver 13a-l and the central processor/hub 11 via the "daisy chain" 19 receiver network. The central processor data 30A-B received and transmitted from and to the formatting and data coding/decoding function 30 may provide for a series of commands that are decoded at a command decoder 44 to trigger receiver functions. A non-exhaustive list of such functions may include the following: an auto/manual control function 20, a series of telemetry functions 60, and the arbitrate/buffer function 26 to prune a data queue and to manage, delete, and reorder the data queue. The auto/manual control function 20 may be commanded -from manual mode- to report sensor information such as temperature and other telemetry data recorded in the telemetry function 60, and may be commanded to manually adjust one or more of an antenna preamp gain and the previously described threshold levels at the UWB receiver 22.

A power supply 50 may be configured to power the receiver 13a-l by way of an

AC-DC converter, whereby the AC power may be provided as an input from the central processor/hub 1 1 , shown in FIG. 5. The power supply 50 may be accompanied, in some embodiments, by a power delay circuit 51 to allow for an orderly 'power up' of sequential receivers 13a-l, thus avoiding a power surge and over-current event in the central processor data 30A-B transmission lines.

An advantage, in some examples, to the present embodiment of the UWB receiver system 600 is that packet data and measurement results can be transferred at high speeds to TOA measurement buffers, the arbitrate/buffer function 26, such that the receivers 13a-l can receive and process tag 12a-f (and corresponding object) locating signals on a nearly continuous basis. That is, multiple UWB data packets can be processed in close succession, thereby allowing the use of hundreds to thousands of tag transmitters.

In some embodiments, data stored in TOA measurement buffers, the

arbitrate/buffer function 26, is sent to a central processor/hub 1 1 , shown in FIG. 5, over the central processor data transmission lines 30A-B in response to a specific request from the central processor/hub 1 1.

In some embodiments, the collection of the central processor data 30A-B transmission lines, connecting a "daisy chain" 19 network of receivers, is comprised of two bi-directional data links. In some embodiments, these data links may be RS422 differential serial links. A network interface may receive command signals from a central processor/hub 1 1 on one link, for example, to instruct a transfer of the TOA measurement buffer, the arbitrate/buffer function 26, to the central processor/hub 1 1. Additional commands may include those to adjust UWB receiver 22 operating characteristics such as gain and detection thresholds. The bi-directional data links may also provide for a buffer for data signals linked between "daisy chain" 19 receivers, buffering sequential transmissions between the present and next receiver 13a-l in a communications chain.

The synchronous frequency up/down convert performed on the 10 MHz receiver clock 40 provides for a driver for the receiver clock 40 transmitted to the next receiver in the "daisy chain" 19. An advantage of this approach, in some examples, is that the 10 MHz receiver clock 40 transmitted to the next receiver -as with the original 10 MHz receiver clock 40- may be made low enough in frequency so that it can be transmitted over low-cost cables (e.g., twisted pair wires). Since timing jitter of the local timing reference signal degrades as the PLL multiplier coefficient is increased, there is a necessary trade- off between frequency and jitter of the local timing reference signal and the frequency of the timing reference clock.

Utilizing a common 10 MHz receiver clock 40 for timing reference, a plurality of local timing reference signals (one in each receiver) can be precisely matched in frequency. Using this approach, additional receivers can be connected without concern for clock loading. Buffer delay is also not an issue since the timing reference clock is used for frequency only, and not phase reference.

In some embodiments, the 10 MHz receiver clock 40 may comprise differential signals. The use of differential clock signals is advantageous since they avoid clock duty cycle distortion which can occur with the transmission of relatively high-speed clocks (e.g., > 10 MHz) on long cables (e.g., > 100 feet).

FIG. 7 illustrates an exemplary embodiment of the UWB TOA and data recovery circuits 700, presented in the UWB receiver system 600 as TOA and data recovery circuits 24, shown in FIG. 6, in accordance with some embodiments of the present invention. In an example embodiment, the UWB TOA data and recovery circuits 700 comprise a windowing/gating function 71, a TOA function 72, a window control clock and data recovery (PLL) function 73, a TOA averaging function 74, a data sync and extract function (1 MHz- 2MHz) 75-76, and a tag data recovery and processing function 77. The UWB TOA and data recovery circuits 700 process the digital data stream 23, shown in FIG. 6, to provide an unpacked data packet and the TOA associated with the RTLS tag to the arbitrate/buffer function 26.

The windowing/gating function 71 and the window control clock and data recovery (PLL) function 73 work as a feedback loop to recover the TX clock 101 and provide for the adjustable timing window functions 100 and 200, as presented in FIGs. 1-2, by tracking the RX pulses 1 1 1R' that comprise the RX pulse train 21 1R corresponding to the TX pulses 1 1 IT' in the series of TX pulses 1 1 1 in the preamble 1 10. The TOA function 72 works in conjunction with the 100 MHz receiver clocks 42-43. The RX clock 42 (201) provides for the TOA coarse time 46. The parallel set of fine detector windows 43 provides for a TOA fine time associated with an RX fine timing window function, recording detections by a registration code for the RX pulses 1 1 1R' that correspond to a sync code of TX pulses 1 1 IT'. The description for the adjustable timing window functions 100 and 200 are given with the presentation of FIGs. 1-2.

The TOA fine time, the disjoint timing windows 233A-C, as determined by the adjustable timing window functions 100 and 200, and the coarse time 46 are sent to the TOA averaging function 74, along with a latch TOA control signal indicating the end of a TOA determination. The TOA averaging function 74 is activated by a calculate TOA trigger 78, whereby a sub-window resolution function is initiated to determine the TOA with sub-window accuracy; that is, with resolution less than 1 nsec. The averaged TOA 80 is then sent to the tag data recovery and processing function 77.

The data sync and extract functions (1 MHz- 2MHz) 75-76 are triggered upon phase lock of the PLL associated with the window control clock and data recovery (PLL) function 73. Phase lock of the PLL is determined by the previously described feedback loop comprising the windowing/gating function 71 and the window control clock and data recovery (PLL) function 73, whereby the feedback loop effectively recovers the TX clock 101 by tracking the RX pulses 1 1 1R' corresponding to the preamble 1 10.

Upon phase lock, whereby the preamble 1 10 is synchronized to a recovered TX clock, the data packet, beginning with the remainder of the preamble 1 10, is extracted and unpacked by the data sync and extract function 75 (76) at a sampling rate of 1 Mhz (2 MHz), and sent to the tag data recovery and processing function 77. In another

embodiment, the data sync and extract functions 75-76 are both set to sample the data packet with a sampling rate of 2 MHz, but the two functions may differ by a data format. In one example, the data extracted by function 75 may follow a non-IOS format, where the data extracted by function 76 may follow an IO S format.

The tag data recovery and processing function 77 serves as a data processor for the data extracted by the data sync and extract functions 75-76 and as a communications control function, and also provides for data exchange associated with the arbitrate/buffer function 26, shown in FIG. 6. The data tag recovery and processing function 77 sends the TOA and data packet information from the TOA averaging function 74 and the data sync and extract functions 75, 76, respectively, on TOA line 25 to the arbitrate/buffer function 26, which reformats and repacks selects the earliest TOA from the three TOA functions running concurrently in the UWB TOA and data recovery circuits 700, and combines the TOA with the data packet data into a tag message 27 to send to the tag data queue 28. At this point, the tag message 27 comprises at least the average TOA 80 and a TX ID extracted from the data packet associated with the given tag transmission. The tag data queue 28, as described previously with respect to FIG. 6, effectively functions as a FIFO buffer for data transmission to the central processor/hub 1 1.

The tag data recovery and processing function 77 also serves as a controller for the timing of a triggering of the TOA averaging function 74 and a locking/unlocking 79 of the PLL in the window control clock and data recovery (PLL) function 73. The TOA averaging function 74 is initiated by the calculate TOA trigger 78 set by the tag data memory and processing controller 77, whereby the TOA trigger 78 is a function of a sync code 1 12 detection and a waiting interval associated with the data sync and extract function 75-76. The locking/unlocking 79 of the PLL is a function of a PLL lock indication initiated at the window control clock and data recovery (PLL) function 73, as described previously. And the locking/unlocking 79 of the PLL is reset to unlock the PLL upon detection in the sync and data extract functions 75-76 that the end of the data packet has been reached, that the sampling of the data packet for the given tag transmission is complete.

The TOA averaging function 74 is initiated by the calculate TOA trigger 78. The

TOA averaging function 74 may, in some examples, register a transition as successive RX pulses 1 1 lR'exhibit a change in a detection registration. In another example, a TOA numerical average may be constructed to assign a TOA with sub-window resolution. A TOA numerical average may be constructed, whereby RX pulses 1 1 1R' 1 -5, for example, are assigned a weight equal to a 4 nsec time difference referenced to the leading edge of the final center disjoint timing window 233B, and whereby RX pulses 1 1 1R' 6-8 are assigned a weight equal to a 3 nsec time difference referenced to the leading edge of the final center disjoint timing window 233B. As such, a TOA average is calculated as: 410 nsec + (5/8 x 14 nsec) + (3/8 x 13 nsec) = 414 5/8 nsec.

Exemplary embodiments of the present invention have been described herein. The invention is not limited to these examples. These examples are presented herein for purposes of illustration, and not limitation. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) may be apparent to persons skilled in the relevant art(s) based in the teachings contained herein. Such alternatives fall within the scope and spirit of the invention.

All publications, patents, and patent applications mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent, or patent application was specifically and individually indicated to be incorporated by reference.