Patent Description:
The use of unmanned aerial vehicles (UAVs) has increased in recent years. UAVs are used for many applications by entities such as the military, law enforcement, and the like, and by individuals, such as UAV enthusiasts. Unlike pilots of manned aircraft, UAVs are unmanned and the controllers of the UAVs are not located inside of the aircraft that is being controlled. Controller inputs can be transmitted to UAVs in flight to control the flight path of the UAV via ground based systems. The flight path of the UAV may be tracked via the ground based systems, and the UAV may transmit data back to the controller. However, a controller on the ground may not have the same situational awareness about the UAV and its surroundings as a pilot situated in an aircraft. Controllers of UAVs may benefit from information presented in a way that gives them greater awareness of the UAV and its surroundings.

Cited document <CIT> discloses an unmanned aerial system (UAS) position reporting system includes an air traffic control reporting system (ATC-RS) coupled with a ground control station (GCS) of an UAS where the ATC-RS includes an automatic dependent surveillance broadcast (ADS-B) and a traffic information services broadcast (TIS-B) transceiver and one or more telecommunications modems. The ATC-RS may receive position data of the UAS in an airspace from the GCS and communicates the position of the UAS to a civilian air traffic control center (ATC) or to a military command and control (C2) communication center. The ATC-RS may display the position of the UAS on one or more display screens. Implementations of related methods may include receiving position data for a UAS within a radio frequency line of sight (RFLOS) region and/or a beacon line of sight region with an ATC-RS and transmitting the position data to an ATC and one or more aircraft.

Cited document <CIT> discloses a method of remotely controlling an aerial vehicle within an environment, including providing a control station in communication with the aerial vehicle, providing a map of the environment, receiving target world coordinates for the aerial vehicle within the environment, determining a desired velocity vector to direct the aerial vehicle to the target world coordinates at a speed proportional to the distance between the aerial vehicle and the target world coordinates, and directing the aerial vehicle along the desired velocity vector until the aerial vehicle reaches the target world coordinates.

Illustrative examples of the present disclosure include, without limitation, methods, structures, and systems.

In one aspect, the present disclosure relates to a method of displaying information about an unmanned aerial vehicle as defined in independent claim <NUM>. Further examples of this method form the subject matter of dependent claims <NUM>-<NUM>.

In a further aspect, the disclosure relates to a system configured to display information pertaining to an unmanned aerial vehicle as defined in independent claim <NUM>. Further examples of this system form the subject matter of dependent claims <NUM>-<NUM>.

In yet another aspect, the present disclosure relates to a non-transitory computer-readable storage medium having stored thereon computer-readable instructions as defined in independent claim <NUM>.

Throughout the drawings, reference numbers may be re-used to indicate correspondence between referenced elements. The drawings are provided to illustrate examples described herein and are not intended to limit the scope of the disclosure.

Non-claimed examples in this disclosure may be described in the context of aircraft manufacturing and service method <NUM> as shown in <FIG> and an aircraft <NUM> as shown in <FIG>. During pre-production, aircraft manufacturing and service method <NUM> may include specification and design <NUM> of aircraft <NUM> and material procurement <NUM>.

During production, component and subassembly manufacturing <NUM> and system integration <NUM> of aircraft <NUM> takes place. Thereafter, aircraft <NUM> may go through certification and delivery <NUM> in order to be placed in service <NUM>. While in service by a customer, aircraft <NUM> is scheduled for routine maintenance and service <NUM> (which may also include modification, reconfiguration, refurbishment, and so on).

Each of the processes of aircraft manufacturing and service method <NUM> may be performed or carried out by a system integrator, a third party, and/or an operator (e.g., a customer). For the purposes of this description, a system integrator may include, without limitation, any number of aircraft manufacturers and major-system subcontractors; a third party may include, for example, without limitation, any number of venders, subcontractors, and suppliers; and an operator may be an airline, leasing company, military entity, service organization, and so on.

As shown in <FIG>, aircraft <NUM> produced by aircraft manufacturing and service method <NUM> may include airframe <NUM> with a plurality of systems <NUM> and interior <NUM>. Examples of systems <NUM> include one or more of propulsion system <NUM>, electrical system <NUM>, hydraulic system <NUM>, and environmental system <NUM>. Any number of other systems may be included in this example. Although an aerospace example is shown, the principles of the disclosure may be applied to other industries, such as the automotive industry.

