IP Library Granted Patent US 11,155,356
Granted Patent B2
US 11,155,356 · App. 16/794,710 · Granted Oct 26, 2021

Thrust allocation using optimization in a distributed flight control system

Inventor: Tim Allan Wheeler (Mountain View, CA)
Assignee: Kitty Hawk Corporation
B64D31/12B60L15/20B64C29/0025B64D27/24B60L2200/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,155,356
App. No.
16/794,710
Granted
Oct 26, 2021
Kind
B2
Abstract

Thrust values for motors in an aircraft are generated where each flight controller in a plurality of flight controllers generates a thrust value for each motor in a plurality of motors using an optimization problem with a single solution. Each flight controller in the plurality of flight controllers passes one of the generated thrust values to a corresponding motor in the plurality of motors, where other generated thrust values for that flight controller terminate at that flight controller. The plurality of motors perform the passed thrust values.

Claims (46)

1. An aircraft, comprising:

a plurality of flight controllers configured to:

generate thrust values for a plurality of motors in the aircraft, wherein each flight controller in the plurality of flight controllers is configured to generate a complete set of thrust values that includes a thrust value for each motor in the plurality of motors using a convex optimization problem with a single solution, wherein the convex optimization problem minimizes a difference between desired forces and moments for motor thrusts and realized forces and moments for the motor thrusts; and

from each flight controller in the plurality of flight controllers, pass only one of the generated thrust values in that flight controller's complete set of thrust values to a corresponding motor in the plurality of motors, wherein other generated thrust values in that flight controller's complete set of thrust values that are not passed to the corresponding motor terminate at that flight controller; and

the plurality of motors are configured to perform the passed thrust values.

2. The aircraft of claim 1 , wherein to generate thrust values, the plurality of flight controllers are configured to constrain the thrust values to be feasible using a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector.

3. The aircraft of claim 1 , wherein:

to generate thrust values, the plurality of flight controllers are configured to constrain the thrust values to be feasible using a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector; and

to constrain the thrust values to be feasible, the plurality of flight controllers are further configured to constrain the thrust values to be greater than or equal to zero.

4. The aircraft of claim 1 , wherein to generate thrust values, the plurality of flight controllers are configured to use active set techniques, including by tracking if any of the thrust values are actively constrained by a corresponding maximum thrust value in a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector.

5. The aircraft of claim 1 , wherein to generate thrust values, the plurality of flight controllers are configured to use active set techniques, including by tracking if any of the thrust values are actively constrained by a corresponding maximum thrust value in a maximum thrust vector, wherein:

any motor outs are reflected in the maximum thrust vector; and

a first set of thrust values generated for a first set of desired forces and moments is used as an initial set of thrust values when generating thrust values for a second, subsequent set of desired forces and moments.

6. The aircraft of claim 1 , wherein:

a portion of the convex optimization problem is associated with ensuring that there is the single solution to the convex optimization problem; and

the portion of the convex optimization problem associated with ensuring that there is the single solution includes a matrix associated with projecting the thrust values onto a null space associated with one or more desired forces and/or moments, such that generating the thrust values is independent of the portion of the convex optimization problem associated with ensuring that there is the single solution.

7. A method, comprising:

generating thrust values for a plurality of motors in an aircraft, wherein each flight controller in a plurality of flight controllers generates a complete set of thrust values that includes a thrust value for each motor in the plurality of motors using a convex optimization problem with a single solution, wherein the convex optimization problem minimizes a difference between desired forces and moments for motor thrusts and realizes forced and moments for the motor thrusts;

from each flight controller in the plurality of flight controllers, passing only one of the generated thrust values in that flight controller's complete set of thrust values to a corresponding motor in the plurality of motors, wherein other generated thrust values in that flight controller's complete set of thrust values that are not passed to the corresponding motor terminate at that flight controller; and

performing the passed thrust values using the plurality of motors.

8. The method of claim 7 , wherein generating thrust values includes constraining the thrust values to be feasible using a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector.

9. The method of claim 7 , wherein:

generating thrust values includes constraining the thrust values to be feasible using a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector; and

constraining the thrust values to be feasible further includes constraining the thrust values to be greater than or equal to zero.

