Patent ID: 12228659

DETAILED DESCRIPTION

A method and apparatus are disclosed that measures the AOA of signals received from a Wi-Fi device using an SBA.

FIG.3is a timing diagram of a series of bursts of transmissions of the ranging packets212. In one embodiment of this disclosure, a “burst”,351, consisting of a preset number N of transmissions of packets212from STA A100, may be sent followed by a “wait” period,371. This sequence may continue until a command may be issued to terminate the transmissions. Within each burst, each of the N transmissions may be separated by a preset time, Tp230. The duration TB361of each burst will therefore be N Tp. For example, a burst may consist of 128 or 64 transmissions of packets212from STA A100. Each transmission may be, for example, 1 ms apart, followed by a wait period of, for example, 20 or 30 ms after which another burst of 128 or 64 transmissions may be sent. In these examples, the duration of each burst will be either 128 ms or 64 ms and burst plus wait time will be 148 ms or 94 ms. Note that STA A100may be a first wireless device (WD) and the STA B105may be a second WD.

The angle of arrival AOA of a signal may be measured using a switched beam antenna, SBA. A more complete understanding of the present embodiments, and the attendant advantages and features thereof, will be more readily understood by first describing the basics of an example SBA.

FIG.4is a block schematic diagram of an example of an SBA400. In this example, SBA400comprises 24 antennas401to424. Each antenna401to424may be either an individual antenna or, in some SBA examples, an antenna array. Each antenna401to424is connected to a radio frequency, RF, switch431to454respectively. The RF switches431to454are connected to an RF combiner/splitter460which is connected to a single RF connector490. The RF switches431to454are controlled by the antenna switch selection module470over a data bus475. External commands are sent via the communications connector480which is connected to the antenna switch selection module470via data bus485. External commands sent via communication connector480may cause one or more antennas401to424to be selected by causing the respective RF switch(es)431to454to be selected. For example, different commands may be used to either cause a single antenna to be selected, or a number of antennas to be selected so as to form beams with various beamwidths. As used herein, a “wide beam” may be a beam having a width of about 90 degrees, while a “narrow beam” as used herein may be a beam having width of less than that of a wide beam.

FIG.5is a diagram of an example of the24individual beams501to524corresponding to antennas401to424when arranged in a circle, each beam at 15 degrees intervals. By inputting the appropriate command at communications connector480, any of the24individual beams may be selected. Also, by inputting other commands at communications connector480, a group of antennas may be selected.FIG.6is a diagram of an example of a beam601resulting from the selection of antennas402,404and406, producing a beam of about 90 degrees width at a relative angle of 45 degrees. Hence, beam601may be referred to as “quadrant601”. Similarly other 90-degree beams, or quadrants,602,603and604may be produced at relative angles of 135, −135 and −45 degrees, by selecting the appropriate antennas. For example, beam602is produced by selecting antennas408,410and412; beam603is produced by selecting antennas414,416and418; beam604is produced by selecting antennas420,422and424.

In one embodiment, STA A100is located on a mobile platform and STA B105is in a fixed location. In another embodiment, STA A100, is located in a fixed location and STA B105is mobile. In yet another embodiment, both STA A100, and STA B105are mobile.

FIG.7illustrates a block diagram of an example wireless communication device700which, according to an embodiment of the disclosure, may be used as or as part of the wireless device STA A100. The wireless communication device700may be any device capable of wirelessly receiving signals and transmitting signals and may be configured to execute any of the methods of the IEEE 802.11-2020 Standard. Wireless communication device700may be one or more stations or access points, and the like. Wireless communication device700may be one or more wireless devices that are based upon the IEEE 802.11-2020 specification and each may be configured to act as a transmitter or a receiver. The embodiment described herein is that where wireless communication device700includes an SBA400, wireless transmitter710and a wireless receiver750. The wireless communication device700may also include a platform location module760and a general purpose processor780which are interconnected to the wireless transmitter710, the wireless receiver750and the SBA400by a data bus790. In some embodiments the connection to the SBA400via communications connector480may be via a separate data bus from the processing circuitry that is used to control the SBA400, i.e., processing circuitry720or754or the general purpose processor780.

In some embodiments, wireless transmitter710includes an RF transmitter711and processing circuitry720that includes processor721, and memory module722. RF transmitter711may perform the functions of modulation, as described in IEEE 802.11-2020 and amplification for the transmission of the Wi-Fi packets via RF connector480and SBA400. In some embodiments processing circuitry720and/or processor721may 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) configured to execute programmatic software instructions. In some embodiments the functions of RF transmitter711may be performed by processing circuitry720. Processing circuitry720may 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 RF transmitter711. Memory module722may be 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 processing circuitry720, causes processing circuitry720to perform the processes described herein with respect to wireless transmitter710.