Apparatus and methods embodied herein may be employed during any one or more of the stages of aircraft manufacturing and service method <NUM>. For example, without limitation, components or subassemblies corresponding to component and subassembly manufacturing <NUM> may be fabricated or manufactured in a manner similar to components or subassemblies produced while aircraft <NUM> is in service.

<FIG> illustrates non-claimed systems or operating environments, denoted generally at <NUM>, that provide flight plans for UAVs while routing around obstacles having spatial and temporal dimensions. These systems <NUM> may include one or more flight planning systems <NUM>. <FIG> illustrates several examples of platforms that may host the flight planning system <NUM>. These examples may include one or more server-based systems <NUM>, one or more portable computing systems <NUM> (whether characterized as a laptop, notebook, tablet, or other type of mobile computing system), and/or one or more desktop computing systems <NUM>. As detailed elsewhere herein, the flight planning system <NUM> may be a ground-based system that performs pre-flight planning and route analysis for the UAVs, or may be a vehicle-based system that is housed within the UAVs themselves.

Implementations of this description may include other types of platforms as well, with <FIG> providing non-limiting examples. For example, the description herein contemplates other platforms for implementing the flight planning systems, including but not limited to wireless personal digital assistants, smartphones, or the like. The graphical elements used in <FIG> to depict various components are chosen only to facilitate illustration, and not to limit possible implementations of the description herein.

Turning to the flight planning system <NUM> in more detail, it may include one or more processors <NUM>, which may have a particular type or architecture, chosen as appropriate for particular implementations. The processors <NUM> may couple to one or more bus systems <NUM> that are chosen for compatibility with the processors <NUM>.

The flight planning systems <NUM> may include one or more instances of computer-readable storage media <NUM>, which couple to the bus systems <NUM>. The bus systems may enable the processors <NUM> to read code and/or data to/from the computer-readable storage media <NUM>. The media <NUM> may represent storage elements implemented using any suitable technology, including but not limited to semiconductors, magnetic materials, optics, or the like. The media <NUM> may include memory components, whether classified as RAM, ROM, flash, or other types, and may also represent hard disk drives.

The storage media <NUM> may include one or more modules <NUM> of instructions that, when loaded into the processor <NUM> and executed, cause the server <NUM> to provide flight plan computation services for a variety of UAVs <NUM>. These modules may implement the various algorithms and models described and illustrated herein.

The UAVs <NUM> may be of any convenient size and/or type as appropriate for different applications. In different scenarios, the UAVs may range from relatively small drones to relatively large transport aircraft. Accordingly, the graphical illustration of the UAV <NUM> as shown in <FIG> is representative only, and is not drawn to scale.

The flight plan services <NUM> may generate respective flight plan solutions <NUM> for the UAVs <NUM> based on inputs <NUM>, with flight planning personnel <NUM> and/or one or more databases <NUM> providing inputs <NUM>.

Assuming that the flight plan services <NUM> define one or more solutions <NUM>, the flight planning system <NUM> may load the solutions into the UAVs <NUM>, as represented by the arrow connecting blocks <NUM> and <NUM> in <FIG>. In addition, the flight planning system <NUM> may also provide the solutions <NUM> to the flight planner <NUM> and/or the databases <NUM>, as denoted by the arrow 320A.

One difficulty with controlling UAVs is that a controller of a UAV is located remotely from the UAV and may not have the same situational awareness that a pilot may have when located inside of an aircraft during flight. Among a number of issues, the controller of a UAV may not have the ability to appreciate terrain surrounding the UAV. If the controller of the UAV cannot see the geographic area surrounding the UAV, the controller may inadvertently command the UAV to enter a dangerous area and/or crash into terrain.

One way to address difficulties with terrain and terrain awareness, which does not form part of the claimed invention, is to provide greater real-time visibility of the unsafe elevations within a defined area around the location of the UAV. For example, a layer may be overlaid on the controller's display showing one or more areas indicative of an unsafe elevation. Such a layer may be referred to herein as "terrain awareness layer. " In some examples, an unsafe elevation may be depicted using colored areas on the current display showing where the UAV, given the current altitude of the UAV, is within a predefined level above the terrain. For example, the display may provide a first overlay showing all areas where the UAV will be less than <NUM> feet above terrain at the UAV's current altitude. The display may also indicate a second overlay showing all areas where the UAV will be less than a second altitude above terrain at the UAV's current altitude (for example, <NUM> feet above terrain). With such an overlay, the operator of the UAV may quickly ascertain which areas are unsafe with respect to distance above terrain if the UAV maintains the current altitude. This may allow the operator to avoid flying the UAV into the highlighted areas, or change course if the current flight path indicates that the UAV will fly into a highlighted area.

