Patent Description:
With the advent of commercially-available unmanned aerial vehicles (UAVs), it is becoming increasingly difficult to prevent collisions between them. While some UAVs, particularly larger or bespoke UAVs, operate under the control of an integrated programmable autopilot, most commercial-off-the-shelf (COTS) UAVs are not readily programmable and take input from a handheld flight controller operated by a user.

It would be advantageous to provide these COTS UAVs, typically controlled by a user, with a degree of autonomy in order to prevent collisions and/or reduce burden on the user where a plurality of UAVs are being controlled by that user.

<CIT> discloses an unmanned vehicle control and operation in a marine environment. <CIT> discloses an analytic geo-targeting system and method for advertising to people with UAVs.

The invention is set forth in the independent claims <NUM> and <NUM> and in the dependent claims <NUM> to <NUM>, <NUM> and <NUM>. According to a first aspect of the present disclosure, there is provided an apparatus for controlling an unmanned vehicle, the apparatus comprising:.

Advantageously, the apparatus enables autonomy of an unmanned vehicle with no inherent autonomy and/or where the unmanned vehicle is linked to a single handheld controller.

The processor may be configured to generate a plurality of second vehicle control signals, each defining a manoeuvre for the vehicle, which, when executed, cause the vehicle to follow the route.

The characteristics may include at least one of a channel and a frequency on which the first vehicle control signal is transmitted from the remote controller.

The apparatus may comprise an input for receiving the route from an external source. The input may be a wireless interface, wired interface, or a user input such as a touchscreen. The route may be received over the air from a server.

The apparatus may comprise a navigation system for generating navigation data, the transmitter may be arranged to transmit the navigation data to a server, and the receiver may be arranged to receive the route from the server. The navigation system may comprise an inertial measurement system and/or a satellite navigation system.

The processor may be arranged to determine the route for the vehicle to follow and store the route in the memory.

The apparatus may comprise at least one sensor, wherein determining the route for the vehicle to follow may comprise modifying a stored route based on data generated by the at least one sensor. The sensor may be configured to detect at least one object in the path of the unmanned vehicle, and the processor may be configured to modify the stored route such that the unmanned vehicle performs a set of manoeuvres to avoid a detected object. Alternatively, the sensor may be configured to detect at least one object in the path of the unmanned vehicle, and the processor may be configured to transmit the location of the at least one object to the server. The sensor may be at least one of an optical camera, a laser range finder, an infrared camera, a spectral imaging device, a radar, or a sonar. The sensor may comprise image recognition software for identifying types of objects.

The processor may be arranged to receive a plurality of routes, determine the route for the vehicle to follow by performing route deconfliction on the plurality of routes, and store the determined route in the memory.

The apparatus may comprise a coupling means for coupling the apparatus to an outside surface of the vehicle. The coupling means may comprise an adhesive layer. Alternatively, the coupling means may comprise a hook and loop material, a strap, chain, magnet or other device for securing the vehicle controller to the vehicle.

According to a second aspect of the present disclosure, there is provided a system for controlling an unmanned vehicle, the system comprising:.

The at least one unmanned vehicle may comprise an unmanned aerial vehicle.

The system may comprise a mobile device arranged to transmit the route for the vehicle to follow to the apparatus.

The system may comprise a server configured to transmit each of a plurality of routes to the respective apparatus coupled to the unmanned vehicle that will follow the route.

The server may comprise a route deconfliction algorithm for performing route deconfliction on a plurality of routes and generating the route for the respective unmanned vehicle to follow.

The server may be configured to retrieve object data and use the object data to perform the route deconfliction, such that the unmanned vehicle does not collide with objects associated with the object data when following the route. The server may be configured to search a database to retrieve the object data. The server may be configured to search the database by accessing the internet. Object data may include architectural and/or terrain data, such as heights and locations of buildings and mountains. Object data may include air traffic data, such as the flight paths of aircraft, or ADS-B data.

The at least one apparatus may be arranged to transmit navigation data relating to the respective unmanned vehicle to the server;
the server being arranged to use the navigation data relating to a plurality of unmanned vehicles to extrapolate routes for those vehicles, wherein performing route deconfliction comprises generating a route for an unmanned vehicle which does not intersect any of the extrapolated routes.

According to a third aspect of the present disclosure, there is provided a method of controlling an unmanned vehicle, the method comprising:.

