Frequency hopping scheme for improved operation in congested environments
Technology is disclosed herein for a method of operating a UAV as an access point for communication with one or more ground controllers and/or one or more other UAVs. In an implementation, a UAV establishes a connection, including an uplink and downlink, between the UAV and a ground controller such that the UAV is an access point with respect to the ground controller. The connection is established in accordance with a wireless protocol that divides the RF spectrum into bands of resource units with respect to uplinks and downlinks between access points and non-access points. The UAV identifies a single resource unit (RU) to support uplink traffic and instructs the ground controller to transmit uplink traffic on the single resource unit. The UAV receives uplink traffic from the ground controller on the single resource unit.
1 . A method of operating an unmanned aerial vehicle, comprising:
establishing a connection between the unmanned aerial vehicle and a ground controller in accordance with a wireless protocol that divides radio frequency (RF) spectrum into bands of resource units with respect to uplinks and downlinks between access points and non-access points, wherein the unmanned aerial vehicle serves as an access point with respect to the ground controller and wherein the connection includes an uplink and a downlink;
identifying a single resource unit in a band of resource units to support uplink traffic by:
performing a scan of a first RF band among the RF spectrum;
determining environment conditions in the first RF band based on the scan; and
selecting the single resource unit based on the environment conditions;
instructing the ground controller to transmit the uplink traffic on the single resource unit and responsively receiving the uplink traffic from the ground controller on the single resource unit; and
identifying a new single resource unit to support the uplink traffic in a subsequent transmission by:
evaluating the single resource unit against a cycle time corresponding to an allowed duration of transmission time of the uplink traffic; and
selecting the new single resource unit from the band of resource units or from a different band of resource units responsive to determining that a duration of transmission time of the uplink traffic exceeds the cycle time.
2 . The method of claim 1 , wherein the wireless protocol comprises an orthogonal frequency division multiple access (OFDMA) protocol, and wherein each resource unit in the band of resource units comprises a group of sub-carrier frequencies in the RF spectrum, and wherein the method further comprises:
identifying one or more other resource units to carry downlink traffic; and
transmitting the downlink traffic to the ground controller on the one or more other resource units.
3 . The method of claim 2 , further comprising:
instructing the ground controller to transmit the uplink traffic on the new single resource unit; and
receiving the uplink traffic on the new single resource unit.
4 . The method of claim 3 , wherein instructing the ground controller to transmit the uplink traffic on the single resource unit comprises instructing the ground controller to transmit the uplink traffic on only the single resource unit.
5 . The method of claim 1 , wherein the unmanned aerial vehicle further serves as an access point with respect to one or more other unmanned aerial vehicles and one or more other ground controllers.
6 . The method of claim 5 , further comprising:
establishing a second connection with a second ground controller in accordance with the wireless protocol, wherein the second connection includes a second uplink and a second downlink;
identifying a second single resource unit in a second band of resource units to support second uplink traffic;
instructing the second ground controller to transmit the second uplink traffic on the second single resource unit; and
receiving the second uplink traffic from the second ground controller on the second single resource unit.
7 . The method of claim 6 , further comprising:
establishing a third connection with a second unmanned aerial vehicle in accordance with the wireless protocol, wherein the third connection includes a third uplink and a third downlink;
receiving third uplink traffic from the second unmanned aerial vehicle on the third uplink; and
transmitting third downlink traffic from the unmanned aerial vehicle to the second unmanned aerial vehicle on the third downlink.
8 . The method of claim 7 , wherein the third downlink traffic, sent from the unmanned aerial vehicle to the second unmanned aerial vehicle on the third downlink, includes the second uplink traffic sent from the second ground controller to the unmanned aerial vehicle on the second uplink.
9 . An unmanned aerial vehicle comprising:
one or more non-transitory computer-readable storage media; and
program instructions stored on the one or more computer-readable storage media that, when executed by one or more processors, direct the unmanned aerial vehicle to at least:
establish a connection between the unmanned aerial vehicle and a ground controller in accordance with a wireless protocol that divides radio frequency (RF) spectrum into bands of resource units with respect to uplinks and downlinks between access points and non-access points, wherein the unmanned aerial vehicle serves as an access point with respect to the ground controller and wherein the connection includes an uplink and a downlink;
scan a first RF band among the RF spectrum to determine environmental conditions in the first RF band based on the scan;
select a single resource unit in a band of resource units to support uplink traffic based on the environmental conditions;
instruct the ground controller to transmit the uplink traffic on the single resource unit;
receive the uplink traffic from the ground controller on the single resource unit; and
identify a new single resource unit to support the uplink traffic in a subsequent transmission, wherein to identify the new single resource unit, the program instructions direct the unmanned aerial vehicle to:
evaluate the single resource unit against a cycle time corresponding to an allowed duration of transmission time of the uplink traffic; and
select the new single resource unit from the band of resource units or from a different band of resource units responsive to determining that a duration of transmission time of the uplink traffic exceeds the cycle time.
10 . The unmanned aerial vehicle of claim 9 , wherein the wireless protocol comprises an orthogonal frequency division multiple access (OFDMA) protocol, and wherein each resource unit in the band of resource units comprises a group of sub-carrier frequencies in the RF spectrum, and wherein the program directions further direct the unmanned aerial vehicle to:
identify one or more other resource units to carry downlink traffic; and
transmit the downlink traffic to the ground controller on the one or more other resource units.
11 . The unmanned aerial vehicle of claim 10 , wherein the program instructions further direct the unmanned aerial vehicle to:
instruct the ground controller to transmit the uplink traffic on the new single resource unit; and
receive the uplink traffic on the new single resource unit.
12 . The unmanned aerial vehicle of claim 11 , wherein to instruct the ground controller to transmit the uplink traffic on the single resource unit, the program instructions direct the unmanned aerial vehicle to instruct the ground controller to transmit the uplink traffic on only the single resource unit.
13 . The unmanned aerial vehicle of claim 9 , wherein the unmanned aerial vehicle further serves as an access point with respect to one or more other unmanned aerial vehicles and one or more other ground controllers.
14 . The unmanned aerial vehicle of claim 13 , wherein the program instructions further direct the unmanned aerial vehicle to:
establish a second connection with a second ground controller in accordance with the wireless protocol, wherein the second connection includes a second uplink and a second downlink;
identify a second single resource unit in a second band of resource units to support second uplink traffic;
instruct the second ground controller to transmit the second uplink traffic on the second single resource unit; and
receive the second uplink traffic from the second ground controller on the second single resource unit.
15 . The unmanned aerial vehicle of claim 14 , wherein the program instructions further direct the unmanned aerial vehicle to:
establish a third connection with a second unmanned aerial vehicle in accordance with the wireless protocol, wherein the third connection includes a third uplink and a third downlink;
receive third uplink traffic from the second unmanned aerial vehicle on the third uplink; and
transmit third downlink traffic from the unmanned aerial vehicle to the second unmanned aerial vehicle on the third downlink.
16 . The unmanned aerial vehicle of claim 15 , wherein the third downlink traffic, sent from the unmanned aerial vehicle to the second unmanned aerial vehicle on the third downlink, includes the second uplink traffic sent from the second ground controller to the unmanned aerial vehicle on the second uplink.
17 . A ground controller comprising:
one or more non-transitory computer-readable storage media; and
program instructions stored on the one or more computer-readable storage media that, when executed by one or more processors, direct the ground controller to at least:
establish a connection between the ground controller and an unmanned aerial vehicle in accordance with a wireless protocol that divides radio frequency (RF) spectrum into bands of resource units with respect to uplinks and downlinks between access points and non-access points, wherein the unmanned aerial vehicle serves as an access point with respect to the ground controller and wherein the connection includes an uplink and a downlink;
receive, from the unmanned aerial vehicle, an instruction to transmit uplink traffic on a single resource unit in a band of resource units selected based on:
performing a scan of a first RF band among the RF spectrum to determine environmental conditions in the first RF band based on the scan; and
selecting the single resource unit based on the environment conditions; and
transmit the uplink traffic from the ground controller on the single resource unit; and
receive, from the unmanned aerial vehicle, a further instruction to transmit the uplink traffic on a new single resource unit selected based on:
evaluating the single resource unit against a cycle time corresponding to an allowed duration of transmission time of the uplink traffic; and
selecting the new single resource unit from the band of resource units or from a different band of resource units responsive to determining that a duration of transmission time of the uplink traffic exceeds the cycle time.
18 . The ground controller of claim 17 , wherein the wireless protocol comprises an orthogonal frequency division multiple access (OFDMA) protocol, and wherein each resource unit in the band of resource units comprises a group of sub-carrier frequencies in the RF spectrum, and wherein the program directions further direct the ground controller to:
receive, from the unmanned aerial vehicle, an instruction to receive downlink traffic on one or more other resource units; and
receive the downlink traffic from the unmanned aerial vehicle on the one or more other resource units.
19 . The ground controller of claim 18 , wherein the program instructions further direct the ground controller to:
transmit the uplink traffic on the new single resource unit.
20 . The ground controller of claim 19 , wherein the instruction to transmit the uplink traffic on the single resource unit, further comprise an instruction to transmit the uplink traffic on only the single resource unit.