In one example, the terrain awareness layer may be automatically rendered on the UAV controller's display if it is determined that, within some predetermined time period, the UAV will enter an "unsafe" area (i.e., an area where the UAV will be less than a predefined altitude above terrain at the UAV's current altitude). In various examples, the predefined altitude may be automatically set. In other examples, the predefined altitude may be manually set by the operator. In some examples, if it is determined that the UAV will enter an unsafe area, the terrain awareness layer may be configured so that the layer cannot be removed by the operator.

In some examples, the operator may request display of the terrain awareness layer, even if the UAV is not headed toward an unsafe area. In this way, the operator may maintain awareness of the potential unsafe areas even if an unsafe area is not part of the current flight path.

In another example, the terrain awareness layer may be displayed when the operator is engaging the controls to change the current altitude of the UAV. For example, the user controls may include a graphical "sliding" altitude control. When the operator engages the control and moves the control to different altitudes, the terrain awareness layer may automatically change based on the currently selected altitude. In this way the controller can instantly view the unsafe altitudes as the controller considers various UAV altitudes.

The terrain awareness layer may be depicted using various colors or textures to indicate the areas corresponding to different unsafe altitudes. For example, areas that will have <NUM> feet or less clearance above ground at the current UAV altitude may be indicated in red, and areas that will have <NUM> feet or less clearance above ground at the current UAV altitude may be indicated in yellow.

<FIG> depicts an example of a display <NUM> that does not form part of the claimed invention, but that can assist a UAV controller to view the terrain for the UAV flight and real-time information about the terrain with respect ot the altitude of the UAV.

The display <NUM> depicted in <FIG> may also include real-time information about the flight. The display <NUM> includes an indication of the aircraft position <NUM> during the flight. In the particular example of <FIG>, a first region <NUM> may indicate one or more areas where the distance between the current altitude of the aircraft <NUM> is less than a first predefined threshold. A second region <NUM> may indicate one or more areas where the distance between the current altitude of the aircraft <NUM> is less than a second predefined threshold. A set of user interface controls and indications <NUM> may be provided for requesting adding the first and second regions <NUM> and <NUM> to the current display <NUM>.

Data to develop the terrain awareness layer can be stored locally on a system that is associated with the display <NUM>, such as on a computing device that includes the display <NUM>. The data to develop the terrain awareness layer can also be obtained from a remote system, such as the NASA Shuttle Radar Topography Mission (SRTM), the USGS Global Multi-resolution Terrain Elevation Data (GMTED), and the like. In the case where data is not available to generate the terrain awareness layer, the display <NUM> can display a warning that terrain data is not available. In this way, if the display <NUM> can indicate to the operator that the data is not available rather than a false indication that altitudes are safe.

The display <NUM> can be part of a user interface that allows a controller to interact with the display <NUM>. Such a user interface may be used to adjust the display and/or the programming of the UAV. For example, movement of some controls associated with the display <NUM> can effect a change in the actual altitude of the UAV as it is flying.

In an embodiment of the invention, an RF link analysis layer is provided that indicates a real-time analysis of RF links in the current UAV flight scenario. Such an RF link analysis layer is useful to provide the operator of the UAV with information to make real-time mission planning and execution decisions, without the need to use rule-of-thumb estimates of link performance. UAVs typically operate with one or more ground antennae that may be directional or omnidirectional and communicatively linked to downlink graphics data to the ground antennae as well as downlink/uplink telemetry and command data. It is therefore useful for the operator to avoid not only terrain hazards, but also loss of RF contact with the UAV.

In one example, a UAV operator may be provided real-time RF coverage of paired RF transmitters and receivers. The information provided in the RF link analysis layer may include information such as antenna pattern, gain, type, and power capabilities. The RF link analysis layer provides the operator the ability to visually determine how strong an RF signal is for a particular area given a UAV's position.