10. The method of claim 7 , wherein generating thrust values includes using active set techniques, including by tracking if any of the thrust values are actively constrained by a corresponding maximum thrust value in a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector.

11. The method of claim 7 , wherein generating thrust values includes using active set techniques, including by tracking if any of the thrust values are actively constrained by a corresponding maximum thrust value in a maximum thrust vector, wherein:

any motor outs are reflected in the maximum thrust vector; and

a first set of thrust values generated for a first set of desired forces and moments is used as an initial set of thrust values when generating thrust values for a second, subsequent set of desired forces and moments.

12. The method of claim 7 , wherein:

a portion of the convex optimization problem is associated with ensuring that there is the single solution to the convex optimization problem; and

the portion of the convex optimization problem associated with ensuring that there is the single solution includes a matrix associated with projecting the thrust values onto a null space associated with one or more desired forces and/or moments, such that generating the thrust values is independent of the portion of the convex optimization problem associated with ensuring that there is the single solution.

13. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

generating thrust values for a plurality of motors in an aircraft, wherein each flight controller in a plurality of flight controllers generates a complete set of thrust values that includes a thrust value for each motor in the plurality of motors using a convex optimization problem with a single solution, wherein the convex optimization problem minimizes a difference between desired forces and moments for motor thrusts and realizes forced and moments for the motor thrusts;

from each flight controller in the plurality of flight controllers, passing only one of the generated thrust values in that flight controller's complete set of thrust values to a corresponding motor in the plurality of motors, wherein other generated thrust values in that flight controller's complete set of thrust values that are not passed to the corresponding motor terminate at that flight controller; and

performing the passed thrust values using the plurality of motors.

14. The computer program product of claim 13 , wherein the computer instructions for generating thrust values include computer instructions for constraining the thrust values to be feasible using a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector.

15. The computer program product of claim 13 , wherein:

the computer instructions for generating thrust values include computer instructions for constraining the thrust values to be feasible using a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector; and

the computer instructions for constraining the thrust values to be feasible further include computer instructions for constraining the thrust values to be greater than or equal to zero.

16. The computer program product of claim 13 , wherein the computer instructions for generating thrust values include computer instructions for using active set techniques, including by tracking if any of the thrust values are actively constrained by a corresponding maximum thrust value in a maximum thrust vector, wherein any motor outs are reflected in the maximum thrust vector.

17. The computer program product of claim 13 , wherein the computer instructions for generating thrust values include computer instructions for using active set techniques, including by tracking if any of the thrust values are actively constrained by a corresponding maximum thrust value in a maximum thrust vector, wherein:

any motor outs are reflected in the maximum thrust vector; and

a first set of thrust values generated for a first set of desired forces and moments is used as an initial set of thrust values when generating thrust values for a second, subsequent set of desired forces and moments.

18. The computer program product of claim 13 , wherein:

a portion of the convex optimization problem is associated with ensuring that there is the single solution to the convex optimization problem; and

the portion of the convex optimization problem associated with ensuring that there is the single solution includes a matrix associated with projecting the thrust values onto a null space associated with one or more desired forces and/or moments, such that generating the thrust values is independent of the portion of the convex optimization problem associated with ensuring that there is the single solution.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded May 22, 2023
From: ONE AERO, LLC
To: KITTY HAWK CORPORATION
Reel/Frame 063713/0367 →
SECURITY INTEREST Recorded Mar 25, 2022
From: KITTY HAWK CORPORATION
To: ONE AERO, LLC
Reel/Frame 059503/0382 →
SECURITY INTEREST Recorded Nov 4, 2021
From: KITTY HAWK CORPORATION
To: ONE AERO, LLC
Reel/Frame 058029/0610 →
SECURITY INTEREST Recorded Oct 22, 2020
From: KITTY HAWK CORPORATION
To: ONE AERO, LLC
Reel/Frame 054206/0714 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2020
From: WHEELER, TIM ALLAN
To: KITTY HAWK CORPORATION
Reel/Frame 052712/0139 →
Continuity (1)
Related Publication 20210253263A1 · Aug 19, 2021
Cited By (1)
US 12,291,343