Patent Description:
Typically, aircraft, such as unmanned aerial vehicles (UAVs), rely on external global positioning system (GPS) signals for guidance and navigation. However, in some locations or areas, the GPS signals can sometimes be obscured and/or exhibit a relatively low signal strength. In other words, the GPS signals can be contested. Accordingly, some known guidance systems of aircraft employ differential systems that estimate a positional change based on a known previous position. However, these known guidance systems can be subject to inaccuracies.

<CIT>, in accordance with its abstract, states a multi-UAV anti-GPS-spoofing method in an intelligent cooperative environment. The method comprises steps of: firstly, recording the GPS signal information of each UAV in a UAV fleet and exchanging information among the UAVs; causing the airborne cooperative control algorithm of each UAV to predict the position of the UAV at the next moment through the fleet GPS information; updating the GPS information by the predicted position and the next moment and determining whether the UAV has potential GPS spoofing; if it is determined that GPS spoofing may be encountered, performing triangulation by using infrared positioning to determine the exact position of the UAV and correcting the GPS signal, otherwise, repeating the above steps until the end of the flight. The method can ignore specific GPS spoofing details and directly detect whether GPS spoofing has occurred based on the cooperative control mechanism, and can handle the situations where multiple UAVs simultaneously suffer GPS spoofing.

<CIT>, in accordance with its abstract, states apparatus, method and storage medium associated with UAV position estimation are disclosed. An UAV may comprise a transmitter-receiver arrangement to transmit and receive communication signals, including receipt of absolute positioning system (APS) signals from one or more APS sensors, and wireless signals from one or more proximately located other UAVs; one or more motors or engines to provide propulsive force for the UAV; and a flight controller coupled to the transmitter-receiver arrangement and the one or more motors or engines to control at least the one or more motors or engines to provide propulsive force to navigate the UAV, based at least in part on the APS and relative positioning signals.

<CIT>), in accordance with its abstract, states methods, systems, and articles of manufacture determine the position of a reference point relative to a vehicle. The reference point includes a transmitter operatively configured to transmit a first waveform and a second waveform having a relationship with the first waveform. The vehicle has a plurality of receivers disposed at a plurality of locations relative to the vehicle. The first waveform is detected by each of the receivers. The second waveform is detected by at least three of the receivers, each of which detects a respective number of cycles of the second waveform between the time the first receiver detects the first waveform and when the first waveform is detected by the respective receiver. The reference point position is calculated using a triangulation technique based on each of the identified number of cycles and each location of the receivers detecting the second waveform.

There is provided therein an apparatus to determine a position of an aircraft, the apparatus comprising: at least three receivers arranged to receive signals from at least three transmitters disposed on a mobile platform, the signals including an aircraft identifier and a transmitter identifier of the mobile platform; a signal direction and distance calculator configured to determine a relative position of the aircraft to a mobile platform based on signals transmitted between the aircraft and a mobile platform by utilizing the different signal strength measurements between the at least three transmitters of the mobile platform and the at least three receivers of the aircraft; and a position calculator configured to calculate the position of the aircraft based on the relative position and a position of the mobile platform.

An aircraft coordination system for coordinating navigation of at least one aircraft of a multi-vehicle network in a contested area not falling within the scope of the claims includes a signal direction and distance calculator to determine a relative position of the at least one aircraft to a mobile platform based on a signal transmitted between the at least one aircraft and the mobile platform, a position calculator to calculate a position of the at least one aircraft based on the relative position and a position of the mobile platform, and a flight director to direct movement of the at least one aircraft based on the position of the at least one aircraft.

There is further provided a method comprising: calculating, by executing instructions with at least one computer processor, a relative position between an aircraft and a mobile platform based on signals transmitted between at least three transmitters disposed on a mobile platform and at least three receivers disposed on the aircraft by utilizing the different signal computer strength measurements between the at least three transmitters the mobile platform and at least three receivers on the aircraft, the signals including an aircraft identifier and a transmitter identifier of the mobile platform; and calculating, by executing instructions with the at least one processor, a position of the aircraft based on the relative position and a position of the mobile platform.

