Real-Time Certified MPC for a Nano Quadcopter
2024 (English)Independent thesis Advanced level (degree of Master (Two Years)), 28 HE credits
Student thesis
Abstract [en]
There is a constant demand to use more advanced control methods in a wider field of applications. Model Predictive Control (MPC) is one such control method, based on recurrently solving an optimization problem for determining the optimal control signal. To solve an optimization problem can be a complex task, and it is difficult to determine beforehand how long time it will take. For a high-speed application with limited computational power, it is necessary to have an efficient algorithm to solve the optimization problem and an accurate estimation of the longest solution time.
Recent research has given methods both to solve quadratic programs efficiently and to find an upper limit on the solution times. These methods are in this thesis applied to a control system based on linear MPC for the Crazyflie 2.0 nano quadcopter. The implementation is made completely online on the processor of the quadcopter, with limited computational power. A problem with the size of 36 optimization variables and 60 constraints is solved at a frequency of 100 Hz on the quadcopter.
Apart from implementing MPC, a framework for computing an upper limit to the solution time has been tested. This gives a possibility to certify the formulation for real-time applications up to a well-defined maximum frequency. An implementation is shown where the framework has been used in practice to control a quadcopter flying with a real-time certified implementation of MPC.
Abstract [sv]
Det finns en ständig efterfrågan för mer avancerade metoder för reglering. Modellprediktiv reglering (MPC) är en sådan avancerad metod som kräver att ett optimeringsproblem löses varje gång en ny styrsignal ska beräknas. Att lösa optimeringsproblem kan vara en komplicerad uppgift, och det är svårt att på förhand veta hur lång beräkningstid som krävs. För att MPC ska kunna användas i tillämpningar i hög hastighet och med begränsad beräkningskraft är det nödvändigt att ha en effektiv lösningsalgoritm, och även en korrekt uppskattning av den längsta lösningstiden som behövs.
Aktuell forskning har gett metoder både för att effektivt lösa kvadratiska optimeringsproblem, samt för att kunna hitta en övre gräns på beräkningstiden. I den här rapporten appliceras dessa metoder på ett styrsystem baserat på MPC i en Crazyflie 2.0, vilket är en nanodrönare. Styrsystemet är implementerat helt och hållet på drönarens processor, med den begränsade datorkraft som det innebär. Ett problem med en storlek på 36 optimeringsvariabler och 60 bivillkor lösesmed en frekvens på 100 Hz.
Förutom att implementera MPC har även en metod för att bestämma en övre gräns på beräkningstiden testats. Det ger en möjlighet att certifiera styrstytemetför att garanterat kunna beräkna en ny styrsignal inom den övre tiden, vilket i sin tur innebär att styrsytemet kan certificeras för realtidsanvändning i långsammare frekvenser än den övre gränsen. I rapporten visas en certifierad implementation, och data från flygning med en certifierad regulator finns med i resultatet.
Place, publisher, year, edition, pages
2024. , p. 49
Keywords [en]
MPC, Model predictive control, quadcopter, control system
National Category
Control Engineering
Identifiers
URN: urn:nbn:se:liu:diva-201424ISRN: LiTH-ISY-EX--23/5627--SEOAI: oai:DiVA.org:liu-201424DiVA, id: diva2:1843343
Subject / course
Automatic Control
Supervisors
Examiners
2024-03-112024-03-082024-03-11Bibliographically approved