Patent Description:
This disclosure relates generally to aerial vehicles, and in particular but not exclusively, relates to control systems for unmanned aerial vehicles (UAVs).

An unmanned vehicle, which may also be referred to as an autonomous vehicle, is a vehicle capable of travel without a physically-present human operator. An unmanned vehicle may operate in a remote-control mode, in an autonomous mode, or in a partially autonomous mode.

When an unmanned vehicle operates in a remote-control mode, a pilot or driver that is at a remote location can control the unmanned vehicle via commands that are sent to the unmanned vehicle via a wireless link. When the unmanned vehicle operates in autonomous mode, the unmanned vehicle typically moves based on pre-programmed navigation waypoints, dynamic automation systems, or a combination of these. Further, some unmanned vehicles can operate in both a remote-control mode and an autonomous mode, and in some instances may do so simultaneously. For instance, a remote pilot or driver may wish to leave navigation to an autonomous system while manually performing another task, such as operating a mechanical system for picking up objects, as an example.

Various types of unmanned vehicles exist for various different environments. For instance, unmanned vehicles exist for operation in the air, on the ground, underwater, and in space. Unmanned aerial vehicles (UAVs) or drones are becoming more popular in general. As their designs are refined and their capabilities expanded, their suitability for commercial use is expected to expand. Designs that improve the efficiency, stability, reliability, and/or endurance of UAVs will expand their mission capabilities. United States patent application publication no. <CIT> presents a flight control system for an aircraft which is configured for receiving command signals representing commanded values of a location of a geospatial point and a radius about the geospatial point for defining a circular groundtrack.

Non-limiting and non-exhaustive embodiments of the invention are described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various views unless otherwise specified. Not all instances of an element are necessarily labeled so as not to clutter the drawings where appropriate. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles being described.

Embodiments of a system, apparatus, and method of operation for contingent use of a commanded speed in lieu of a sensed airspeed to inform flight control decisions are described herein. In the following description numerous specific details are set forth to provide a thorough understanding of the embodiments. One skilled in the relevant art will recognize, however, that the techniques described herein can be practiced without one or more of the specific details, or with other methods, components, materials, etc. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring certain aspects.

For aerial vehicles, such as unmanned aerial vehicles (UAVs), it is conventional to use airspeed, as measured from an onboard sensor (e.g., pitot probe), to inform flight control decisions. These decisions may include scheduling gains via the application of thrust with one or more propulsion units or allocating control effort applied via control surfaces (e.g., rudder, aileron, etc.). However, in circumstances where airspeed cannot be reliably obtained because the airspeed sensor is unable to make appropriate measurements of airspeed, it may be beneficial to perform the flight control decisions based on other information.