A non-transitory machine readable medium includes instructions, which when executed cause a processor to at least calculate a relative position between an aircraft and a mobile platform based on a signal transmitted between the aircraft and the mobile platform, and calculate a position of the aircraft based on the relative position and a position of the mobile platform.

The figures are not to scale. In general, the same reference numbers will be used throughout the drawing(s) and accompanying written description to refer to the same or like parts. As used herein, unless otherwise stated, the term "above" describes the relationship of two parts relative to Earth. A first part is above a second part, if the second part has at least one part between Earth and the first part.

Unless specifically stated otherwise, descriptors such as "first," "second," "third," etc. are used herein without imputing or otherwise indicating any meaning of priority, physical order, arrangement in a list, and/or ordering in any way, but are merely used as labels and/or arbitrary names to distinguish elements for ease of understanding the disclosed examples. " In such instances, it should be understood that such descriptors are used merely for identifying those elements distinctly that might, for example, otherwise share a same name.

Aircraft guidance with a multi-vehicle network is disclosed. Some areas can have relatively weak global position system (GPS) signals due to weather conditions, obstructions, etc. Further, the GPS signals can be jammed or spoofed. When flying through these contested areas, some known guidance systems of aircraft employ differential systems that estimate a positional change based on a known previous position. However, inaccuracies of these systems can be more significant as a distance from the known previous position increases or as time increases (e.g., due to known previous positions evolving or drift associated with Micro-Electro Mechanical Systems (MEMS) based inertial measurement units). Further, hardware on aircraft relating to processing and/or analysis of GPS signals can fail or malfunction.

Examples disclosed herein enable accurate navigation of an aircraft, such as an unmanned aerial vehicle (UAV), in contested areas with relatively weak or compromised GPS signals by enabling a determination of a position of the aircraft in the absence of valid GPS signals. Further, examples disclosed herein can mitigate a failure corresponding to GPS signal processing and/or GPS signals. Examples disclosed herein utilize at least one mobile platform, which can be implemented as an aircraft or other type of vehicle, to guide movement and/or facilitate guidance of the aircraft. A signal and direction calculator is used to determine a relative position (e.g., a relative position based on three dimensions) between the aircraft and the mobile platform based on a signal transmitted between the aircraft and the mobile platform. A position calculator calculates the position of the aircraft based on the relative position and a known (e.g., measured) position of the mobile platform.

In some examples, a determination of whether the aircraft is in an area with weak, spoofed or compromised GPS signals (i.e., a contested area) is performed via a GPS signal analyzer. In some such examples, the aircraft is toggled to disregard or ignore the GPS signals based on the determination. In some examples, the aircraft and the mobile platform are implemented as UAVs (e.g., identical or similar unmanned aircraft types). In some examples, the relative position is based on direction finding in which a multi-directional antenna and/or direction finding antenna array is utilized in combination with a time-of-flight signal. The relative position includes a three-dimensional spatial vector that may be determined based on measuring signal strengths between the aircraft and the mobile platform. Such implementations utilize at least three sensors (e.g., antennas) on each aircraft to determine spatial information therebetween. In some examples, the mobile platform is a spacecraft (e.g., a satellite) or ground-based vehicle.

In some examples, the aircraft and the mobile platform at least partially define an airborne network (e.g., an airborne guidance network). The airborne network can be implemented across multiple vehicles, for example. In some examples, the movement of the mobile platform is coordinated, via the airborne network, to ensure that the aircraft can be guided through an area with compromised or relatively low signal strength GPS signal areas. Particularly, the mobile platform can be moved closer to the aircraft so that a transmitted signal can be accurately measured therebetween.

As used herein, the term "mobile platform" refers to a moving platform, such as a vehicle, that can be moved and/or propelled in relationship to another vehicle. Accordingly, the term "mobile platform" can refer to an aircraft, a ground-based vehicle, a watercraft, a spacecraft, a submersible, etc. As used herein, the term "relative position" refers to a positional difference (e.g., a vector positional difference) between two objects.

