This thesis presents a novel architecture for human-in-the-loop control of multiple drones. The design of such systems must address several challenges at the same time. The drones must avoid collisions with each other and with obstacles in their task environment while following operator's command as closely as possible to navigate their environment. To this end, they should be able to adjust their pre-defined desired formation and, if needed, transition to alternative formations to ensure collision-free operation in their task environment while following the operator's commands.
The proposed control strategy is a central algorithm with multiple stages and relies on formulating and solving convex optimization problems in real time to achieve the control objectives. The operator provides reference velocity commands for the flock of drones to move them in the task environment. The algorithm creates linear collision avoidance constraints and distributes the operator's commands among the drones through a number of intermediate steps. It generates reference trajectories for the drones motion by solving a model-based optimization problem over a receding horizon. Conventional trajectory controllers generate the control inputs for individual drones.
Prospective formation shapes are obtained for the drones by formulating and solving parallel convex optimizations, considering the operator's reference command and the obstacle-free space. While keeping the convexity of the optimization problem, the proposed algorithm allows for the presence of obstacles in the middle of the formation. This is achieved by properly assigning obstacle-free regions to each agent separately in the formation. In addition, safe convex regions in the form of linear inequality constraints are generated in the direction of the operator's commanded velocity. Moreover, constraints are introduced to avoid inter-drone collisions at each step. Trajectory optimization is formulated as a quadratic programming problem similar to model predictive control schemes to minimize deviation from human operator's command.
The effectiveness of the proposed control algorithm is initially verified by simulating two different operational scenarios. Furthermore, the algorithm is implemented on actual hardware to operate a flock of three drones in a laboratory setting. The implementation of the algorithm in C++ utilizes high-performance computation techniques to achieve sufficiently high real-time control update rates for smooth and stable operation of the drones. / Thesis / Master of Applied Science (MASc) / The rise of unmanned aerial vehicle technology and the increase in their accessibility have made them viable solutions for serious missions such as search and rescue operations. Complex cooperative tasks can be conducted via a collection of drones which can show higher levels of robustness and agility as a system. Although repetitive and simple actions can be easily automated, real-world problems are unpredictable in which complex decision-making is involved. Such scenarios can be tackled by the presence of a human supervisor to empower the system with strong cognitive capabilities. This thesis presents a multi-layer control framework for human-in-the-loop operation of a flock of unmanned aerial vehicles. This method continuously optimizes the drones trajectories to adhere as closely as possible to operator's motion commands while avoiding collisions among them and with obstacles in their task environment. This new control framework is successfully validated in both simulations and experiments in a laboratory environment.
Identifer | oai:union.ndltd.org:mcmaster.ca/oai:macsphere.mcmaster.ca:11375/28323 |
Date | January 2023 |
Creators | Grivani, Ali |
Contributors | Sirouspour, Shahin, Electrical and Computer Engineering |
Source Sets | McMaster University |
Language | English |
Detected Language | English |
Type | Thesis |
Page generated in 0.002 seconds