IP Library Granted Patent US 10,556,704
Granted Patent B1
US 10,556,704 · App. 16/133,462 · Granted Feb 11, 2020

Health based actuator allocation

Inventors: Christopher Scott Saunders (San Jose, CA); Mark Johnson Cutler (Sunnyvale, CA)
Assignee: Kitty Hawk Corporation
B64D31/06B64D45/00G07C5/0808B64D2045/0085G05D1/0808G05D1/101
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 10,556,704
App. No.
16/133,462
Granted
Feb 11, 2020
Kind
B1
Abstract

A set of one or more desired forces or desired moments associated with an aircraft having a plurality of rotor modules is received. A plurality of health metrics associated with the plurality of rotor modules is received. A plurality of commands for the plurality of rotor modules is determined based at least in part on the set of desired forces or desired moments and the plurality of health metrics. The plurality of commands is sent to the plurality of rotor modules where each rotor module in the plurality of rotor modules is configured to perform a corresponding command in the plurality of commands.

Claims (104)

1. An aircraft, comprising:

a plurality of rotor modules; and

a flight computer which is configured to:

receive a set of one or more desired forces or desired moments associated with the aircraft;

receive a plurality of health metrics associated with the plurality of rotor modules;

determine a plurality of commands for the plurality of rotor modules based at least in part on the set of desired forces or desired moments and the plurality of health metrics including by:

determining whether a health metric associated with a first rotor module in the plurality of rotor modules exceeds a threshold, wherein decreasing health of a rotor module causes a health metric to increase;

in response to determining that the health metric associated with the first rotor module does not exceed the threshold, setting a first command associated with the first rotor to be a first predefined value; and

in response to determining that the health metric associated with the first rotor module exceeds the threshold, setting a first command associated with the first rotor to be a second non-zero predefined value, wherein the second non-zero pre-defined value is less than the first predefined value;

instruct the plurality of rotor modules to carry out the determined plurality of commands to change the health metric associated with the first rotor module and to change a health metric associated with a second rotor module; and

after instructing the plurality of rotor modules to carry out the determined plurality of commands, determine that the health metric associated with the first rotor module changes less than the health metric of the second rotor module.

2. The aircraft recited in claim 1 , wherein determining the plurality of commands includes:

setting a first amount of thrust in the first command associated with a first rotor module in the plurality of rotor modules to be a predefined value, wherein the first rotor module has an unhealthier health metric compared to the second rotor module in the plurality of rotor modules; and

determining a second amount of thrust in a second command associated with the second rotor module that satisfies the set of desired forces or desired moments, given that the first amount of thrust is set to the predefined value.

3. The aircraft recited in claim 1 , wherein determining the plurality of commands includes:

setting a first weight, associated with taking the set of desired forces or desired moments into account, and a second weight, associated with taking the plurality of health metrics into account, based at least in part on the plurality of health metrics; and

simultaneously determining (1) a first amount of thrust in the first command associated with a first rotor module in the plurality of rotor modules and (2) a second amount of thrust in a second command associated with the second rotor module in the plurality of rotor modules that (a) satisfy the set of desired forces or desired moments to a degree specified by the first weight and (b) satisfy a health consideration to a degree specified by the second weight, wherein the first rotor module has an unhealthier health metric compared to the second rotor module.

4. The aircraft recited in claim 1 , wherein:

the plurality of rotor modules includes a plurality of batteries;

the plurality of health metrics includes a plurality of battery temperatures associated with the plurality of batteries; and

determining the plurality of commands includes determining the plurality of commands for the plurality of rotor modules based at least in part on the set of desired forces or desired moments and the plurality of battery temperatures.

5. The aircraft recited in claim 1 , wherein determining the plurality of commands includes:

in response to determining that the health metric does not exceed the threshold:

setting a first amount of thrust in the first command associated with the first rotor module in the plurality of rotor modules to be the first predefined value, wherein the first rotor module has an unhealthier health metric compared to the second rotor module in the plurality of rotor modules; and