<FIG> illustrates an example aircraft (e.g., an aerial vehicle) <NUM> in which examples disclosed herein can be implemented. The aircraft <NUM> includes a fuselage <NUM>, a propulsion system <NUM>, a control system (e.g., a guidance system) <NUM>, wings <NUM> and an antenna <NUM> (e.g., a direction finding antenna array, a radio direction finder (RDF), etc.). In the illustrated example of <FIG>, the aircraft <NUM> is an unmanned aerial vehicle (UAV). In other examples, however, the aircraft <NUM> may be a manned vehicle. In various examples, the aircraft <NUM> may be piloted by a human or may be an autonomous vehicle with passengers, cargo or other payload. In yet other examples, a rotorcraft (e.g., a quadcopter) can be implemented instead.

In operation, the aircraft <NUM> is directed and/or navigated based on GPS signals received at the aircraft <NUM>. In particular, the GPS signals are utilized by the control system <NUM> to direct movement of the aircraft <NUM>. For example, the control system <NUM> can be controlled and/or directed by a remote command center (e.g., a ground-based command center) based on the aforementioned GPS signals. However, the GPS signals measured at the aircraft <NUM> can have a relatively low signal strength in certain areas or be jammed. Accordingly, in such scenarios, examples disclosed herein can be effective for providing positional data (e.g., geolocation data) to the aircraft <NUM> and/or to guide movement of the aircraft <NUM> in locations (e.g., zones, areas, etc.) in which the GPS signals are weak or compromised (e.g., jammed, spoofed, etc.). Further, examples, disclosed can be mitigate any GPS failures.

<FIG> illustrates an example multi-vehicle network <NUM> in accordance with teachings of this disclosure. In the illustrated example, a GPS source <NUM>, such as a satellite or system of satellites in a global navigation satellite system (GNSS), for example, is shown in combination with the aircraft <NUM> and mobile platforms <NUM> (hereinafter mobile platforms 202a, 202b, 202c, 202d, etc.), which are implemented as aircraft in this and other examples. Further, an airborne network <NUM> is shown. The airborne network <NUM> can be implemented on the aircraft <NUM> and/or the mobile platforms 202a, 202b, 202c, 202d. Particularly, the example airborne network <NUM> may be implemented across multiple aircraft and/or structures. Additionally or alternatively, at least a portion of the airborne network <NUM> is implemented at a transceiver station (e.g., a land-based transceiver station, a water-based transceiver station, a spaced-based transceiver station, etc.).

To direct movement of the aircraft <NUM> when the aircraft <NUM> is receiving valid and sufficiently strong GPS signals from the GPS source <NUM>, the guidance system <NUM> utilizes the GPS signals to direct movement of the aircraft <NUM> and/or the propulsion system <NUM> based on a pre-determined or directed flight path of the aircraft <NUM>. However, the aircraft <NUM> can encounter and/or be moved into areas in which the GPS signals are weak or compromised. Further, systems that process the GPS signals can fail and/or malfunction.

When the GPS signal received at the aircraft <NUM> is contested, weak and/or compromised, the airborne network <NUM> determines a position of the aircraft <NUM> to maintain guidance thereof. In this and other examples, a position (e.g., a known GPS position) of at least one of the mobile platforms 202a, 202b, 202c, 202d is determined and/or measured. Further, a relative position between the aircraft <NUM> and the at least one of the mobile platforms 202a, 202b, 202c, 202d is determined. In turn, a position of the aircraft <NUM> is determined based on the position of the at least one of the mobile platforms 202a, 202b, 202c, 202d and the relative position of the aircraft <NUM> to the at least one of the mobile platforms 202a, 202b, 202c, 202d. In some examples, the aircraft <NUM> determines its position. Additionally or alternatively, the at least one of the mobile platforms 202a, 202b, 202c, 202d determines the position of the aircraft <NUM>.

In some examples, ones of the mobile platforms 202a, 202b, 202c, 202d are aircraft identical to the aircraft <NUM>. In some examples, the airborne network <NUM> includes only two aircraft. In some such examples, each one of the aircraft of the network <NUM> acts as a redundant guidance source for the other when GPS signals are not of requisite signal strength or validity. In some examples, the aircraft <NUM> is one of the mobile platforms 202a, 202b, 202c, 202d. In other words, the designation between aircraft and mobile platform can be arbitrary, in some examples. In some examples, a first one of the mobile platforms 202a, 202b, 202c, 202d guiding or facilitating guidance of the aircraft <NUM> is different from a second one of the mobile platforms 202a, 202b, 202c, 202d that is used for a relative position determination of the aircraft <NUM>.

