Heim > Artikel > Technologie-Peripheriegeräte > Ein geschmeidigerer Regelalgorithmus als PID und Carnegie Mellon University
MPC-Steuerungsalgorithmus, der vollständige Name lautet Model Predictive Control (Model Predictive Control), ist eine Steuerungstechnologie, die auf dem dynamischen Systemmodell basiert. Es funktioniert, indem es das zukünftige Verhalten des Systems durch mathematische Modelle vorhersagt und die Steuereingaben des Systems auf der Grundlage dieser Vorhersagen optimiert, um die gewünschte Ausgabe zu erzielen. Die Kernidee des MPC-Steuerungsalgorithmus besteht darin, die beste Steuerungseingabe zu erhalten, indem die Vorhersageergebnisse für einen bestimmten Zeitraum in der Zukunft in jedem Steuerungszyklus optimiert werden. Diese Optimierung basiert auf einigen Vorhersageergebnissen, um die Steuereingabe des Systems zu optimieren, um die gewünschte Ausgabe zu erzielen. Der MPC-Steuerungsalgorithmus ist weit verbreitet und eignet sich besonders für Steuerungssysteme, die bestimmte Einschränkungen erfüllen müssen. Durch die Kombination von Systemmodellen und Optimierungstechniken kann MPC in verschiedenen Branchen eingesetzt werden. Der Kern des MPC-Steuerungsalgorithmus liegt in seinem Vorhersagemodell, das den zukünftigen Systemzustand basierend auf den aktuellen Zustandsinformationen des Systems vorhersagen kann. Die Form des Vorhersagemodells ist nicht festgelegt und kann eine Zustandsraumgleichung, eine Übertragungsfunktion, ein Sprungantwortmodell, ein Impulsantwortmodell, ein Fuzzy-Modell usw. sein. Die spezifische Form hängt vom gesteuerten Objekt und dem Zustand ab, der vorhergesagt werden muss.
TinyMPC ist ein Open-Source-Löser, der auf die prädiktive Steuerung konvexer Modelle zugeschnitten ist und Hochgeschwindigkeitsberechnungen ermöglicht. TinyMPC ist in C++ mit minimalen Abhängigkeiten implementiert und eignet sich besonders für eingebettete Steuerungs- und Robotikanwendungen auf Plattformen mit eingeschränkten Ressourcen. TinyMPC kann Zustands- und Eingabegrenzen sowie Einschränkungen zweiter Ordnung verarbeiten. Zur Unterstützung der Codegenerierung für eingebettete Systeme stehen Python-, Julia- und MATLAB-Schnittstellen zur Verfügung.
Bot-DemoTinyMPC ist jetzt auch in der Lage, konische Einschränkungen zu verarbeiten! In (b) vergleichen wir TinyMPC mit zwei vorhandenen Kegellösern (SCS und ECOS) mit integrierter Unterstützung für das Problem der sanften Landung von Raketen. TinyMPC erreicht eine durchschnittliche Geschwindigkeitssteigerung von 13x auf SCS und 137x auf ECOS.
Die Echtzeitsteuerung erfordert, dass der Löser innerhalb eines strengen Zeitfensters eine Lösung zurückgibt. Die Flugbahnverfolgungsleistung von TinyMPC wurde mit der von SCS und ECOS beim Problem der sanften Landung von Raketen verglichen, wobei die für jede Lösung verfügbare Zeit künstlich variiert wurde. TinyMPC weist über alle Kontrolldauern hinweg weniger Einschränkungsverletzungen und geringere Tracking-Fehler auf als SCS und ECOS.
Algorithmus-Mitwirkender:
Code-Erfassungsadresse:
GitHub - TinyMPC/TinyMPC: Modellprädiktive Steuerung für Mikrocontroller
Das obige ist der detaillierte Inhalt vonEin geschmeidigerer Regelalgorithmus als PID und Carnegie Mellon University. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!