The method may comprise mechanically coupling a vehicle controller to the vehicle.

The method may comprise determining the frequency and/or channel on which the first vehicle control signal was transmitted.

The method may comprise receiving the route for the vehicle to follow wirelessly from a server. The method may comprise transmitting navigation data to the server and using the navigation data to plan the route for the vehicle to follow.

The method may comprise determining the route for the vehicle to follow by performing route deconfliction on a plurality of routes and storing the determined route.

The method may comprise retrieving object data and using the object data to perform route deconfliction, such that the unmanned vehicle does not collide with objects associated with the object data. Retrieving object data may include searching a database. Object data may include architectural and/or terrain data, such as heights and locations of buildings and mountains. Object data may include air traffic data, such as the flight paths of aircraft, or ADS-B data.

The method may comprise receiving the second vehicle control signal and controlling the unmanned vehicle to perform the manoeuvre instructed by the second vehicle control signal.

Embodiments of the disclosure will now be described by way of example only and with reference to the accompanying drawings.

For convenience and economy, the same reference numerals are used in different figures to label identical or similar elements.

Generally, embodiments herein relate to a vehicle controller that can be coupled to a "dumb" unmanned vehicle, after manufacture, in order to provide the unmanned vehicle with autonomy. Preferably, the vehicle controller receives a route (i.e. travel plan) from a server for the unmanned vehicle to follow. More preferably, the server is provided with software that prevents collisions with other unmanned vehicles. The unmanned vehicle requires no modification in order to accommodate the vehicle controller, and therefore the vehicle controller is compatible with any unmanned vehicle ordinarily controlled from a control station or handheld device. Therefore, several vehicle controllers may be centrally programmed for the control of several associated unmanned vehicles, negating the need for manual user control of each unmanned vehicle.

Unmanned aerial vehicles 20a, 20b (generally <NUM>) having respective individual vehicle controllers 30a, 30b (generally <NUM>) coupled thereto are illustrated in <FIG>. While two UAVs <NUM> are illustrated, this is not intended to be limiting. There may be only one UAV <NUM> in the system, or a plurality of UAVs <NUM> in the system. The unmanned aerial vehicle <NUM> is in the form of a multicopter (e.g. a quadcopter), which is a typical form-factor for COTS UAVs. While the embodiments that follow will refer to flight paths, flight planning and aircraft, it would be understood this is in relation to specific embodiments and not intended to limit the concept of upscaling autonomy. For example, in other embodiments, the unmanned vehicle may be an unmanned or optionally-manned ground vehicle, space vehicle or naval vessel. Throughout, "unmanned" will be assumed to have a broad definition encompassing optionally-manned vehicles not being operated by a human.

In the illustrated embodiment, in normal operation the unmanned aerial vehicle(s) <NUM> is/are controlled manually using an associated handheld remote controller 10a, 10b (generally <NUM>). The handheld remote controller 10a, 10b is unique to the respective UAV 20a, 20b. In other words, without modification, the first handheld remote controller 10a could not control the second UAV 20b to which it is not linked. This is because the UAVs 20a, 20b operate on different channels or frequencies to each other. In other embodiments, in normal operation the unmanned aerial vehicle(s) <NUM> is/are controlled manually by or from a control station. The unmanned aerial vehicle <NUM> is a commercial-off-the-shelf "drone", and as such is relatively inexpensive and has a limited degree of autonomy, if any. The unmanned aerial vehicle <NUM> receives a wireless control signal from the remote controller <NUM>, containing instructions to change the heading, orientation, velocity and/or altitude of the unmanned aerial vehicle <NUM>. The remote controller <NUM> may be a mobile phone, handheld bespoke transmitter, joystick, trackball, desktop computer, or other wireless control device. These instructions are interpreted by a controller on-board the UAV <NUM> such that it generates corresponding control signals for the unmanned aerial vehicle's flight control surfaces in order to effect the desired manoeuvre.

A vehicle controller <NUM> is coupled to the UAV <NUM>. The vehicle controller <NUM> is an independent unit attached to the outside of the UAV <NUM>. The vehicle controller <NUM> may be coupled to the UAV <NUM> by any suitable means, such as straps, an adhesive substance, a magnet, hook-and-loop material, a clasp, a bracket, or an elastic band. The vehicle controller <NUM> may alternatively be heat-bonded or chemically bonded to the UAV <NUM>, although it would be preferred for the vehicle controller <NUM> to be detachable such that the UAV <NUM> can return to its original control regime.