In some embodiments, wireless receiver750includes an RF front end751, an RF receiver752, a correlator753, processing circuitry754(that includes a processor755and a memory module756. RF front end751may perform the usual functions of an RF receiver front end such as low noise amplification, filtering and frequency down conversion so as to condition the received signal suitable for inputting to RF receiver752. RF receiver752may perform the functions of demodulation of the Wi-Fi packet. In some embodiments and as described in U.S. Pat. Nos. 10,812,132 and 10,840,970, RF receiver752may condition the received signal suitable for inputting to correlator753. If present, correlator753performs the function of correlating the conditioned, demodulated received bits with the known bit pattern. As disclosed in U.S. Pat. Nos. 10,812,132 and 10,840,970 and Published U.S. Patent Application Nos. 2022/0078743, 2022/0110087 and 2022/0196825, correlator753may comprise different circuitry dependent, in part, upon the modulation. When a correlation is used, the effective receiver sensitivity of the Wi-Fi packets may be significantly improved. As discussed below with reference toFIGS.5,6,8,9and10, the signal strengths of the received signals on the selected antennas of the SBA400are used to select the best antenna. If the received signal is too low for conventional reception then the correlation may still indicate reception. In this case, the correlation value may be converted into an equivalent received signal strength. Hence, the term “signal strength” should be understood to include its correlation value equivalent.

In some embodiments RF receiver752and/or correlator753and/or processing circuitry754may 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) configured to execute programmatic software instructions. In some embodiments the functions of RF receiver752and/or correlator753may be performed by processing circuitry754. Processing circuitry754may 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 wireless receiver750. Memory module756is 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 processing circuitry754, causes processing circuitry754to perform the processes described herein with respect to wireless receiver750.

According to this embodiment of the disclosure, wireless receiver750may be configured to measure and monitor an input signal's attribute, such as may include one or more of a signal transmitted by wireless transmitter710, data and control packets, and the response signal, including control packets, transmitted by an access point or station that may be based upon the IEEE 802.11-2020 Standard. Such packets may include data null, ACK, RTS and CTS packets. Memory module756may store instructions for executing any method mentioned in the IEEE 802.11-2020 Standard, input signals, and results of processing of processor755, signals to be outputted and the like. Processing circuitry754may output to general purpose processor780attributes of the received packets124such as signal strength together with the antenna beam that was selected in the SBA400.

According to an embodiment of the disclosure, RF transmitter711may be configured to transmit signals and processing circuitry720may be configured to prepare the transmitted signal attributes based upon the IEEE 802.11-2020 Standard. Such transmitted packets may include data packets, control packets and management packets. Such control packets may include RTS packets. Memory module722may store instructions for executing any method mentioned in the specification, input signals, and results of processing of processor721, signals to be outputted and the like.

According to another embodiment of the disclosure, wireless receiver750may be configured to receive the transmissions of another target, wireless communication device, e.g., STA B105, and processing circuitry754may be configured to monitor an attribute of the transmissions of the other wireless communication device, and determine the value of the signal strengths of packets from the other wireless communication device.

According to an embodiment of the disclosure, wireless transmitter710may be configured to transmit bursts351of packets to another wireless communication device, as described inFIG.3, and processor721may be configured to prepare the attributes of the packet112to be transmitted. Processor721may also be configured to set the timing Tp230between each packet112transmission, the number N of packet112transmissions within each burst, the wait time Tw371between bursts, as well as the start and stop times for the sequence of bursts. During the wait time Tw371, processor721may also be configured to set the antenna switches431to454in the SBA400so as to select an antenna beam for the next burst of transmissions.

According to an embodiment of the disclosure, general purpose processor780may be used to control the operations of wireless communication device700and, in particular, wireless transmitter710and wireless receiver750. General purpose processor780may provide an interface to a user via a keyboard, mouse and display allowing a user to select the attributes of the target, STA B105, control the start and stop of the transmissions112and interpret the resulting AOAs. General purpose processor780may also carry out the various calculations as described in this disclosure, such as determining a location for STA B105based upon the resulting AOAs, and may also prepare the measurement results for disclosure to an operator or user. In some embodiments general purpose processor780may 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) configured to execute programmatic software instructions and may include a memory module to execute programmatic code stored in general purpose processor780or another device. It is also noted that the elements of wireless communication device700may be included in a single physical device/housing or may be distributed among several different physical devices/housings.

