Location of a moving target with round trip time vectors using an airborne platform

11782170 · 2023-10-10

Assignee

Inventors

Cpc classification

International classification

Abstract

A method and devices are disclosed that locate a target station moving at a constant velocity. A method and devices are disclosed for producing an RTT vector that is based upon the changes in position of the airborne measuring station position and the relative change in position of the target station. In one embodiment, the target station is an access point or station conforming to the IEEE 802.11 Standard and the airborne measuring station may also be a device that conforms to the IEEE 802.11 Standard.

Claims

1. A method in an airborne station for determining a location of a moving ground-based wireless device (WD), the method comprising: at each of a plurality of positions of the airborne station, at times t.sub.n−q for q=0 to q: determining the longitude X.sub.n−q and latitude, Y.sub.n−q of the airborne station; determining a round trip time RTT between the airborne station and the WD; determining a distance, Rn, of the WD from the airborne station based at least in part on the determined longitude, latitude and RTT; determining differences between earlier and later determinations of the latitude and longitude and differences (ΔRTTs) between earlier and later determinations of RTT; scaling the RTTs to account for horizontal distance and altitude of the airborne station; minimizing residuals between the determined ΔRTTs and a model ΔRTT, the model ΔRTT being based at least in part on parameters α, v.sub.N, and v.sub.E of the model, α being an angle between Rn and a reference axis, v.sub.N being a velocity of the WD in a first direction and v.sub.E being a velocity of the WD in a second direction perpendicular to the first direction; and determining a location of the WD based at least in part on a value for a that minimizes the residuals and based at least in part on the distance Rn, the WD location being boxed by α±Δα, and by R±ΔR, ΔR being related to an uncertainty in short interface spacing (SIFS) time and where α and Δα are derived from a correlation matrix based on the model.

2. The method of claim 1, wherein the model ΔRTT is based at least in part on: Δ R T T = ( 2 R n C ) { ( 1 + d n q para R n ) 2 + ( d n q perp R n ) 2 - 1 } where d.sub.n−q para=COS(α) Δr.sub.N+SIN(α) Δr.sub.E+[COS(α) v.sub.N+SIN(α) v.sub.E]*(t.sub.n−t.sub.n−q); |d.sub.n−q perp|=|−SIN(α) Δr.sub.N+COS(α) Δr.sub.E+[−SIN(α) v.sub.N+COS(α) v.sub.E]*(t.sub.n−t.sub.n−q)| Δr.sub.N is a change in latitude of the WD; Δr.sub.E is a change in longitude of the WD and C is a speed of light.

3. The method of claim 1, wherein values of v.sub.N and v.sub.E that minimize the residuals are used to predict an average velocity v=√{square root over (v.sub.N.sup.2+v.sub.E.sup.2)} of WD and a future location of the WD.

4. The method of claim 1, wherein the RTTs are scaled by a factor given by F = R n 2 - Alt n 2 R n ; where Alt.sub.n is an altitude of the airborne station.

5. The method of claim 1, wherein the residuals are minimized based at least in part on minimizing a sum of squared residuals.

6. The method of claim 1, wherein a measure of a final value of an RTT is based at least in part on an average of a number predetermined RTTs.

7. The method of claim 1, wherein Rn is determined based at least in part on a delay that is determined when the WD is stationary.

8. The method of claim 1, wherein the residuals are based at least in part on a horizontal distance between the WD and the airborne station.

9. An airborne station for determining a location of a moving ground-based wireless device (WD), the airborne station comprising processing circuitry configured to: at each of a plurality of positions of the airborne station, at times t.sub.n−q for q=0 to q: determine the longitude X.sub.n−q and latitude, Y.sub.n−q of the airborne station; determine a round trip time RTT between the airborne station and the WD; determine a distance, R.sub.n, of the WD from the airborne station based at least in part on the determined longitude, latitude and RTT; determine differences between earlier and later determinations of the latitude and longitude and differences (ΔRTTs) between earlier and later determinations of RTT; scale the RTTs to account for horizontal distance and altitude of the airborne station; minimize residuals between the determined ΔRTTs and a model ΔRTT, the model ΔRTT being based at least in part on parameters α, v.sub.N, and v.sub.E of the model, a being an angle between R.sub.n and a reference axis, v.sub.N being a velocity of the WD in a first direction and v.sub.E being a velocity of the WD in a second direction perpendicular to the first direction; and determine a location of the WD based at least in part on a value for a that minimizes the residuals and based at least in part on the distance Rn, the WD location being boxed by α±Δα, and by R±ΔR, ΔR being related to an uncertainty in short interface spacing (SIFS) time and where α and Δα are derived from a correlation matrix based on the model.

10. The airborne station of claim 9, wherein the model ΔRTT is based at least in part on: Δ R T T = ( 2 R n C ) { ( 1 + d n q para R n ) 2 + ( d n q perp R n ) 2 - 1 }
where d.sub.n−q para=COS(α)Δr.sub.N+SIN(α)Δr.sub.E+[COS(α)v.sub.N+SIN(α)v.sub.E]*(t.sub.n−t.sub.n−q);
|d.sub.n−q perp|=|−SIN(α) Δr.sub.N+COS(α) Δr.sub.E+[−SIN(α) v.sub.N+COS(α) v.sub.E]*(t.sub.n−t.sub.n−q)| Δr.sub.N is a change in latitude of the WD; Δr.sub.E is a change in longitude of the WD and C is a speed of light.

11. The airborne station of claim 9, wherein values of v.sub.N and v.sub.E that minimize the residuals are used to predict an average velocity v=√{square root over (v.sub.N.sup.2+v.sub.E.sup.2)} of WD and a future location of the WD.

12. The airborne station of claim 9, wherein the RTTs are scaled by a factor given by F = R n 2 - Alt n 2 R n ; where Alt.sub.n is an altitude of the airborne station.

13. The airborne station of claim 9, wherein the residuals are minimized based at least in part on minimizing a sum of squared residuals.

14. The airborne station of claim 9, wherein a measure of a final value of an RTT is based at least in part on an average of a number predetermined RTTs.

15. The airborne station of claim 9, wherein Rn is determined based at least in part on a delay that is determined when the WD is stationary.