The vehicle controller <NUM> is arranged to generate and transmit its own control signals having the same characteristics as those transmitted by the linked remote controller <NUM> in order to control the UAV <NUM> instead of that remote controller <NUM>. The characteristics may include frequency, channel, power and/or amplitude, for example, such that the UAV <NUM> recognises the vehicle controller <NUM> to be the remote controller <NUM>. The vehicle controller <NUM> may be manually programmed to transmit using the appropriate characteristics, or may detect the appropriate characteristics by measuring intercepted signals transmitted by the remote controller <NUM>.

In the illustrated embodiment, a server <NUM> is in wireless communication with the plurality of vehicle controllers <NUM>. The server <NUM> may belong to an entity such as a logistics company, national air traffic service or military organisation, having a plurality of UAVs <NUM> associated with it. The UAVs <NUM> may be for delivering packages, for example. Alternatively, the UAVs <NUM> may be communication nodes in a military tactical network.

The server <NUM> may receive a start point (e.g. the current position of the UAV <NUM>) for a route and a desired end point (e.g. where a package needs to be delivered). The server <NUM> is arranged to plan a route between the two points. Preferably, the route is planned such that the UAV <NUM> does not collide with any other UAVs, terrain or objects. However, in a simple embodiment, the route may be planned such that the UAV <NUM> moves from the start point to the end point "as the crow flies" (i.e. with little deviation from a straight path).

In one embodiment, the vehicle controllers <NUM> are arranged to transmit navigation data (e.g. their position, velocity and/or heading) to the server <NUM>. The server <NUM> is arranged to use this navigation data to perform route deconfliction. Route deconfliction may first involve extrapolating a route of each UAV <NUM> using the respective navigation data. For example, if a UAV <NUM> is shown to be at a first location at a first time, and its speed and direction of travel are transmitted to the server <NUM>, the server <NUM> can calculate its position at a second time. Deconfliction may then involve generating new routes for the UAVs <NUM> that prevent their collision if the original routes are shown to intersect. Alternatively, where original routes are shown to intersect and where the server <NUM> is provided with a terminal having a user interface, a user may manually generate a new route for each UAV <NUM> to remove the conflict(s).

The server <NUM> may also be aware of the locations of other objects (or, in other words, entities), such as manned aircraft, aerostats, storm fronts or terrain features. This data may be received through the internet, via a databus or may be pre-stored. For example, the server <NUM> may receive map data, such as topography data or architectural data. The map data may indicate the elevation or maximum vertical extent of terrain features (e.g. mountains) or buildings, along with their locations. The map data may be received from a remote server via a communications link, or may be downloaded to a memory on the server <NUM>. The server <NUM> may also have access to national air traffic data systems, or have an Automatic Dependent Surveillance-Broadcast (ADS-B) input, so that it knows the location and trajectory (or flight paths) of other aircraft. The routes may be generated so as to avoid collision between the UAVs <NUM> and these objects (in addition to avoiding collision between the UAVs <NUM> themselves). Alternatively, a user may programme the server <NUM> with the desired routes for each UAV <NUM>.

Each route is then transmitted back to the vehicle controller <NUM> coupled to the UAV <NUM> associated with the respective route. As illustrated, the route is transmitted to the vehicle controller <NUM> over-the-air. The vehicle controllers <NUM> may be coupled to the server <NUM> via a network, for example a wide area network (WAN) or local area network (LAN).

The route is a path through a three-dimensional region of airspace, and therefore may indicate a sequential set of coordinates and altitudes. In other words, the route is a plan for moving a UAV <NUM> from a start position to a final position. The route may further include the velocity at which the UAV <NUM> should fly between coordinates, an expected time of arrival at particular coordinates (from which velocity can be calculated), and/or the UAV's (or UAV's camera) orientation at particular coordinates.

In some embodiments, the vehicle controller <NUM> or server <NUM> is pre-programmed with a route for the UAV <NUM> follow. Deviations from this stored route may be transmitted to the server <NUM> so that adjustments to the UAV <NUM> can be made to bring it back onto the planned route. Alternatively, the vehicle controller <NUM> may be configured to determine corrections to bring the UAV <NUM> back onto the planned route. In other words, the server <NUM> may be used to plan and store routes, without performing any route deconfliction.