In one example, RF link analysis layer may include information determined by comparing the predicted signal strength of RF links of a given area to the signal strength corresponding to lost communication and determining if that area will result in lost communication. In some examples, the user may request an RF link analysis layer in areas outside of the planned flight path (or without the UAV) so that the operator can determine the effects of changing the current flight path with regard to RF link strength and propagation patterns.

In an embodiment, colored areas are indicated on the user display overlaid on a current flight map indicating RF link analysis data. In some examples, the data may include signal strength and/or error rate. The data can be updated at a predetermined update rate. The data is also updated based on the flight path of the UAV. For example, the UAV may sufficiently change position where the RF link analysis is changed and the RF link analysis layer may be redrawn.

<FIG> depicts an embodiment of a display <NUM> in accordance with the invention that provides RF link analysis information in real time to a UAV controller.

The display <NUM> depicted in <FIG> also includes real-time information about the flight. The display <NUM> includes an indication of the aircraft position <NUM> during the flight. In the embodiment of <FIG>, fixed size portions <NUM> of the display are color coded to indicate a relative estimated strength of the signal within the fixed size portion <NUM>. The fixed size portion <NUM> is a tile representing a predetermined area represented on the map. A set of user indications <NUM> is provided for identifying the signal strengths depicted in the current display <NUM>.

<FIG> depicts an example of a method <NUM> of displaying information pertaining to an air vehicle which does not form part of the claimed invention. At block <NUM>, information is displayed that is indicative of first portions of a map where a distance between a current altitude of the air vehicle and terrain in the map are within a first threshold. At block <NUM>, information is displayed indicative of second portions of a map where a distance between the current altitude of the air vehicle and terrain in the map are within a second threshold. At block <NUM>, the first and second portions are updated based on a change in the current altitude of the air vehicle.

<FIG> depicts an embodiment of a method <NUM> of displaying information pertaining to an air vehicle which, albeit not falling under the scope of the claims, is useful to understand the invention. At block <NUM>, a map including a projected flight path of an aircraft is displayed. At block <NUM>, location-based information pertaining to radio frequency (RF) status between the aircraft and at least one ground radio is displayed on the map. At block <NUM>, the location-based information pertaining to RF status is updated based on a change in the current position of the air vehicle.

<FIG> and the following discussion are intended to provide a brief general description of a suitable computing environment in which the methods and systems disclosed herein and/or portions thereof may be implemented. For example, the functions of server <NUM>, laptop <NUM>, desktop <NUM>, flight planning system <NUM>, and database <NUM> may be performed by one or more devices that include some or all of the aspects described in regard to <FIG>. Some or all of the devices described in <FIG> that may be used to perform functions of the claimed examples may be configured in other devices and systems such as those described herein. Alternatively, some or all of the devices described in <FIG> may be included in any device, combination of devices, or any system that performs any aspect of a disclosed example.

Although not required, the methods and systems disclosed herein may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer, such as a client workstation, server or personal computer. Such computer-executable instructions may be stored on any type of computer-readable storage device that is not a transient signal per se. Generally, program modules include routines, programs, objects, components, data structures and the like that perform particular tasks or implement particular abstract data types. Moreover, it should be appreciated that the methods and systems disclosed herein and/or portions thereof may be practiced with other computer system configurations, including hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers and the like. The methods and systems disclosed herein may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

<FIG> is a block diagram representing a general purpose computer system in which aspects of the methods and systems disclosed herein and/or portions thereof may be incorporated. As shown, the example general purpose computing system includes computer <NUM> or the like, including processing unit <NUM>, system memory <NUM>, and system bus <NUM> that couples various system components including the system memory to processing unit <NUM>. System bus <NUM> may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. The system memory may include read-only memory (ROM) <NUM> and random access memory (RAM) <NUM>. Basic input/output system <NUM> (BIOS), which may contain the basic routines that help to transfer information between elements within computer <NUM>, such as during start-up, may be stored in ROM <NUM>.