While the example of <FIG> is shown with multiple aircraft defining the airborne network <NUM>, any appropriate combination of vehicles, manned or unmanned can be implemented instead. While the example of <FIG> depicts five aircraft utilizing and/or defining the airborne network <NUM>, any appropriate number (e.g., two, three, four, ten, twenty, fifty, one hundred, etc.) of aircraft and/or mobile platforms can be implemented instead.

<FIG> is a schematic of an example flight control system <NUM> that can be implemented in examples disclosed herein. In particular, the example flight control system <NUM> can be implemented on the airborne network <NUM>, the aircraft <NUM> and/or the mobile platform <NUM>. In other examples, the flight control system <NUM> is implemented external to the airborne network <NUM>, the aircraft <NUM> and the mobile platform <NUM> (e.g., at a command center facility or external network). The flight control system <NUM> of this and other examples includes a position analyzer <NUM> which, in turn, includes a flight director <NUM>, a position calculator <NUM>, a GPS signal analyzer <NUM> and a signal direction and distance calculator <NUM>. In some other examples, however, the GPS signal analyzer <NUM> is not implemented. In this and other examples, a transceiver <NUM> is communicatively coupled to the position analyzer <NUM> and/or the flight director <NUM>.

To guide movement of the aircraft <NUM> when GPS signals are available and valid, the flight director <NUM> may utilize a determined position of the aircraft <NUM> based on the GPS signals so that the aircraft <NUM> can be moved along a flight path (e.g., a directed flight path, a pre-determined flight path, etc.). In this and other examples, the flight director <NUM> can toggle off utilization of the GPS signals based on a determination that the GPS signals received by the aircraft <NUM> are relatively weak or compromised (e.g., spoofed).

In some examples, including the illustrated example, to determine a position of the aircraft <NUM> in a contested area in which GPS signals are compromised and/or exhibit a relatively low signal strength, the signal direction and distance calculator <NUM> determines a relative position between the aircraft <NUM> and the mobile platform <NUM>. In particular, a direction finding antenna array (e.g., the antenna <NUM>), which may be implemented on the aircraft <NUM> and/or the mobile platform <NUM>, in combination with a time-of-flight signal is implemented to determine the relative position.

A measured signal strength (e.g., a measured RF signal strength) between the aircraft <NUM> and the mobile platform <NUM> is utilized, as will be discussed in greater detail below in connection with <FIG>. The aircraft <NUM> and the mobile platform <NUM> utilize three transmitter-receiver pairs mounted thereto and, thus, three different signal strength measurements between the aircraft <NUM> and the mobile platform <NUM> are obtained. Accordingly, the relative position is determined by the position calculator <NUM> in multiple degrees of freedom. In other words, positional differences, as well as orientational differences (e.g., yaw, spin, etc.), are determined between the aircraft <NUM> and the mobile platform <NUM>. However, any appropriate calculation and/or methodology related to calculating relative positions can be implemented instead.

Regardless of how the relative position is calculated, based on the relative position and a known position of the mobile platform <NUM> (e.g., the mobile platform <NUM> is positioned in an area in which GPS signals have sufficient signal strength and are valid), the position of the aircraft <NUM> is calculated by the position calculator <NUM>. This calculation may be performed based on a vector sum of the known position of the platform <NUM> and the relative position of the aircraft <NUM> to the mobile platform <NUM>. However, the position of the aircraft <NUM> can be calculated utilizing any appropriate calculation(s) and/or methodology.

In some examples, to determine whether the GPS signals have sufficient signal strength and are valid, the GPS signal analyzer <NUM> verifies the GPS signals. For example, the GPS signal analyzer <NUM> determines that the GPS signals are not spoofed, jammed or corrupt. In some examples, if the GPS signal analyzer <NUM> successfully verifies the GPS signal, the flight director <NUM> is provided with the GPS signals and/or enabled to utilize the GPS signals. In some examples, the GPS signal analyzer <NUM> determines whether the aircraft <NUM> is located at or proximate an area in which the GPS signals are known or pre-determined to be contested.