According to an embodiment of the disclosure, a platform location module760may be used to input, via the data bus790, to general purpose processor780and/or processing circuitry720and/or754the location of the platform that is carrying wireless communication device700. Platform location module760may comprise navigation equipment such as a GPS receiver and/or a gyro and may provide both the location and heading of wireless communication device700to general purpose processor780, and processing circuitries720and754. The location and heading of wireless communication device700, together with the antenna selections of the SBA400may be used by general purpose processor780to calculate and display the location of the target, i.e., STA B105. Geo-location of a device using AoAs and location of the wireless communication device is known.

A more complete understanding of the present embodiments, and the attendant advantages and features thereof, will be more readily understood by first describing the outline of a method of controlling SBA400antenna selection, the transmission of the bursts351, receptions from the target, STA B105, and the measurement of the received signals at the wireless communication device700, STA A100.

In order for STA A100to transmit a packet112and receive the corresponding response packet124from STA B105successfully, the SBA400antenna should be pointed in the general direction of STA B105from STA A100. As discussed above with reference toFIGS.4,5and6, SBA400may be set to a selection of antenna beamwidths. A more complete understanding of the present embodiments, and the attendant advantages and features thereof, will be more readily understood by first describing an outline of an example method for the selection of SBA400antenna beam(s).

As discussed above with reference toFIG.6, SBA400may be set to wide beams of about 90 degrees, i.e., “quadrants”, e.g., quadrants601,602,603and604. As an example, SBA400may initially be set to quadrant601, and then STA A100sends a burst351of N transmissions of ranging packets112. The average signal strength of the received response packets124across the burst is then noted. Quadrants602,603, and604may then be selected, in turn, and on each quadrant, STA A100sends a burst351of N transmissions of ranging packets112and the average signal strength of the received response packets124is noted. The quadrant corresponding to the highest average signal strength is then selected. The individual SBA400antennas, corresponding to that selected quadrant, may then be selected, in turn, and the corresponding received signal strengths noted for each antenna for each burst351of N transmissions of ranging packets112. In the case that the received signal is too low for standard reception, then the additive correlation value may be used as the effective average signal strength. Additive correlation is described in the patents cited above.

FIG.8is a diagram of an example of the three individual beams,508,510and512that correspond to the wide beam, quadrant602. In this example, assume that the quadrant with the highest average signal strength is602. Wireless communication device700, acting as STA A100, may then select, in turn, beams508,510, and512, i.e., the beams that comprise quadrant602as discussed above with reference toFIG.6, transmitting a burst351of N transmission112on each beam, and noting the average signal strength of the received packets124from STA B105, per beam. After each sequence of sending bursts on each beam, the beam with the best average signal strength may be noted and recorded as the AOA. For example, assume that beam510has the best average signal level, i.e., the center beam of the sequence. In this case wireless communications device700, acting as STA A100will continue to switch beams in the same sequence for the next set of three bursts351. If, however, the beam with the highest average signal strength is, or becomes beam508, then wireless communications device700, acting as STA A100, may then select, in turn, beams507,509,511, i.e., the beam sequence selection is shifted −15 degrees as depicted inFIG.9. Similarly, if the beam with the highest average signal strength is, or becomes beam512, then the wireless communications device700, acting as STA A100, may then select, in turn, beams509,511,513, i.e., the beam selection sequence is shifted +15 degrees as depicted inFIG.10. This selection sequence scheme of changing by zero, +15 or −15 degrees, continues. If, continuing this example, the highest average signal strength is, or then becomes beam513, then the wireless communications device, acting as STA A100, may then select, in turn, beams510,512,514, i.e., the beam sequence selection further shifted +15 degrees. By this example method, after each selection of three beams, transmitting a burst351on each beam, the beam with the maximum averaged signal strength is reported as the AOA corresponding to the direction of STA B105from STA A100.

The antenna selection sequence described above is-30, middle (0), +30 degrees, shifting plus or minus 15 degrees if the outer antennas have the better signal strength. Other selection sequences are possible, for example the antenna selection sequence may be middle, −30, middle +30. This scheme however would output the AOA every 4 bursts351and assumes that the middle antenna is the most likely selection. A scheme that switched between just two antennas is also possible but such a scheme may not find the best antenna in certain situations. The three antenna selection scheme described above is a preferred scheme.