In some embodiments, a user may generate a route using an application on their handheld mobile device (e.g. mobile phone), and transmit that route to the vehicle controller <NUM> via a wireless communication means such as WiFi or Bluetooth. This route may also be transmitted to and/or stored on the server <NUM> such that route deconfliction can be performed as explained above (in lieu of or in addition to receiving navigation data at the server <NUM>).

In some embodiments, the vehicle controller <NUM> may comprise a user interface, such as a touchscreen, for receiving a route from a user. Alternatively, the vehicle controller <NUM> may comprise a wired interface for receiving a route from a computer or the server <NUM> as illustrated in <FIG>. The vehicle controller <NUM> may instead comprise an interface for receiving a route from a USB stick or external hard drive.

Preferably, the vehicle controller <NUM> is reprogrammable to receive alternative routes and/or control different UAVs <NUM>. However, the route may be programmed at the time of manufacture of the vehicle controller <NUM>.

Instead of the server <NUM> performing route deconfliction, the vehicle controller <NUM> may comprise a route deconfliction algorithm. Here, the vehicle controller <NUM> may receive one or a plurality of routes. The vehicle controller <NUM> may also be aware of the locations of other objects to be avoided, such as manned aircraft etc., as explained with reference to the server <NUM> above. Each route, and/or object data, may be received by any of the mechanisms previously described. The vehicle controller <NUM> may then calculate a route for the UAV <NUM> to follow which does not result in collision with another UAV <NUM> following one of the received routes, or one of the objects.

In one embodiment, the route deconfliction algorithm (such as that used by the server <NUM> or vehicle controller <NUM>) defines a three-dimensional region of airspace around part of the or each received route. The three-dimensional region of airspace is time-dependent, in that it moves along the route to align with the expected position of the associated aircraft at that point in time. The deconfliction algorithm may then warn a user (for example, with a displayed message) if their intended route intersects one of the other three-dimensional regions so they can replan, or calculates a route to avoid such an event.

In some embodiments, the vehicle controller <NUM> comprises at least one sensor for determining live situational awareness data. This situational awareness data, as with the map data, may be used to adapt or determine a route for the UAV <NUM>. Live situational awareness data may indicated the presence of another aircraft or object moving into the path of the UAV <NUM>, for example. The sensor may be an optical camera, radar, sonar, hyperspectral imaging device, infrared camera, etc. The sensor may comprise a laser range finder for determining the distance to a detected object. The sensor may comprise image recognition software to identify clouds and other object types. The situational awareness data may be transmitted to the server <NUM> so that the server <NUM> can modify the determined route. Modifying a route may involve instructing the UAV <NUM> to accelerate, such that the object passes behind the UAV <NUM>; slow down; or change direction. The server <NUM>, or a processor on-board the vehicle controller <NUM>, may calculate the speed and direction of travel of the object and the point of likely intersection with the UAV <NUM> if it remains on the route presently being followed. This may be achieved by monitoring how far the object (or aircraft) travels in a known amount of time. The laser range finder or radar may be used for this purpose. Alternatively to the server <NUM>, the vehicle controller <NUM> itself may be configured to modify the stored route to control the UAV <NUM> to avoid the object (or other aircraft).

An embodiment of a vehicle controller <NUM> coupled to a UAV <NUM> is illustrated in more detail in <FIG>. Here, the vehicle controller <NUM> is for storing a predetermined route (i.e. a flight plan) and generating control signals (i.e. control inputs) for controlling the UAV <NUM> to follow the route. The route is stored in a memory <NUM>. The memory <NUM> may be a non-volatile memory such as read only memory (ROM), a hard disk drive (HDD) or a solid state drive (SSD). The memory <NUM> may include random access memory (RAM). RAM is used by a controller <NUM> of the vehicle controller <NUM> for the temporary storage of data. The memory <NUM>, in alternative embodiments, may comprise a route deconfliction algorithm used by the controller <NUM> in planning a route.