In some examples, a speed or velocity of the aircraft <NUM> is calculated and/or determined by the position calculator <NUM>. In some examples, the position analyzer <NUM> is implemented on both the aircraft <NUM> and the mobile platform <NUM>. In particular, the aircraft <NUM> and the mobile platform <NUM> can act as redundant navigation sources for one another, for example. In some such examples, one of the aircraft <NUM> or the mobile platform <NUM> can receive and utilize valid GPS signals when the other is in a contested GPS area. Additionally or alternatively, the flight director <NUM> can direct movement of the mobile platform <NUM> to ensure that the aircraft <NUM> and the mobile platform <NUM> are within a desired or requisite communication range such that a relative distance therebetween can be accurately measured and/or that the aircraft <NUM> and the mobile platform <NUM> can adequately transmit signals therebetween.

<FIG> depict an example process that can be implemented in examples disclosed herein. In some examples, including this particular example, the aircraft <NUM> and the mobile platform <NUM> are identical or substantially identical aircraft and, thus, function as redundant navigational guidance for one another. Turning to <FIG>, the GPS source <NUM>, the aircraft <NUM> and the mobile platform <NUM> are shown in a schematic representation. Both the aircraft <NUM> and the mobile platform <NUM> may receive GPS signals from the GPS source <NUM> and determining relative locations therebetween.

<FIG> depicts jamming of a GPS signal at or proximate the aircraft <NUM>. In some examples, including the illustrated example, a jamming detector (e.g., jamming detection hardware, a jamming sensor, etc.) <NUM> and/or the GPS signal analyzer <NUM> of <FIG> determines that the GPS signal has been jammed. In this and other examples, the aircraft <NUM> and the mobile platform <NUM> maintain determination of relative positions to one another.

Turning to <FIG>, the aircraft <NUM> is shown switching to guidance support from the mobile platform <NUM>. As denoted by dotted lines <NUM>, utilization of GPS by the aircraft <NUM> is toggled off. In other words, the aircraft <NUM> and/or the flight control system <NUM> is directed to not utilize the GPS signals. As a result, movement of the aircraft <NUM> is directed based on the relative position of the aircraft <NUM> in conjunction with the measured position of the mobile platform <NUM>.

While the mobile platform <NUM> and the aircraft <NUM> maintain determination of a relative position therebetween in this example, in some other examples, the relative position determination is only performed when one of the aircraft <NUM> or the mobile platform <NUM> is in a contested area.

<FIG> illustrates an example implementation of a system to determine relative positions that can be implemented in examples disclosed herein. In particular, an airborne transmitter/receiver array system is implemented to determine relative positions between the aircraft <NUM> and the mobile platform <NUM>. In the illustrated example, the aircraft <NUM> includes transmitters <NUM> (hereinafter transmitters 502a, 502b, 502c, etc.) and the mobile platform <NUM> includes receivers <NUM> (hereinafter receivers 504a, 504b, 504c, etc.).

To determine a relative position between the aircraft <NUM> and the mobile platform <NUM>, the transmitters 502a, 502b, 502c transmit RF signals that are received at the receivers 504a, 504b, 504c. In turn, signal strengths of these received RF signals are measured and/or determined. Accordingly, based on the signal strengths, the relative position is expressed in multiple degrees of freedom. Particularly, differences in position, heading, yaw and roll between the aircraft <NUM> and the mobile platform <NUM> can be calculated. The RF signals transmitted from the transmitters 502a, 502b, 502c include an identifier (e.g., an aircraft identifier), an antenna or transmitter identifier, and/or relative heading information. Additionally or alternatively, GPS location data, GPS time data, magnetic heading information, geolocation based on relative positioning and/or dead reckoning data are included in the RF signals. However, any other appropriate type of information can be conveyed.

While the aircraft <NUM> is depicted including the transmitters 502a, 502b, 502c while the mobile platform <NUM> includes the receivers 504a, 504b, 504c, the aircraft <NUM> may, instead, include the receivers 504a, 504b, 504c while the mobile platform <NUM> includes the transmitters 502a, 502b, 502c. Additionally or alternatively, the aircraft <NUM> and the mobile platform <NUM> can be implemented with transceivers (e.g., transceivers that arranged at identical positions on the aircraft <NUM> and the mobile platform <NUM>). While the aircraft <NUM> and the mobile platform <NUM> are depicted with three of the transmitters 502a, 502b, 502c and three of the receivers 504a, 504b, 504c, respectively, any appropriate number of transmitters, receivers and/or transceivers can be implemented instead.