The antenna selection sequence described above corresponds to example SBA400comprising 24 antennas as depicted inFIG.5. As will be appreciated by one of skill in the art, the details of the SBA, i.e., the number of antennas and the beamwidths, may vary, but the basic described antenna beam selection sequence may still apply. For example, wide beam widths may be selected in turn, and then the individual beams in the wide beam with the highest received signal strength are selected, in turn. Then, based upon whether the middle or an outer antenna beam had the best received signal strength, the next antenna selection is shifted. For example, if the SBA comprised, say, of 12 antennas, then a wide beam formed by three adjacent antennas would be in the order of 90°. In this example, the antenna selection sequence is also −30, middle (0), +30 degrees, but shifting plus or minus 30 degrees if the outer antennas have the better signal strength.

FIG.11is a diagram depicting vehicle1101, that is turning a 90° corner of radius r, at a velocity v. A wireless communications device700is contained in vehicle1101with the SBA400mounted on or in vehicle1101. The g force exerted on the vehicle1101is:

g⁢force=v2r(1)
The distance d travelled in completing the corner, 90°, is

d=π⁢r2(2)
and the time t to complete the corner, 90°, is

t=dv(3)
The angular velocity V is therefore,

V=90t(4)

With reference toFIGS.2and3, the duration of a burst351of N ranging packets112, is N Tp, with a wait time Tw371between bursts. Hence, the time T to complete the sequence of three antenna selections, as described above, is:

T=3⁢(NTp+Tw)(5)

In the time T to complete the antenna selection sequence, the vehicle1101will have changed its heading angle A, by,

Δ⁢A=TV=180⁢vTπ⁢r(6)
This angle ΔA may be considered the “error angle” due to the cornering of vehicle1101.

As may be appreciated by one of skill in the art, it may be possible to use the platform location module760to compensate for changes in the heading due to the vehicle1101turning a corner. In this case the SBA400antenna selection would need to be adjusted as vehicle1101was turning. This may introduce timing errors as well as computational complexity. If, as in the example of a 24 beam SBA, the angular error A may be kept under half the beam selection accuracy, i.e., 7.5°, then the beam selection may effectively keep up with vehicle1101turning a corner.

A maximum ‘comfortable’ g force for a vehicle turning a corner is in the order of 0.2 g. Typical corner radii, r, may range from about 30 feet up to 150 feet for various roads.FIG.12is a graph1200of the velocity v, in mph, of a vehicle1101taking a corner at a g force of 0.2, for varying corner radii, r. For example, for a corner radius r of 50 feet, vehicle1101would travel at a velocity v of 12 mph1201in order to exert a g force of 0.2, whereas for a corner radius r of 130 feet, vehicle1101would travel at a velocity v of 20 mph1202.

With reference toFIGS.2and3, the duration of a burst351of N packets112, is N Tp, with a wait time Tw371between bursts. Hence, the time T to complete the sequence of three antenna selections, as described above, is given by equation (5). The longer the burst time, N Tp, and the wait time, Tw, the better the averaging of the signal strengths but the angular error4A will increase. As an example, a burst may consist of 128 or 64 transmissions of packets212from STA A100, each transmission, say, 1 ms apart, followed by a wait period of, say, 20 m or 30 ms, after which another burst of 128 or 64 transmissions may be sent. In this example the duration of each burst will be either 128 ms or 64 ms and burst plus wait time will be between 84 and 158 ms.

FIG.13is a graph of the angle error A due to cornering, for varying corner radii r, for vehicle1101cornering at a g force of 0.2 for varying burst and wait times. Graph1301is for bursts of 128 ms and wait time 30 ms. Graph1302is for bursts of 128 ms and wait time 20 ms. Graph1303is for bursts of 64 ms and wait time 30 ms. Graph1301is for bursts of 64 ms and wait time 20 ms. The tighter the corner, i.e., the smaller the corner radius r, the higher the angle error4A. For a 30 feet corner radius, the angle error1305is about 7.5° for bursts of 64 ms and wait time 30 ms, graph1303, and the angle error1306is about 6.5° for bursts of 64 ms and wait time 20 ms, graph1304. Hence, using bursts of 64 ms should enable the angular error A to be low enough such that the reported AOA may accurately follow the change in angle as vehicle1101turns corners. Averaging the signal strength over 64 packets will reduce the standard deviation of the signal strengths by a factor of √{square root over ( 1/64)}. Hence, if the standard deviation of the signal strengths is, say, 3 dB, then after averaging, this is reduced to 0.375 dB.

