IP Library › Granted Patent US 11,429,118
Granted Patent B2
US 11,429,118 · App. 16/515,854 · Granted Aug 30, 2022

Control of multi-drone fleets with temporal logic objectives

Inventors: Rahul Mangharam (Philadelphia, PA); Yash Vardhan Pant (Philadelphia, PA); Houssam Abbas (Philadelphia, PA); Rhudii A. Quaye (Philadelphia, PA)
Assignee: THE TRUSTEES OF THE UNIVERSITY OF PENNSYLVANIA
G05D1/104G05D1/1064G08G5/003G08G5/04
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,429,118
App. No.
16/515,854
Granted
Aug 30, 2022
Kind
B2
Abstract

Methods, systems, and computer readable media for controlling a fleet of drones. A method includes receiving a mission specification for each drone of one or more drones, each mission specification including spatio-temporal requirements for the drone. The method includes generating, for each drone, a low-rate trajectory for the drone by performing a robustness maximization of satisfying the mission specification over a low-rate sequence of waypoints for the drone based on a mapping between low-rate trajectories and high-rate trajectories. The method includes transmitting, to each drone, the low-rate trajectory for the drone, causing a local controller of each drone to control the drone by generating a high-rate trajectory using the low-rate trajectory and the mapping between low-rate trajectories and high-rate trajectories.

Claims (32)

1. A method for controlling a fleet of drones, the method comprising:

receiving, at a controller implemented on one or more processors, a mission specification for each drone of one or more drones, each mission specification including a plurality of spatio-temporal requirements for the drone;

generating, at the controller and for each drone, a first trajectory for the drone by performing a robustness maximization of satisfying the mission specification over a sequence of waypoints for the drone based on a mapping between low-rate trajectories and high-rate trajectories, wherein the mapping between low-rate trajectories and high-rate trajectories is a function that receives a motion duration, an initial waypoint, and a final waypoint; and

transmitting, at the central controller and to each drone, the low-rate trajectory for the drone, causing a local controller of each drone to control the drone by generating a second trajectory using the first trajectory and the mapping between low-rate trajectories and high-rate trajectories, wherein the first trajectory has a lower sampling rate than the second trajectory.

2. The method of claim 1 , wherein performing the robustness maximization of satisfying the mission specification comprises maximizing the robustness of satisfying the mission specification until determining trajectories for the fleet of drones satisfying at least a specified minimum robustness.

3. The method of claim 1 , wherein performing the robustness maximization of satisfying the mission specification comprises approximating the robustness of satisfying the mission specification by a smooth function.

4. The method of claim 3 , wherein performing the robustness maximization of satisfying the mission specification comprises maximizing the smooth function using gradient-based methods.

5. The method of claim 1 , wherein the function produces a minimum-jerk trajectory of the motion duration between the initial waypoint and the final waypoint.

6. The method of claim 1 , wherein generating a first trajectory for the drone comprises including constraints in performing the robustness maximization of satisfying the mission specification such that the second trajectory for the drone is dynamically feasible based on a capability specification of dynamics of the drone.

7. The method of claim 1 , wherein generating a first trajectory for the drone comprises including constraints in performing the robustness maximization of satisfying the mission specification to avoid collisions between the drones.

8. The method of claim 1 , wherein receiving a mission specification for each drone comprises receiving the mission specifications specified using signal temporal logic (STL).

9. The method of claim 1 , wherein each of the drones comprises a multi-rotor drone and each local controller comprises a position controller configured to track positions and velocities as specified by the second trajectory and an attitude controller configured to generate force commands for each rotor of the multi-rotor drone.

10. The method of claim 1 , wherein generating a first trajectory for the drone comprises repeatedly generating a first trajectory for the drone using an online feedback controller at intervals specified by a shrinking horizon.

11. A system for controlling a fleet of drones, the system comprising:

one or more processors; and

a controller implemented on the one or more processors and configured to perform operations comprising:

receiving a mission specification for each drone of one or more drones, each mission specification including a plurality of spatio-temporal requirements for the drone;

generating, for each drone, a first trajectory for the drone by performing a robustness maximization of satisfying the mission specification over a sequence of waypoints for the drone based on a mapping between low-rate trajectories and high-rate trajectories, wherein the mapping between low-rate trajectories and high-rate trajectories is a function that receives a motion duration, an initial waypoint, and a final waypoint; and

transmitting, to each drone, the first trajectory for the drone, causing a local controller of each drone to control the drone by generating a second trajectory using the first trajectory and the mapping between low-rate trajectories and high-rate trajectories, wherein the first trajectory has a lower sampling rate than the second trajectory.

12. The system of claim 11 , wherein performing the robustness maximization of satisfying the mission specification comprises maximizing the robustness of satisfying the mission specification until determining trajectories for the fleet of drones satisfying at least a specified minimum robustness.

13. The system of claim 11 , wherein performing the robustness maximization of satisfying the mission specification comprises approximating the robustness of satisfying the mission specification by a smooth function.

14. The system of claim 13 , wherein performing the robustness maximization of satisfying the mission specification comprises maximizing the smooth function using Sequential Quadratic Programming.

15. The system of claim 11 , wherein the function produces a minimum-jerk trajectory of the motion duration between the initial waypoint and the final waypoint.

16. The system of claim 11 , wherein generating a first trajectory for the drone comprises including constraints in performing the robustness maximization of satisfying the mission specification such that the second trajectory for the drone is dynamically feasible based on a capability specification of dynamics of the drone.

17. The system of claim 11 , wherein generating a first trajectory for the drone comprises including constraints in performing the robustness maximization of satisfying the mission specification to avoid collisions between the drones.

18. The system of claim 11 , wherein receiving a mission specification for each drone comprises receiving the mission specifications specified using signal temporal logic (STL).

19. The system of claim 11 , wherein each of the drones comprises a multi-rotor drone and each local controller comprises a position controller configured to track positions and velocities as specified by the second trajectory and an attitude controller configured to generate force commands for each rotor of the multi-rotor drone.

20. The system of claim 11 , wherein generating a first trajectory for the drone comprises repeatedly generating a first trajectory for the drone using an online feedback controller at intervals specified by a shrinking horizon.

21. A non-transitory computer readable medium storing executable instructions that when executed by at least one processor of a computer control the computer to perform operations comprising:

receiving, at a controller implemented on one or more processors, a mission specification for each drone of one or more drones, each mission specification including a plurality of spatio-temporal requirements for the drone;

generating, at the central controller and for each drone, a first trajectory for the drone by performing a robustness maximization of satisfying the mission specification over a sequence of waypoints for the drone based on a mapping between low-rate trajectories and high-rate trajectories, wherein the mapping between low-rate trajectories and high-rate trajectories is a function that receives a motion duration, an initial waypoint, and a final waypoint; and

transmitting, at the central controller and to each drone, the first trajectory for the drone, causing a local controller of each drone to control the drone by generating a second trajectory using the first trajectory and the mapping between low-rate trajectories and high-rate trajectories, wherein the first trajectory has a lower sampling rate than the second trajectory.

Continuity (2)
Provisional Application 62699933 · Jul 18, 2018
Related Publication 20200348696A1 · Nov 5, 2020
Cited By (1)
US 12,300,111