While an example manner of implementing the flight control system <NUM> of <FIG> is illustrated in <FIG>, one or more of the elements, processes and/or devices illustrated in <FIG> may be combined, divided, re-arranged, omitted, eliminated and/or implemented in any other way. Further, the example flight director <NUM>, the example position calculator <NUM>, the example GPS signal analyzer <NUM>, the example signal direction and distance calculator <NUM> and/or, more generally, the example flight control system <NUM> of <FIG> may be implemented by hardware, software, firmware and/or any combination of hardware, software and/or firmware. Thus, for example, any of the example flight director <NUM>, the example position calculator <NUM>, the example GPS signal analyzer <NUM>, the example signal direction and distance calculator <NUM> and/or, more generally, the example flight control system <NUM> could be implemented by one or more analog or digital circuit(s), logic circuits, programmable processor(s), programmable controller(s), graphics processing unit(s) (GPU(s)), digital signal processor(s) (DSP(s)), application specific integrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)) and/or field programmable logic device(s) (FPLD(s)). When reading any of the apparatus or system claims of this patent to cover a purely software and/or firmware implementation, at least one of the example flight director <NUM>, the example position calculator <NUM>, the example GPS signal analyzer <NUM>, and/or the example signal direction and distance calculator <NUM> is/are hereby expressly defined to include a non-transitory computer readable storage device or storage disk such as a memory, a digital versatile disk (DVD), a compact disk (CD), a Blu-ray disk, etc. including the software and/or firmware. Further still, the example flight control system <NUM> of <FIG> may include one or more elements, processes and/or devices in addition to, or instead of, those illustrated in <FIG>, and/or may include more than one of any or all of the illustrated elements, processes and devices. As used herein, the phrase "in communication," including variations thereof, encompasses direct communication and/or indirect communication through one or more intermediary components, and does not require direct physical (e.g., wired) communication and/or constant communication, but rather additionally includes selective communication at periodic intervals, scheduled intervals, aperiodic intervals, and/or one-time events.

A flowchart representative of example hardware logic, machine readable instructions, hardware implemented state machines, and/or any combination thereof for implementing the flight control system <NUM> of <FIG> is shown in <FIG>. The machine readable instructions may be one or more executable programs or portion(s) of an executable program for execution by a computer processor and/or processor circuitry, such as the processor <NUM> shown in the example processor platform <NUM> discussed below in connection with <FIG>. The program may be embodied in software stored on a non-transitory computer readable storage medium such as a CD-ROM, a floppy disk, a hard drive, a DVD, a Blu-ray disk, or a memory associated with the processor <NUM>, but the entire program and/or parts thereof could alternatively be executed by a device other than the processor <NUM> and/or embodied in firmware or dedicated hardware. Further, although the example program is described with reference to the flowchart illustrated in <FIG>, many other methods of implementing the example flight control system <NUM> may alternatively be used. For example, the order of execution of the blocks may be changed, and/or some of the blocks described may be changed, eliminated, or combined. Additionally or alternatively, any or all of the blocks may be implemented by one or more hardware circuits (e.g., discrete and/or integrated analog and/or digital circuitry, an FPGA, an ASIC, a comparator, an operational-amplifier (op-amp), a logic circuit, etc.) structured to perform the corresponding operation without executing software or firmware. The processor circuitry may be distributed in different network locations and/or local to one or more devices (e.g., a multi-core processor in a single machine, multiple processors distributed across a server rack, etc.).