16. The airborne station of claim 9, wherein the residuals are based at least in part on a horizontal distance between the WD and the airborne station.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) A more complete understanding of the present disclosure, and the attendant advantages and features thereof, will be more readily understood by reference to the following detailed description when considered in conjunction with the accompanying drawings wherein:

(2) FIG. 1 is a diagram of a typical location system which includes three airborne measuring stations;

(3) FIG. 2 is a diagram of an airborne measuring station that is transmitting a ranging signal to a target station;

(4) FIG. 3 is a timing diagram that describes a ranging transmission method for the measurement of RTTs from an airborne measuring station to a target station;

(5) FIG. 4 is a diagram of an example of an airborne measuring station depicted moving in a clockwise direction on a path, and a target station moving at a constant velocity v at an angle θ relative to the easterly direction;

(6) FIG. 5 is a vector diagram corresponding to FIG. 4 where v=0, i.e., the target station is stationary;

(7) FIG. 6 is a vector diagram corresponding to FIG. 4 where the target station is moving at velocity v;

(8) FIG. 7 is a vector diagram corresponding to FIG. 4 where the target station is moving at velocity v in direction θ;

(9) FIG. 8 is a block diagram of an example measuring system that may be used in accordance with the principles described herein;

(10) FIG. 9 is a flow diagram of an example of one embodiment of the process that calculates the position of a moving mobile station; and

(11) FIG. 10 is a flow diagram of another example process for determining the position of a moving mobile station.

DETAILED DESCRIPTION

(12) This Application incorporates U.S. Patent Application Publication Nos. 2020/0158852 A1 and 2020/0166630 A1 by reference in their entirety.

(13) Although this disclosure uses Wi-Fi as an example for the measurement of the round trip time (RTT), it should be clear to someone skilled in the art that the RTT measurement processes described herein can be measured for other wireless technologies and is thus not limited solely to Wi-Fi. Reference to a wireless device (WD) herein may therefore refer to a wireless local area network (WLAN) device, although embodiments are not limited to WLAN devices.

(14) In one embodiment of the present disclosure, a single airborne measuring station is used. A method and devices are disclosed that locate a target station moving at a constant velocity. A method and devices are disclosed for producing an RTT vector that is based upon the changes in position of the airborne measuring station position and the relative change in position of the target station. In one embodiment, the target station is an access point or station conforming to the IEEE 802.11 Standard and the airborne measuring station may also be a device that conforms to the IEEE 802.11 Standard.

(15) Returning to the drawing figures in which like reference numerals refer to like elements, there is shown in FIG. 3 a timing diagram that describes ranging a transmission method for the measurement of RTTs from an airborne measuring station 110 to a target station 120. Time axis 310 is the time axis for the airborne measuring station 110 and time axis 320 is the time axis for the target station 120. At time Ta 311, the airborne measuring station 110 starts the transmission of request packet 350 which is addressed to the target station 120. Packet 350 may, for example, be a data null or an RTS packet. After a time delay of td, at time Tb 321, the target station 120 starts to receive packet 350. At time Tc 312, the airborne measuring station 110 completes the transmission of packet 350 and at time Td 422, target station 120 completes the reception of packet 350. The time difference between Tc 412 and Td 422 is td 331, the propagation time for the packet to travel from the airborne measuring station 110 to the target station 120. Note that the time differences (Tc−Ta) and (Td−Tb) are both the duration tp 330 of the transmitted packet 350.

(16) The target station 120 transmits the response packet 355 at time Te 323. The response packet 355 may be an ACK or an RTS packet in reply to the received request packet 350, time Te 323 ideally will be at a time tSIFS 332 after time Td 322, where tSIFS 332 is the SIFS time as defined in the IEEE 802.11 Standard. In the general sense, individual stations may exhibit a variation, or delay, in the value of tSIFS 332. At time Tf 313, the airborne measuring station 110 starts to receive the response packet 355. The time difference between Te 323 and Tf 313 is td 333. At time Tg 324, the target station 120 completes the transmission of the response packet 355 and at time Th 314, the airborne measuring station 110 completes receiving the response packet 355. Note that the time differences (Tb−Ta), (Td−Tc), (Tf−Te) and (Th−Tg) are all equal and have the value td which is the propagation time for the request packet and response packet to travel between the two stations.

(17) At the airborne measuring station 110, the time recorded for a packet may be taken at the end point of a frame where the frame check sum FCS frame has completed. Hence, the recorded time for the transmission of request packet 350 is time Tc 312, and the time that is recorded for the reception of the response packet 355 is time Th 314. In order to calculate the value of RTT, it is necessary to know the duration tr 334 of the response packet 355. Calculating the duration tr 334 is straightforward as the airborne measuring station 110 can monitor details of the response packet such as data rate and length. In practice therefore, the airborne measuring station 110 can calculate the value of TOF from expression (1):
RTT=(Th−Tc−tr−tSIFS)  (1)
and hence, the corresponding distance, R=RTT×C/2  (2)

(18) As mentioned previously, the packet exchange may be any pair of packets where an automatic response packet is sent. Commonly used Wi-Fi packets include an RTS/CTS exchange and a Data (null)/ACK exchange.

(19) FIG. 4 is a diagram of an example of an airborne measuring station 110 depicted moving in a clockwise direction on a path 401, and a target station 120 moving at a constant velocity v at an angle θ 433 relative to the easterly direction. At specific times, T, the target station 120 may transmit a response packet 355. At time T.sub.n, the airborne measuring station 110 is at position (X.sub.n, Y.sub.n) 410, and the target station 120 is at location (x.sub.n, y.sub.n) 420. At time T.sub.n−1, the airborne measuring station 110 was at position (X.sub.n−, Y.sub.n−1) 411, and the target station 120 was at location (x.sub.n−, y.sub.n−1) 421. At time T.sub.n−2, the airborne measuring station 110 was at position (X.sub.n−2, Y.sub.n−2) 412, and the target station 120 was at location (x.sub.n−2, y.sub.n−2) 422. Note that, in this example, the airborne measuring station 110 is moving from position (X.sub.n−2, Y.sub.n−2) 412, to position (X.sub.n−1, Y.sub.n−1) 411 to position (X.sub.n, Y.sub.n) 410. Hence, position (X.sub.n, Y.sub.n) 410 represents the latest position, and T.sub.n−2 is earlier than T.sub.n−1, and T.sub.n−1 is earlier than T.sub.n. At time T.sub.n_2, the target station 120 was at location (x.sub.n−2, y.sub.n−2) 422, and at time T.sub.n−1, the target station 120 was at location (x.sub.n−1, y.sub.n−1) 421. The target station 120 is moving in a straight line at a constant velocity v, angle θ 430. Therefore the distance between location (x.sub.n−2, y.sub.n−2) 422 and (x.sub.n−1, y.sub.n−1) 421 is vt.sub.n−1, where t.sub.n−1=T.sub.n−2−T.sub.n−1. Similarly, the distance between position (x.sub.n−1, y.sub.n−1) 421 and (x.sub.n, y.sub.n) 420 is vt.sub.n, where t.sub.n=T.sub.n−1−T.sub.n.

