GENERATING GEO-FENCE DATA
20200169936 ยท 2020-05-28
Inventors
Cpc classification
H04W36/0058
ELECTRICITY
G05D1/106
PHYSICS
H04L63/107
ELECTRICITY
H04W4/44
ELECTRICITY
G08G5/006
PHYSICS
B64C39/024
PERFORMING OPERATIONS; TRANSPORTING
H04B7/18506
ELECTRICITY
H04W4/021
ELECTRICITY
International classification
H04W4/44
ELECTRICITY
G05D1/10
PHYSICS
H04W4/021
ELECTRICITY
H04B7/185
ELECTRICITY
Abstract
For geo-fence data, a processor (405) registers an aerial device (115) at an aerial server (105). In addition, the processor (405) calculates the geo-fence data (250) for the aerial device (115). The geo-fence data (250) includes geo-fence boundaries (251) and a cell list (253) of base stations (110) permitted to communicate with the aerial device (115). Each base station (110) of the cell list (253) is within the geo-fence boundaries (251). The processor (405) further communicates the geo-fence data (250).
Claims
1. A method comprising: registering, by use of a processor, an aerial device at an aerial server; calculating geo-fence data for the aerial device, the geo-fence data comprising geo-fence boundaries and a cell list of base stations permitted to communicate with the aerial device, wherein each base station of the cell list is within the geo-fence boundaries; and communicating the geo-fence data to a base station.
2. The method of claim 1, the method further comprising: receiving an aerial device certification request from the base station for the aerial device; determining whether the aerial device is certified; and in response to determining the aerial device is certified, communicating an aerial device certification confirmation to the base station.
3. The method of claim 1, the method further comprising receiving flight path data from the aerial device via the base station, wherein the flight path data describes the flight path of the aerial device and the geo-fence data is calculated to comprise the flight path.
4. The method of claim 3, wherein the flight path data comprises at least one of location points, a planned velocity, location point times, and a flight path plan.
5. A method comprising: identifying, by use of a processor, an aerial device; and receiving geo-fence data for the aerial device from the aerial server, the geo-fence data comprising geo-fence boundaries and a cell list of base stations permitted to communicate with the aerial device, wherein each base station of the cell list is within the geo-fence boundaries.
6. The method of claim 5, the method further comprising communicating the geo-fence data to the aerial device.
7. The method of claim 5, the method further comprising: communicating measurement data to the aerial device from a base station, the measurement data indicating base stations that are both in the cell list and are one of the base station and a neighbor base station to the base station; and receiving a measurement report from the aerial device of measurements to only the base stations in the measurement data.
8. The method of claim 5, the method further comprising: communicating an aerial device certification request for the aerial device to the aerial server; in response to receiving an aerial device certification confirmation for the aerial device, requesting flight path data from the aerial device using the aerial device certification confirmation.
9. The method of claim 8, wherein the flight path data request comprises a report periodicity configuration, a location information granularity requirement for planned flying path, a planned velocity, and an associated location information planned time.
10. The method of claim 5, the method further comprising: selecting a candidate target base station; determining whether the candidate target base station is the cell list; and in response to the candidate target base station being in the cell list, communicating a handover request to the candidate target base station.
11. The method of claim 10, the method further comprising: performing access control for the candidate target base station; validating the aerial device at the candidate target base station; requesting the geo-fencing data for the aerial device from a source base station; and receiving the geo-fencing data at the candidate target base station.
12. A method comprising: accessing, by use of a processor, a base station from an aerial device; and receiving geo-fence data, the geo-fence data comprising geo-fence boundaries and a cell list of base stations the aerial device is permitted to communicate with, wherein all base stations of the cell list are within the geo-fence boundaries.
13. The method of claim 12, wherein the aerial device only communicates with the base stations of the cell list.
14. The method of claim 12, the method further comprising communicating flight path data to the base station.
15. The method of claim 14, wherein the flight path data is communicated to the base station in response to receiving a flight path data request that comprises at least one of a report periodicity configuration, a location information granularity requirement for the flight path data, and an associated planned time for location information.
16. The method of claim 14, wherein the flight path data is communicated to the base station in response to receiving an aerial device certification from the base station.
17. The method of claim 14, wherein the aerial device indicates that the flight path data is available in a Radio Resource Control (RRC) setup procedure.
18. The method of claim 14, the flight path data comprises at least one of location points, a planned velocity, location point times, and a flight path plan.
19. The method of claim 14, the method further comprising communicating updated flight path data in response to a change in a flight path.
20. The method of claim 12, the method further comprising: receiving measurement data from the base station, the measurement data indicating base stations that are both in the cell list and are one of the base station and a neighbor base station to the base station; measuring the base stations of the measurement data; and communicating a measurement report based only on measurements to the base stations of the measurement data.
21. (canceled)
22. (canceled)
23. (canceled)
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] A more particular description of the embodiments briefly described above will be rendered by reference to specific embodiments that are illustrated in the appended drawings. Understanding that these drawings depict only some embodiments and are not therefore to be considered to be limiting of scope, the embodiments will be described and explained with additional specificity and detail through the use of the accompanying drawings, in which:
[0006]
[0007]
[0008]
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
DETAILED DESCRIPTION
[0030] As will be appreciated by one skilled in the art, aspects of the embodiments may be embodied as a system, method or program product. Accordingly, embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a circuit, module or system. Furthermore, embodiments may take the form of a program product embodied in one or more computer readable storage devices storing machine readable code, computer readable code, and/or program code, referred hereafter as code. The storage devices may be tangible, non-transitory, and/or non-transmission. The storage devices may not embody signals. In a certain embodiment, the storage devices only employ signals for accessing code.
[0031] Many of the functional units described in this specification have been labeled as modules, in order to more particularly emphasize their implementation independence. For example, a module may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.
[0032] Modules may also be implemented in code and/or software for execution by various types of processors. An identified module of code may, for instance, comprise one or more physical or logical blocks of executable code which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.
[0033] Indeed, a module of code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within modules, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different computer readable storage devices.
[0034] Where a module or portions of a module are implemented in software, the software portions are stored on one or more computer readable storage devices.
[0035] Any combination of one or more computer readable medium may be utilized. The computer readable medium may be a computer readable storage medium. The computer readable storage medium may be a storage device storing the code. The storage device may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, holographic, micromechanical, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing.
[0036] More specific examples (a non-exhaustive list) of the storage device would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
[0037] Code for carrying out operations for embodiments may be written in any combination of one or more programming languages including an object oriented programming language such as Python, Ruby, Java, Smalltalk, C++, or the like, and conventional procedural programming languages, such as the C programming language, or the like, and/or machine languages such as assembly languages. The 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 or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including 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).
[0038] Reference throughout this specification to one embodiment, an embodiment, or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, appearances of the phrases in one embodiment, in an embodiment, and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment, but mean one or more but not all embodiments unless expressly specified otherwise. The terms including, comprising, having, and variations thereof mean including but not limited to, unless expressly specified otherwise. An enumerated listing of items does not imply that any or all of the items are mutually exclusive, unless expressly specified otherwise. The terms a, an, and the also refer to one or more unless expressly specified otherwise.
[0039] Furthermore, the described features, structures, or characteristics of the embodiments may be combined in any suitable manner. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of embodiments. One skilled in the relevant art will recognize, however, that embodiments may be practiced without one or more of the specific details, or with other methods, components, materials, and so forth. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of an embodiment.
[0040] Aspects of the embodiments are described below with reference to schematic flowchart diagrams and/or schematic block diagrams of methods, apparatuses, systems, and program products according to embodiments. It will be understood that each block of the schematic flowchart diagrams and/or schematic block diagrams, and combinations of blocks in the schematic flowchart diagrams and/or schematic block diagrams, can be implemented by code. This code 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 schematic flowchart diagrams and/or schematic block diagrams block or blocks.
[0041] The code may also be stored in a storage device that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the storage device produce an article of manufacture including instructions which implement the function/act specified in the schematic flowchart diagrams and/or schematic block diagrams block or blocks.
[0042] The code may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the code which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0043] The schematic flowchart diagrams and/or schematic block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of apparatuses, systems, methods and program products according to various embodiments. In this regard, each block in the schematic flowchart diagrams and/or schematic block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions of the code for implementing the specified logical function(s).
[0044] It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the Figures. 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 involved. Other steps and methods may be conceived that are equivalent in function, logic, or effect to one or more blocks, or portions thereof, of the illustrated Figures.
[0045] Although various arrow types and line types may be employed in the flowchart and/or block diagrams, they are understood not to limit the scope of the corresponding embodiments. Indeed, some arrows or other connectors may be used to indicate only the logical flow of the depicted embodiment. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of the depicted embodiment. It will also be noted that each block of the block diagrams and/or flowchart diagrams, and combinations of blocks in the block diagrams and/or flowchart diagrams, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and code.
[0046] The description of elements in each figure may refer to elements of proceeding figures. Like numbers refer to like elements in all figures, including alternate embodiments of like elements.
[0047]
[0048] The aerial device 115 may be a drone, an autonomous aerial vehicle, a manned vehicle, and the like. The aerial device 115 may employ the mobile telephone network for some or all communication with the aerial device 115 over the area covered by the mobile telephone network. The area covered by the mobile telephone network may be significantly larger than is possible using direct wireless communication between a controller and the aerial device 115.
[0049] Each base station 110 may communicate with mobile devices such as a mobile telephone within a cell. Base stations 110 may also communicate wirelessly with the aerial device 115. In the depicted embodiment, a source base station 110a and a target base station 110b are shown. A plurality of cells may form the mobile telephone network, as is described hereafter. The aerial server 105 may coordinate communications with the aerial device 115.
[0050] Because the aerial device 115 is typically elevated above the ground, and during some procedures such as measuring base stations 110, the aerial device 115 may be capable of communicating with more base stations 110 than mobile devices can communicate with. If the aerial device 115 communicates with the base stations 110 using the same processes used by a mobile device when measuring base stations 110, the aerial device 115 may interact with significantly more base stations 110 and/or cells.
[0051] The embodiments register the aerial device 115 and calculate geo-fence data for the aerial device. The geo-fence data may be used to reduce and/or manage the flight area of the aerial device 115. In addition, the geo-fence data may be used to decrease the number of base stations 110 that are measured by the aerial device 115.
[0052]
[0053] The location 205 may specify a current position of the aerial device 115. The current position may include an address, two-dimensional coordinates, and/or three-dimensional coordinates. In one embodiment, the location 205 is recorded as a vector that expresses a motion at the current position.
[0054] The planned velocity 207 may indicate the planned velocity profile for the aerial device 115. In one embodiment, the planned velocity 207 is a scalar number. Alternatively, the planned velocity 207 may be a vector that indicates the planned velocity at a plurality of times. The location measurement time 215 may indicate when the location 205 is measured.
[0055] The flight path plan 217 may indicate the flight path of the aerial device 115. The flight path plan 217 may specify one or more path vectors. The path vectors may be linked to form a contiguous path. Alternatively, the path vectors may indicate planned paths, with the aerial device 115 moving without a plan between the path vectors. The path vectors may have a granularity in the range of 1-5 meters (m). Alternatively, the path vectors may have a granularity in the range of 5-50 m.
[0056] In a certain embodiment, the flight path plan 217 indicates an area in which the aerial device 115 will operate, without specifying path vectors where the aerial device 115 will be within the area.
[0057]
[0058]
[0059] The geo-fence boundaries 251 may describe a two-dimensional area and/or a three-dimensional volume. The aerial device 115 may be restricted to communicating with base stations 110 and/or cells within the geo-fence boundaries 251. In addition, the aerial device 115 may be restricted to navigating within the geo-fence boundaries 251.
[0060] The cell list 253 comprises identifiers for base stations 110 and/or cells permitted to communicate with the aerial device 115. Each base station 110 and/or corresponding cell of the cell list 253 may be within the geo-fence boundaries 251.
[0061]
[0062]
[0063] The handover data 271 may describe the aerial device 115. The handover data may further indicate that the target base station 110b should take over communications with the aerial device 115.
[0064]
[0065] The aerial device certification 283 may include one or more credentials of the aerial device 115 and/or the aerial server 105. The credentials may validate a base station 110 to the aerial device 115. In addition, the credentials may validate the aerial device 115 to the base station 110.
[0066]
[0067] The registration request 291 may identify an aerial device 115. The aerial device 115 may self identify with a unique identifier. Alternatively, the aerial device 115 may be assigned an identifier by a base station 110.
[0068] The registration data 293 may identify the aerial device 115 within the system 100. The registration data 293 may include an identifier for the aerial device 115, a log of interactions with the aerial device 115, and the like.
[0069] The registration confirmation 295 may confirm that the aerial device 115 is registered by the aerial server 105. In one embodiment, the registration confirmation 295 includes an identifier and/or index for the aerial device 115 that may be used to access the registration data 293.
[0070]
[0071] The report periodicity configuration 361 may specify a report time interval or range of report time intervals for reports from the aerial device 115. For example, the report time interval may be in the range of 3 to 10 seconds.
[0072] The location information granularity requirement 363 may specify a granularity for reported locations points from the aerial device 115. For example, planned flight path 330 of the aerial device 115 may be reported as a series of geography location points, and these location points can have an inter location point granularity such as 50 m, 100 m, and the like. With larger granularities, the reported location points from the aerial device 115 will be fewer, reducing the signaling bandwidth and accuracy for the reported flight path. With smaller granularities, the reported location points from the aerial device 115 will be more frequent and consume more signaling, but also be more accurate for the reported flight path.
[0073] The location information planned time 365 may specify specific resource blocks and/or times for reports from the aerial device 115. The location information planned time 365 may be associated with the planned velocity 207.
[0074]
[0075] In one embodiment, the aerial server 105 communicates a flight path data request 310 to the aerial device 115. The flight path data request 310 may be communicated through a base station 110. The aerial device 115 may communicate the flight path data 200 to the aerial server 105. The flight path data 200 may be communicated through a base station 110. In addition, the flight path data 200 may be communicated in response to the flight path data request 310. Alternatively, the flight path data 200 may be communicated without the flight path data request 310.
[0076] The aerial server 105 may perform a geo-fence calculation 335. The geo-fence calculation 335 may calculate the geo-fence data 250. The aerial server 105 may communicate the geo-fence data 250 to a base station 110 such as the source base station 110a.
[0077] A base station 110 such as the source base station 110a may communicate the measurement data 260 to the aerial device 115. The aerial device 115 may measure the base stations 110 included in the measurement cell list 255 and communicate cell measurements 221 in a measurement report 220 to the base station 110.
[0078] In one embodiment, the source base station 110a communicates a handover request 270 to the target base station 110b. The target base station 110b may perform admission control 315 in response to the handover request 270. The admission control 315 may admit the aerial device 115 to the cell of the target base station 110b.
[0079] In one embodiment, a base station 110 such as the target base station 110b communicates an aerial device certification request 230 to the aerial server 105. The aerial server 105 may determine whether the aerial device 115 is certified. In addition, the aerial server 105 may communicate an aerial device certification confirmation 280 to the base station 110.
[0080] The target base station 110b may communicate a handover request acknowledgement 295 to the source base station 110a to complete the handover of the aerial device 115. The aerial device 115 may perform an access to the target base station 320. In addition, the source base station 110a, the target base station 110b, and the aerial server 105 may perform a path switch 325. The aerial device 115 may release the context of the source base station 110a and communicate through the target base station 110b.
[0081]
[0082]
[0083]
[0084]
[0085]
[0086]
[0087]
[0088]
[0089]
[0090] The method 500 starts, and in one embodiment, the processor 405 receives 505 a registration request 291 for an aerial device 115 from a base station 110. The registration request 291 may identify the aerial device 115. For example, the registration request 291 may include an identifier of the aerial device 115. Alternatively, the registration request 291 may include an identifier generated by the base station 110 for the aerial device 115.
[0091] The processor 405 may register 510 the aerial device 115 at the aerial server 105. In one embodiment, the processor 405 creates the registration data 293 for the aerial device 115.
[0092] In one embodiment, the processor 405 requests 515 flight path data 200 from the aerial device 115. The processor 405 may communicate a flight path data request 310 to the aerial device 115 to request the flight path data 200.
[0093] The processor 405 may receive 520 the flight path data 200 from the aerial device 115. In a certain embodiment, the flight path data 200 is received 520 in response to requesting 515 the flight path data 200. Alternatively, the flight path data 200 may be received without a request 515.
[0094] The processor 405 may calculate 525 the geo-fence data 250 for the aerial device 115. The geo-fence data 250 may comprise the geo-fence boundaries 251 and the cell list 253 of base stations 110 permitted to communicate with the aerial device 115. Each base station 110 of the cell list 253 may be within the geo-fence boundaries 251. In an alternate embodiment, each cell 305 of the cell list 253 may be within the geo-fence boundaries 251. In a certain embodiment, each cell 305 of the cell list 253 is within a specified guard band distance of the geo-fence boundaries 251.
[0095] The processor 405 may communicate 530 the geo-fence data 250 to the base station 110 and the method 500 ends. The method 500 registers the aerial device 115 and calculates the geo-fence data 250. As a result, the aerial device 115 is enabled to operate within the system 100.
[0096]
[0097] The method 600 starts, and in one embodiment, the processor 405 identifies 605 an aerial device 115. The processor 405 may identify 605 the aerial device 115 in response to the aerial device 115 accessing the base station 110. The aerial device 115 may inform the based station 110 that the aerial device 115 has flight path data 200. The aerial device 115 may indicate that the flight path data 200 is available in a Radio Resource Control (RRC) setup procedure. In one embodiment, a RRCConnectionSetupComplete message is communicated by the aerial device 115 to indicate that the flight path data 200 is available.
[0098] The processor 405 may request 610 that the aerial server 105 register the aerial device 115 as described for
[0099] The processor 405 may further receive 615 a registration confirmation 295. The registration confirmation 295 may be received in response to the aerial server 105 registering the aerial device 115 and/or creating the registration data 293.
[0100] The processor 405 may request 620 the flight path data 200 from the aerial device 115. In one embodiment, the processor 405 communicates a flight path data request 310 from the aerial server 105 to the aerial device 115. In addition, the processor 405 may communicate 625 the flight path data 200 from the aerial device 115 to the aerial server 105.
[0101] The processor 405 may receive 630 the geo-fence data 250 from the aerial server 105. The geo-fence data 250 may be received 630 in response to communicating 625 the flight path data 200 to the aerial server 05.
[0102] The processor 405 may determine 635 the measurement data 260 from the geo-fence data 250. In one embodiment, the base stations 110 and/or cells 305 of the cell list 253 that are also one of the base station 110 or base station cell 305 in communication with the aerial device 115 and a neighbor base station 110 or base station cell 305 corresponding to the base station 110 are determined 635 to be included in the measurement data 260.
[0103] The processor 405 may communicate 640 the measurement data 260 to the aerial device 115. In addition, the processor 405 may receive 645 the measurement report 220 from the aerial device 115. In one embodiment, the processor 405 communicates 650 the geo-fence data 250 to the aerial device 115 and the method 600 ends. The aerial device 115 may employ the geo-fence data 250 as will be described hereafter in
[0104]
[0105] The method 700 starts, and in one embodiment, the processor 405 accesses 705 a base station 110. In one embodiment, the processor 405 indicates that the flight path data 200 is available in an RRC setup procedure when accessing 705 the base station 110.
[0106] The processor 405 may further receive 710 the measurement data 260 from the base station 110. The measurement data 260 may be received 710 in response to accessing 705 the base station 110. The processor 405 may further measure 715 the base stations 110 indicated by the measurement data 260. For example, the processor 405 may measure signal strength, available bandwidth, and the like.
[0107] In one embodiment, the processor 405 generates the measurement report 220 from the measurements received from the base stations 110. The measurement report 220 may be based only on measurements to the base stations 110 and/or cells 305 indicated by the measurement data 260. The processor 405 may communicate 720 the measurement report 220 to the base station 110.
[0108] The processor 405 may receive 725 the flight path data request 310 via the base station 110. The flight path data request 310 may be initiated by the aerial server 105. In one embodiment, the flight path data request 310 includes the aerial device certification 283. The aerial device certification 283 may validate the flight path data request 310.
[0109] The processor 405 may communicate 730 the flight path data 200 to the aerial server 105 via the base station 110. The flight path data 200 may be communicated 730 in response to the flight path data request 310. In addition, the flight path data 200 may be communicated 730 in response to validating the flight path data request 310. In one embodiment, the processor 405 communicates 730 updated flight path data 200 in response to a change in a flight path 330.
[0110] The processor 405 may receive 735 the geo-fence data 250. The geo-fence data 250 may be communicated from the aerial server 105 via the base station 110. The processor 405 may communicate 740 with the base stations 110 of the various cells 305 based on the geo-fence data 250. In one embodiment, the processor 405 only communicates with the base stations 110 and/or cells 305 of the cell list 253. All the base stations 110 of the cell list 253 may be within the geo-fence boundaries 251 of the geo-fence data 250.
[0111] In one embodiment, the processor 405 navigates 745 the aerial device 115 within the geo-fence boundaries 251 and the method 700 ends. As a result, the aerial device 115 may be restricted to specified areas by the geo-fence boundaries 251.
[0112]
[0113] The method 800 starts, and in one embodiment, the processor 405 receives 805 the aerial device certification request 230 from the base station 110 for the aerial device 115. The processor 405 may further determine 810 whether the aerial device 115 is certified. In one embodiment, the processor 405 indexes an identifier for the aerial device 115 to a record in a database to determine 810 the aerial device 115 is certified. Alternatively, the processor 405 may decode a specified key from the identifier for the aerial device 115 to determine 810 the aerial device 115 is certified.
[0114] If the processor 405 determines 810 that the aerial device 115 is not certified, the method 800 ends without certifying the aerial device. 115. In one embodiment, a base station 110 will not communicate with the aerial device 115 if the aerial device 115 is not certified.
[0115] If the aerial device 115 is certified, the processor 405 may communicate the aerial device certification confirmation 280 to the base station 110. The base station 110 may communicate with the aerial device 115 in response to receiving the aerial device certification confirmation 280. In one embodiment, the base station 110 requests 820 the flight path data 200 from the aerial device 115 in response to receiving the aerial device certification confirmation 280 and the method 800 ends. The processor 405 may communicate the flight path data request 310 to request 820 the flight path data 200.
[0116]
[0117] The method 900 starts, and in one embodiment, the processor 405 of the source base station 110a selects 805 a candidate target base station 110b. The processor 405 may further determine 810 whether the candidate target base station 110b and/or the cell 305 corresponding to the candidate target base station 110b is in the cell list 253. If the candidate target base station 110b is not in the cell list 253, the processor 405 selects 805 another candidate target base station 110b.
[0118] If the candidate target base station 110b is in the cell list 253, the processor 405 may communicate 915 the handover request 270 to the candidate target base station 110b. The processor 405 of the candidate target base station 110b may perform admission control 310 for the candidate target base station 110b.
[0119] The processor 405 may validate 925 the aerial device 115 at the candidate target base station 110b. In addition, the processor 405 of the candidate target base station 110b may request 930 the geo-fencing data 250 for the aerial device 115 from the source base station 110a. The processor 405 the candidate target base station 110b may receive 935 the geo-fencing data 250. The processor 405 of the candidate target base station 110b may further receive 940 the handover of the aerial device 115, completing the handover, and the method 900 ends.
[0120]
[0121] The method 950 starts, and in one embodiment, the processor 405 receives 955 a registration request 291 for an aerial device 115 from a base station 110. The registration request 291 may identify the aerial device 115. For example, the registration request 291 may include an identifier of the aerial device 115. Alternatively, the registration request 291 may include an identifier generated by the base station 110 for the aerial device 115.
[0122] The processor 405 may register 960 the aerial device 115 at the aerial server 105. In one embodiment, the processor 405 creates the registration data 293 for the aerial device 115.
[0123] The processor 405 may calculate 965 the geo-fence data 250 for the aerial device 115. The geo-fence data 250 may comprise the geo-fence boundaries 251 and the cell list 253 of base stations 110 permitted to communicate with the aerial device 115. Each base station 110 of the cell list 253 may be within the geo-fence boundaries 251. In an alternate embodiment, each cell 305 of the cell list 253 may be within the geo-fence boundaries 251. In a certain embodiment, each cell 305 of the cell list 253 is within a specified guard band distance of the geo-fence boundaries 251.
[0124] The processor 405 may communicate 970 the geo-fence data 250 to the base station 110 and the method 950 ends. The method 950 registers the aerial device 115 and calculates the geo-fence data 250 without the flight path data 200. As a result, the aerial device 115 is enabled to operate within the system 100. In addition, the aerial device 115 may be restricted to an area of navigation and/or restricted in communicating with base stations 110, even if the aerial device 115 does not provide flight path data 200.
[0125] The embodiments calculate and disseminate the geo-fence data 250 for the aerial device 115. The geo-fence data 250 may employed to limit communications of the aerial device 115 with some base stations 110, increasing the efficiency of the system 110. In addition, the geo-fence data 250 may be used to limit the flight path 330 of the aerial device 115.
[0126] Embodiments may be practiced in other specific forms. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.