The machine readable instructions described herein may be stored in one or more of a compressed format, an encrypted format, a fragmented format, a compiled format, an executable format, a packaged format, etc. Machine readable instructions as described herein may be stored as data or a data structure (e.g., portions of instructions, code, representations of code, etc.) that may be utilized to create, manufacture, and/or produce machine executable instructions. For example, the machine readable instructions may be fragmented and stored on one or more storage devices and/or computing devices (e.g., servers) located at the same or different locations of a network or collection of networks (e.g., in the cloud, in edge devices, etc.). The machine readable instructions may require one or more of installation, modification, adaptation, updating, combining, supplementing, configuring, decryption, decompression, unpacking, distribution, reassignment, compilation, etc. in order to make them directly readable, interpretable, and/or executable by a computing device and/or other machine. For example, the machine readable instructions may be stored in multiple parts, which are individually compressed, encrypted, and stored on separate computing devices, wherein the parts when decrypted, decompressed, and combined form a set of executable instructions that implement one or more functions that may together form a program such as that described herein.

In other examples, the machine readable instructions may be stored in a state in which they may be read by processor circuitry, but require addition of a library (e.g., a dynamic link library (DLL)), a software development kit (SDK), an application programming interface (API), etc. in order to execute the instructions on a particular computing device or other device. In other examples, the machine readable instructions may need to be configured (e.g., settings stored, data input, network addresses recorded, etc.) before the machine readable instructions and/or the corresponding program(s) can be executed in whole or in part. Thus, machine readable media, as used herein, may include machine readable instructions and/or program(s) regardless of the particular format or state of the machine readable instructions and/or program(s) when stored or otherwise at rest or in transit.

As mentioned above, the example processes of <FIG> may be implemented using executable instructions (e.g., computer and/or machine readable instructions) stored on a non-transitory computer and/or machine readable medium such as a hard disk drive, a flash memory, a read-only memory, a compact disk, a digital versatile disk, a cache, a random-access memory and/or any other storage device or storage disk in which information is stored for any duration (e.g., for extended time periods, permanently, for brief instances, for temporarily buffering, and/or for caching of the information). As used herein, the term non-transitory computer readable medium is expressly defined to include any type of computer readable storage device and/or storage disk and to exclude propagating signals and to exclude transmission media.

The example method <NUM> of <FIG> begins as the aircraft <NUM> and the mobile platform <NUM> are being flown during a mission proximate a contested area. In this and other examples, the aircraft <NUM> and the mobile platform <NUM> are implemented as UAVs that are identical (e.g., the aircraft <NUM> and the mobile platform <NUM> include the same or similar navigation and telemetry equipment and/or software). Further, the aircraft <NUM> and the mobile platform <NUM> are guided from a remote location (e.g., a remote command center).

At block <NUM>, the GPS signal analyzer <NUM> of the illustrated example analyzes GPS signals received at the mobile platform <NUM> and/or the aircraft <NUM>. In this and other examples, the GPS signal analyzer <NUM> determines that the GPS signals have sufficient strength and are not compromised (e.g., spoofed, jammed, etc.).

At block <NUM>, it is determined by the GPS analyzer <NUM> as to whether the detected GPS signal has the requisite signal strength and is valid. If the GPS signal strength has the requisite signal strength and is valid (block <NUM>), control of the process proceeds to block <NUM> and the process proceeds to block <NUM>. Otherwise, the process proceeds to block <NUM>.

At block <NUM>, the GPS signal analyzer <NUM> and/or the flight director <NUM> utilizes the GPS signal to direct movement of the aircraft <NUM> and/or the mobile platform <NUM>.

At block <NUM>, in some examples, the aircraft <NUM> transmits a request to the mobile platform <NUM> when the GPS signal is contested. The request can include a request for guidance via the mobile platform <NUM>. For example, the jamming detector <NUM> can cause the aircraft <NUM> to request guidance and/or positional data from the mobile platform <NUM>. In some examples, the request triggers or enables relative position determinations between the aircraft <NUM> and the mobile platform <NUM>.

At block <NUM>, a position of the mobile platform <NUM> is determined by the GPS signal analyzer <NUM>. In this and other examples, because the mobile platform <NUM> remains in an uncontested area, the GPS position of the mobile platform <NUM> is utilized by the GPS signal analyzer <NUM>.

At block <NUM>, in the illustrated example, at least one signal strength between the mobile platform <NUM> and the aircraft <NUM> is measured and/or analyzed by the signal direction and distance calculator <NUM>. In this and other examples, the signal direction and distance calculator <NUM> analyzes data from an antenna (e.g., direction finding antenna array, etc.) to determine a relative direction between the aircraft <NUM> and the mobile platform <NUM>, and a time-of-flight signal to determine a distance between the mobile platform <NUM> and the aircraft <NUM>. As a result, the distance and the relative direction at least partially define the relative direction.