(20) At time T.sub.n, when the airborne measuring station 110 is at position (X.sub.n, Y.sub.n) 410, the distance to the target station 120 is R.sub.n 430 and R.sub.n 430 is at an angle α 440 where:
cos α=(Y.sub.n−y.sub.n)/R.sub.n and sin α=(X.sub.n−x.sub.n)/R.sub.n

(21) At time T.sub.n−1, when the airborne measuring station 110 is at position (X.sub.n−1, Y.sub.n−1) 411, the distance to the target station 120 is R.sub.n−1 431, and at time T.sub.n−2, when the airborne measuring station 110 is at position (X.sub.n−2, Y.sub.n−2) 412, the distance to the target station 120 is R.sub.n−2 432.

(22) For q=1 to q, the distance r.sub.n−q between positions (X.sub.n−q, Y.sub.n−q) and (X.sub.n, Y.sub.n), is:
r.sub.n−q=√{square root over ((X.sub.n−X.sub.n−q.sup.2+(Y.sub.n−Y.sub.n−q.sup.2)}  (3)
The distance r.sub.n−2 between positions (X.sub.n−2, Y.sub.n−2) 411 and (X.sub.n, Y.sub.n) 410, is:
r.sub.n−2=√{square root over ((X.sub.n−X.sub.n−2).sup.2+(Y.sub.n−Y.sub.n−2).sup.2)}
where r.sub.n−1 is at an angle Ø.sub.n−1 435, and where
cos Ø.sub.n−1=(X.sub.n−X.sub.n−1)/r.sub.n−1 and sin Ø.sub.n−1=(Y.sub.n−1−Y.sub.n)/r.sub.n−1
Hence,

(23) n - q = A COS ( ( X n - X n - q ) r n - q ) ( 4 )
And r.sub.n−q(t)COS Ø.sub.n−q=(X.sub.n−X.sub.n−q)=ΔX.sub.n−q  (5)
r.sub.n−q(t)SIN Ø.sub.n−q=−(Y.sub.n−Y.sub.n−q)=−ΔY.sub.n−q  (6)

(24) The target station 120 is moving at angle θ 433 at a velocity of v. Hence, the distance travelled is vt, where t is time between readings:
vt.sub.n−q COS θ=x.sub.n−x.sub.n−q=Δx.sub.n−q  (7)
vt.sub.n−q SIN θ=y.sub.n−y.sub.n−q=Δy.sub.n−q  (8)

(25) FIG. 5 is a vector diagram corresponding to FIG. 4 where v=0, i.e., the target station 120 is stationary. Rn 510 extends between points D 501 and E 502 and makes an angle α 440 with respect to a reference axis. Vector r(t).sub.n−q 520, the change of position of the airborne measuring station 110, is between points E 502 and F 503. Vector R.sub.n−q (stat) 512 is the sum of vectors R.sub.n 510 and −r(t).sub.n−q 520, and is between points D 501 and F 503:
R.sub.n−q(stat)=R.sub.n+r(t).sub.n−q  (9)
Vector r(t).sub.n−q 520 is at an angle Ø.sub.n−q 531 as discussed above with reference to equations (4), (5) and (6).
Define d.sub.n−q(stat)=r(t).sub.n−q
and define unit vector u:u=R.sub.n/R.sub.n
Then:d.sub.n−q para(stat)=d.sub.n−q(stat).Math.u
And: d.sub.n−q perp (stat)=|d.sub.n−q (stat)×u|
With reference to FIG. 5, d.sub.n−q para (stat) 522 is between points E 502 and G 504, and d.sub.n−q perp (stat) 524 is between points G 504 and F 503. In triangle EFG, angle ∠EFG 532 is (Ø.sub.n−q−α), hence:
d.sub.n−q para(stat)=r.sub.n−q(t)SIN(Ø.sub.n−q−α)  (10)
and: d.sub.n−q perp (stat)=r.sub.n−q(t) COS (Ø.sub.n−q−α)  (11)
Hence, R.sub.n−q (stat) 512 is:
R.sup.2.sub.n−q(stat)=[Rn+d.sub.n−q para(stat)].sup.2+d.sup.2.sub.n−q perp(stat)
And:ΔR.sub.n−q(stat)=R.sub.n−q(stat)−R.sub.n
ΔR.sub.n−q(stat)=√{square root over (R.sub.n+d.sub.n−q(stat)).sup.2+d.sub.n−q.sup.2(stat)−R.sub.n)}  (12)

(26) FIG. 6 is a vector diagram corresponding to FIG. 4 where the target station 120 is moving at velocity v from location M 640 to location D 501. Vector r(t).sub.n−q 520, the change of position of the airborne measuring station 110 is between points E 502 and F 503. Vector R.sub.n 510 is the vector from the airborne measuring station 110 at location E 502, the current location of the airborne measuring station 110, to the target station 120 at location D 501, the current location of the target station 120. Vector r(t).sub.n−q 520 is the change of position of the airborne measuring station 110, which moves from location F 503, a previous location, to location E 502. Vector vt.sub.n−q 620 represents the displacement of the target station 120 from location M 640, at a time corresponding to when the airborne measuring station was at location F 503, to location D 501, at a time corresponding to when the airborne measuring station 110 is at location E 502. Rn−q 612 is a vector from the airborne measuring station 110 when at location F 503 to the target station 120 at location M 640.

(27) A more complete understanding of the present disclosure, and the attendant advantages and features thereof, will be more readily understood by reference first to a vector analysis of the relationship of various vectors and components, followed by a detailed trigonometric analysis.

(28) Each time, T.sub.n-q, that the target station 120 sends a response packet 355 after having received a request packet 350 from the airborne measuring station 110, there is an opportunity to determine absolute distances. more importantly, the changes in RTT, ΔRTT, may be used to determine directions and velocities without need of knowing the value of the SIFS time tSIFS 332. Hence, ΔRTTq can be associated with a change in distance where:
change-in-distance=c*ΔRTTq/2=Rn−q−Rn
With reference to FIG. 6, distances Rn−q and Rn are related to the magnitudes of the corresponding vectors R.sub.n−q 612 and R.sub.n 510:
Rn−q−Rn=|Rn−q|−−|Rn|

(29) With reference again to FIG. 6: Rn−q=−r(t).sub.n−q+Rn−v(t.sub.n−t.sub.n−q).
Define: d.sub.n−q=−r(t).sub.n−q−v(t.sub.n−t.sub.n−q).
then: d.sub.n−q para=d.sub.n−q.Math.u
and: d.sub.n−q perp=|d.sub.n−q×u|
Then the differences in RTT measurements, ΔRTT, between an earlier time, t.sub.n−q, and the current time, t.sub.n, is:

(30) ( c / 2 ) * Δ RTT = Rn - q - Rn = .Math. "\[LeftBracketingBar]" - r ( t ) n q + R n - v t n q .Math. "\[RightBracketingBar]" - .Math. "\[LeftBracketingBar]" Rn .Math. "\[RightBracketingBar]" = .Math. "\[LeftBracketingBar]" Rn + d n q .Math. "\[RightBracketingBar]" - .Math. "\[LeftBracketingBar]" Rn .Math. "\[RightBracketingBar]" = ( R n + d n q ) .Math. ( R n + d n q ) - R n = ( R n 2 + d n q 2 + 2 Rn .Math. d n q ) - Rn = R n 2 + d n qpara 2 + d n qperp 2 + 2 R n * d n qpara - R n = ( R n + d n qpara ) 2 + d n q perp 2 - Rn

(31) Then:

(32) Δ RTT = ( 2 / c ) * ( R n - q - R n ) = ( 2 / c ) * Rn * { ( 1 + d n q para R n ) 2 + ( d n q perp R n ) 2 - 1 } ( 13 )

(33) Equation (13) has two unknowns, d.sub.n−q para and d.sub.n−q perp. Rn may be calculated from the final RTT measurement at time Tn. The parameters of interest are the angle α 440 of Rn 510 relative to north (azimuth to target) and the components of the velocity v of the target station 120 relative to the geographic coordinate system, v.sub.N and v.sub.E. The unknowns d.sub.n−q para and d.sub.n−q perp may be written in known terms Δr.sub.N and Δr.sub.E and unknown variables v.sub.N and v.sub.E using the unit vector u=Rn/Rn:
u=Rn/Rn=COS(α)Ň+SIN(α)Ĕ
Δr.sub.N=)Ň.Math.r(t).sub.n−q,Δr.sub.E=Ĕ.Math.r(t).sub.n−q
v.sub.N=Ň.Math.v, v.sub.E=Ĕ.Math.v
where Ň is the unit vector in the north direction and Ĕ is the unit vector in the east direction. Hence