In the illustrated embodiment, a route is initially programmed by a user using their mobile device (e.g. mobile phone). The mobile device uses a web app running on a server <NUM> to receive the route. This initial route is stored on the server <NUM>, which also stores a plurality of other routes each associated with other UAVs <NUM>. These other routes may be received from the same mobile device (i.e. the same user) or a plurality of mobile devices. The server <NUM> performs route deconfliction on the stored routes to generate a deconflicted route for the UAV <NUM> to follow. The deconflicted route may be the same as the initial route, if there were no conflicts with other UAVs or objects. This deconflicted route is transmitted to the vehicle controller <NUM> and stored in the memory <NUM>. The memory <NUM> may contain a unique identifier, such as a MAC address, serial number or email address, to set the vehicle controller <NUM> apart from other vehicle controllers with which the server <NUM> is in communication.

As explained above, in other embodiments, the vehicle controller <NUM> may determine a route for the UAV <NUM> to follow based on situational awareness data received from sensors onboard the vehicle controller <NUM>. Therefore, the vehicle controller <NUM> may include sensors, such as a radar or optical camera, for detecting aerial objects to avoid such as other aircraft or weather patterns. Alternatively, the vehicle controller <NUM> and UAV <NUM> may be provided with an electrical interface to allow the vehicle controller <NUM> to access sensors onboard the UAV <NUM>. This sensor data may be used as part of the route planning process (e.g. by first being transmitted to the server <NUM>), or may be used directly by the vehicle controller <NUM> to deviate from a route where unexpected obstacles arise.

In some embodiments, the vehicle controller <NUM> comprises a navigation system, such as an inertial navigation system including a gyroscope and/or compass. The navigation system may alternatively or additionally include a satellite navigation system such as GPS or GLONASS. The navigation system generates navigation data such as the location, heading and velocity of the UAV <NUM>. The navigation data is transmitted to the server <NUM>. A route can then be planned for the UAV <NUM> using the UAV's current conditions (i.e. location, heading and velocity). The route is transmitted to the associated vehicle controller <NUM> for storage. Instead of receiving navigation data, the server <NUM> may predict the present position velocity and heading of the UAV <NUM> based on time of flight and initial conditions.

The vehicle controller <NUM> may comprise a data interface. The data interface may be a wired interface such as a serial port, USB interface, or Ethernet interface. The data interface may be a wireless interface such as a Bluetooth, LTE, <NUM>, <NUM>, or WiFi module. The data interface is for receiving the or a plurality of routes from the server <NUM>. Alternatively, the vehicle controller <NUM> may receive the route from a user's mobile device or through a direct input means such as a touchscreen.

The controller <NUM> is coupled to an antenna <NUM>. The antenna <NUM> receives (intercepts) control signals transmitted by the handheld remote controller <NUM>, intended for the UAV <NUM>. The controller <NUM> (or, in some embodiments, a separate signal processor) processes the received control signals to determine the characteristics of signals usually used to control the UAV <NUM>. The controller <NUM> may comprise a transducer. The controller <NUM> may comprise a spectrum analyser for determining the frequency of received signals. The controller <NUM> is not tuned to a specific frequency, and is able to process signals on a range of frequencies in order to determine their frequency (and, in some cases, other characteristics, such as transmission channel). This allows the controller <NUM> to generate its own control signals for the UAV <NUM>, having the same characteristics as the received signals. Therefore, the vehicle controller <NUM> can be used to control any UAV <NUM>, rather than being limited to one UAV only during manufacture as in the prior art. In other words, a vehicle controller <NUM> may be used to retrofit a UAV <NUM>.

The controller <NUM> may take any suitable form. For instance, it may be a microcontroller, plural microcontrollers, a processor, or plural processors. The controller <NUM> is arranged to generate control signals for controlling the UAV <NUM> to manoeuvre to follow the route stored in the memory <NUM>. For example, thirty seconds into the flight, the route may indicate the UAV <NUM> needs to head on a bearing of <NUM> degrees north. Knowing the original heading of the UAV <NUM>, the vehicle controller <NUM> may therefore generate a control signal, thirty seconds into the flight, indicating the UAV <NUM> to turn left until it is on the indicated heading. Instead of being based on timings, the control signals may be generated according to the position of the UAV <NUM> relative to the route. A set of control signals may be generated by the controller <NUM>, whereby each control signal defines a manoeuvre, which, if all executed by the UAV <NUM>, causes the UAV <NUM> to follow the stored route. The control signals are transmitted to the UAV <NUM> through the antenna <NUM>.