Computer <NUM> may further include hard disk drive <NUM> for reading from and writing to a hard disk (not shown), magnetic disk drive <NUM> for reading from or writing to removable magnetic disk <NUM>, and/or optical disk drive <NUM> for reading from or writing to removable optical disk <NUM> such as a CD-ROM or other optical media. Hard disk drive <NUM>, magnetic disk drive <NUM>, and optical disk drive <NUM> may be connected to system bus <NUM> by hard disk drive interface <NUM>, magnetic disk drive interface <NUM>, and optical drive interface <NUM>, respectively. The drives and their associated computer-readable media provide non-volatile storage of computer-readable instructions, data structures, program modules and other data for computer <NUM>.

Although the example environment described herein employs a hard disk, removable magnetic disk <NUM>, and removable optical disk <NUM>, it should be appreciated that other types of computer-readable media that can store data that is accessible by a computer may also be used in the example operating environment. Such other types of media include, but are not limited to, a magnetic cassette, a flash memory card, a digital video or versatile disk, a Bernoulli cartridge, a random access memory (RAM), a read-only memory (ROM), and the like.

A number of program modules may be stored on hard disk drive <NUM>, magnetic disk <NUM>, optical disk <NUM>, ROM <NUM>, and/or RAM <NUM>, including an operating system <NUM>, one or more application programs <NUM>, other program modules <NUM> and program data <NUM>. A user may enter commands and information into the computer <NUM> through input devices such as a keyboard <NUM> and pointing device <NUM>. Other input devices (not shown) may include a microphone, joystick, game pad, satellite disk, scanner, or the like. These and other input devices are often connected to the processing unit <NUM> through a serial port interface <NUM> that is coupled to the system bus, but may be connected by other interfaces, such as a parallel port, game port, or universal serial bus (USB). A monitor <NUM> or other type of display device may also be connected to the system bus <NUM> via an interface, such as a video adapter <NUM>. In addition to the monitor <NUM>, a computer may include other peripheral output devices (not shown), such as speakers and printers. The example system of <FIG> may also include host adapter <NUM>, Small Computer System Interface (SCSI) bus <NUM>, and external storage device <NUM> that may be connected to the SCSI bus <NUM>.

The computer <NUM> may operate in a networked environment using logical and/or physical connections to one or more remote computers or devices, such as remote computer <NUM>, that may represent any of server <NUM>, laptop <NUM>, desktop <NUM>, flight planning system <NUM>, and database <NUM>. Each of server <NUM>, laptop <NUM>, desktop <NUM>, flight planning system <NUM>, and database <NUM> may be any device as described herein capable of performing the determination and display of zero fuel time data and return to base time data. Remote computer <NUM> may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and may include many or all of the elements described above relative to the computer <NUM>, although only a memory storage device <NUM> has been illustrated in <FIG>. The logical connections depicted in <FIG> may include local area network (LAN) <NUM> and wide area network (WAN) <NUM>. Such networking environments are commonplace in police and military facilities, offices, enterprise-wide computer networks, intranets, and the Internet.

When used in a LAN networking environment, computer <NUM> may be connected to LAN <NUM> through network interface or adapter <NUM>. When used in a WAN networking environment, computer <NUM> may include modem <NUM> or other means for establishing communications over wide area network <NUM>, such as the Internet. Modem <NUM>, which may be internal or external, may be connected to system bus <NUM> via serial port interface <NUM>. In a networked environment, program modules depicted relative to computer <NUM>, or portions thereof, may be stored in a remote memory storage device. It will be appreciated that the network connections shown are example and other means of establishing a communications link between computers may be used.

Claim 1:
A method (<NUM>) of displaying information about an unmanned aerial vehicle (<NUM>), the method (<NUM>) comprising:
displaying, on a display for being used by a unmanned aerial vehicle controller, a map (<NUM>) including a projected flight path of the unmanned aerial vehicle (<NUM>);
displaying, on the map (<NUM>), location-based information pertaining to radio frequency link status between the unmanned aerial vehicle (<NUM>) and at least one ground radio; and
updating the location-based information pertaining to radio frequency link status based on a change in the current position of the unmanned aerial vehicle (<NUM>),
wherein displaying a map (<NUM>) comprises:
displaying fixed size portions (<NUM>) of the display, each of said fixed size portions (<NUM>) representing a predetermined area on the map (<NUM>), wherein said fixed size portions (<NUM>) are tiles and are color coded to indicate an estimated strength of radio frequency links of the corresponding areas on the map; and
displaying an indication of the unmanned aerial vehicle position (<NUM>) during the flight.