determining a second amount of thrust in a second command associated with the second rotor module that satisfies the set of desired forces or desired moments, given that the first amount of thrust is set to the first predefined value; and

in response to determining that the health metric exceeds the threshold:

setting the first amount of thrust to be the second non-zero predefined value; and

determining the second amount of thrust that satisfies the set of desired forces or desired moments, given that the second amount of thrust is set to the first predefined value.

6. The aircraft recited in claim 1 , wherein determining the plurality of commands includes:

setting a first weight, associated with taking the set of desired forces or desired moments into account, and a second weight, associated with taking the plurality of health metrics into account, to initial values;

simultaneously determining (1) a first amount of thrust in the first command associated with the first rotor module in the plurality of rotor modules and (2) a second amount of thrust in a second command associated with the second rotor module in the plurality of rotor modules that (a) satisfies the set of desired forces or desired moments to a degree specified by the initial value of the first weight and (b) satisfies a health consideration to a degree specified by the initial value of the second weight, wherein the first rotor module has an unhealthier health metric compared to the second rotor module; and

in response to a difference between the first weight and the second weight meeting a threshold, adjusting the first weight and the second weight.

7. The aircraft recited in claim 1 , wherein determining the plurality of commands includes:

decomposing the set of desired forces or desired moments into a plurality of orthogonal components, including: (1) a first component associated with movement and rotation within an x-y plane, (2) a second component associated with movement along a z-axis, and (3) a third component associated with rotation about the z-axis;

searching for the plurality of commands based at least in part on satisfying the first component, the second component, and the plurality of health metrics and at least partially satisfying the third component; and

in response to not finding the plurality of commands, searching for the plurality of commands based at least in part on satisfying the first component and the plurality of health metrics and at least partially satisfying the second component and the third component.

8. A method, comprising:

receiving a set of one or more desired forces or desired moments associated with an aircraft having a plurality of rotor modules;

receiving a plurality of health metrics associated with the plurality of rotor modules;

determining a plurality of commands for the plurality of rotor modules based at least in part on the set of desired forces or desired moments and the plurality of health metrics including by:

determining whether a health metric associated with a first rotor module in the plurality of rotor modules exceeds a threshold, wherein decreasing health of a rotor module causes a health metric to increase;

in response to determining that the health metric associated with the first rotor module does not exceed the threshold, setting a first command associated with the first rotor to be a first predefined value; and

in response to determining that the health metric associated with the first rotor module exceeds the threshold, setting a first command associated with the first rotor to be a second non-zero predefined value, wherein the second non-zero pre-defined value is less than the first predefined value;

instructing the plurality of rotor modules to carry out the determined plurality of commands to change the health metric associated with the first rotor module and to change a health metric associated with a second rotor module; and

after instructing the plurality of rotor modules to carry out the determined plurality of commands, determining that the health metric associated with the first rotor module changes less than the health metric of the second rotor module.

9. The method recited in claim 8 , wherein determining the plurality of commands includes:

setting a first amount of thrust in the first command associated with a first rotor module in the plurality of rotor modules to be a predefined value, wherein the first rotor module has an unhealthier health metric compared to the second rotor module in the plurality of rotor modules; and

determining a second amount of thrust in a second command associated with the second rotor module that satisfies the set of desired forces or desired moments, given that the first amount of thrust is set to the predefined value.

10. The method recited in claim 8 , wherein determining the plurality of commands includes:

setting a first weight, associated with taking the set of desired forces or desired moments into account, and a second weight, associated with taking the plurality of health metrics into account, based at least in part on the plurality of health metrics; and

simultaneously determining (1) a first amount of thrust in the first command associated with a first rotor module in the plurality of rotor modules and (2) a second amount of thrust in a second command associated with the second rotor module in the plurality of rotor modules that (a) satisfy the set of desired forces or desired moments to a degree specified by the first weight and (b) satisfy a health consideration to a degree specified by the second weight, wherein the first rotor module has an unhealthier health metric compared to the second rotor module.