The vehicle controller <NUM> includes a mechanical interface <NUM> for coupling the vehicle controller <NUM> to the UAV <NUM>. The mechanical interface <NUM>, in preferred embodiments, requires no modification of the UAV <NUM> itself to secure the vehicle controller <NUM>. The mechanical interface <NUM> may include any suitable securing means, such as an adhesive layer, magnet or a strap that wraps around the body of the UAV <NUM>. The mechanical interface <NUM> may also include a net or basket, or the like, for suspending the vehicle controller <NUM> below the UAV <NUM>. The vehicle controller <NUM> is attached to an outside surface of the UAV <NUM> by the mechanical interface <NUM>. The surface may, for example, by an upper (dorsal) part of the main body of the UAV <NUM>, as illustrated in <FIG>. Alternatively, the vehicle controller <NUM> may be coupled to a side surface or the lower (ventral) part of the main body of the UAV <NUM>. Here, "attached" and "coupled" may not mean literally affixed, rather, the terms are intended to mean "held in place in relatively close proximity to, or touching, the surface", such that the vehicle controller <NUM> does not fall from the UAV <NUM> in flight and signals can be transmitted to the UAV <NUM>.

In the illustrated embodiment, the UAV <NUM> is a commercial-off-the-shelf (COTS) quadcopter aircraft weighing about <NUM> and having diameter of less than <NUM> metre. However, this is not intended to be limiting, and it would be understood that the vehicle controller <NUM> may be coupled to an unmanned vehicle of any size or configuration to provide that vehicle with a degree of autonomy. The present invention requires no modification of the UAV <NUM>, and therefore the UAV <NUM> may be any UAV typical of the prior art. Instead of a UAV <NUM>, the vehicle to be controlled may take the form of an unmanned ground vehicle or naval vessel (including underwater vessels).

The UAV <NUM> may be solar-electric powered (where the power source is not shown in the Figure). However, in other embodiments, the primary power source of the UAV <NUM> may be hybrid, battery only, hydrogen, or hydrocarbon based.

The UAV <NUM> comprises a controller <NUM>. The controller <NUM> may take any suitable form. For instance, it may be a microcontroller, plural microcontrollers, a processor, or plural processors. The controller <NUM> is arranged to receive control signals decoded by a radio <NUM> (i.e. a signal processor). The radio <NUM> receives the control signals wirelessly through an antenna <NUM> from the remote controller <NUM> unless the remote controller <NUM> is out of range. The control signals contain instructions, which, when executed by the controller <NUM>, cause the UAV <NUM> to move according to a user input. In some embodiments, instead of being separate components, the functionality of the radio <NUM> is performed by the controller <NUM>. In preferred embodiments, the radio <NUM> comprises a transducer tuned to a specific channel and frequency, and is therefore associated with a specific remote controller <NUM> during manufacture.

The UAV <NUM> depicted in the Figures is a quadcopter-type unmanned aerial vehicle, with four propulsion units 26a-d that can be adjusted to control pitch/attitude, velocity, orientation, heading and lift of the UAV <NUM>. In other embodiments, the UAV <NUM> may take a different form, such as that of a traditional aeroplane, helicopter, airship, vertical take-off and/or landing aircraft, or balloon. Therefore, in other embodiments, the vehicle may comprise less than or more than four propulsion units 26a-d. In these embodiments, the vehicle comprises flight control surfaces such as rotors, elevators, ailerons, flaps, and propellers. The controller <NUM> may execute the instructions in the control signal by independently controlling each of the propulsion units 26a-d to increase or decrease the velocity of the UAV <NUM>. The controller <NUM> is arranged to generate control signals to control the propulsion units 26a-d (or other flight control surfaces) to change the heading and/or orientation and/or altitude and/or attitude and/or velocity of the UAV <NUM> such that it follows the route stored in the memory <NUM> of the vehicle controller <NUM>.

The UAV <NUM> further includes a sensor <NUM>. The sensor <NUM> may be for gathering intelligence (for example, imagery intelligence) along a route, sensing objects to avoid, or for assisting a user when controlling the UAV <NUM> manually using the remote controller <NUM>. The sensor <NUM> may be an optical camera, for example. The UAV <NUM> may additionally or alternatively comprise a radar, LIDAR or a signals intelligence device.