(34) - d n q para = - u .Math. d n q = COS ( α ) N ˇ .Math. r ( t ) n q + SIN ( α ) E ˇ .Math. r ( t ) n q + [ COS ( α ) N ˇ .Math. v + SIN ( α ) E ˇ .Math. v ] * ( t n - t n q ) = COS ( α ) Δ r N + SIN ( α ) Δ r E + [ COS ( α ) v N + SIN ( α ) v E ] * ( t n - t n q ) ( 14 )
And:

(35) - d n q perp = - .Math. "\[LeftBracketingBar]" u × d n q .Math. "\[RightBracketingBar]" = .Math. "\[LeftBracketingBar]" - SIN ( α ) N ˇ .Math. r ( t ) n q + COS ( α ) E ˇ .Math. r ( t ) n q + [ - SIN ( α ) N ˇ .Math. v + COS ( α ) E ˇ .Math. v ] * ( t n - t n q ) .Math. "\[RightBracketingBar]" =  .Math. "\[LeftBracketingBar]" - SIN ( α ) Δ r N + COS ( α ) Δ r E + [ - SIN ( α ) v N + COS ( α ) v E ] * ( t n - t n q ) .Math. "\[RightBracketingBar]" ( 15 )
Where the 2D relation |A×B|=|−A.sub.yB.sub.x+A.sub.xB.sub.y| has been used.
Referring again to FIG. 5, the term [COS(α) Δr.sub.N+SIN(α) Δr.sub.E] in equation (14) is d.sub.n−q para (stat)522 and the term [−SIN(α) Δr.sub.N+COS(α) Δr.sub.E] is d.sub.n−q perp (stat) 524. The remaining terms in equations (14) and (15) refer to the movement of the target station 120 and hence, referring again to FIG. 6, the term [COS(α) v.sub.N+SIN(α) v.sub.E]*(t.sub.n−t.sub.n−q) in equation (14) is d.sub.n−q para (mov) 622 and the term [−SIN(α) v.sub.N+COS(α) v.sub.E]*(t.sub.n−t.sub.n−q) in equation (15) is d.sub.n−q perp (mov) 624.

(36) In equations (14) and (15), the only unknown quantities are a 440 and v (or equivalently the north component v.sub.N and the east component v.sub.E). The quantity r(t).sub.n−q (Δr.sub.N, Δr.sub.E) is the known difference in the airborne measuring station 110 locations, F 503 and E 502 which may be determined, for example, from a GPS module 860 on the airborne measuring station 110 as discussed below with reference to FIG. 8.