At block <NUM>, in some examples, the mobile platform <NUM> is moved and/or directed by the flight director <NUM> to move toward the aircraft <NUM>. For example, the flight director <NUM> can direct the mobile platform <NUM> to move toward the aircraft <NUM> if an insufficient signal strength (e.g., for the direction finding antenna array) is measured between the mobile platform <NUM> and the aircraft <NUM>.

At block <NUM>, the position calculator <NUM> of the illustrated example calculates a relative position between the mobile platform <NUM> and the aircraft <NUM> based on the relative direction and the distance indicated by the time-of-flight signal. In some other examples, the relative position includes a spatial location and/or differential that is based on RF signal strengths measured between the mobile platform <NUM> and the aircraft <NUM>.

At block <NUM>, a position of the aircraft <NUM> is calculated based on the relative position and the position of the mobile platform <NUM>. In this and other examples, the position of the aircraft <NUM> is calculated based on a vector sum of the relative position and the position of the mobile platform <NUM>. However, any other appropriate calculation can used instead.

At block <NUM>, it is determined whether to repeat the process. If the process is to be repeated (block <NUM>), control of the process returns to block <NUM>. Otherwise, the process ends.

<FIG> is a block diagram of an example processor platform <NUM> structured to execute the instructions of <FIG> to implement the flight control system <NUM> of <FIG>. The processor platform <NUM> can be, for example, a server, a personal computer, a workstation, a self-learning machine (e.g., a neural network), a mobile device (e.g., a cell phone, a smart phone, a tablet such as an iPad™), a personal digital assistant (PDA), an Internet appliance, a set top box, or any other type of computing device.

For example, the processor <NUM> can be implemented by one or more integrated circuits, logic circuits, microprocessors, GPUs, DSPs, or controllers from any desired family or manufacturer. The hardware processor may be a semiconductor based (e.g., silicon based) device. In this and other examples, the processor implements the example flight director <NUM>, the example position calculator <NUM>, the example GPS signal analyzer <NUM>, and the example signal direction and distance calculator <NUM>.

In some examples, including the illustrated example, one or more input devices <NUM> are connected to the interface circuit <NUM>.

The interface circuit <NUM> of some examples, including the illustrated example, also includes a communication device such as a transmitter, a receiver, a transceiver, a modem, a residential gateway, a wireless access point, and/or a network interface to facilitate exchange of data with external machines (e.g., computing devices of any kind) via a network <NUM>.

The machine executable instructions <NUM> of <FIG> may be stored in the mass storage device <NUM>, in the volatile memory <NUM>, in the non-volatile memory <NUM>, and/or on a removable non-transitory computer readable storage medium such as a CD or DVD.

From the foregoing, it will be appreciated that example methods, apparatus and articles of manufacture have been disclosed that enable accurate and robust navigation of aircraft in contested areas. As a result, aircraft can be flown accurately even in areas where GPS signals are jammed or spoofed. Further, examples disclosed herein can enable navigation of aircraft during a GPS system failure and/or malfunction.

Claim 1:
An apparatus (<NUM>) to determine a position of an aircraft (<NUM>), the apparatus comprising:
at least three receivers (504a, 504b, 504c) arranged to receive signals from at least three transmitters (502a, 502b, 502c) disposed on a mobile platform (<NUM>), the signals including an aircraft identifier and a transmitter identifier of the mobile platform (<NUM>);
a signal direction and distance calculator (<NUM>) configured to determine a relative position of the aircraft (<NUM>) to the mobile platform (<NUM>) based on signals transmitted between the aircraft (<NUM>) and the mobile platform (<NUM>) by utilizing the different signal strength measurements between the at least three transmitters (502a, 502b, 502c) of the mobile platform (<NUM>) and the at least three receivers (504a, 504b, 504c) of the aircraft (<NUM>); and
a position calculator (<NUM>) configured to calculate the position of the aircraft (<NUM>) based on the relative position and a position of the mobile platform (<NUM>).