The UAV <NUM> includes a memory <NUM>. The memory <NUM> may be a non-volatile memory such as read only memory (ROM), a hard disk drive (HDD) or a solid state drive (SSD). The memory <NUM> stores, amongst other things, an operating system. The memory <NUM> may include random access memory (RAM). RAM is used by the controller <NUM> for the temporary storage of data. The operating system may contain code which, when executed by the controller <NUM> in conjunction with RAM, controls operation of each of hardware components of the UAV <NUM>.

While the antennas <NUM>, <NUM> are respectively illustrated as being located outside the bodies of the UAV <NUM> and the vehicle controller <NUM>, it would be understood that this is for illustrative purposes only and they may instead reside inside the respective bodies. The antennas <NUM>, <NUM> may take any suitable form, such as etched antennas, monopole antennas, dipole antennas, blade antennas or patch antennas.

A method of controlling an unmanned vehicle, specifically but not exclusively a UAV <NUM>, to follow a route (or in the specific embodiment, a flight plan) will now be described with reference to <FIG>.

In a first step, S300, a flight control signal is received from a remote controller <NUM> at a signal processor (controller <NUM>) of a vehicle controller <NUM>. The flight control signal is intended for the UAV <NUM>, rather than the vehicle controller <NUM>, and therefore the flight control signal is intercepted. The flight control signal contains instructions for the UAV <NUM> to perform a manoeuvre, such as to increase velocity or gain altitude.

At step S302, the signal processor uses a spectrum analyser, which may be a software module, to determine characteristics of the received flight control signal. The characteristics may include, frequency, channel, wavelength, gain, or amplitude, for example.

At step S304, a server <NUM> generates a flight plan. The flight plan may be generated by performing route deconfliction on a plurality of received or input flight plans. Object data may be received and used in generating the flight plan such that associated objects can be avoided. Alternatively, the flight plan may be manually entered by a user using a terminal.

The generated or input flight is transmitted to the associated vehicle controller <NUM> using its unique identifier. For example, a message containing the flight plan may be transmitted to the vehicle controller <NUM> on a data carrier with a serial number of the vehicle controller <NUM> in a packet header.

The vehicle controller <NUM> receives the generated flight plan through the antenna <NUM>. The flight plan is stored in the memory <NUM> (i.e. a storage module). The controller <NUM> reads the memory <NUM> to receive the flight plan. Alternatively, the memory <NUM> may be preprogramed with the flight plan or receive it via a wired interface. In alternative embodiments again, the controller <NUM> generates its own flight plan based, for example, on live situational awareness data, and stores the flight plan in the memory <NUM>. It would be understood that in the presently described embodiment, live situational awareness data may be used to modify a received flight plan in real time.

At step S306, the controller <NUM> uses the present known position, velocity, altitude and/or orientation of the UAV <NUM> to generate a control signal, or sequence of control signals, that will instruct it to follow the stored flight plan. The control signal(s) is/are transmitted to the UAV <NUM> in step S308 wirelessly. The control signals are generated to have the same characteristics as those determined in step S302 (i.e. the control signal received in step S302 and the control signal transmitted in step S308 are indistinguishable if they are carrying the same instruction. The may have the same frequency, for example, so that the UAV <NUM> can process both).

At step S310, the radio <NUM> of the UAV <NUM> receives the control signal from the vehicle controller <NUM>. The radio <NUM> (i.e. signal processor) decodes the control signal to determine the manoeuvre instruction. The controller <NUM> then controls flight control surfaces, for example propulsion units 26a-d, to adjust such that the UAV <NUM> performs the instructed manoeuvre.

Claim 1:
An apparatus (<NUM>) for controlling an unmanned aerial vehicle (<NUM>), the apparatus comprising:
a receiver (<NUM>) for intercepting a first control signal transmitted from a remote controller (<NUM>) intended for the unmanned aerial vehicle;
a memory (<NUM>) for storing a route for the unmanned aerial vehicle to follow;
a processor (<NUM>) configured to:
determine characteristics of the first control signal; and,
generate a second control signal, wherein the second control signal comprises an instruction for the unmanned aerial vehicle to perform a manoeuvre to follow the route; and,
a transmitter configured to transmit the second control signal, arranged to have the determined characteristics, to the unmanned aerial vehicle,
wherein the processor (<NUM>) is further arranged to receive a plurality of routes, determine the route for the unmanned aerial vehicle (<NUM>) to follow by performing route deconfliction on the plurality of routes, and store the determined route in the memory (<NUM>).