(37) In one embodiment of this disclosure, the method for determining the angle of arrival a 440, and the components of target velocity v.sub.N and v.sub.E is to measure the ΔRTT for 30 to 90 seconds (as required to generate statistics) and vary the parameters α, v.sub.N, and v.sub.E in equations (14) and (15) substituted into equation (13) until a best fit to the data is obtained as discussed below with reference to step 911 in FIG. 9. If the airborne measuring station 110 is at a different altitude compared to the target station 120 at ground level, then all distances obtained from RTTs may be projected to the ground level by factor F which may be accomplished by taking the square root of the sum of the distance squared minus the altitude squared, in the same units, i.e.,

(38) 0 F = R n 2 - A l t n 2 R n .

(39) FIG. 7 is a vector diagram corresponding to FIG. 4 where the target station 120 is moving at velocity v in direction θ 430. R.sub.n 510 is at an angle of α 440 between points D 501 and E 502. Vector r(t).sub.n−q 520, the change of position of the airborne measuring station 110, is between points E 502 and F 503. Note that vector vt.sub.n−q 620 is between points F 503 and H 710. It should be noted that the vector vt.sub.n−q is the same vector as vt.sub.n−q 620 in FIG. 6, but is drawn from point F 503, which is in accordance with the cumulative law for addition of vectors. Vector R.sub.n−q (mov) 612 is the sum of vectors R.sub.n, r(t).sub.n−q, and vt.sub.n−q, and is between points D 501 and H 610:
R.sub.n−q(mov)=R.sub.n+r(t).sub.n−q+vt.sub.n−q  (16)
Vector vt.sub.n−q 620 is at an angle θ 430 as discussed above with reference to equations (7) and (8).
Define d.sub.n−q (mov)=vt.sub.n−q
then d.sub.n−q para(mov)=d.sub.n−q(mov).Math.u
and d.sub.n−q perp(mov)=|d.sub.n−q(movu|
With reference to FIG. 7, d.sub.n−q para (mov) 622 is between points H 710 and K 714, and also between points J 713 and G 504. Also with reference to FIG. 7, d.sub.n−q perp (mov) 624 is between points F 503 and K714.
In triangle HFK, angle ∠HFK is (θ+α), hence,
d.sub.n−q para(mov)=vt SIN(θ+α)  (17)
and:d.sub.n−q perp(mov)=vt COS(θ+α)  (18)
From FIG. 7 triangle DHJ, and equation (16), d.sub.n−q para 732 and d.sub.n−q perp, 730, are:
d.sub.n−q para=d.sub.n−q para(stat)+d.sub.n−q para(mov)  (19)
d.sub.n−q perp=d.sub.n−q perp(stat)−d.sub.n−q perp(mov)  (20)
And R.sup.2.sub.n−q(mov)=[Rn+d.sub.n−q para].sup.2+d.sub.n−q perp
Hence, ΔR.sub.n−q (mov)=(R.sub.n+d.sub.n−q para).sup.2 d.sub.n−q perp .sup.2−R.sub.n  (21)

(40) Substituting equations (10) and (16), into equation (19):
d.sub.n−q para=r.sub.n−q(t)SIN(ϕ.sub.n−q−α)+vt SIN(θ+α)
Expanding the SIN terms:
d.sub.n−q para=r.sub.n−q(t) (SIN ϕ.sub.n−q COS α−COS ϕ.sub.n−q SIN α)+vt (SIN θCOS α+COS θ SIN α)
Substituting equations (5), (6), (7) and (8):
d.sub.n−q para=−ΔY.sub.n−q COS α−ΔX.sub.n−q SIN α+Δy.sub.n−q COS α+Δx.sub.n−q SIN α  (22)
Substituting equations (11) and (17), into equation (20):
d.sub.n−q perp=r.sub.n−q(t) COS (ϕ.sub.n−q−α)−vt COS (θ+α)
Expanding the COS terms:
d.sub.n−q perp=r.sub.n−q(t) (COS ϕ.sub.n−q COS α−SIN ϕ.sub.n−q SIN α)−vt (COS θCOS α−SIN θ SIN α)
Substituting equations (5), (6), (7) and (8):
d.sub.n−q perp=ΔY.sub.n−q SIN α−ΔX.sub.n−q COS α+Δy.sub.n−q SIN α−Δx.sub.n−q COS α  (23)

(41) From equation (21), dividing and multiplying by R.sub.n shows the change in RTT, ΔRTT:

(42) Δ RTT = ( 2 R n C ) { ( 1 + d n q para R n ) 2 + ( d n q perp R n ) 2 - 1 } (24)
It may be noted that equation (24) is the same as equation (13).

(43) In equations (22) and (23), ΔY.sub.n−q, and ΔX.sub.n−q are the differences in longitude and latitude, respectively, of the airborne measuring station 110 between the time t.sub.n of the last measurement of R.sub.n and the time t.sub.n−q when R.sub.n−q was measured. Note that ΔY.sub.n−q may be corrected for higher latitudes.

(44) In equations (22) and (23):
Δy.sub.n−q=v.sub.N(t.sub.n−t.sub.n−q),  (25)
where v.sub.N is the velocity of the target station 120 in the northerly direction.
And:Δx.sub.n−q=v.sub.E(t.sub.n−t.sub.n−q),  (26)
where v.sub.E is the velocity of the target station 120 in the easterly direction.

(45) Hence, the equation (24) with substitutions for d.sub.n−q para and d.sub.n−q perp from equations (22) and (23), and then v.sub.N and v.sub.E from equations (25) and (26) describe the measurement ΔRTT in terms of three parameters, α, v.sub.N, and v.sub.E and two variables, ΔY.sub.n−q and LX.sub.n−q.

(46) Hence, in summary:

(47) Δ RTT = ( 2 R n C ) ( 1 + d n q para R n ) 2 + d n q perp 2 R n - 1 ( 24 )
where
d.sub.n−q para=−ΔY.sub.n−q COS α−ΔX.sub.n−q SIN α+v.sub.N(t.sub.n−t.sub.n−q)COS α+v.sub.E(t.sub.n−t.sub.n−q)SIN α  (27)
And
d.sub.n−q perp=ΔY.sub.n−q SIN α−ΔX.sub.n−q COS α+v.sub.N(t.sub.n−t.sub.n−q)SIN α−v.sub.E(t.sub.n−t.sub.n−q)COS α  (28)

(48) There is a third variable, the altitude of the airborne measuring station 110, but this may be used to scale the ΔRTT to a horizontal component. The RTT measurements may be multiplied by a factor F to account for the ratio of the horizontal distance RH from the airborne measuring station 110 and the target station 120. Hence, R.sub.Hq=RTT.Math.F, where

(49) F = R n 2 - A l t n 2 R n .
It may be assumed that the altitude does not change significantly over the time of the measurements, and hence, to simplify the procedure, only the final RTT may be used for the correction. Alternatively, each RTT measurement could be factored. Also the longitude measurement X″ may be scaled by a factor to account for reduced distance per degree when not at the equator.
Hence, X′n−q=X.sub.n−q.Math.COS (Xe).

(50) The fitting parameters α, v.sub.N, and v.sub.E as defined in equations (24), (27) and (28) may be varied to minimize the sum of the least square differences for the measured ΔRTT with time, resulting from the RTT measurements as described above with reference to FIGS. 1, 2 and 3, and the calculated ΔR.sub.n−q (mov) as per equation (18) for q=1 to q.

(51) FIG. 8 is a block diagram of an example measuring system 800 that may be used in accordance with the principles described herein. In one embodiment, measuring system 800 may be the airborne measuring station 110. In one embodiment, measuring system 800 may include an antenna assembly 880, a transmitter receiver 810, a computer system 830, a global positioning system (GPS) module 840, a gyro module 860 and a network switch 850 such as an Ethernet switch.

(52) The transmitter receiver 810 may transmit or receive radio frequency (RF) signals to and from the antenna assembly 880. The GPS module 840 output may be connected to the transmitter receiver 810. The GPS module 840 may provide the latitude, longitude and altitude of the airborne platform of the measuring system 800. The transmitter receiver 810 may append GPS information to any RF transmission and/or reception. The network switch 850 may be connected to the Transmitter Receiver 810 and the computer system 830. The transmitter receiver 810 may include an RF transmitter 811, an RF receiver 812 and processing circuitry 815. The RF receiver 812 may receive RF signals from the antenna assembly 880. The RF receiver 812 may comprise one or more receiver paths. The RF receiver 812 may perform the usual functions of an RF receiver such as low noise amplification, filtering, and frequency down conversion so as to condition the received signal suitable for inputting to the processing circuitry 815. The processing circuitry 815 may perform the usual baseband functions such as demodulation, descrambling, and error correction of received packets as described in the I.E.E.E. 802.11 Standard. The RF transmitter 811 may comprise one or more transmitter paths. The RF transmitter 811 may perform the usual function of an RF transmitter such as up conversion, filtering and power amplification of the baseband signal received from the processing circuitry 815 for transmission via the antenna assembly 880. The processing circuitry 815 may perform the usual baseband functions such as coding, scrambling and modulation of packets to be transmitted as described in the above-referenced I.E.E.E. 802.11 Standard. The processing circuitry 815 may comprise a processor 816 and a memory 817. The processing circuitry 815 may be configured to control any of the methods and/or processes described herein and/or to cause such methods, and/or processes to be performed, e.g., by the transmitter receiver 810. The memory module 817 is configured to store data, programmatic software code and/or other information described herein. In some embodiments, the software may include instructions that, when executed by the processing circuitry 815, causes the processing circuitry 815 to perform the processes described herein with respect to the transmitter receiver 810.

(53) According to this embodiment of the disclosure, the transmitter receiver 810 may be configured to measure and monitor an input signal's attribute, such as may include one or more of a ranging signal transmitted by RF transmitter 811, data and control packets, and the response signal, including control packets, transmitted by an access point or station that may be based upon the I.E.E.E. 802.11 Standard, as discussed above with reference to FIG. 3. Such packets may include data null, ACK, RTS and CTS packets. The memory 817 may store instructions for executing any method mentioned in the I.E.E.E. 802.11 Standard, input signals, and results of processing of the processor 816, signals to be outputted and the like.

(54) According to an embodiment of the disclosure, the RF transmitter 811 may be configured to transmit signals and the processing circuitry 815 may be configured to prepare the transmitted signal attributes based upon the I.E.E.E. 802.11 Standard. Such transmitted packets may include data packets, control packets and management packets that are to be transmitted by a wireless station that is based upon the I.E.E.E. 802.11 Standard. Such data packets may include data null packets. Such control packets may include RTS packets. The memory 817 may store instructions for executing any method mentioned in the specification, input signals, and results of processing of the processor 816, signals to be outputted and the like.

(55) According to another embodiment of the disclosure, the transmitter receiver 810 may be configured to receive the transmissions of another target station 120 and the processing circuitry 815 may be configured to monitor an attribute of the transmissions of the other target station 120, and determine the value of the time of arrival of packets from the other target station 120, as discussed above with reference to FIG. 3. In addition, according to an embodiment of the disclosure, the transmitter receiver 810 may be configured to measure the times of departure of the transmissions from the RF transmitter 811.

(56) The GPS information may be provided to the processing circuitry 815 by the GPS module 840. RF receptions may have the GPS information added such that the position of the airborne platform 110 is known for each received signal. The transmitter receiver 810 may include more than one radio and therefore any transmission may be automatically received by another radio within the transmitter receiver and by this means, the airborne platform position 110 is also known for each transmission. The GPS information may be sent to the network switch 850 and therefore made available to the computer system 830.

(57) The computer system 830 may include an interface 831. Interface 831 may contain an Ethernet connection to the network switch 850, the connection to a display 836, a connection to a keyboard and mouse 837 as well as interfacing to the processing circuitry 835. In some embodiments, the processing circuitry 835 may include a processor 832, a memory 833 and a database 834. The database 834 may contain the ground mapping information of the area of interest and the processor 832 and memory 833 may be used to carry out the example processes described below with reference to FIG. 9, using information on the position of the airborne platform derived from the GPS module 840, the gyro module 860, and information on the target station 120 which may be inputted using the keyboard and mouse 837. The display 836 may be used to show the ground map together with the estimated location(s) of the target station 120. Note that the modules discussed herein may be implemented in hardware or a combination of hardware and software. For example, the modules may be implemented by a processor executing software instructions or by application specific integrated circuitry configured to implement the functions attributable to the modules. Also note that the term “connected to” as used herein refers to “being in communication with” and is not intended to mean a physical connection nor a direct connection. It is contemplated that the signal path between one element and another may traverse multiple physical devices.

(58) Thus, in some embodiments, the processing circuitry 835 may include the memory 833 and a processor 832, the memory 833 containing instructions which, when executed by the processor 832, configure the processor 832 to perform the one or more functions described herein. In addition to a traditional processor and memory, the processing circuitry 835 may comprise integrated circuitry for processing and/or control, e.g., one or more processors and/or processor cores and/or FPGAs (Field Programmable Gate Array) and/or ASICs (Application Specific Integrated Circuitry).

(59) The processing circuitry 835 may include and/or be connected to and/or be configured for accessing (e.g., writing to and/or reading from) the memory 833, which may include any kind of volatile and/or non−volatile memory, e.g., cache and/or buffer memory and/or RAM (Random Access Memory) and/or ROM (Read-Only Memory) and/or optical memory and/or EPROM (Erasable Programmable Read-Only Memory). Such memory 833 may be configured to store code executable by control circuitry and/or other data, e.g., data pertaining to communication, e.g., configuration and/or address data of nodes, etc. The processing circuitry 835 may be configured to control any of the methods described herein and/or to cause such methods to be performed, e.g., by the processor 832. Corresponding instructions may be stored in the memory 833, which may be readable and/or readably connected to the processing circuitry 835. In other words, the processing circuitry 835 may include a controller, which may comprise a microprocessor and/or microcontroller and/or FPGA (Field-Programmable Gate Array) device and/or ASIC (Application Specific Integrated Circuit) device. It may be considered that the processing circuitry 835 includes or may be connected or connectable to memory, which may be configured to be accessible for reading and/or writing by the controller and/or processing circuitry 835.

(60) FIG. 9 is a flow diagram of an example of one embodiment of the process 900 that calculates the position of a moving mobile target STA 120. Process 900 may start at step 901 where the final location, latitude.sub.n and longitude.sub.n, of the airborne measuring station 110, and the final RTT measurement, RTT.sub.n are determined. For example, with reference to FIG. 4, the final location of the airborne measuring station 110 is position 410, latitude Y.sub.n, and longitude X.sub.n, and the corresponding RTT measurement, RTT.sub.n, is related to R.sub.n 430, where RTT.sub.n=2 R.sub.n/C. The final measurement of the latitude and longitude and RTT of the airborne measuring station 110 may also be determined over an average of a number of measurements in order to remove RTT fluctuations. For example, the average may be taken for the final 5 measurements. The latitude and longitude measurements may be derived from the GPS 840 and/or the gyro module 860. The RTT may be measured by transmitting, via RF transmitter 811, a request packet 350 and receiving, via RF receiver 812, the response packet 355, as discussed above with reference to FIG. 3. The measurement may be carried out in processor 816 and stored in memory 817. The results of the measurements may be inputted to the processing circuitry 835, via Ethernet switch 850, and stored in database 834.

(61) In step 903, the differences between earlier measurements of the latitude, longitude RTT and RTT may be derived, together with the times of the measurements, t.sub.q. Hence, for q=1 to q:
latitude.sub.q=latitude.sub.n−q−latitude.sub.n or Y.sub.q=Y.sub.n−q−Y.sub.n
longitude.sub.q=longitude.sub.n−q−longitude.sub.n or X.sub.q=X.sub.n−q−X.sub.n
RTT.sub.q=RTT.sub.n−q−RTT.sub.n
t.sub.q=t.sub.n−q−t.sub.n
These calculations may be carried out in the processing circuitry 815 and/or processing circuitry 835 and the results stored in memory 833 and or database 834.

(62) In step 905, as discussed above with reference to equations (24), (27) and (28), the RTT measurements may be multiplied by a factor F to account for the ratio of the horizontal distance RH from the airborne measuring station 110 and the target station 120.
Hence, R.sub.Hq=RTT.sub.q.Math.F, where

(63) F = R n 2 - Alt n 2 R n

(64) It may be assumed that the altitude does not change significantly over the time of the measurements, and hence, to simplify the procedure, only the final RTT is used for the correction factor F. Alternatively, each RTT measurement could be multiplied by factor F

(65) In step 907 the longitude measurement X.sub.q may be scaled by a factor to account for reduced distance per degree when not at the equator.
Hence, X′.sub.q=X.sub.q.Math.COS(X.sub.n)
Note that the units of R.sub.Hq, may be converted to microseconds, the units of X.sub.q and Y.sub.q to meters, and the units of time to seconds such that the speed of light C=300 m/μs, the target station 120 constant velocity v will be in m/s, and the distance r.sub.n−q between positions (X.sub.n−q, Y.sub.n−q) and (X.sub.n, Y.sub.n), will be in meters.

(66) In step 909 the value for R.sub.n is determined. As discussed above with reference to FIG. 3 and equations (1) and (2), the value for R may be expressed as R=(TOA—TOD−packet length− (SIFS+delay))×C/2 where the only unknown is the “delay” which is the variation in SIFS time for any particular target station 120. A value for this delay, i.e., the effective SIFS, may have be determined by previous location calculations when the target station 120 was stationary. However, observation of equations (13) and (24) indicates that ΔRTT is not that sensitive to absolute R and a deviation of perhaps 10% is not critical,

(67) In step 911 a minimization of the summation of squared residuals, SSR, fitting process, such as Levenberg-Marquardt may be used to determine the parameters α, v.sub.N and v.sub.E that minimize the residual, (R.sub.H−ΔRTT).sup.2 where ΔRTT is given by equations (24), (27) and (28). Alternatively, the minimization of the SSR fitting process may use the “Pass Filter” function as described in U.S. Patent Application Publication No: US 2021/0302566.

(68) In step 913, for a final location, i.e., latitudes and longitude.sub.n, of the airborne measuring station 110, and the final RTT measurement, RTT.sub.n, step 911 may be repeated using varying time spans in the past. For example, data from time spans of 30 to 90 seconds in the past may be used until there is sufficient data such that the correlation matrix used in the fitting process indicates a sufficiently small uncertainty in α 440, for example, ±5 degrees or 1/10 radians. The target station velocities, v.sub.N and v.sub.E are included in the fitting process in order to get a valid value for angle α 440 and the corresponding target station 120 velocity, v, where v=√{square root over (v.sub.N.sup.2+v.sub.E.sup.2)} may be used to predict a future location of the target station 120.

(69) In step 915 the uncertainties in a and R are determined. The target station 120 location may be boxed by α±Δα, and by R±ΔR, where ΔR is related to the uncertainty in SIFS time as discussed above in step 907, i.e., “delay”×C. Here, α and Δα may be derived from the correlation matrix of a successful fitting process as discussed above with respect to step 913.

(70) In step 917, consistency checks may be performed with previous measurements in order to gain confidence that the assumption of the model, i.e., that the effect of the target station 120 velocity over time can be replaced by an average velocity, is valid.

(71) FIG. 10 is a flowchart 1000 of an example process in an airborne station 110, performed by processing circuitry 835 for determining a location of a WD. In step 1001, at each of a plurality of positions of the airborne station, at times t.sub.n−q for q=0 to q, the following are determined: the longitude X.sub.n−q and latitude, Y.sub.n−q of the airborne station (Step 1003); a round trip time RTT between the airborne station and the WD (Step 1005); and a distance, R.sub.n, of the WD from the airborne station based on the determined longitude, latitude and RTT (Step 1007). In Step 1009, the airborne station determines differences between earlier and later determinations of the latitude and longitude and differences (ΔRTTs) between earlier and later determinations of RTT. In Step 1011, the airborne station scales the RTTs to account for horizontal distance and altitude of the airborne station. In Step 1013, the airborne station minimizing residuals between the determined ΔRTTs and a model ΔRTT, the model ΔRTT being based at least in part on parameters α, v.sub.N, and v.sub.E of the model, a being an angle between R.sub.n and a reference axis, v.sub.N being a velocity of the WD in a first direction and v.sub.E being a velocity of the WD in a second direction perpendicular to the first direction. In Step 1015, the airborne station determines a location of the WD based at least in part on a value for a that minimizes the residuals and based at least in part on the distance R.sub.n.

(72) In some embodiments, the model ΔRTT is based at least in part on:

(73) Δ RTT = ( 2 R n C ) { ( 1 + d n q para R n ) 2 + ( d n q perp R n ) 2 - 1 }
where d.sub.n−q para=COS(α)Δr.sub.N+SIN(α)Δr.sub.E+[COS(α)v.sub.N+SIN(α)v.sub.E]*(t.sub.n−t.sub.n−q);
|d.sub.n−q perp|=|−SIN(α) Δr.sub.N+COS(α) Δr.sub.E+[−SIN(α) v.sub.N+COS(α) v.sub.E]*(t.sub.n−t.sub.n−q)|; and Δr.sub.N
is a change in latitude of the WD; Δr.sub.E is a change in longitude of the WD and C is a speed of light. In some embodiments, values of v.sub.N and v.sub.E that minimize the residuals are used to predict an average velocity v=√{square root over (V.sub.N.sup.2+V.sub.E.sup.2)} of WD and a future location of the WD. In some embodiments, the WD location is boxed by α±Δα, and by R±ΔR, where ΔR is related to an uncertainty in short interface spacing (SIFS) time and where α and Δα are derived from a correlation matrix based on the model. In some embodiments, the RTTs are scaled by a factor given by

(74) F = R n 2 - A l t n 2 R n ;
where Alt.sub.n is an altitude of the airborne station and R.sub.n is the range in the same units as the altitude. In some embodiments, the residuals are minimized based at least in part on minimizing a sum of squared residuals. In some embodiments, the process further includes scaling the longitude X.sub.n−q by COS (Y.sub.n−q). In some embodiments, a measure of a final value of an RTT is based at least in part on an average of a number predetermined RTTs. In some embodiments, Rn is determined based at least in part on a delay that is determined when the WD is stationary. In some embodiments, the residuals are based at least in part on a horizontal distance between the WD and the airborne station.

(75) As will be appreciated by one of skill in the art, the concepts described herein may be embodied as a method, data processing system, and/or computer program product. Accordingly, the concepts described herein may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects all generally referred to herein as a “circuit” or “module.” Furthermore, the disclosure may take the form of a computer program product on a tangible computer usable storage medium having computer program code embodied in the medium that can be executed by a computer. Any suitable tangible computer readable medium may be utilized including hard disks, CD ROMs, optical storage devices, or magnetic storage devices.

(76) Some embodiments are described herein with reference to flowchart illustrations and/or block diagrams of methods, systems and computer program products. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

(77) These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.

(78) The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

(79) It is to be understood that the functions/acts noted in the blocks may occur out of the order noted in the operational illustrations. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved. Although some of the diagrams include arrows on communication paths to show a primary direction of communication, it is to be understood that communication may occur in the opposite direction to the depicted arrows.

(80) Computer program code for carrying out operations of the concepts described herein may be written in an object oriented programming language such as Java® or C++. However, the computer program code for carrying out operations of the disclosure may also be written in conventional procedural programming languages, such as the “C” programming language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer. In the latter scenario, the remote computer may be connected to the user's computer through a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).

(81) While the above description contains many specifics, these should not be construed as limitations on the scope, but rather as an exemplification of several embodiments thereof. Many other variants are possible including, for examples: the details of the fitting process, the time spans used to gather data, the accepted errors used in the fitting process, the corrections for latitude and slope, the orbit or path of the airborne measuring station, the frequency of the transmission of the ranging packets, the timing accuracy, and the type of packets used. Accordingly, the scope should be determined not by the embodiments illustrated, but by the claims and their legal equivalents.

(82) It will be appreciated by persons skilled in the art that the present invention is not limited to what has been particularly shown and described herein above. In addition, unless mention was made above to the contrary, it should be noted that all of the accompanying drawings are not to scale. A variety of modifications and variations are possible in light of the above teachings without departing from the scope of the following claims.