11. The method recited in claim 8 , wherein:

the plurality of rotor modules includes a plurality of batteries;

the plurality of health metrics includes a plurality of battery temperatures associated with the plurality of batteries; and

determining the plurality of commands includes determining the plurality of commands for the plurality of rotor modules based at least in part on the set of desired forces or desired moments and the plurality of battery temperatures.

12. The method recited in claim 8 , wherein determining the plurality of commands includes:

in response to determining that the health metric does not exceed the threshold:

setting a first amount of thrust in the first command associated with the first rotor module in the plurality of rotor modules to be the first predefined value, wherein the first rotor module has an unhealthier health metric compared to the second rotor module in the plurality of rotor modules; and

determining a second amount of thrust in a second command associated with the second rotor module that satisfies the set of desired forces or desired moments, given that the first amount of thrust is set to the first predefined value; and

in response to determining that the health metric exceeds the threshold:

setting the first amount of thrust to be the second non-zero predefined value; and

determining the second amount of thrust that satisfies the set of desired forces or desired moments, given that the second amount of thrust is set to the first predefined value.

13. The method recited in claim 8 , wherein determining the plurality of commands includes:

setting a first weight, associated with taking the set of desired forces or desired moments into account, and a second weight, associated with taking the plurality of health metrics into account, to initial values;

simultaneously determining (1) a first amount of thrust in the first command associated with the first rotor module in the plurality of rotor modules and (2) a second amount of thrust in a second command associated with the second rotor module in the plurality of rotor modules that (a) satisfies the set of desired forces or desired moments to a degree specified by the initial value of the first weight and (b) satisfies a health consideration to a degree specified by the initial value of the second weight, wherein the first rotor module has an unhealthier health metric compared to the second rotor module; and

in response to a difference between the first weight and the second weight meeting a threshold, adjusting the first weight and the second weight.

14. The method recited in claim 8 , wherein determining the plurality of commands includes:

decomposing the set of desired forces or desired moments into a plurality of orthogonal components, including: (1) a first component associated with movement and rotation within an x-y plane, (2) a second component associated with movement along a z-axis, and (3) a third component associated with rotation about the z-axis;

searching for the plurality of commands based at least in part on satisfying the first component, the second component, and the plurality of health metrics and at least partially satisfying the third component; and

in response to not finding the plurality of commands, searching for the plurality of commands based at least in part on satisfying the first component and the plurality of health metrics and at least partially satisfying the second component and the third component.

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

receiving a set of one or more desired forces or desired moments associated with an aircraft having a plurality of rotor modules;

receiving a plurality of health metrics associated with the plurality of rotor modules;

determining a plurality of commands for the plurality of rotor modules based at least in part on the set of desired forces or desired moments and the plurality of health metrics including by:

determining whether a health metric associated with a first rotor module in the plurality of rotor modules exceeds a threshold, wherein decreasing health of a rotor module causes a health metric to increase;

in response to determining that the health metric associated with the first rotor module does not exceed the threshold, setting a first command associated with the first rotor to be a first predefined value; and

in response to determining that the health metric associated with the first rotor module exceeds the threshold, setting a first command associated with the first rotor to be a second non-zero predefined value, wherein the second non-zero pre-defined value is less than the first predefined value;

instructing the plurality of rotor modules to carry out the determined plurality of commands to change the health metric associated with the first rotor module and to change a health metric associated with a second rotor module; and

after instructing the plurality of rotor modules to carry out the determined plurality of commands, determining that the health metric associated with the first rotor module changes less than the health metric of the second rotor module.

16. The computer program product recited in claim 15 , wherein determining the plurality of commands includes:

setting a first amount of thrust in the first command associated with a first rotor module in the plurality of rotor modules to be a predefined value, wherein the first rotor module has an unhealthier health metric compared to the second rotor module in the plurality of rotor modules; and