FIGS.14and15is a flow diagram of an example process1400of one embodiment of the disclosure for determining the AOA from a Wi-Fi device using a wireless communication device700that includes an SBA400. Process1400may start at step1401where initial values for a number of parameters may be set. Such parameters may include N, the number of transmissions in a burst351, Tp230the time between packets112transmitted in the burst351, and Tw371the wait time between bursts. These values may be inputted by the user via general purpose processor780providing the values to processing circuitry720or may be preset via processing circuitry720. Example values for N, Tp and Tw may be 64, 1 ms, and 20 ms, respectively.

At step1402, an initial quadrant of the SBA400is selected, for example, quadrant601. Any wide beam antenna may be selected by selecting the appropriate adjacent RF switches, as discussed above with reference toFIG.4. The quadrant may be selected via data bus790and communications connector480under the control of processing circuitry720. At step1404, a variable n may be initialized and at step1406, a burst351of N transmissions of ranging packet112are sent as described above with reference toFIG.3. Ranging packets112are transmitted in burst351at intervals of Tp230, as described above with reference toFIG.2. At step1408, the signal strengths of all response packets124received are averaged and recorded together with the corresponding antenna quadrant. The response packets124are received by wireless receiver750via SBA400and the signal strength may be determined by RF receiver752and recorded by processing circuitry754. If the response packets124are received using correlator753, then an equivalent signal strength related to the correlation may be recorded. At step1410, variable n is incremented and at step1412, a check if the value of n is 4 may be carried out. If n is not equal to 4, then at step1414, the next quadrant of SBA400may be selected, and the process returns to step1406where another burst351of N transmissions of packet112are sent. If, at step1412, n=4, then a burst351of N transmissions of packet112has been sent on all four quadrants, e.g.,601,602,603and604and at step1416, the quadrant with the best signal strength may be determined. At step1418a check may be made to determine that packets214have been received at step1408, i.e., that the target STA105is within range. If packets have been received, then the process advances toFIG.15, step1501. If no packets have been received, then the process returns to step1402.

Referring toFIG.15, at step1501, the first antenna in the quadrant with the best signal strength is selected. For example, if the quadrant with the best signal strength was quadrant602, then, as described above with reference toFIG.8, the three antennas that are selected to form that quadrant beam are508,510and512. In this example, at step1501, the antenna supporting beam508would be selected. At step1502, a variable n may be initialized and at step1504a burst351of N transmissions of packet112are sent, as described above with reference toFIG.3. At step1506, the signal strengths of all response packets124received are averaged and recorded together with the corresponding antenna beam. If the response packets124are received using correlator753, then an equivalent signal strength related to the correlation may be recorded. At step1508, a check is made to ensure that some packets are being received. If packets have been received at step1506, then step1508may be followed by step1510, where the variable n is incremented. A check on the value of n is then carried out at step1512, and if n is less than 3, the next antenna beam is selected at step1514and the process returns to step1504, where a new burst351of N transmissions of packet112are sent. In the example where quadrant602is selected at step1416, then the selection sequence of antenna beams is508,510, and512.

If, at step1512, n=3, then a burst351of N transmissions of packet112has been sent on the three antenna beams. At step1516, the antenna beam with the best signal strength may be determined and at step1520, the AOA may be output. The AOA reported at step1520is relative to the heading of wireless communication system700. In the general sense, assuming that wireless communication system700is mounted in an automotive vehicle, then SBA400would be mounted, either internally or on the roof, with the zero degree beam601in the forward direction of the vehicle. Then the AOA, relative to north, recorded at step1520would be the heading of the vehicle, as reported by platform location module760, plus the SBA beam angle. Also, at step1520, the location of wireless communication system700is reported. The location is provided by platform location module760. General purpose processor780may include a display that indicates a vector showing the instantaneous direction of target STA B105relative to wireless communications system700, i.e., the AOA outputted at step1520corrected by the heading.

The process continues via step1522where the first antenna for the next sequence of antenna beam selection takes place. As discussed above with reference toFIGS.8,9and10, the best beam is determined at step1516. If the center beam was the strongest, then the same antenna sequence is repeated. If the −30° antenna was the strongest, then the antenna sequence is shifted −15°, and if the +30° antenna was the strongest then the antenna sequence is shifted +15°. Hence, after three bursts351, transmitted on each of the three antennas spaced at 30°, an AOA is output together with the location of wireless communication system700. The location of the target105may then be calculated. The determination of a target location using AOA at a moving station is known. As discussed above with reference toFIGS.11,12, and13, by selecting appropriate values for N, Tp230and Tw371, then even when the vehicle containing wireless communications system700is turning corners, the reported AOA is accurate.