In exceptional circumstances, the inability to accurately measure airspeed may be due to a failed airspeed sensor. However, in more common scenarios, this may be due to misalignment between the aerial vehicle's forward aerodynamic axis (also referred to herein as the vehicle's x-axis) and its flight vector (direction of inertial movement relative to Earth's frame of reference). Typically, the airspeed sensor is mounted to the aerial vehicle in an orientation that measures airspeed along its forward aerodynamic axis. During regular flight orientations, the aerodynamic surfaces on the aerial vehicle cause a weathervane effect that aligns the forward aerodynamic axis of the aerial vehicle with its flight vector (see <FIG>), resulting in an accurate airspeed measurement. However, an aerial vehicle may enter flight modes where the forward aerodynamic axis of the aerial vehicle is not well aligned with its flight vector (see <FIG>). This is particularly true for vertical takeoff and landing (VTOL) vehicles when transitioning between a hover mode and cruising mode. This misalignment is usually short lived during the transition. However, in certain scenarios, the aerial vehicle may become unable to obtain sufficiently good airspeed measurements to facilitate an exit from the misaligned state, resulting in a lack of control authority, if control allocations are performed based on these airspeed measurements. As such, the aerial vehicle may become unable to accurately schedule gains and allocate control effort to exit this trapped state. Accordingly, embodiments described herein provide for a contingent use of a "commanded speed" in lieu of a "sensed airspeed" to inform flight control decisions. In one embodiment, the commanded speed is used as a reference point, such that quantities of thrust and torque applied are appropriate for the airspeed at which the aerial vehicle is being commended to travel, rather than its measured or estimated speed. The commanded speed may be specified relative to the airmass through which the aerial vehicle is flying or relative to Earth over which the aerial vehicle is flying.

<FIG> is a perspective view illustration of an aerial vehicle <NUM>, in accordance with an embodiment of the disclosure. The illustrated embodiment of aerial vehicle <NUM> is a VTOL unmanned aerial vehicle (UAV) that includes separate propulsion units <NUM> and <NUM> for providing horizontal and vertical propulsion, respectively. Aerial vehicle <NUM> is a fixed-wing aerial vehicle, which as the name implies, has a wing assembly <NUM> that can generate lift based on the wing shape and the vehicle's forward airspeed when propelled horizontally by propulsion units <NUM>.

The illustrated embodiment of aerial vehicle <NUM> has an airframe that includes a fuselage <NUM>, wing assembly <NUM>, and boom assemblies <NUM>. In one embodiment, fuselage <NUM> is modular and includes a battery module, an avionics module, and a mission payload module. These modules may be detachable from each other and mechanically securable to each other to contiguously form at least a portion of the fuselage or main body.

The battery module includes a cavity for housing one or more batteries for powering aerial vehicle <NUM>. The avionics module houses flight control circuitry of aerial vehicle <NUM>, which may include a processor and memory, communication electronics and antennas (e.g., cellular transceiver, wifi transceiver, etc.), and various sensors (e.g., global positioning sensor, an inertial measurement unit (IMU), a magnetic compass, etc.). The mission payload module houses equipment associated with a mission of aerial vehicle <NUM>. For example, the mission payload module may include a payload actuator for holding and releasing an externally attached payload. In another embodiment, the mission payload module may include a camera/sensor equipment holder for carrying camera/sensor equipment (e.g., camera, lenses, radar, lidar, pollution monitoring sensors, weather monitoring sensors, etc.). An airspeed sensor (e.g., pitot probe) may be mounted in a variety of locations on the airframe to measure airspeed along the forward axis or x-axis of the airframe.

As illustrated, aerial vehicle <NUM> includes horizontal propulsion units <NUM> positioned on wing assembly <NUM>, which can each include a motor, a motor rotor with shaft, and propeller blades, for propelling aerial vehicle <NUM> horizontally. The illustrated embodiment of aerial vehicle <NUM> further includes two boom assemblies <NUM> that secure to wing assembly <NUM>. Vertical propulsion units <NUM> are mounted to boom assemblies <NUM>. Vertical propulsion units <NUM> can each also include a motor, a motor rotor with shaft, and propeller blades, for providing vertical propulsion. Vertical propulsion units <NUM> may be used during a hover mode where aerial vehicle <NUM> is descending (e.g., to a delivery location), ascending (e.g., following a delivery), or maintaining a constant altitude. Stabilizers <NUM> (or tails) may be included with aerial vehicle <NUM> to control pitch and stabilize the aerial vehicle's yaw (left or right turns) during cruise. In some embodiments, during cruise vertical propulsion units <NUM> are disabled and during hover horizontal propulsion units <NUM> are disabled. In other embodiments, vertical propulsion units <NUM> are merely powered low during cruise mode and/or horizontal propulsion units <NUM> are merely powered low during hover mode.

During flight, aerial vehicle <NUM> may control the direction and/or speed of its movement by controlling its pitch, roll, yaw, and/or altitude. Thrust from horizontal propulsion units <NUM> is used to control air speed as scheduled gains. The stabilizers <NUM> may include one or more rudders 108a for controlling the aerial vehicle's yaw, and wing assembly <NUM> may include elevators for controlling the aerial vehicle's pitch and/or ailerons 102a for controlling the aerial vehicle's roll. Control effort may be allocated via these control surfaces. As another example, increasing or decreasing the speed of all the propeller blades simultaneously can result in aerial vehicle <NUM> increasing or decreasing its altitude, respectively.

Many variations on the illustrated fixed-wing aerial vehicle are possible. For instance, aerial vehicles with more wings (e.g., an "x-wing" configuration with four wings), are also possible. Although <FIG> illustrates one wing assembly <NUM>, two boom assemblies <NUM>, two horizontal propulsion units <NUM>, and four vertical propulsion units <NUM> per boom assembly <NUM>, it should be appreciated that other variants of aerial vehicle <NUM> may be implemented with more or less of these components. Furthermore, the control techniques described herein are not limited to use with only VTOLs or UAVs, but rather these control techniques may be applicable to other types of aerial vehicles as well.

It should be understood that references herein to an "unmanned" aerial vehicle or UAV can apply equally to autonomous and semi-autonomous aerial vehicles. In a fully autonomous implementation, all functionality of the aerial vehicle is automated; e.g., pre-programmed or controlled via real-time computer functionality that responds to input from various sensors and/or pre-determined information. In a semi-autonomous implementation, some functions of an aerial vehicle may be controlled by a human operator, while other functions are carried out autonomously. Further, in some embodiments, a UAV may be configured to allow a remote operator to take over functions that can otherwise be controlled autonomously by the UAV. Yet further, a given type of function may be controlled remotely at one level of abstraction and performed autonomously at another level of abstraction. For example, a remote operator may control high level navigation decisions for a UAV, such as specifying that the UAV should travel from one location to another (e.g., from a warehouse in a suburban area to a delivery address in a nearby city), while the UAV's navigation system autonomously controls more fine-grained navigation decisions, such as the specific route to take between the two locations, specific flight controls to achieve the route and avoid obstacles while navigating the route, and so on.

<FIG> illustrates a UAV <NUM> navigating a drone mission over a neighborhood <NUM> along a flight path including hover segments 210A and 210C and a cruise segment 210B. UAV <NUM> may be implemented by aerial vehicle <NUM>, in one embodiment. The flight path is traversed by UAV <NUM> in response to a commanded path generated by a mission manager. The commanded path is the path that UAV <NUM> is commanded to follow by a control system, while the flight path is the actual path executed. In an ideal situation, these two paths are coincident, though in reality these paths may slightly deviate as the control system of UAV <NUM> strives to execute the commanded path despite real world influences like wind, turbulence, aerodynamic drag, rain, etc. The drone mission includes acceleration during hover segment 210A, a constant velocity during cruising segment 210B, and deacceleration to a destination <NUM> during hover segment 210C.

UAV <NUM> commences its drone mission from a staging area <NUM> in a hover mode to traverse hover segment 210A. During the hover mode, UAV <NUM> starts at a ground elevation, rises up to a cruising altitude, and then accelerates to a cruising speed before fully transitioning to a cruising mode for the cruising segment 210B of the flight path. In some embodiments, the cruising speed is a fixed value (e.g., <NUM> mph). The fixed value may be selected based upon the design/type of UAV <NUM>, the range of the particular drone mission, the weight/drag of a payload, battery constraints, or other factors and considerations. The fixed value, when used for airspeed tracking, is an airspeed at which the aircraft is expected to travel. The fixed value may be used to select gains and control allocations appropriate for such a speed.

In a typical scenario, wind drag on the aerodynamic surfaces of UAV <NUM> orients forward axis <NUM> of UAV <NUM> along the commanded path (see also <FIG>) as UAV <NUM> accelerates to the cruising speed. However, in certain environmental situations, UAV <NUM> may end up misaligned from the commanded path (e.g., see <FIG>) such that lateral axis <NUM> tilts towards the commanded path. In this misalignment orientation, the onboard airspeed sensor may not accurately reflect true airspeed due to misalignment of the sensor to the direction of travel through the airmass. As such, the flight control system may not receive sufficiently accurate feedback from onboard sensors to regain control authority, thus becoming trapped in this misaligned and inefficient state.

<FIG> is a functional block diagram illustrating a control system <NUM> for UAV <NUM>, in accordance with an embodiment of the disclosure. The illustrated embodiment of control system includes a mission manager <NUM> and flight control system <NUM>, which provide control commands to propulsion units <NUM> and control surfaces <NUM>. Propulsion units <NUM> may include one or both of horizontal propulsion units <NUM> and vertical propulsion units <NUM>. Control surfaces <NUM> may include any of the control surfaces including ailerons 102a and rudders 108a, or other actuated control surfaces.

Referring to <FIG> and <FIG>, mission manager <NUM> generates a commanded inertial velocity <NUM>, which points along commanded path <NUM> (also generated by mission manager <NUM>). Commanded inertial velocity <NUM> is a vector quantity (magnitude and direction), and should be interpreted as a commanded velocity relative to an inertial reference frame (e.g., Earth's frame of reference).

Flight control system <NUM> breaks down commanded inertial velocity <NUM> into two components: a forward commanded inertial velocity (v xci) and a lateral commanded inertial velocity (V_yci). The "x" and "y" correspond to directions relative to the aircraft's body frame: x-forward axis <NUM> and y-lateral axis <NUM>. The "c" refers to the fact that these quantities are commands, rather than estimates of a current state. The "i" refers to "inertial.

A placeholder value referred to as a "forward commanded velocity" (Y_xc) is defined. In the hover mode (including acceleration and deceleration), V_xc is set to equal the forward commanded inertial velocity V_xci. However, in the cruising mode, V_xc is instead set to a fixed value associated with the cruising mode. The fixed value may be considered a commanded airspeed (as opposed to a commanded velocity with directional information) for cruising. In one embodiment, this fixed value is a preset defined parameter of the aircraft. The subscript "i" is dropped from V_xc to emphasize this distinction. With the above values and terminology established, a commanded speed (cmd_speed) may be defined as: <MAT> With the above substitution, when the UAV's forward axis (x axis) is aligned with commanded path <NUM> in the cruise mode (see <FIG>), the UAV essentially ignores commanded inertial velocity <NUM> and simply tracks a commanded speed (e.g., V_yci = <NUM>; cmd speed = V_xc = present fixed value in cruising mode, which is a commanded speed, not a measured or sensed airspeed). If the UAV is less well-aligned with the direction of travel (see <FIG>), the forward commanded velocity V_xc remains the constant fixed value, but V_yci will grow in magnitude, and thus the value cmd speed will also increase according to Eq. <NUM>.

Conventionally, a flight control system references a sensed airspeed to schedule gains and allocate control effort. However, flight control system <NUM> instead contingently uses cmd_speed to schedule gains and allocate control effort. In one embodiment, flight control system <NUM> contingently references cmd speed in lieu of sensed airspeed to inform flight control decisions according to expression <NUM>: <MAT> where sensed airspeed is the airspeed as measured by an onboard sensor of the UAV. Accordingly, in one embodiment, flight control system <NUM> uses the maximum value selected between cmd speed and sensed airspeed, rather than just using a measured airspeed.

During acceleration (e.g., hover mode), using Ex. <NUM> to inform flight control decisions adds robustness when sensed airspeed is artificially low due to poor alignment of the sensor with direction of travel through the airmass. The larger value of cmd_speed is instead used, which provides an appropriate value upon which to schedule gains. During constant speed cruising (e.g., cruising mode), using Ex. <NUM> to inform flight control decisions adds robustness when the vehicle becomes misaligned from its commanded path <NUM> (see <FIG>) due to disturbances. In this scenario, Ex. <NUM> provides a larger value, relative to an artificially suppressed sensed airspeed. This larger value is more appropriate for the cruising flight.

<FIG> is a flow chart illustrating a process <NUM> for selectively substituting a commanded speed (cmd_speed) for a sensed airspeed (sensed_airspeed) to inform flight control decisions of UAV <NUM>, in accordance with an embodiment of the disclosure. The order in which some or all of the process blocks appear in process <NUM> should not be deemed limiting. Rather, one of ordinary skill in the art having the benefit of the present disclosure will understand that some of the process blocks may be executed in a variety of orders not illustrated, or even in parallel.

In a process block <NUM>, flight control system <NUM> monitors the sensed airspeed (sensed_airspeed) from an onboard airspeed sensor. In a process block <NUM>, flight control system <NUM> obtains the commanded speed (cmd_speed). In one embodiment, the commanded speed is calculated based upon Eq. <NUM>. If flight control system <NUM> determines that sensed airspeed is larger than cmd speed, then process <NUM> continues to process block <NUM> where flight control system <NUM> uses sensed airspeed to inform its flight control decisions to keep UAV <NUM> tracking commanded path <NUM>.

However, if cmd speed is determined to be greater than sensed airspeed, then process <NUM> continues to a process block <NUM> and contingently uses the commanded speed (see Eq. <NUM>) in lieu of sensed airspeed to inform flight control decisions of UAV <NUM>. If UAV <NUM> is operating in a cruising mode (decision block <NUM>), then the forward commanded velocity (Y_xc) is set to a preset fixed value associated with cruising for UAV <NUM> (process block <NUM>). However, if UAV <NUM> is operating in a hover mode (decision block <NUM>), then the forward commanded velocity (V_xc) is set to a forward commanded inertial velocity (V_xci) calculated by flight control system <NUM> as a forward component of the commanded inertial velocity <NUM> provided by mission manager <NUM>. The forward component is the projection of commanded inertial velocity <NUM> on to commanded path <NUM>.

A tangible machine-readable storage medium includes any mechanism that provides (i.e., stores) information in a non-transitory form accessible by a machine (e.g., a computer, network device, personal digital assistant, manufacturing tool, any device with a set of one or more processors, etc.). For example, a machine-readable storage medium includes recordable/non-recordable media (e.g., read only memory (ROM), random access memory (RAM), magnetic disk storage media, optical storage media, flash memory devices, etc.).

Claim 1:
A method of controlling an unmanned aerial vehicle (UAV), the method comprising:
monitoring a sensed airspeed of the UAV (<NUM>; <NUM>);
obtaining a commanded speed for the UAV, the commanded speed representing a command to fly the UAV at a given speed relative to an airmass through which the UAV is flying or to Earth over which the UAV is flying, characterised in that obtaining the commanded speed for the UAV comprises calculating the commanded speed (cmd_speed) as: <MAT>
where V xc represents a forward commanded velocity for the UAV and V_yci represents a lateral commanded inertial velocity for the UAV, the lateral commanded inertial velocity calculated as a lateral component of a commanded inertial velocity that points along a commanded path for the UAV;
when the commanded speed is greater than the sensed airspeed, using the commanded speed in lieu of the sensed airspeed for scheduling thrust for propulsion of the UAV and/or allocating control effort for a control surface (<NUM>) of the UAV; and
when the sensed airspeed is greater than the commanded speed, using the sensed airspeed instead of the commanded speed for scheduling thrust for propulsion of the UAV and/or allocating control effort for the control surface of the UAV.