LOCALIZATION USING CARRIER PHASE INFORMATION
20250028016 ยท 2025-01-23
Inventors
- Vishnu Vardhan Ratnam (Plano, TX, US)
- Wei Sun (Allen, TX, US)
- Bilal Sadiq (Plano, TX, US)
- Hao Chen (Allen, TX)
- Kyeong Jin Kim (Plano, TX, US)
- Shunyao Wu (Allen, TX, US)
- Boon Loong Ng (Plano, TX)
- Jianzhong Zhang (Dallas, TX, US)
Cpc classification
G01S5/0244
PHYSICS
G01S5/145
PHYSICS
G01S5/0268
PHYSICS
International classification
Abstract
A method includes obtaining range estimates and carrier phase estimates from each of multiple anchors. The method also includes, in response to determining that a trilateration technique is to be performed, (i) obtaining improved range estimates using the carrier phase estimates and (ii) determining a first location estimate of a target device using the trilateration technique and the improved range estimates. The method also includes, in response to determining that a triangulation technique is to be performed, (i) obtaining differential range estimates using the carrier phase estimates and (ii) determining a second location estimate of the target device using the triangulation technique and the differential range estimates. The method also includes combining the first location estimate and the second location estimate to determine an overall location estimate of the target device.
Claims
1. A method comprising: obtaining range estimates and carrier phase estimates from each of multiple anchors; in response to determining that a trilateration technique is to be performed, (i) obtaining improved range estimates using the carrier phase estimates and (ii) determining a first location estimate of a target device using the trilateration technique and the improved range estimates; in response to determining that a triangulation technique is to be performed, (i) obtaining differential range estimates using the carrier phase estimates and (ii) determining a second location estimate of the target device using the triangulation technique and the differential range estimates; and combining the first location estimate and the second location estimate to determine an overall location estimate of the target device.
2. The method of claim 1, further comprising: determining that the trilateration technique is to be performed based on at least one of: an amount of error in the range estimates, a clock accuracy, or an amount of variation in the carrier phase estimates across multiple time samples.
3. The method of claim 1, wherein obtaining the improved range estimates using the carrier phase estimates comprises: determining the differential range estimates based on the carrier phase estimates; and weighted averaging the range estimates and the differential range estimates across a time domain to obtain the improved range estimates.
4. The method of claim 1, wherein the trilateration technique uses at least one of: locations of the multiple anchors; the improved range estimates from the multiple anchors for a plurality of time steps; prior knowledge about range bias or target device velocity; or hidden variables to account for unknown components of the range bias or the target device velocity.
5. The method of claim 1, further comprising: determining that the triangulation technique is to be performed based on at least one of: a variation of a sum-carrier phase over a time period being greater a predetermined threshold; a desired accuracy of localization being above a first threshold; or an available computation power for localization being above a second threshold.
6. The method of claim 1, wherein the triangulation technique uses at least one of: locations of the multiple anchors; the differential range estimates for a plurality of time steps; prior knowledge about an orientation or a speed of the target device; or hidden variables to account for unknown components of the orientation or the speed of the target device.
7. The method of claim 1, wherein combining the first location estimate and the second location estimate to determine the overall location estimate of the target device comprises one of: weighted combining the first location estimate and the second location estimate using preselected weights; or computing a solution to a weighted combining of objective functions of the trilateration technique and the triangulation technique.
8. The method of claim 7, wherein the preselected weights are selected based on at least one of: available bandwidth, operating signal to noise ratio (SNR), estimation accuracy, or computation complexity.
9. The method of claim 1, further comprising: estimating a range bias in the range estimates from the multiple anchors using results from the triangulation technique.
10. The method of claim 1, wherein the carrier phase estimates from one of the multiple anchors is used to find a direction of the target device with respect to the one anchor.
11. A device comprising: a transceiver; and a processor operably connected to the transceiver, the processor configured to: obtain range estimates and carrier phase estimates from each of multiple anchors; in response to determining that a trilateration technique is to be performed, (i) obtain improved range estimates using the carrier phase estimates and (ii) determine a first location estimate of a target device using the trilateration technique and the improved range estimates; in response to determining that a triangulation technique is to be performed, (i) obtain differential range estimates using the carrier phase estimates and (ii) determine a second location estimate of the target device using the triangulation technique and the differential range estimates; and combine the first location estimate and the second location estimate to determine an overall location estimate of the target device.
12. The device of claim 11, wherein the processor is further configured to: determine that the trilateration technique is to be performed based on at least one of: an amount of error in the range estimates, a clock accuracy, or an amount of variation in the carrier phase estimates across multiple time samples.
13. The device of claim 11, wherein to obtain the improved range estimates using the carrier phase estimates, the processor is configured to: determine the differential range estimates based on the carrier phase estimates; and weighted average the range estimates and the differential range estimates across a time domain to obtain the improved range estimates.
14. The device of claim 11, wherein the trilateration technique uses at least one of: locations of the multiple anchors; the improved range estimates from the multiple anchors for a plurality of time steps; prior knowledge about range bias or target device velocity; or hidden variables to account for unknown components of the range bias or the target device velocity.
15. The device of claim 11, wherein the processor is further configured to: determine that the triangulation technique is to be performed based on at least one of: a variation of a sum-carrier phase over a time period being greater a predetermined threshold; a desired accuracy of localization being above a first threshold; or an available computation power for localization being above a second threshold.
16. The device of claim 11, wherein the triangulation technique uses at least one of: locations of the multiple anchors; the differential range estimates for a plurality of time steps; prior knowledge about an orientation or a speed of the target device; or hidden variables to account for unknown components of the orientation or the speed of the target device.
17. The device of claim 11, wherein to combine the first location estimate and the second location estimate to determine the overall location estimate of the target device, the processor is configured to perform one of: weighted combine the first location estimate and the second location estimate using preselected weights; or compute a solution to a weighted combining of objective functions of the trilateration technique and the triangulation technique.
18. The device of claim 17, wherein the preselected weights are selected based on at least one of: available bandwidth, operating signal to noise ratio (SNR), estimation accuracy, or computation complexity.
19. The device of claim 11, wherein the processor is further configured to: estimate a range bias in the range estimates from the multiple anchors using results from the triangulation technique.
20. A non-transitory computer readable medium comprising program code that, when executed by a processor of a device, causes the device to: obtain range estimates and carrier phase estimates from each of multiple anchors; in response to determining that a trilateration technique is to be performed, (i) obtain improved range estimates using the carrier phase estimates and (ii) determine a first location estimate of a target device using the trilateration technique and the improved range estimates; in response to determining that a triangulation technique is to be performed, (i) obtain differential range estimates using the carrier phase estimates and (ii) determine a second location estimate of the target device using the triangulation technique and the differential range estimates; and combine the first location estimate and the second location estimate to determine an overall location estimate of the target device.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] For a more complete understanding of the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, in which like reference numerals represent like parts:
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
DETAILED DESCRIPTION
[0028]
[0029] Aspects, features, and advantages of the disclosure are readily apparent from the following detailed description, simply by illustrating a number of particular embodiments and implementations, including the best mode contemplated for carrying out the disclosure. The disclosure is also capable of other and different embodiments, and its several details can be modified in various obvious respects, all without departing from the spirit and scope of the disclosure. Accordingly, the drawings and description are to be regarded as illustrative in nature, and not as restrictive. The disclosure is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings.
[0030] The present disclosure covers several components which can be used in conjunction or in combination with one another or can operate as standalone schemes. Certain embodiments of the disclosure may be derived by utilizing a combination of several of the embodiments listed below. Also, it should be noted that further embodiments may be derived by utilizing a particular subset of operational steps as disclosed in each of these embodiments. This disclosure should be understood to cover all such embodiments.
[0031]
[0032] The wireless network 100 includes access points (APs) 101 and 103. The APs 101 and 103 communicate with at least one network 130, such as the Internet, a proprietary Internet Protocol (IP) network, or other data network. The AP 101 provides wireless access to the network 130 for a plurality of stations (STAs) 111-114 within a coverage area 120 of the AP 101. The APs 101-103 may communicate with each other and with the STAs 111-114 using Wi-Fi or other WLAN (wireless local area network) communication techniques. The STAs 111-114 may communicate with each other using peer-to-peer protocols, such as Tunneled Direct Link Setup (TDLS).
[0033] Depending on the network type, other well-known terms may be used instead of access point or AP, such as router or gateway. For the sake of convenience, the term AP is used in this disclosure to refer to network infrastructure components that provide wireless access to remote terminals. In WLAN, given that the AP also contends for the wireless channel, the AP may also be referred to as a STA. Also, depending on the network type, other well-known terms may be used instead of station or STA, such as mobile station, subscriber station, remote terminal, user equipment, wireless terminal, or user device. For the sake of convenience, the terms station and STA are used in this disclosure to refer to remote wireless equipment that wirelessly accesses an AP or contends for a wireless channel in a WLAN, whether the STA is a mobile device (such as a mobile telephone or smartphone) or is normally considered a stationary device (such as a desktop computer, AP, media player, stationary sensor, television, etc.).
[0034] Dotted lines show the approximate extents of the coverage areas 120 and 125, which are shown as approximately circular for the purposes of illustration and explanation only. It should be clearly understood that the coverage areas associated with APs, such as the coverage areas 120 and 125, may have other shapes, including irregular shapes, depending upon the configuration of the APs and variations in the radio environment associated with natural and man-made obstructions.
[0035] As described in more detail below, one or more of the APs may include circuitry and/or programming to enable enhanced localization by exploiting carrier phase information. Although
[0036]
[0037] The AP 101 includes multiple antennas 204a-204n and multiple transceivers 209a-209n. The AP 101 also includes a controller/processor 224, a memory 229, and a backhaul or network interface 234. The transceivers 209a-209n receive, from the antennas 204a-204n, incoming radio frequency (RF) signals, such as signals transmitted by STAs 111-114 in the network 100. The transceivers 209a-209n down-convert the incoming RF signals to generate IF or baseband signals. The IF or baseband signals are processed by receive (RX) processing circuitry in the transceivers 209a-209n and/or controller/processor 224, which generates processed baseband signals by filtering, decoding, and/or digitizing the baseband or IF signals. The controller/processor 224 may further process the baseband signals.
[0038] Transmit (TX) processing circuitry in the transceivers 209a-209n and/or controller/processor 224 receives analog or digital data (such as voice data, web data, e-mail, or interactive video game data) from the controller/processor 224. The TX processing circuitry encodes, multiplexes, and/or digitizes the outgoing baseband data to generate processed baseband or IF signals. The transceivers 209a-209n up-converts the baseband or IF signals to RF signals that are transmitted via the antennas 204a-204n.
[0039] The controller/processor 224 can include one or more processors or other processing devices that control the overall operation of the AP 101. For example, the controller/processor 224 could control the reception of forward channel signals and the transmission of reverse channel signals by the transceivers 209a-209n in accordance with well-known principles. The controller/processor 224 could support additional functions as well, such as more advanced wireless communication functions. For instance, the controller/processor 224 could support beam forming or directional routing operations in which outgoing signals from multiple antennas 204a-204n are weighted differently to effectively steer the outgoing signals in a desired direction. The controller/processor 224 could also support OFDMA operations in which outgoing signals are assigned to different subsets of subcarriers for different recipients (e.g., different STAs 111-114). Any of a wide variety of other functions could be supported in the AP 101 by the controller/processor 224 including enabling enhanced localization by exploiting carrier phase information. In some embodiments, the controller/processor 224 includes at least one microprocessor or microcontroller. The controller/processor 224 is also capable of executing programs and other processes resident in the memory 229, such as an OS. The controller/processor 224 can move data into or out of the memory 229 as required by an executing process.
[0040] The controller/processor 224 is also coupled to the backhaul or network interface 234. The backhaul or network interface 234 allows the AP 101 to communicate with other devices or systems over a backhaul connection or over a network. The interface 234 could support communications over any suitable wired or wireless connection(s). For example, the interface 234 could allow the AP 101 to communicate over a wired or wireless local area network or over a wired or wireless connection to a larger network (such as the Internet). The interface 234 includes any suitable structure supporting communications over a wired or wireless connection, such as an Ethernet or RF transceiver. The memory 229 is coupled to the controller/processor 224. Part of the memory 229 could include a RAM, and another part of the memory 229 could include a Flash memory or other ROM.
[0041] As described in more detail below, the AP 101 may include circuitry and/or programming for enhanced localization by exploiting carrier phase information. Although
[0042]
[0043] The STA 111 includes antenna(s) 205, transceiver(s) 210, a microphone 220, a speaker 230, a processor 240, an input/output (I/O) interface (IF) 245, an input 250, a display 255, and a memory 260. The memory 260 includes an operating system (OS) 261 and one or more applications 262.
[0044] The transceiver(s) 210 receives from the antenna(s) 205, an incoming RF signal (e.g., transmitted by an AP 101 of the network 100). The transceiver(s) 210 down-converts the incoming RF signal to generate an intermediate frequency (IF) or baseband signal. The IF or baseband signal is processed by RX processing circuitry in the transceiver(s) 210 and/or processor 240, which generates a processed baseband signal by filtering, decoding, and/or digitizing the baseband or IF signal. The RX processing circuitry sends the processed baseband signal to the speaker 230 (such as for voice data) or is processed by the processor 240 (such as for web browsing data).
[0045] TX processing circuitry in the transceiver(s) 210 and/or processor 240 receives analog or digital voice data from the microphone 220 or other outgoing baseband data (such as web data, e-mail, or interactive video game data) from the processor 240. The TX processing circuitry encodes, multiplexes, and/or digitizes the outgoing baseband data to generate a processed baseband or IF signal. The transceiver(s) 210 up-converts the baseband or IF signal to an RF signal that is transmitted via the antenna(s) 205.
[0046] The processor 240 can include one or more processors and execute the basic OS program 261 stored in the memory 260 in order to control the overall operation of the STA 111. In one such operation, the processor 240 controls the reception of forward channel signals and the transmission of reverse channel signals by the transceiver(s) 210 in accordance with well-known principles. The processor 240 can also include processing circuitry configured to enable Wi enhanced localization by exploiting carrier phase information. In some embodiments, the processor 240 includes at least one microprocessor or microcontroller.
[0047] The processor 240 is also capable of executing other processes and programs resident in the memory 260, such as operations for enabling Wi enhanced localization by exploiting carrier phase information. The processor 240 can move data into or out of the memory 260 as required by an executing process. In some embodiments, the processor 240 is configured to execute a plurality of applications 262, such as applications to enable enhanced localization by exploiting carrier phase information. The processor 240 can operate the plurality of applications 262 based on the OS program 261 or in response to a signal received from an AP. The processor 240 is also coupled to the I/O interface 245, which provides STA 111 with the ability to connect to other devices such as laptop computers and handheld computers. The I/O interface 245 is the communication path between these accessories and the processor 240.
[0048] The processor 240 is also coupled to the input 250, which includes for example, a touchscreen, keypad, etc., and the display 255. The operator of the STA 111 can use the input 250 to enter data into the STA 111. The display 255 may be a liquid crystal display, light emitting diode display, or other display capable of rendering text and/or at least limited graphics, such as from web sites. The memory 260 is coupled to the processor 240. Part of the memory 260 could include a random-access memory (RAM), and another part of the memory 260 could include a Flash memory or other read-only memory (ROM).
[0049] Although
[0050] As discussed earlier, indoor positioning has grown in popularity over the last decade in parallel with the growth in the number of personal wireless devices, as well as wireless infrastructure. While the use cases are plentiful and include smart homes and buildings, surveillance, disaster management, industry and healthcare, they all require wide availability and good accuracy. Some geometry-based localization methods follow one of the following techniques:
[0051] True-range Trilateration: whose locations (x.sub.i, y.sub.i) are known. These range measurements are then used to localize the target 301. For example, in the two-dimensional case, the target location estimate can be given as ({circumflex over (x)}, ) where:
[0052] For true-range estimation, typically a round trip transmission of signals may be performed between each of the anchors 302 and the target 301. However, the anchors 302 do not need to be synchronized with each other. Several such ranging techniques have been proposed for ultra-wide band (UWB), Lidar, Bluetooth, and Wi-Fi systems. In fact, Wi-Fi standards groups like 802.11mc and 802.11az have been specifically tailored for enabling accurate Wi-Fi-based ranging via the Fine Timing Measurement (FTM) mechanism, etc.
[0053] Pseudo-range Trilateration: This technique involves measuring or estimating the relative range .sub.i of the target from a set of anchors, i\{1} with respect to the range from a reference anchor i=1, where the locations of the anchors (x.sub.i, y.sub.i) are known. These range measurements are then used to localize the target. For example, in the two-dimensional case, the target location estimate can be given as ({circumflex over (x)}, ) where:
[0054] For pseudo-range estimation, it is sufficient for the target to transmit a signal that can be received at all the anchors, or alternatively, for a set of anchors to transmit a signal that can be received by a target. Here, a round-trip signal transmission may not be required, unlike in the case of true range, but the anchors may need to be synchronized. An example of this is the GPS system. Note that a true-range estimation method such as Wi-Fi FTM essentially functions as a pseudo-range estimation method if pre-calibration steps are not performed.
[0055] Triangulation: , whose locations (x.sub.i, y.sub.i) are known, subtend at a target 401 (or vice versa). Here the angles may be measured with respect to the target 401's unknown boresight direction and it may be true that
These angle measurements are then used to localize the target 401. For example, in the two-dimensional case, the target location estimate can be given as ({circumflex over (x)}, ) where:
[0056] Triangulation can be performed by the target 401 transmitting a signal to the set of anchors 402 or vice-versa, but the anchors 402 do not need to be synchronized. However multiple antenna elements may be needed at the anchors 402 or the target 401 to perform the estimation of the azimuth or elevation angles. Examples of this method include LTE triangulation used by cellular networks.
[0057] Each of these geometry-based techniques may have their respective advantages and disadvantages, as shown in Table 1.
TABLE-US-00001 TABLE 1 Advantages and Disadvantages of Localization Techniques Trilateration Triangulation Impact of signal- Performance degrades Performance degrades to-noise ratio with reduction in with reduction in (SNR) SNR. SNR. Impact of Performance is limited Performance does not bandwidth (for by the accuracy of the depend on the bandwidth fixed SNR) range estimates .sub.i, of the signal being which is limited by the transmitted to perform bandwidth of the signal the angle estimation. being transmitted to perform the range estimation. Impact of anchor- Performance doesn't Performance does degrade target distance degrade with anchor- with anchor-target (for fixed SNR) target distance. distance. Impact of number Performance doesn't Performance improves with of antennas and depend on number of the number of antennas and antenna aperture antennas or the size size of antenna array. (at target or of antenna array. (can't be used with single anchors) antenna systems) Impact of multi- Performance is more Performance is less robust path in the robust to multi-path. to multi-path. channel
[0058] Among the geometry-based localization techniques, trilateration techniques may provide poor accuracy when the bandwidth of the signals being used is low. Similarly, the triangulation techniques only work if either the anchors or the target have multiple antennas and need sufficient aperture size to improve estimation. This can limit the performance of localization in some technologies like Wi-Fi and Bluetooth, which may have a low bandwidth (80 MHz) and may have at most one or two antennas at the target and/or anchors.
[0059] To address these and other issues, this disclosure provides systems and methods for enhanced localization by exploiting carrier phase information. As described in more detail below, the disclosed embodiments use carrier phase measurements during the ranging process to improve the accuracy of the range estimates and thus also trilateration. The disclosed embodiments also use carrier phase measurements during the ranging process to enable triangulation-based ranging even with single antennas at the anchors and the target. The disclosed embodiments can also use a weighted combination of at least one of an objective function or outputs from triangulation and trilateration estimation to obtain a location result, where weights of the weighted combination are determined based on at least one of an available bandwidth, an operating SNR, an accuracy of CFO estimation, or an available computation complexity.
[0060] The disclosed embodiments provide multiple advantageous benefits over some systems, including improving the performance of trilateration-based localization and enable triangulation-based localization without the need for multiple antennas.
[0061] ={1,2 . . . , I} at known locations (x.sub.i, y.sub.i), while the target device 501 can be a single-antenna target whose location (x(t), y(t)) has to be estimated and tracked as a function of time t. Although the details below are provided assuming a two-dimensional localization system, this disclosure is not limited thereto, and the embodiments described herein are applicable to a higher dimensional localization system. In some embodiments, the anchors 502 and the target device 501 may not be synchronized with respect to each other.
Measurement Collection
[0062] For performing the localization, the target device 501 performs a frame exchange with each of the anchors 502 i at regular time intervals: t.sub.1, t.sub.2, . . . , t.sub.N etc. Using the frame exchanges at time t.sub.n the target device 501 can obtain estimates of its range {{circumflex over ()}.sub.i(t.sub.n)|i
} and sum-carrier phase {{circumflex over ()}.sub.i(t.sub.n)|i
} from each of the anchors 502, as shown in
[0063] In one example, the target device 501 may transmit a signal to anchor i at time t.sub.n+t.sub.n,i.sup.(1) (as measured by the target device 501). This frame may be received by the anchor i at time t.sub.n+t.sub.n,i.sup.(2) (as measured by the anchor i) as part of a frame exchange.
[0064] Note that this model is directly applicable to most RTT methods such as the Wi-Fi Fine Time Measurement (FTM) protocol (with appropriate modifications to enable reporting of the carrier phase values).
[0065] In another example, at time t.sub.n, the anchor i first transmits a synchronization signal to the target device 501 to enable the target device 501 to synchronize its local oscillator with the anchor's oscillator. After this, the anchor i and the target device 501 perform frequency hopping on a set of K frequencies .sub.1, . . . , .sub.K. On each frequency k, the anchor i first transmits a known signal, and the target device 501 measures the phase of the received signal: .sub.n,i,k.sup.(1).
where .sub.c is a reference frequency in the middle of the hopping frequency range (referred to here as carrier frequency), P is a search range for the range estimation, and {circumflex over ()}.sub.i(t.sub.n) is the range given in meters. Similarly, the sum-carrier phase can be estimated as:
{circumflex over ()}.sub.i(t.sub.n)=
where the value of
[0066] Let the true range of the target device 501 from the anchor i at time t.sub.n be given by:
[0067] Then it can be shown that the estimates of the range and sum-carrier phase can be related to the true range as:
where .sub.i(t.sub.n) and .sub.i(t.sub.n) are estimation errors and C is an unknown constant. It can be shown that the error term .sub.i(t.sub.n) reduces with an increase in measurement SNR and the signal bandwidth (or max-frequency range in case of frequency hopping). Similarly, it can be shown that the error term .sub.i(t.sub.n) reduces with an increase in measurement SNR and accuracy of CFO estimation (or accuracy of oscillator synchronization in case of frequency hopping).
[0068] In some embodiments, the measurements {{circumflex over ()}.sub.i(t.sub.n), {circumflex over ()}.sub.i(t.sub.n)|i} are collected for a sequence of time stamps t.sub.1, . . . , t.sub.N and are used to estimate the trajectory of the target device 501: (x(t.sub.1), y(t.sub.1)), . . . , (x(t.sub.N), y(t.sub.N)).
Trilateration-Based Localization
[0069] In some embodiments, it may be first determined if trilateration-based localization should be performed. Such a determination can be based on, for example, the amount of error in the range estimates {circumflex over ()}.sub.i(t.sub.n), the accuracy of the clock, the amount of variation in the carrier phase values {circumflex over ()}.sub.i(t.sub.n) across the N time samples, or the like.
[0070] If it is determined to perform trilateration, then in some embodiments, the carrier phase estimates can be used to obtain estimates of the differential range as:
where the result follows under the case that the time-difference between measurements t.sub.nt.sub.n1 is small enough that the range does not change by more than half a carrier-wavelength between two measurements. These differential range measurements can then be used to obtain improved range estimates
where 01 is a combining weight.
where .sub.a=A.sup.A.sub.a=1 are weights for different neighboring range estimates.
[0071] Another method can be to feed {circumflex over ()}.sub.i(t.sub.n) and (t.sub.n) independently as the range and velocity estimates to a Kalman filter or a particle filter, which then combines the estimates from t.sub.1 to t.sub.N perform an estimation of the improved ranges
[0072] Note that these improved range estimates may have a much lower error by means of averaging across the time domain. Such averaging may not be possible without the carrier phase estimates {circumflex over ()}.sub.i(t.sub.n) which are used to estimate the differential range (t.sub.n). These improved range estimates can then be used to perform trilateration to estimate (x(t.sub.n), y(t.sub.n)) using any existing trilateration algorithm. For example, the estimate can be obtained as the solution to:
where B.sub.i is any applicable bias or calibration term applicable to anchor i as reported by the anchor. In other embodiments, if there is an unknown bias for the target device 501, the estimation can be modified to a pseudo-range-based trilateration algorithm as:
[0073] In other embodiments, a motion model can be considered that within M neighboring time samples of a sample t.sub.n, the velocity of the target device 501 remains the same. Correspondingly for any time sample n, let us define .sub.n={1mNmn|M} as a set of samples in its neighborhood that share a similar (but unknown) velocity. It can be shown that:
where v.sub.X and v.sub.Y represent the unknown velocity of the target device 501 during the time sequence along the X and Y directions, respectively, in the vicinity of the sample n. Then the location can be estimated as:
[0074] In a variant of these embodiments, prior estimates of the velocity {tilde over (v)}.sub.X, {tilde over (v)}.sub.Y may be available from the inertial motion sensor, accelerometer, compass, and gyroscope at the target device 501, or from localization results of prior time samples. In this case, the estimation may be modified as:
where is a predetermined weighting factor.
[0075] These estimates ({circumflex over (x)}(t.sub.n), (t.sub.n)) for the time sequence t.sub.1, . . . , t.sub.N may further be fed to a Kalman filter or a particle filter, etc., with an appropriate state evolution model that captures the feasible space for motion of the target device 501 to improve the localization result.
Triangulation-Based Localization
[0076] In some embodiments, triangulation-based localization may be performed only if there is sufficient variation in the value of {circumflex over ()}.sub.i(t.sub.n) over the time instances t.sub.1, . . . , t.sub.N indicating a change in position. This determination can be made, for example based on:
[0077] In other embodiments, the need for accurate localization and available computation power may also be taken into consideration to determine whether or not to perform triangulation-based localization.
[0078] If it is determined to use triangulation-based localization, then in some embodiments, the carrier phase measurements can be used to measure the differential range as (as defined previously):
where the result follows under the case that the time-difference between measurements t.sub.nt.sub.n1 is small enough for each n that the range does not change by more than half a carrier-wavelength between two measurements. Note that if the locations (x(t.sub.n), y(t.sub.n)) for the N time instances are interpreted as locations of a virtual antenna array, then (t.sub.n) captures the additional distance travelled by a signal as it arrives at a virtual antenna element n with respect to a virtual antenna element n1, if the signal is transmitted from anchor i. As an example,
(t.sub.n) can be used to estimate the angle of arrival of the path from anchor i to the target device 501 at time t.sub.n (measured with respect to the direction of motion of the target device 501) as:
if the inter-element distances d.sub.n are known.
[0079] In some embodiments, a modified version of triangulation algorithms can be used (with hidden variables for the inter-element distance d.sub.n and trajectory direction ) to estimate {circumflex over (x)}(t.sub.n), (t.sub.n). For example, the location estimate can be obtained as:
[0080] In another example, the location estimate can be obtained as:
[0081] Methods to simplify this computation can be used when the differential range is small compared to the true range.
[0082] In a variant of these embodiments, the goal can be finding the direction of the line-of-sight path from the target device 501 to the anchor i (known as the direction-finding problem) instead of localization. In this case,
is the desired estimate.
[0083] In other embodiments, the speed s.sub.n and direction .sub.n of travel of the target device 501 between two neighboring time steps t.sub.n1 to t.sub.n may be available using side information, such as from the estimates of s, from previous time steps, or from an inertial motion sensor, accelerometer, compass and/or gyroscope. In this case, the location estimates of the target device 501 can be obtained by feeding the angles
to any suitable triangulation algorithm. For example, the following may be used:
[0084] In another example, the location estimate can be obtained as:
[0085] In a variant of these embodiments, if the estimates of the speed s.sub.n and direction .sub.n are noisy, the location estimate can be obtained as:
where .sub.1, .sub.2 are weighting coefficients.
[0086] In other embodiments, a motion model can be considered that within M neighboring time samples of a sample t.sub.n, the velocity of the target device 501 remains the same. Correspondingly for any time sample n, let us define .sub.n={1mNmn|M} as a set of samples in its neighborhood that share a similar (but unknown) speed s and pointing direction . Then a modified version of triangulation algorithms can be used (with hidden variables for the speed and pointing direction) to estimate {circumflex over (x)}(t.sub.n), (t.sub.n). For example, the location estimate can be obtained as:
[0087] In another example, the location estimate can be obtained as:
[0088] Methods to simplify this computation can be used when the differential range is small compared to the true range.
[0089] These estimates ({circumflex over (x)}(t.sub.n), (t.sub.n)) for the time sequence t.sub.1, . . . , t.sub.N may further be fed to a Kalman filter or a particle filter with appropriate state evolution model that captures the feasible space for motion of the target device 501.
Combining the Two Localization Results
[0090] In some embodiments, a weighted combination of the localization result from trilateration and triangulation can be used to obtain the final location result. The combining weights may be determined based on available bandwidth, operating SNR, accuracy of the CFO estimation and available computation complexity.
Calibration of Ranging Bias
[0091] In some embodiments, if the ranging bias values {B.sub.0+B.sub.i|i} used in trilateration are not shared by the anchors 502 to the target device 501, the target device 501 may use the location result from triangulation ({circumflex over (x)}(t.sub.n), (t.sub.n)) as the true location, and then fit the best bias values B.sub.0+B.sub.i that provide the closest localization result via trilateration. Note that since the bias values are constant, the fit can be performed using the data triangulation and trilateration results from a large number of samples to reduce the estimation noise.
Simulations on Triangulation
[0092]
[0093] Between time sample t.sub.1 and time sample t.sub.2, the target device 1006 moves a distance d in a direction , which are assumed to be unknown. This can be represented mathematically as: (x(t.sub.2), y(t.sub.2))=(x(t.sub.1)+d cos , y(t.sub.1)+d sin ). It is assumed that accurate values of the differential range (t.sub.2) are available from each anchor i as:
[0094] Then, for all feasible values of x, y, in the shaded region in the X-Y plane shown in
where, for d, a search range of [0,0.02] meters is used. Note that the (x, y) that minimizes this objective will be the estimate of (x(t.sub.1), y(t.sub.1)) in one of the triangulation methods described herein. Results of the simulation show that triangulation-based localization that only uses carrier-phase information without the absolute range values is feasible.
[0095]
[0096] In some embodiments, rather than split the localization separately into trilateration and triangulation, a one-shot joint estimation may be performed using all the available information, including the range estimates (t.sub.n) and carrier-phase based differential range estimates
(t.sub.n). In one example, such a joint estimation may be performed as:
where .sub.1, .sub.2 are weighting coefficients, and the function (
{square root over ((
.
[0097] In other embodiments, to reduce the complexity of the joint search, an iterative process may be followed where the location estimate {circumflex over (x)}(t.sub.n), (t.sub.n) is sequentially estimated for each n, while assuming all prior estimates {circumflex over (x)}(t.sub.m), (t.sub.m) for 1m<n are accurate. This can be depicted as:
[0098] After the sequential estimation, an optional backward pass can also be included to estimate sequentially from t.sub.N down to t.sub.1 as:
[0099] For illustration,
[0100] As described herein, the disclosed embodiments improve trilateration-based localization and also enable triangulation-based localization with single antennas. The disclosed embodiments are applicable to both Wi-Fi-based and Bluetooth-based architectures (with minor changes). Thus, the disclosed embodiments can be used to improve the performance of localization in most smart consumer devices.
[0101] The disclosed embodiments provide multiple advantageous benefits over existing techniques, including much higher accuracy and lower requirements on bandwidth and number of antennas. In addition, the disclosed embodiments can be used for a wide variety of use cases, including the following: [0102] Enabling localization of a single antenna device (e.g., smart watch, robot vacuum) by performing frame exchanges with a single anchor such as an AP. [0103] Enable arm gesture recognition by performing fine localization of the user's arm (with a smart watch on it) with respect to an anchor. [0104] Behind-the-wall object detection by using the channel state information collected from a mobile receiver for a transmitted signal transmitted from a fixed transmitter. The mobile receiver may move around and generate a large coherent virtual antenna array using the carrier phase information that enables the object detection by enhancing the signal dimension spatially.
[0105] In addition, the carrier phase information can be used for direction finding, instead of localization, i.e., identifying the angle of the line-of-sight path from the target to the anchor or vice versa. So, the disclosed embodiments can be used in several direction-finding use cases, such as guiding a user of a first device (e.g., a smart watch or wireless earbuds) towards the location of a second device (e.g., a phone) by providing the direction information to move in. Even with single antenna devices, such directional information can be obtained when either of the first or second device is mobile, by creating a virtual antenna array and exploiting the sum-carrier phase information. For example, a user wearing a smart watch may move his hand to enable creating the virtual antenna array for direction finding. In another example, the first device can be a robot vacuum or a swiveling home hub that can move or rotate to create the virtual antenna array to find the direction towards the second device.
[0106] Although
[0107]
[0108] As illustrated in
[0109] At step 1303, the device determines that a trilateration technique is to be performed. The determination can be based on at least one of: an amount of error in the range estimates, a clock accuracy, and an amount of variation in the carrier phase estimates across multiple time samples. This could include, for example, the STA 111 determining that a trilateration technique is to be performed.
[0110] At step 1305, in response to determining that the trilateration technique is to be performed, the device obtains improved range estimates using the carrier phase estimates, and determines a first location estimate of the target device using the trilateration technique and the improved range estimates. This could include, for example, the STA 111 obtaining improved range estimates using the carrier phase estimates, and determining a first location estimate of the target device 501 using the trilateration technique and the improved range estimates. In some embodiments, the trilateration technique uses at least one of: locations of the multiple anchors; the improved range estimates from the multiple anchors for a plurality of time steps; prior knowledge about range bias or target device velocity; and hidden variables to account for unknown components of the range bias or the target device velocity. In some embodiments, obtaining the improved range estimates using the carrier phase estimates includes determining the differential range estimates based on the carrier phase estimates, and weighted averaging the range estimates and the differential range estimates across a time domain to obtain the improved range estimates.
[0111] At step 1307, the device determines that a triangulation technique is to be performed. The determination can be based on at least one of: a variation of a sum-carrier phase over a time period being greater a predetermined threshold, a desired accuracy of localization being above a first threshold, and an available computation power for localization being above a second threshold. This could include, for example, the STA 111 determining that a triangulation technique is to be performed.
[0112] At step 1309, in response to determining that the triangulation technique is to be performed, the device obtains differential range estimates using the carrier phase estimates, and determines a second location estimate of the target device using the triangulation technique and the differential range estimates. This could include, for example, the STA 111 obtaining differential range estimates using the carrier phase estimates, and determining a second location estimate of the target device 501 using the triangulation technique and the differential range estimates. In some embodiments, the triangulation technique uses at least one of: locations of the multiple anchors; the differential range estimates for a plurality of time steps; prior knowledge about an orientation or a speed of the target device; and hidden variables to account for unknown components of the orientation or the speed of the target device.
[0113] At step 1311, the device combines the first location estimate and the second location estimate to determine an overall location estimate of the target device. This could include, for example, the STA 111 combining the first location estimate and the second location estimate to determine an overall location estimate of the target device 501. In some embodiments, combining the first location estimate and the second location estimate to determine the overall location estimate of the target device includes weighted combining the first location estimate and the second location estimate using preselected weights, or computing a solution to a weighted combining of objective functions of the trilateration technique and the triangulation technique. In some embodiments, the preselected weights are selected based on at least one of: available bandwidth, operating signal to noise ratio (SNR), estimation accuracy, and computation complexity.
[0114] At step 1313, the device estimates a range bias in the range estimates from the multiple anchors using results from the triangulation technique. This could include, for example, the STA 111 estimating a range bias in the range estimates from the multiple anchors 502 using results from the triangulation technique.
[0115] Although
[0116] Although the present disclosure has been described with an exemplary embodiment, various changes and modifications may be suggested to one skilled in the art. It is intended that the present disclosure encompass such changes and modifications as fall within the scope of the appended claims. None of the description in this application should be read as implying that any particular element, step, or function is an essential element that must be included in the claims scope. The scope of patented subject matter is defined by the claims.