determining a second amount of thrust in a second command associated with the second rotor module that satisfies the set of desired forces or desired moments, given that the first amount of thrust is set to the predefined value.

17. The computer program product recited in claim 15 , wherein determining the plurality of commands includes:

setting a first weight, associated with taking the set of desired forces or desired moments into account, and a second weight, associated with taking the plurality of health metrics into account, based at least in part on the plurality of health metrics; and

simultaneously determining (1) a first amount of thrust in the first command associated with a first rotor module in the plurality of rotor modules and (2) a second amount of thrust in a second command associated with the second rotor module in the plurality of rotor modules that (a) satisfy the set of desired forces or desired moments to a degree specified by the first weight and (b) satisfy a health consideration to a degree specified by the second weight, wherein the first rotor module has an unhealthier health metric compared to the second rotor module.

18. The computer program product recited in claim 15 , wherein:

the plurality of rotor modules includes a plurality of batteries;

the plurality of health metrics includes a plurality of battery temperatures associated with the plurality of batteries; and

determining the plurality of commands includes determining the plurality of commands for the plurality of rotor modules based at least in part on the set of desired forces or desired moments and the plurality of battery temperatures.

19. The computer program product recited in claim 15 , wherein determining the plurality of commands includes:

in response to determining that the health metric does not exceed the threshold:

setting a first amount of thrust in the first command associated with the first rotor module in the plurality of rotor modules to be the first predefined value, wherein the first rotor module has an unhealthier health metric compared to the second rotor module in the plurality of rotor modules; and

determining a second amount of thrust in a second command associated with the second rotor module that satisfies the set of desired forces or desired moments, given that the first amount of thrust is set to the first predefined value; and

in response to determining that the health metric exceeds the threshold:

setting the first amount of thrust to be the second non-zero predefined value; and

determining the second amount of thrust that satisfies the set of desired forces or desired moments, given that the second amount of thrust is set to the first predefined value.

20. The computer program product recited in claim 15 , wherein determining the plurality of commands includes:

setting a first weight, associated with taking the set of desired forces or desired moments into account, and a second weight, associated with taking the plurality of health metrics into account, to initial values;

simultaneously determining (1) a first amount of thrust in the first command associated with the first rotor module in the plurality of rotor modules and (2) a second amount of thrust in a second command associated with the second rotor module in the plurality of rotor modules that (a) satisfies the set of desired forces or desired moments to a degree specified by the initial value of the first weight and (b) satisfies a health consideration to a degree specified by the initial value of the second weight, wherein the first rotor module has an unhealthier health metric compared to the second rotor module; and

in response to a difference between the first weight and the second weight meeting a threshold, adjusting the first weight and the second weight.

21. The computer program product recited in claim 15 , wherein determining the plurality of commands includes:

decomposing the set of desired forces or desired moments into a plurality of orthogonal components, including: (1) a first component associated with movement and rotation within an x-y plane, (2) a second component associated with movement along a z-axis, and (3) a third component associated with rotation about the z-axis;

searching for the plurality of commands based at least in part on satisfying the first component, the second component, and the plurality of health metrics and at least partially satisfying the third component; and

in response to not finding the plurality of commands, searching for the plurality of commands based at least in part on satisfying the first component and the plurality of health metrics and at least partially satisfying the second component and the third component.

Assignments (7)
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 Dec 14, 2018
From: SAUNDERS, CHRISTOPHER SCOTT; CUTLER, MARK JOHNSON
To: KITTY HAWK CORPORATION
Reel/Frame 047777/0925 →
SECURITY INTEREST Recorded Dec 7, 2018
From: KITTY HAWK CORPORATION
To: ONE AERO, LLC
Reel/Frame 047739/0947 →
SECURITY INTEREST Recorded Oct 25, 2018
From: KITTY HAWK CORPORATION
To: ONE AERO, LLC
Reel/Frame 047308/0927 →