At step1508it may be determined if the target105is out of range. For example, if no response packets214are received at step1506for a pre-determined period, then the process1400may return to step1402.

FIG.16is flow diagram of a process in a first wireless device (WD)100configured with a switched beam antenna (SBA400), for determining an angle of arrival (AOA) corresponding to communication between first WD100and a second WD105, the process being performed by the SBA400, the RF transmitter711, the RF receiver752, processing circuitry720and processing circuitry754. The process includes transmitting successive bursts of ranging packets, a number of ranging packets in a burst of ranging packets, a time between ranging packets in the burst and a gap between successive bursts being selected based at least in part on a first limit on an angular error of a determination of an AOA of a selected beam (step1524). The process also includes receiving, in succession, a first burst of response packets in each beam of a first set of beams, the first burst of response packets being transmitted by the second WD105in response to a first burst of ranging packets (step1526). The process also includes determining a first beam of the first set of beams associated with a highest average received signal strength of the first bursts of response packets (step1528). The process further includes receiving, in succession, a second burst of response packets in each beam of a second set of beams, the second burst of response packets being transmitted by the second WD105in response to a second burst of ranging packets, each beam of the second set of beams being narrower than the determined first beam and being directed within an angular sector of the determined first beam (step1530). The process further includes selecting the selected beam from the second set of beams, the selected beam being associated with a highest average received signal strength of the second bursts of response packets (step1532). The process also includes determining an AOA of the selected beam (step1534).

In some embodiments, the number of ranging packets in the burst of ranging packets, the time between ranging packets in the burst and the gap between successive bursts of ranging packets are selected further based on a second limit on an error in determining a highest average received signal strength of a burst of response packets. In some embodiments, receiving, in succession, a second burst of response packets in each beam of the second set of beams includes: receiving, in succession, a burst of response packets in each beam of a first subset of the second set of beams; and receiving, in succession, a burst of response packets in each of at least one beam of a second subset of the second set of beams, the at least one beam of the second subset being offset in direction from a direction of a beam of the first subset. In some embodiments, the offset in direction is selected based at least in part on the limit on an angular error in determining the AOA of the selected beam. In some embodiments, the first subset of the second set of beams are directed in a first set of directions within the angular sector and the offset in direction is selected to be in a direction of increasing average received signal strength as determined based at least in part on average received signal strengths associated with beams of the first subset of the second set of beams. In some embodiments, the first subset of the second set of beams are associated with a first set of antennas of the first WD100and the second subset of the second set of beams are associated with a subset of the first set of antennas. In some embodiments, a direction of each beam of a subset of the second set of beams is successively incremented in an angular direction, until an average received signal strength of an associated beam of the subset exceeds a threshold. In some embodiments, an average received signal strength is based at least in part on a correlation of a received response packet with a known sequence. In some embodiments, the first WD100is positionable on a vehicle and the first WD100is configured to select the number of ranging packets in a burst of ranging packets, the time between ranging packets in the burst and the gap between successive bursts based at least in part on a velocity of the vehicle. In some embodiments, a time between ranging packets in the burst and a gap between successive bursts is selected based at least in part on a limit on angular error of a determination of an AOA of a selected beam. In some embodiments, the limit on angular error is less than half a beam selection accuracy of the SBA400.

As will be appreciated by one of skill in the art, the details of the SBA, i.e., the number of antennas and the beamwidths, may vary, but the described antenna beam selection sequence still applies. For example, wide beam widths may be selected in turn, and then the individual beams in the wide beam that had the highest received signal strength are selected, in turn. If the antenna with the highest received signal strength is not the middle antenna, then the sequence shifts by one antenna in the same direction.

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 may 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.

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, may 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.

These computer program instructions may also be stored in a computer readable memory that may 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.

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.

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.

Computer program code for carrying out operations of the concepts described herein may be written in an object oriented programming language such as Python, 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).

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 number of transmissions in a burst, the time between transmissions within a burst, the wait time between bursts, the number of antennas in the SBA, the beam widths of the antennas in the SBA. Accordingly, the scope should be determined not by the embodiments illustrated, but by the claims and their legal equivalents.

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.