-
TECHNISCHES GEBIET
-
Ausführungsformen des hierin beschriebenen Gegenstands beziehen sich im Allgemeinen auf die Verwendung der expliziten nichtlinearen modellprädiktiven Regelung (NMPC) zur Steuerung autonomer Systeme. Insbesondere beziehen sich die Ausführungsformen des Gegenstands auf die Modifikation eines expliziten NMPC-Ausgangssignals, um Modellierungsunsicherheiten zu kompensieren und damit die Leistung gesteuerter autonomer Systeme zu verbessern.
-
HINTERGRUND
-
Die Herausforderungen bei der Steuerung autonomer Systeme schließen die Auseinandersetzung mit der Modellierungsunsicherheit und Stabilität von Regelkreisen ein. Steuerungskonzepte für nichtlineare Systeme, einschließlich mechanischer Systeme, schließen in der Regel unsichere Parameter ein, da mathematische Beschreibungen die Dynamik von Systemen nicht vollständig abbilden können. So kann beispielsweise die Systemdynamik von Boden- und Luftfahrzeugen mit mathematischen Gleichungen modelliert werden, die anstelle bekannter Parameterwerte Näherungen von Parameterwerten verwenden, was zu Modellunsicherheiten führt. Unberücksichtigte Modellunsicherheiten führen zu einer Verschlechterung der Systemleistung.
-
Dementsprechend ist es wünschenswert, Steuerungsverfahren bereitzustellen, die Modellierungsunsicherheiten und potenzielle Instabilitäten von Regelkreisen berücksichtigen. Darüber hinaus ergeben sich weitere wünschenswerte Merkmale und Eigenschaften aus der nachfolgenden detaillierten Beschreibung und den beigefügten Ansprüchen, die in Verbindung mit den beigefügten Zeichnungen und dem vorstehenden technischen Bereich und Hintergrund zu betrachten sind.
-
KURZZUSAMMENFASSUNG
-
Einige Ausführungsformen der vorliegenden Offenbarung bieten ein Verfahren zur Verwendung eines Regelkreis-Steuersystems zum Steuern eines autonomen mechanischen Systems, das Regelkreis-Steuersystem ein explizites Framework zur nichtlinearen modellprädiktiven Regelung (NMPC) umfassend. Das Verfahren (i) berechnet Arbeitsvorgangsparameter für das autonome mechanische System mithilfe des Regelkreis-Steuersystems, umfassend das explizite NMPC-Framework, die Ausgabe des expliziten NMPC-Frameworks die Arbeitsvorgangsparameter umfassend, (ii) modifiziert die Ausgabe des expliziten NMPC-Frameworks, um ungemessene Systemzustände, unbekannte Systemmodellwerte und externe Störungen des autonomen mechanischen Systems zu berücksichtigen, um modifizierte Arbeitsvorgangsparameter wie folgt zu erzeugen: Abrufen gemessener Systemzustände für das autonome mechanische System über einen oder mehrere Sensoren innerhalb des autonomen mechanischen Systems; Verwenden eines Extended-High-Gain-Beobachters (EHGO) für Prognosen der ungemessenen Systemzustände und der externen Störungen basierend auf den gemessenen Systemzuständen, Erzeugen geschätzter ungemessener Systemzustände und geschätzter externer Störungen; und Verwenden eines dynamischen Wechselrichters zum Berechnen von Werten unbekannter Eingabekoeffizienten für ein Systemmodell des autonomen mechanischen Systems, die unbekannten Systemmodellwerte mindestens die unbekannten Eingabekoeffizienten umfassend; (iii) erzeugt ein modifiziertes Ausgangssignal für das Regelkreis-Steuersystem, das modifizierte Ausgangssignal die modifizierten Arbeitsvorgangsparameter umfassend, basierend auf den geschätzten ungemessenen Systemzuständen und den geschätzten externen Störungen und den Werten der unbekannten Eingabekoeffizienten; und (iv) überträgt das modifizierte Ausgangssignal des Regelkreis-Steuersystems, um den Betrieb des autonomen mechanischen Systems unter Verwendung der modifizierten Arbeitsvorgangsparameter zu steuern.
-
Einige Ausführungsformen der vorliegenden Offenbarung beinhalten eine Steuervorrichtung für ein autonomes mechanisches System. Die Steuervorrichtung schließt ein: (1) ein Systemspeicherelement, das konfiguriert ist, um mindestens ein Regelkreis-Steuersystem, ein explizites NMPC-Framework und ein oder mehrere Systemmodelle für das autonome mechanische System zu speichern und zu erhalten; (2) eine Kommunikationsvorrichtung, die konfiguriert ist, um Kommunikationen zu senden und zu empfangen, einschließlich Steueranweisungen und Steuerungssystemrückmeldungen für das autonome mechanische System; und (3) mindestens einen Prozessor, der mit dem Systemspeicherelement und der Kommunikationsvorrichtung verbunden ist und mit diesen kommuniziert, wobei der mindestens eine Prozessor für Folgendes konfiguriert ist: Berechnen von Arbeitsvorgangsparametern für das autonome mechanische System unter Verwendung des Regelkreis-Steuersystems, umfassend das explizite NMPC-Framework, die Ausgabe des expliziten NMPC-Frameworks die Arbeitsvorgangsparameter umfassend; Ändern der Ausgabe des expliziten NMPC-Frameworks, um ungemessene Systemzustände, unbekannte Systemmodellwerte und externe Störungen des autonomen mechanischen Systems zu berücksichtigen, um modifizierte Arbeitsvorgangsparameter zu erzeugen, durch: Erhalten gemessener Systemzustände für das autonome mechanische System über einen oder mehrere Sensoren innerhalb des autonomen mechanischen Systems; Verwenden eines Extended-High-Gain-Beobachters (EHGO) zum Schätzen der ungemessenen Systemzustände und der externen Störungen basierend auf den gemessenen Systemzuständen, zum Erzeugen geschätzter ungemessener Systemzustände und geschätzter externer Störungen; und Verwenden eines dynamischen Wechselrichters zum Berechnen von Werten unbekannter Eingabekoeffizienten für ein Systemmodell des autonomen mechanischen Systems, die unbekannten Systemmodellwerte mindestens die unbekannten Eingabekoeffizienten umfassend. Der mindestens eine Prozessor ist ferner konfiguriert, um: ein modifiziertes Ausgangssignal für das Regelkreis-Steuersystem zu erzeugen, das modifizierte Ausgangssignal die modifizierten Arbeitsvorgangsparameter umfassend, basierend auf den geschätzten ungemessenen Systemzuständen und den geschätzten externen Störungen und den Werten der unbekannten Eingabekoeffizienten; und das modifizierte Ausgangssignal des Regelkreis-Steuersystems zu übertragen, um den Betrieb des autonomen mechanischen Systems unter Verwendung der modifizierten Arbeitsvorgangsparameter zu steuern.
-
Einige Ausführungsformen der vorliegenden Offenbarung stellen ein nichtflüchtiges, computerlesbares Medium bereit, das Anweisungen darauf enthält, die, wenn sie von einem Prozessor ausgeführt werden, ein Verfahren zur Verwendung eines Regelkreis-Steuersystems zum Steuern eines autonomen mechanischen Systems durchführen, das Regelkreis-Steuersystem ein explizites Framework zur nichtlinearen modellprädiktiven Regelung (NMPC) umfassend. Das Verfahren: (I) empfängt eine oder mehrere Steuereingaben als Eingangsparameter für das explizite NMPC-Framework über das Regelkreis-Steuersystem für das autonome mechanische System; (ii) erhält ein Systemmodell für das autonome mechanische System, das Systemmodell eine oder mehrere mathematische Beschreibungen von Systemdynamiken des autonomen mechanischen Systems umfassend; (iii) berechnet Arbeitsvorgangsparameter für das autonome mechanische System unter Verwendung der einen oder mehreren Steuereingänge und der einen oder mehreren mathematischen Beschreibungen unter Verwendung des geschlossenen Regelkreis-Steuersystems, das das explizite NMPC-Framework umfasst, die Ausgabe des expliziten NMPC-Frameworks die Arbeitsvorgangsparameter umfassend; und (iv) modifiziert die Ausgabe des expliziten NMPC-Frameworks, um ungemessene Systemzustände, unbekannte Systemmodellwerte und externe Störungen des autonomen mechanischen Systems zu berücksichtigen, um modifizierte Arbeitsvorgangsparameter zu erzeugen durch: Erhalten gemessener Systemzustände für das autonome mechanische System über einen oder mehrere Sensoren innerhalb des autonomen mechanischen Systems; Verwenden eines Extended-High-Gain-Beobachters (EHGO) zum Schätzen der ungemessenen Systemzustände und der externen Störungen basierend auf den gemessenen Systemzuständen, zum Erzeugen geschätzter ungemessener Systemzustände und geschätzter externer Störungen; und Verwenden eines dynamischen Wechselrichters zum Berechnen von Werten unbekannter Eingabekoeffizienten für ein Systemmodell des autonomen mechanischen Systems, die unbekannten Systemmodellwerte mindestens die unbekannten Eingabekoeffizienten umfassend. Ferner wird im Rahmen des Verfahrens: (v) ein modifiziertes Ausgangssignal für das Regelkreis-Steuersystem erzeugt, das modifizierte Ausgangssignal die modifizierten Arbeitsvorgangsparameter umfassend, basierend auf den geschätzten ungemessenen Systemzuständen und den geschätzten externen Störungen und den Werten der unbekannten Eingabekoeffizienten; und (vi) der Betrieb des autonomen mechanischen Systems unter Verwendung des modifizierten Ausgangssignals gesteuert durch: Anwenden eines Zustandsvektors auf eine Trajektorie des autonomen mechanischen Systems, der Zustandsvektor die modifizierten Arbeitsvorgangsparameter umfassend; Einstellen der Trajektorie, basierend auf dem Zustandsvektor, um eine korrigierte Trajektorie zu erzeugen; und Betreiben des autonomen mechanischen Systems unter Verwendung der korrigierten Trajektorie.
-
Diese Zusammenfassung dient der Vorstellung einer Auswahl von Konzepten in vereinfachter Form, die im Folgenden in der ausführlichen Beschreibung näher erläutert werden. Diese Zusammenfassung dient weder dazu, die Hauptmerkmale oder wesentlichen Eigenschaften des beanspruchten Gegenstands zu ermitteln, noch soll sie als Hilfsmittel bei der Bestimmung des Umfangs des beanspruchten Gegenstands verwendet werden.
-
Figurenliste
-
Ein vollständigeres Verständnis des Gegenstands kann durch Bezugnahme auf die detaillierte Beschreibung und die Ansprüche in Verbindung mit den folgenden Abbildungen abgeleitet werden, wobei sich ähnliche Referenznummern auf ähnliche Elemente in den Abbildungen beziehen.
- 1 ist ein Diagramm eines Systems zur Verbesserung der typischen Leistung eines autonomen Systems gemäß den offenbarten Ausführungsformen;
- 2 ist ein funktionales Blockdiagramm einer Rechenvorrichtung zur Verwendung in einem System zur Verbesserung der typischen Leistung eines autonomen Systems gemäß den offenbarten Ausführungsformen;
- Fig. 3 ist ein Datenflussdiagramm eines Regelkreis-Steuersystems 300 zur Verbesserung der typischen Leistung eines autonomen Systems und implementiert eine explizite nichtlineare modellprädiktive Regelung (NMPC), einen Extended-High-Gain-Beobachters (EHGO) und dynamische Inversion gemäß den offenbarten Ausführungsformen;
- 4 ist ein Diagramm des Steuerflusses zur Verbesserung der typischen Leistung eines autonomen Systems gemäß den offenbarten Ausführungsformen;
- 5 ist ein Diagramm einer beispielhaften Ausführungsform eines Fahrzeugmodells, das auf ein autonomes System anwendbar ist, gemäß den offenbarten Ausführungsformen;
- 6 ist ein Diagramm eines Steueralgorithmus für eine beispielhafte Ausführungsform eines Fahrzeugmodells, das auf ein autonomes System anwendbar ist, gemäß den offenbarten Ausführungsformen;
- 7 ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses zur Verwendung eines Regelkreis-Steuersystems veranschaulicht, das eine explizite nichtlineare modellprädiktive Regelung (NMPC) zum Steuern eines autonomen Systems gemäß den offenbarten Ausführungsformen umfasst;
- 8 ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses zum Modifizieren von durch explizite nichtlineare modellprädiktive Regelung (NMPC) generierte Arbeitsvorgangsparameter unter Verwendung eines Extended-High-Gain-Beobachters (EHGO) gemäß den offenbarten Ausführungsformen darstellt, und
- 9 ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses zum Modifizieren von durch explizite nichtlineare modellprädiktive Regelung (NMPC) generierte Arbeitsvorgangsparameter unter Verwendung dynamischer Inversion gemäß den offenbarten Ausführungsformen darstellt.
-
DETAILLIERTE BESCHREIBUNG
-
Die folgende detaillierte Beschreibung dient lediglich der Veranschaulichung und soll weder die Ausführungsformen des Gegenstands noch die Anwendung und Verwendung solcher Ausführungsformen einschränken. Der hier verwendete Begriff „exemplarisch“ ist als „Beispiel, Instanz oder Illustration“ zu verstehen. Jede hierin als exemplarisch beschriebene Implementierung ist nicht unbedingt als bevorzugt oder vorteilhaft gegenüber anderen Implementierungen zu interpretieren. Darüber hinaus besteht keine Absicht, an eine explizite oder implizite Theorie gebunden zu sein, die im vorhergehenden technischen Bereich, Hintergrund, einer kurzen Zusammenfassung oder der folgenden detaillierten Beschreibung dargestellt wird.
-
Der hierin vorgestellte Gegenstand bezieht sich auf Systeme und Verfahren zum Betrieb autonomer Systeme nach einer geplanten Trajektorie mit erhöhter Präzision und Genauigkeit. Aufgrund von Modellierungsunsicherheiten und potenzieller Instabilität von Regelkreis-Steuersystemen ist der autonome Betrieb mechanischer Systeme möglicherweise mit einem Fehler oder einer Abweichung von der geplanten Trajektorie verbunden. Fehler in einem Systemmodell für ein autonomes System führen zu Fehlern bei der Einhaltung einer geplanten Trajektorie für das autonome System. Hierin werden Techniken zur Berücksichtigung der Modellierungsunsicherheiten und -instabilitäten betrachtet, die zu einer mechanischen Systempositionierung führen, die näher an der geplanten Trajektorie liegt, sodass die Leistung autonomer Systeme gegenüber Systemmodellen mit unbekannten Werten verbessert wird. Unsichere Eingabekoeffizienten, ungemessene Systemzustände und externe Störungen sind entscheidend für die Systemleistung, da unsichere Eingangsrichtungen die Systemleistung beeinträchtigen und unsichere oder unbekannte Werte das System destabilisieren. Um Modellierungsunsicherheiten und potenzielle Instabilitäten zu berücksichtigen, ist ein Regelkreis-Steuersystem implementiert, das eine explizite, nichtlineare modellprädiktive Regelung (NMPC), einen Extended-High-Gain-Beobachter (EHGO) und einen dynamischen Wechselrichter einschließt.
-
Die Kombination der drei Elemente im Regelkreis-Steuersystem verwendet mehrere Zeitskalen, wobei die EHGO mit einer schnellsten Zeitskala, die dynamischen Wechselrichter mit einer durchschnittlich schnellen Zeitskala und die expliziten NMPC- und Systemmodelle (d. h. Systemdynamik) mit einer langsamsten Zeitskala arbeiten. Die Betriebsgeschwindigkeit für jede Komponente des Regelkreis-Steuersystems arbeitet gemäß einer entsprechenden Zeitskala, und jede der Zeitskalen wird als schnell, durchschnittlich schnell und langsam bestimmt, da sich jede der Zeitskalen auf die beiden anderen Zeitskalen bezieht. Die Struktur mit mehreren Zeitskalen des Regelkreis-Steuersystems ist nach dem Singular-Perturbation-Verfahren ausgelegt, um drei Berechnungsmethoden für den Regelkreis zu kombinieren (z. B. explizite NMPC, EHGO, dynamische Inversion). Die Kombination der drei Elemente im Regelkreis-Steuersystem berücksichtigt Modellierungsunsicherheiten, Systemstörungen und potenzielle Instabilität und erzeugt so Steuerbefehle, damit das autonome System die geplante Trajektorie besser einhalten kann als ein Regelkreis-Steuersystem, das nur die explizite NMPC einschließt.
-
Nachfolgend wird auf die Figuren Bezug genommen: 1 ist ein Diagramm eines Systems 100 zur Verbesserung der typischen Leistung eines autonomen Systems 104 gemäß den offenbarten Ausführungsformen. Das System 100 arbeitet zum Berechnen und Übertragen eines Ausgangssignals eines Regelkreis-Steuersystems zum Steuern des autonomen Systems 104, wobei das Ausgangssignal des Regelkreis-Steuersystems manipuliert wurde, um die Leistung des autonomen Systems 104 zu verbessern. Das System 100 kann ohne Einschränkung eine Rechenvorrichtung 102 einschließen, die mit einem Planungsmodul (z. B. dem Wegplanungsmodul 108) und einem Ausführungsmodul (z. B. dem autonomen Betriebsmodul 110) des autonomen Systems 104 über ein Datenkommunikationsnetzwerk 106 kommuniziert. In der Praxis können bestimmte Ausführungsformen des Systems 100 zusätzliche oder alternative Elemente und Komponenten gemäß den Anforderungen für die spezielle Anwendung einschließen.
-
Die Rechenvorrichtung 102 kann von jeder beliebigen Rechenvorrichtung implementiert werden, die mindestens einen Prozessor, eine Form von Speicherhardware und Kommunikationshardware einschließt, die konfiguriert ist, um Kommunikationsverbindungen mit dem autonomen System 104 herzustellen. So kann beispielsweise die Rechenvorrichtung 102 mit einem eigenständigen Computersystem, einer tragbaren Rechenvorrichtung, einer fahrzeugbasierten Rechenvorrichtung (z. B. einer elektronischen Steuereinheit (ECU) oder einer anderen fahrzeugbasierten Steuereinheit) oder einer persönlichen Rechenvorrichtung (z. B. einem Tablet-Computer, einem Laptop-Computer, einem persönlichen digitalen Assistenten (PDA), einem Smartphone) oder dergleichen implementiert werden. In diesem Szenario ist die Rechenvorrichtung 102 in der Lage, Anweisungen zu speichern, zu verwalten und auszuführen, die konfiguriert sind, um ein Ausgangssignal des Regelkreis-Steuersystems zu erzeugen und zu ändern, das das autonome System während des Betriebs des autonomen Systems steuert. Beispielhafte Ausführungsformen der Rechenvorrichtung 102 werden typischerweise innerhalb des autonomen Systems 104 implementiert; und die Rechenvorrichtung 102 kommuniziert mit dem autonomen System 104 über eine drahtgebundene und/oder drahtlose Kommunikationsverbindung.
-
Das autonome System 104 kann ein Fahrzeug (z. B. Landfahrzeug, Luftfahrzeug, Unterwasserfahrzeug), ein laufender zweibeiniger Roboter, eine Prothese, die eine Bewegungssteuerung des menschlichen Körpers erfordert, und/oder jede Art von autonomen mechanischen Systemen sein, für die ein Design zur expliziten, nichtlinearen modellprädiktiven Regelung (NMPC) anwendbar ist. Das autonome System 104 schließt typischerweise ein Wegplanungsmodul 108 und ein autonomes Betriebsmodul 110 ein. Das Wegplanungsmodul 108 ist konfiguriert, um eine geplante Trajektorie für das autonome System 104 zu erhalten, zu speichern und zu übertragen oder Zugriff darauf zu gewähren. Das autonome Betriebsmodul 110 ist so konfiguriert, um Arbeitsvorgänge des autonomen Systems 104 durchzuführen, sodass das autonome System 104 der geplanten Trajektorie folgt. Es ist zu beachten, dass in einigen Ausführungsformen des Systems 100 die Rechenvorrichtung 102 als eine vom autonomen System 104 getrennte und sich von diesem abgrenzende Vorrichtung implementiert werden kann. In anderen Ausführungsformen des Systems 100 kann die Rechenvorrichtung 102 jedoch als eine in das autonome System 104 integrierte Vorrichtung implementiert werden. So kann beispielsweise die Rechenvorrichtung 102 ein integrierter Bestandteil des autonomen Betriebsmoduls 110 sein und/oder mit dem autonomen Betriebsmodul 110 gekoppelt sein und mit diesem kommunizieren.
-
Das Datenkommunikationsnetzwerk 106 kann jedes digitale oder andere Kommunikationsnetzwerk sein, das Nachrichten oder Daten zwischen Vorrichtungen, Systemen oder Komponenten übertragen kann. Exemplarische Ausführungsformen des Datenkommunikationsnetzwerks 106 können unter Verwendung eines Controller Area Network (CAN) realisiert werden, einschließlich, aber nicht beschränkt auf einen CAN-Datenkommunikationsbus und eine oder mehrere Vorrichtungen oder Komponenten des autonomen Systems 104, die mit dem CAN-Bus verbunden sind. In bestimmten Ausführungsformen schließt das Datenkommunikationsnetzwerk 106 ein paketvermitteltes Netzwerk ein, das die paketbasierte Datenkommunikation, Adressierung und Datenweiterleitung ermöglicht. Das paketvermittelte Netzwerk könnte beispielsweise ein Weitverkehrsnetz, das Internet oder dergleichen sein. In verschiedenen Ausführungsformen schließt das Datenkommunikationsnetzwerk 106 eine beliebige Anzahl von öffentlichen oder privaten Datenverbindungen, Verbindungen oder Netzwerkverbindungen ein, die eine beliebige Anzahl von Kommunikationsprotokollen unterstützen. Das Datenkommunikationsnetzwerk 106 kann beispielsweise das Internet oder ein beliebiges anderes Netzwerk einschließen, das auf TCP/IP-Protokollen oder anderen herkömmlichen Protokollen basiert. In verschiedenen Ausführungsformen könnte das Datenkommunikationsnetzwerk 106 auch ein drahtloses und/oder drahtgebundenes Telefonnetz einschließen, wie beispielsweise ein Mobilfunknetz zur Kommunikation mit Mobiltelefonen, persönlichen digitalen Assistenten und/oder dergleichen. Das Datenkommunikationsnetzwerk 106 kann auch beliebige drahtlose oder verkabelte lokale und/oder persönliche Netzwerke einschließen, wie beispielsweise ein oder mehrere IEEE 802.3, IEEE 802.16 und/oder IEEE 802.11-Netzwerke und/oder Netzwerke, die ein Kurzstreckenprotokoll (z. B. Bluetooth) implementieren. Der Kürze halber können herkömmliche Techniken in Bezug auf Datenübertragung, Signalisierung, Netzwerksteuerung und andere funktionale Aspekte der Systeme (und der einzelnen Betriebskomponenten der Systeme) hier nicht im Detail beschrieben werden.
-
Während des typischen Betriebs implementiert die Rechenvorrichtung 102 ein Regelkreis-Steuersystem zur Steuerung des autonomen Systems 104, wobei das Regelkreis-Steuersystem eine explizite, nichtlineare modellprädiktive Regelung (NMPC) einschließt. Auf diese Weise erhält die Rechenvorrichtung 102 Steuerdaten (z. B. einen oder mehrere Steuereingaben, eine geplante Trajektorie für das autonome System 104, ein Systemmodell des autonomen Systems 104) für das autonome System 104 und stellt die Steuerdaten dann als Eingabewerte für das explizite NMPC-Framework bereit. Das explizite NMPC-Framework erzeugt aus den Steuerdaten „typische“ Arbeitsvorgangsparameter für das autonome System 104, einschließlich Steuerbefehle für den autonomen Betrieb des autonomen Systems 104 basierend auf der geplanten Trajektorie. Die Rechenvorrichtung 102 modifiziert dann die typischen Arbeitsvorgangsparameter, die durch das explizite NMPC-Framework erzeugt werden, um ungemessene Systemzustände, unbekannte Systemmodellwerte und externe Störungen des autonomen Systems 104 zu kompensieren. Um die Änderung der typischen Parameter durchzuführen, verwendet die Rechenvorrichtung 102 einen Extended-High-Gain-Beobachter (EHGO) und einen dynamischen Wechselrichter, die in das Regelkreis-Steuersystem integriert wurden. Mit Hilfe des EHGO und des dynamischen Wechselrichters ist das modifizierte Regelkreis-Steuersystem in der Lage, unbekannte Systemzustände und externe Störungen zu prognostizieren und Werte von unbekannten Eingabekoeffizienten des Systemmodells zu berechnen. Somit ist das Regelkreis-Steuersystem (und die Rechenvorrichtung 102, die dieses implementiert) konfiguriert, um Unsicherheiten im Systemmodell durch das Berechnen geänderter Arbeitsvorgangsparameter und geänderter oder korrigierter Trajektorienwerte für das autonome System 104 zu berücksichtigen.
-
2 ist ein funktionales Blockdiagramm einer Rechenvorrichtung 200 zur Verwendung in einem System zur Verbesserung der typischen Leistung eines autonomen Systems gemäß den offenbarten Ausführungsformen. Es ist zu beachten, dass die Rechenvorrichtung 200 mit der in 1 dargestellten Rechenvorrichtung 102 implementiert werden kann. In diesem Zusammenhang zeigt die Rechenvorrichtung 200 bestimmte Elemente und Komponenten der Rechenvorrichtung 102 in detaillierterer Form.
-
Die Rechenvorrichtung 200 beinhaltet im Allgemeinen und ohne Einschränkung: mindestens einen Prozessor 202; Systemspeicher 204; eine Kommunikationsvorrichtung 206; ein Regelkreis-Steuersystemmodul 208; und ein autonomes mechanisches Systemsteuermodul 210. Diese Elemente und Merkmale der Rechenvorrichtung 200 können funktionsfähig miteinander verbunden, miteinander gekoppelt oder anderweitig konfiguriert werden, um bei Bedarf die gewünschte Funktionalität zu unterstützen - insbesondere das Erzeugen und Optimieren von Regelkreis-Steuerbefehlen für ein autonomes mechanisches System, wie hierin beschrieben. Zur besseren Veranschaulichung und Übersichtlichkeit sind die verschiedenen physischen, elektrischen und logischen Kopplungen und Verbindungen für diese Elemente und Merkmale nicht dargestellt in 2. Darüber hinaus ist zu beachten, dass Ausführungsformen der Computervorrichtung 200 auch andere Elemente, Module und Funktionen einschließen können, die zur Unterstützung der gewünschten Funktionalität zusammenarbeiten. Zur Vereinfachung werden in 2 nur bestimmte Elemente dargestellt, die sich auf die Regelkreis-Steuertechniken für das autonome mechanische System beziehen, die im Folgenden näher beschrieben wird.
-
Der mindestens eine Prozessor 202 kann mit einem oder mehreren Mehrzweckprozessoren, einem inhaltsadressierbaren Speicher, einem digitalen Signalprozessor, einer anwendungsspezifischen integrierten Schaltung, einem feldprogrammierbaren Gate-Array, einer geeigneten programmierbaren Logikvorrichtung, einer separaten Gate- oder Transistorlogik, separaten Hardwarekomponenten oder einer Kombination zur Ausführung der hier beschriebenen Funktionen implementiert oder ausgeführt werden. Insbesondere kann der mindestens eine Prozessor 202 als ein oder mehrere Mikroprozessoren, Steuereinheiten, Mikrosteuereinheiten oder Zustandsmaschinen realisiert werden. Darüber hinaus kann der mindestens eine Prozessor 202 als eine Kombination von Rechenvorrichtungen implementiert werden, z. B. eine Kombination von digitalen Signalprozessoren und Mikroprozessoren, eine Vielzahl von Mikroprozessoren, einen oder mehrere Mikroprozessoren in Verbindung mit einem digitalen Signalprozessorkern oder eine andere derartige Konfiguration.
-
Der mindestens eine Prozessor 202 ist mit dem Systemspeicher 204 verbunden und kommuniziert mit diesem. Der Systemspeicher 204 ist konfiguriert, um alle erhaltenen oder generierten Daten zu speichern, die mit Regelkreis-Steuersystemen, autonomen Systemtrajektorien, Steuerbefehlen, modifizierten Steuerbefehlen, expliziter nichtlinearer modellprädiktiver Regelung (NMPC), Extended-High-Gain-Beobachter (EHGO), dynamischer Inversion oder dergleichen verbunden sind. Der Systemspeicher 204 kann mit einer beliebigen Anzahl von Vorrichtungen, Komponenten oder Modulen realisiert werden, je nach Ausführungsform. Darüber hinaus könnte die Rechenvorrichtung 200 einen darin integrierten Systemspeicher 204 und/oder einen damit funktionsfähig gekoppelten Systemspeicher 204 einschließen, entsprechend der jeweiligen Ausführungsform. In der Praxis könnte der Systemspeicher 204 als RAM-Speicher, Flash-Speicher, EPROM-Speicher, EEPROM-Speicher, Register, eine Festplatte, einen Wechseldatenträger oder jede andere in der Technik bekannte Form von Speichermedium realisiert werden. In bestimmten Ausführungsformen schließt der Systemspeicher 204 eine Festplatte ein, die auch zur Unterstützung von Funktionen der Rechenvorrichtung 200 verwendet werden kann. Der Systemspeicher 204 kann mit dem mindestens einen Prozessor 202 gekoppelt werden, sodass der mindestens eine Prozessor 202 Informationen aus dem Systemspeicher 204 lesen und in diesen schreiben kann. Alternativ kann der Systemspeicher 204 integral mit dem mindestens einen Prozessor 202 verbunden sein. Als Beispiel können sich der mindestens eine Prozessor 202 und der Systemspeicher 204 in einer entsprechend ausgelegten anwendungsspezifischen integrierten Schaltung (ASIC) befinden.
-
Die Kommunikationsvorrichtung 206 ist entsprechend konfiguriert, um Daten zwischen der Rechenvorrichtung 200 und einem autonomen System zu übertragen, um das autonome System gemäß geänderter Steuerausgänge (erzeugt durch das Steuermodul 216 des autonomen Systems) zu betreiben. In einigen Ausführungsformen kann die Kommunikationsvorrichtung 206 Kommunikation über ein fahrzeugbasiertes Kommunikationsnetzwerk, wie beispielsweise ein Controller Area Network (CAN), das einen Datenkommunikationsbus (z. B. einen CAN-Bus) und andere Vorrichtungen oder Komponenten innerhalb des autonomen Systems einschließt, senden und empfangen. In anderen Ausführungsformen kann die Kommunikationsvorrichtung 206 Kommunikationen über ein drahtloses lokales Netzwerk (WLAN), das Internet, einen Satelliten-Uplink/Downlink, ein Mobilfunknetz, ein Breitbandnetz, ein Weitverkehrsnetz oder dergleichen senden und empfangen. Wie im Folgenden näher beschrieben, können die von der Kommunikationsvorrichtung 206 empfangenen Daten ohne Einschränkung Folgendes einschließen: eine geplante Trajektorie für das autonome System, ein Systemmodell für das autonome System, einen oder mehrere zusätzliche Steuereingänge für das autonome System und andere mit der Computervorrichtung 200 kompatible Daten. Die von der Kommunikationsvorrichtung 206 bereitgestellten Daten können ohne Einschränkung Folgendes einschließen: Steuerbefehle für das autonome System, geänderte Steuerbefehle für das autonome System und dergleichen.
-
Das Regelkreis-Steuersystemmodul 208 ist konfiguriert, um ein Regelkreis-Steuersystem-Framework für die Steuerung eines kommunikativ gekoppelten autonomen Systems bereitzustellen. Regelkreissysteme verwenden einen Teil eines erzeugten Ausgangssignals als Rückmeldung an den Eingang des Regelkreissystems, um Fehler zu reduzieren und die Stabilität zu verbessern. Ein Regelkreis-Steuersystem verwendet ein offenes System als Hinleitung, schließt aber auch einen oder mehrere Rückführkreise oder Pfade zwischen dem Ausgang des Regelkreis-Steuersystems und dem Eingang des Regelkreis-Steuersystems ein.
-
Eine beispielhafte Ausführungsform des durch das Regelkreis-Steuersystemmodul bereitgestellten Regelkreis-Steuersystems 208 ist im Folgenden veranschaulicht in Bezug auf 3. Wie dargestellt, ist 3 ein Datenflussdiagramm eines Regelkreis-Steuersystems 300 zur Verbesserung der typischen Leistung eines autonomen Systems und implementiert eine explizite nichtlineare modellprädiktive Regelung (NMPC), Extended-High-Gain-Beobachter (EHGO) und dynamische Inversion gemäß den offenbarten Ausführungsformen. Es ist zu beachten, dass das Regelkreis-Steuersystem 300 eine beispielhafte Implementierung des Regelkreis-Steuersystems sein kann, das von der Rechenvorrichtung 102 implementiert wird, die zur Verbesserung der typischen Leistung eines autonomen Systems 104 verwendet wird, wie dargestellt in 1. Wie hierin beschrieben, verwendet das Regelkreis-Steuersystem 300 ein offenes System als Hinleitung und schließt ferner eine Rückkopplungsschleife ein, um einen Teil des erzeugten Ausgangssignals als Rückmeldung an den Eingang des Regelkreis-Steuersystems 300 zu verwenden, um Fehler zu reduzieren und die Stabilität zu verbessern.
-
Das Regelkreis-Steuersystem 300 empfängt Eingaben, einschließlich: eines Ausgangssignals von einer expliziten nichtlinearen modellprädiktiven Regelung (NMPC) 302 und einer Referenzlast 310, die der Trajektorienplanung für das autonome System zugeordnet ist. Das Regelkreis-Steuersystem 300 schließt die explizite NMPC 302, einen Extended-High-Gain-Beobachter (EHGO) 304, einen dynamischen Wechselrichter 306 und die Systemdynamik 308 des autonomen Systems ein.
-
Die explizite NMPC 302 ist konfiguriert, um ein explizites NMPC-Framework und eine Funktionalität als Teil des Regelkreis-Steuersystems 300 bereitzustellen. Die modellprädiktive Regelung (NMPC) stellt eine Funktionalität für eine Steuereinheit (z. B. die Rechenvorrichtung 200 aus 2 bereit), um ein kommunikativ gekoppeltes autonomes mechanisches System unter optimalen Bedingungen zu betreiben, wobei Einschränkungen verwendet werden, die Systemzustände und Systemeingaben basierend auf Systemmodellen einschließen. Lineare MPC verwenden eine weitreichende generalisierte prädiktive Regelung, einschließlich Polynomen zur Linearisierung der Ausgaben. Nichtlineare MPC (NMPC) sind eine Erweiterung der linearen MPC, erfordern aber eine ressourcenintensive Berechnung, um eine präzise konvexe Optimierung durchzuführen. Ferner wird die Stabilität von NMPC unter Verwendung eines dualen Steuerungsansatzes adressiert, wobei eine zurückgefahrene Horizontkontrolle außerhalb des Terminalbereichs verwendet wird, und wenn die Zustände die Grenze des Terminalbereichs erreichen, wird ein NMPC-Schema mit nahezu unendlichem Horizont verwendet, einschließlich einer präzisen Zielfunktion, die sich aus Kosten für einen endlichen Horizont und Kosten für ein Terminal zusammensetzt. Durch den Einsatz der Kostenfunktion begrenzt die Terminalfunktion die unbegrenzten Horizontkosten des nichtlinearen Systems, es wird Stabilität erreicht. Das explizite NMPC 302-Framework nähert sich den Ausgaben von kontinuierlichen Zeitsystemen mit Hilfe der Taylorreihe mit der Anzahl der relativen Grade und Eingabederivaten an.
-
Die explizite NMPC 302 ermittelt explizit eine Lösung, wodurch eine übermäßig intensive Rechenlast reduziert wird, die für NMPC typisch ist und die Stabilität des Regelkreis-Steuersystems 300 sichergestellt wird. Die explizite NMPC 302 berücksichtigt jedoch keine dem Systemmodell zugeordneten Unvollkommenheiten und unbekannten Werte, einschließlich ungemessener Systemzustände, Systemmodellunsicherheiten, unbekannter Eingabekoeffizienten, Systemstörungen und dergleichen. Wie hierin beschrieben, ist die explizite NMPC 302 weiterhin konfiguriert, um den dynamischen Wechselrichter 306 und indirekt den EHGO 304 zu versorgen, die die explizite NMPC-erzeugte Ausgabe modifizieren, um die zuvor genannten unbekannten Werte und Unvollkommenheiten im Systemmodell zu kompensieren.
-
Wie dargestellt, bietet die explizite NMPC 302 einen Rahmen zur Berechnung und Bereitstellung optimaler Verstärkungen 312 für das autonome System. In Bezug auf das Regelkreis-Steuersystem 300 bietet die explizite nichtlineare modellprädiktive Regelung (NMPC) 302 einen Rahmen für die Architektur des Steuerungsdesigns. So kann beispielsweise der dynamische Wechselrichter 306 anders ausgelegt werden, um bestimmte Koeffizienten zu umgehen. Durch die Verwendung der expliziten NMPC 302 ist der dynamische Wechselrichter 306 so konzipiert, dass er die Kriterien der expliziten NMPC 302 erfüllt.
-
Die Eingangswerte für die explizite NMPC 302 schließen ein Systemmodell für das autonome System und historische Steuerungsbewegungsdaten ein, die mit dem autonomen System verknüpft sind. Unter Verwendung des Systemmodells und der historischen Steuerungsbewegungsdaten berechnet die explizite NMPC 302 die optimalen Verstärkungen 312 für das autonome System. Das mathematische Verhältnis des Ausgangssignals einer bestimmten Vorrichtung zu ihrem Eingang stellt ihre Verstärkung dar, und diese Verstärkung beschreibt das Verhalten des Systems. Hier bietet die explizite NMPC 302 optimale Verstärkungen 312 für das autonome System, um optimale Bedingungen für die Berechnung des autonomen Systems im Regelkreis-Steuersystem 300 zu gewährleisten. Wenn die Verstärkung des Regelkreis-Steuersystems 300 zu empfindlich auf Änderungen von Eingangsbefehlen oder Signalen reagiert, kann das Regelkreis-Steuersystem 300 instabil werden und zu oszillieren beginnen, wenn das Regelkreis-Steuersystem 300 versucht, eine Überkorrektur vorzunehmen, was zu einem Fehlerzustand führen kann. Eine optimierte Verstärkung liefert vordefinierte und optimierte Grenzwerte für das Regelkreis-Steuersystem 300 und verbessert so das Verhalten des Regelkreis-Steuersystems 300. Die explizite NMPC 302 liefert die optimalen Verstärkungen 312 für den dynamischen Wechselrichter des Regelkreis-Steuersystems 300.
-
Der Extended-High-Gain-Beobachter (EHGO) 304 ist konfiguriert, um ungemessene Systemzustände, unsichere Systemmodelle und externe Störungen über den Ausgang 318 des Regelkreis-Steuersystems 300 zu prognostizieren. Wie dargestellt, liefert der EHGO 304 Schätzwerte 314 für Systemunsicherheiten (z. B. ungemessene Systemzustände, externe Störungen), um die Berechnung der Arbeitsvorgangsparameter des autonomen Systems zu verbessern. Der EHGO 304 verwendet Eingangswerte, einschließlich (i) Messungen, die von Sensoren innerhalb des autonomen Systems empfangen werden, und (ii) des Systemmodells, das dem autonomen System zugeordnet ist. Wie bereits beschrieben, ist der EHGO 304 eine Art „Beobachter“ oder ein System, das eine Schätzung des internen Zustands des autonomen Systems aus Messungen der Eingaben und Ausgaben des autonomen Systems liefert. Wie hierin beschrieben, wird das System mit Hilfe von gewöhnlichen Differentialgleichungen (Ordinary Differential Equations, ODE) modelliert, und der EHGO 304 schätzt die Werte 314 für die Systemunsicherheiten mithilfe der ODE und den Eingabemesswerten gemäß dem Systemmodell. Der EHGO 304 stellt dem dynamischen Wechselrichter 306 des Regelkreis-Steuersystems 300 die Schätzwerte 314 zur weiteren Modifikation expliziter NMPC-Ausgangsparameter zur Verfügung, die zur Steuerung des autonomen Systems verwendet werden, das mit dem Regelkreis-Steuersystem 300 gekoppelt ist und mit diesem kommuniziert.
-
Die Referenzlast 310 ist der Trajektorienplanung für das autonome System zugeordnet und liefert die gewünschten Trajektoriendaten für das autonome System. Die gewünschten Trajektoriendaten (d. h. eine geplante Trajektorie) werden vordefiniert und gespeichert, um vom Regelkreis-Steuersystem 300 zum Betrieb des autonomen Systems verwendet zu werden. Das autonome System schließt ein Planungsmodul und ein Steuermodul ein, wobei das Planungsmodul eine Referenztrajektorie bereitstellt, die Referenzpositionen, Referenzgeschwindigkeiten und Referenzbeschleunigungen für die geplante Trajektorie des autonomen Systems einschließt. Der Referenzlastblock 310 schließt die geplanten Trajektoriendaten für den dynamischen Wechselrichter 306 des Regelkreis-Steuersystems 300 ein und stellt diese bereit.
-
Der dynamische Wechselrichter 306 ist konfiguriert, um unbekannte Eingabekoeffizientenwerte zu bestimmen, die dem Systemmodell des autonomen Systems zugeordnet sind, das kommunikativ mit dem Regelkreis-Steuersystem 300 gekoppelt und von diesem gesteuert wird. Systemmodelle des autonomen Systems umfassen mathematische Beschreibungen der Systemdynamik 308. Das autonome System kann unter Verwendung verschiedener Steueralgorithmen modelliert werden, die gewöhnliche Differentialgleichungen (ODE) einschließen. Wie dargestellt, stellt der dynamische Wechselrichter 306 Schätzungen für unbekannte Eingabekoeffizienten des im Systemmodell verwendeten ODE zur Verfügung, um die Berechnung der Arbeitsvorgangsparameter des autonomen Systems zu verbessern. Der dynamische Wechselrichter 306 empfängt Eingangswerte, einschließlich (i) der vom EHGO 304 bereitgestellten Schätzwerte 314 und (ii) der optimalen Verstärkungen 312, die von der expliziten NMPC 302 bereitgestellt werden. Die dynamische Inversion kann auch als Rückkopplungs-Linearisierung bezeichnet werden, die ein Steuerungsansatz für nichtlineare Systeme ist und die Verwendung einer Transformation des nichtlinearen Systems in ein gleichwertiges lineares System durch eine Änderung von Variablen und einen geeigneten Steuereingang beinhaltet. Wie hierin beschrieben, wird das System unter Verwendung von gewöhnlichen Differentialgleichungen (ODE) modelliert, und der dynamische Wechselrichter 306 schätzt unbekannte Eingabekoeffizienten des ODE für die Schätzwerte 314, die optimalen Verstärkungen 312 und die geplante Trajektorie, die durch die Referenzlast 310 bereitgestellt wird. Der dynamische Wechselrichter 306 erzeugt ein Steuersignal 316 zur Verwendung durch die Systemdynamik 308, um Arbeitsvorgangsparameter für das autonome System zu berechnen.
-
Der dynamische Wechselrichter 306 arbeitet in Verbindung mit der expliziten NMPC 302, um die unbekannten Werte zu schätzen, die zur Durchführung von Berechnungen in einem Steueralgorithmus für das autonome System verwendet werden, und bietet somit eine erhöhte Genauigkeit der Leistung des autonomen mechanischen Systems.
-
Die Systemdynamik 308 ist das Systemmodell des autonomen Systems, das mathematische Beziehungen (beschrieben mit ODE) für die Vorgänge einschließt, die vom autonomen mechanischen System ausgeführt werden. Die Systemdynamik 308 erhält Steuereingaben für das autonome System (z. B. das vom dynamischen Wechselrichter 306 bereitgestellte Steuersignal), führt Berechnungen mit den Steuereingaben durch und stellt dem autonomen System ein Ausgangssignal 318 zur Verfügung, das Arbeitsvorgangsparameter für die Verwendung durch das autonome System einschließt. Die vom Regelkreis-Steuersystem 300 bereitgestellten Arbeitsvorgangsparameter können beliebige berechnete Systemdynamikwerte einschließen, die über das Ausgangssignal 318 gesteuert werden können. Wenn das autonome System beispielsweise als autonomes Fahrzeug implementiert ist, können die Arbeitsvorgangsparameter einen Drehmomentwert für die Räder als Steuereingang, einen Fahrzeuggeschwindigkeitswert, eine Fahrtrichtung oder einen Fahrzeugbeschleunigungswert einschließen.
-
Das Regelkreis-Steuersystem 300 erzeugt das Ausgangssignal 318, das an das kommunikativ gekoppelte autonome System übertragen oder anderweitig bereitgestellt wird. In einigen Ausführungsformen erzeugt das Regelkreis-Steuersystem 300 das Ausgangssignal, das direkt auf eine tatsächliche Trajektorie des autonomen Systems angewendet wird, um die tatsächliche Trajektorie so zu korrigieren, dass die tatsächliche Trajektorie (und damit das autonome mechanische System) mit der vordefinierten und gespeicherten geplanten Trajektorie übereinstimmt.
-
Unter Bezugnahme auf 2 erzeugt das Steuerungsmodul 208 in beispielhaften Ausführungsformen unter Verwendung des Regelkreis-Steuersystems ein Ausgangssignal, das (von der Kommunikationsvorrichtung 206) an das kommunikativ gekoppelte autonome mechanische System übertragen wird. In einigen Ausführungsformen ist die Rechenvorrichtung 200 jedoch als integrierter Bestandteil oder Aspekt der Planungs- und Steuermodule des autonomen mechanischen Systems implementiert. In diesem Fall erzeugt das Regelkreis-Steuersystemmodul 208 mithilfe des Regelkreis-Steuersystem-Frameworks ein Ausgangssignal, das direkt auf eine tatsächliche Trajektorie des autonomen mechanischen Systems angewendet wird, um die tatsächliche Trajektorie so zu korrigieren, dass die tatsächliche Trajektorie (und damit das autonome mechanische System) der geplanten Trajektorie entspricht.
-
Das Steuermodul 210 des autonomen mechanischen Systems ist konfiguriert, um Steuerbefehle für das autonome mechanische System basierend auf dem Ausgangssignal der expliziten NMPC, nach Modifikation durch den EHGO und der dynamischen Inversion zur Erzeugung eines modifizierten Ausgangssignals zu erzeugen. Das modifizierte Ausgangssignal schließt modifizierte Arbeitsvorgangsparameter für das autonome System ein (siehe Referenz 104 in 1), die Systemunsicherheiten und unbekannte Werte (z. B. unbekannte Systemmodellkoeffizienten, ungemessene Systemzustände) kompensieren. Die geänderten Arbeitsvorgangsparameter werden von einem autonomen Betriebsmodul (siehe Referenz 110 in 1) des autonomen mechanischen Systems verwendet, um autonome Arbeitsvorgänge durchzuführen, um das autonome System zu veranlassen, eine vordefinierte und gespeicherte geplante Trajektorie einzuhalten.
-
In der Praxis kann das Regelkreis-Steuersystemmodul 208 und/oder das autonome Systemsteuermodul 210 mit dem mindestens einen Prozessor 202 implementiert werden (oder mit ihm zusammenarbeiten), um mindestens einige der hierin näher beschriebenen Funktionen und Arbeitsvorgänge auszuführen. In diesem Zusammenhang kann das Regelkreis-Steuersystemmodul 208 und/oder das autonome Systemsteuermodul 210 als entsprechend geschriebene Verarbeitungslogik, entsprechend geschriebener Anwendungsprogrammcode oder dergleichen realisiert werden.
-
4 ist ein Diagramm des Steuerflusses 400 zur Verbesserung der typischen Leistung eines autonomen Systems gemäß den offenbarten Ausführungsformen. Wie hierin beschrieben, wird der Steuerfluss 400 mit einer oder mehreren Rechenvorrichtungen implementiert (wie in den 1-2, Referenzen 102, 200 dargestellt) implementiert, was einen Aspekt eines Systems zur Verbesserung der typischen Leistung eines autonomen Systems darstellt, wie beschrieben in 1.
-
Wie dargestellt, schließt der Steuerfluss 400 einen expliziten nichtlinearen modellprädiktiven Steuerblock 402 (NMPC), einen Extended-High-Gain-Beobachter(EHGO)-Block 404 und einen dynamischen Inversionsblock 406 ein. Um unsichere nichtlineare Systeme in Steueranwendungen für das autonome System zu berücksichtigen, werden ein oder mehrere Extended-High-Gain-Beobachter (EHGO) im EHGO-Block 404 verwendet, um ungemessene Systemzustände, Unsicherheiten und externe Störungen zu schätzen. Die von den EHGO generierten Schätzungen werden einem dynamischen Inversionsblock 406 zu Verfügung gestellt, der Schätzwerte für unsichere oder unbekannte Koeffizienten berechnet. Optimale Verstärkungen für das System werden durch eine explizite nichtlineare modellprädiktive Regelung (NMPC) im expliziten NMPC-Block 402 bestimmt, die auch dem dynamischen Inversionsblock 406 zur Verfügung gestellt werden, um das autonome System unter optimalen Bedingungen zu betreiben.
-
Der Steuerfluss
400 stammt aus einer Darstellung eines Systemmodells für das autonome System durch eine gewöhnliche Differentialgleichung (ODE), wie folgt: Das Problem wird durch die Berücksichtigung einer Kette von Integratoren dargestellt:
wobei
- x(0)= x0; ż=g\(x,z), wobei z(0)= zo; und
- y=Cx; wobei A = Blockdiagramm [A1, ..., Am],
- B = Blockdiagramm [B1, ...., Bm], und
- C = Blockdiagramm [C1,...., Cm].
für 1 ≤ i ≤ m und
-
Um die geeigneten Steuersystemalgorithmen zu konzipieren, werden vier Annahmen getroffen, einschließlich: (1) die Funktionen f(x,u) und σ(x, z, u) sind kontinuierlich differenzierbar; (2) die Nulldynamik ist stabil; (3) die Systemausgabe y = Cx hat einen klar definierten, relativen Grad; und (4) die Ausgabe y = Cx und das Referenzsignal w(t) sind kontinuierlich in Bezug auf die Zeit t differenzierbar.
-
Der Steuerfluss 400 kann wie folgt zusammengefasst werden: Erstens wird unter der Annahme, dass Zustände des autonomen Systems (und aller Komponenten-Subsysteme) bekannt sind und dass „perfekte“ Modelle des autonomen Systems zur Verfügung stehen (für die die Systemdynamik mit definierten, bekannten, gemessenen oder anderweitig bereitgestellten Parameterwerten modelliert werden kann), das explizite nichtlineare modellprädiktive Regelung (NMPC) konzipiert und in ein Regelkreis-Steuersystem für das autonome System integriert. Zweitens, unter den Annahmen, dass die Systemzustände messbar sind und dass die Systemdynamik bekannt ist (mit der Ausnahme, dass eine Eingabekoeffizientenmatrix unbekannt, aber ein positiver definitiver Wert ist), wird der dynamische Wechselrichter konzipiert und in das Regelkreis-Steuersystem integriert, das die explizite NMPC einschließt. Drittens, unter der Annahme, dass die Systemzustände messbar sind, dass die Systemdynamik unbekannt ist (mit der Ausnahme, dass die Eingabekoeffizientenmatrix ein positiver definitiver Wert ist), werden die Extended-High-Gain-Beobachter (EHGO) und der dynamische Wechselrichter in das Regelkreis-Steuersystem integriert, um die explizite NMPC zu verstärken.
-
Um die explizite NMPC ohne Unsicherheiten zu entwerfen, wird über die Kostenfunktion ein Leistungsindex für den rückläufigen Horizont definiert:
wobei T die Vorhersageperiode ist. Die Steuerreihenfolge r wird definiert, wenn die Bedingungen der Steuersignale erfüllt sind:
wobei u
(k)(t+τ) das r-te von u(t+τ) in Bezug auf τ bezeichnet.
-
Unter Verwendung der Bezeichnung Lie-Derivative, wiederholte Differenzierung bis zu ρ + r mal Ausgabe wird unter Bezugnahme auf die Zeit wie folgt vorgenommen:
wobei p
ri Zustandsfunktionen, Eingabe und Eingabederivative sind, d. h. x, u(t), u̇ (t), ..., u
(r) (t). Es ist zu beachten, dass y
(ρ) umgeschrieben werden kann als:
-
Die Ausgabe y(t+τ)=[y
ρ1, y
ρ2, ..., y
ρm]
T ∈R
ρ zu einem zukünftigen Zeitpunkt τ wird mit Hilfe der Erweiterung der Taylorreihe wie folgt approximiert:
wobei i=ρ
i, ..., ρ
m und ρ=ρ
1+... +ρ
m.
-
Die Referenztrajektorie w(t+τ)=[w
ρ1, w
ρ2, ..., w
ρm]
T ∈ R
ρ wird ebenfalls durch die Erweiterung der Taylorreihe approximiert:
-
Die Gleichungen y(t+i) und w(t+τ) können wie folgt umgeschrieben werden:
-
Um die Kostenfunktion J unter Bezugnahme auf die Eingabe
u=[u
T, u̇
T, ..., u
(r) (t)
T]
T zu minimieren, d. h., (∂J/(∂
u), besteht eine notwendige Bedingung:
wobei
abgeleitet sind:
-
Unter Nutzung der Unvermeidlichkeit von
d. h. einer nichtsingulären Matrix (∂H/(∂
u)≠0, ergibt sich Folgendes:
-
Unter Verwendung der Gleichung (A.1) ergibt sich Folgendes:
-
Die explizite Eingabe wird wie folgt bestimmt:
wobei K die ersten m Spalten der Matrix
bezeichnet und
-
Basierend auf der expliziten NMPC wird die dynamische Inversion verwendet, um die Lösung von u(t) für die nichtlineare Karte zu ermitteln (Gleichung A.2). In diesem Fall wird die dynamische Inversion verwendet, um den unbestimmten Eingabekoeffizienten
zu lösen. Der unbestimmte Eingangskoeffizient ist jedoch ein positiver, definitiver Wert. Bei dynamischer Inversion ist die Steuerung wie folgt aufgebaut:
-
Um ein Prinzip der dynamischen Inversion zu beobachten, wird die singuläre Störmethode wie folgt angewendet: da µ→0 ist, wird Folgendes erreicht:
was der Gleichung (A.2) entspricht. Ohne Unsicherheiten, d. h. σ(x, z, u)=0, wird Folgendes bestimmt:
-
Um ungemessene Systemzustände und Unsicherheiten im System sowie externe Störungen zu berücksichtigen, ist der Extended-High-Gain-Beobachter (EHGO) wie folgt konzipiert:
-
Unter Verwendung der expliziten nichtlinearen modellprädiktiven Regelung (NMPC), der dynamischen Inversion und dem EHGO ist die Ausgaberückkopplungsregelung wie folgt aufgebaut:
wobei x̂
s, σ̂
s gesättigte Schätzungen bezeichnen. Die Schätzungen des EHGO sind gesättigt, um zu verhindern, dass Spitzenwerte die Systemleistung beeinträchtigen, und die Sättigungsstufen werden in der Domäne für die Zustandsrückmeldung aktiviert. Die Gesamtstruktur des Steuerdesigns ist im Steuerfluss
400 von
4 dargestellt.
-
Wie hierin beschrieben, schließt der Steuerfluss
400 den expliziten NMPC-Block
402, den EHGO-Block
404 und den dynamischen Inversionsblock
406 ein. Der explizite NMPC-Block
402 arbeitet in einer längeren Zeitspanne als der EHGO-Block
404 und der dynamische Inversionsblock
406, und eine nichtlineare Karte bei Unsicherheiten wird durch den expliziten NMPC-Block
402 gemäß den folgenden Gleichungen (die zuvor beschrieben wurden) bereitgestellt:
wobei σ(x, u, t) Unsicherheiten des autonomen Systems sind, und wobei KM
ρ-w
(ρ) Referenzdaten darstellt (siehe Block
310 in
3).
-
Der EHGO-Block
404 arbeitet in einer kürzeren Zeitspanne als der explizite NMPC-Block
402 und der dynamische Inversionsblock
406. Um unsichere nichtlineare Systeme in Steueranwendungen für das autonome System zu berücksichtigen, werden ein oder mehrere Extended-High-Gain-Beobachter (EHGO) im EHGO-Block
404 verwendet, um ungemessene Systemzustände, Unsicherheiten und externe Störungen zu schätzen. Der EHGO-Block
404 empfängt Eingabeparameter, einschließlich Messparameter, gemäß der folgenden Gleichung: y(t)=Cx aus dem expliziten NMPC-Block
402 und führt Schätzungen unter Verwendung der folgenden Gleichungen (zuvor beschrieben) durch:
wobei x̂
s, σ̂
s, gesättigte Schätzungen bezeichnen, die dem dynamischen Inversionsblock
406 übermittelt werden.
-
Der dynamische Inversionsblock 406 arbeitet in einer mittleren Zeitspanne, die schneller ist als die langsamste Zeitspanne, die der explizite NMPC-Block 402 verwendet, und die langsamer ist als die schnellste Zeitspanne, die der EHGO-Block 404 verwendet. Die von den EHGO generierten Schätzungen werden einem dynamischen Inversionsblock 406 zur Verfügung gestellt, der Schätzwerte für unsichere oder unbekannte Koeffizienten berechnet. Somit berechnet und liefert der dynamische Inversionsblock 406 die dynamische Inversion der Eingabeparameter, die vom EHGO-Block 404 und dem expliziten NMPC-Block 402 bereitgestellt werden, gemäß der folgenden Gleichung (zuvor beschrieben):
- uu̇ = -[fn(x̂s,u) + gn(x̂s)u + σ̂s + KMρ - wρ]. Der dynamische Inversionsblock 406 berechnet und stellt dem expliziten NMPC-Block 402 den Parameter u(t) zur Verfügung, sodass der explizite NMPC-Block 402 in der Lage ist, ein Steuersignal zu berechnen, das zum Betrieb des autonomen Systems unter optimalen Bedingungen verwendet wird.
-
Beispielhafte Ausführungsform: Anwendung in einem autonomen Fahrzeug
-
5 ist ein Diagramm einer beispielhaften Ausführungsform eines Fahrzeugmodells 500, das auf ein autonomes System anwendbar ist, gemäß den offenbarten Ausführungsformen. In dieser Ausführungsform ist das autonome System als autonomes Fahrzeug (d. h. autonomer Pkw/autonomes Automobil) implementiert. Obwohl die dargestellte Ausführungsform in 5 ein autonomes Fahrzeug ist, ist zu beachten, dass andere Ausführungsformen des autonomen Systems als Boden-, Luft- oder Unterwasserfahrzeuge, die eine autonome Fahrzeugsteuerung erfordern, ausgeführt werden können; zweibeinige Roboter, die eine autonome Motorsteuerung erfordern; prothetische Technologien, die eine autonome motorische Steuerung des menschlichen Körpers erfordern; oder dergleichen, wie zuvor unter Bezugnahme auf Fig. beschrieben. 1.
-
5 veranschaulicht die Systemdynamik für ein autonomes Fahrzeug als vereinfachtes Fahrradmodell des autonomen Fahrzeugs, das mit dem Verfahren zur dynamischen Modellierung nach Kane normalisiert wurde. Explizite nichtlineare modellprädiktive Regelung (NMPC) verwendet die normale Form, um die Steuerkonzeption durchzuführen, wobei die normale Form eine Systemform ist, die das Systemverhalten unter Verwendung von gewöhnlichen Differentialgleichungen (ODE) beschreibt. Das Verfahren nach Kane wird typischerweise verwendet, um die Dynamik des Systems zu beschreiben, und das Verfahren nach Kane schließt nicht die normale Form ein. Wie hierin beschrieben, wird die durch das Verfahren nach Kane beschriebene Form in die normale Form für die Verwendung in der Regelkreis-Systemsteuerung des autonomen Fahrzeugs umgewandelt. Es ist zu beachten, dass das vereinfachte Modell (und die zugehörigen Algorithmen, die das Verhalten/Dynamik des Modells beschreiben) keine Berechnungen zur Anpassung an die Verwendung eines Fahrzeuggetriebes oder anderer Arten von Untersetzungen an Bord des Fahrzeugs einschließt. In der Praxis können die hierin beschriebenen Techniken jedoch auf Systeme angewendet werden, die ein Getriebe oder andere Arten der Untersetzung einschließen, wie es für die jeweilige Anwendung erforderlich ist, durch Erweiterung des Systemdynamikmodells um den Fahrzeugmotor und das Fahrzeuggetriebe. Wie beschrieben werden verallgemeinerte Koordinaten q1, ...., q6 verwendet. Die Koordinaten q1 und q2 bezeichnen die Position des Schwerpunktes des Fahrgestells; die Koordinate q3 ist der Gierwinkel; die Koordinate q4 ist der Lenkwinkel; die Koordinaten q5 und q6 sind die Reifenwinkel der Hinter- und Vorderräder.
-
Mit dem Verfahren von Kane und den darin eingeschlossenen nichtholonomen Beschränkungen werden die anwendbaren Zustandsraumgleichungen wie folgt berechnet:
wobei x=[x
1, x
2]
T, z=[z
1, ..., z
4]
T, q=[q
1, q
2, q
3, ..., q
6]
T=[x
1, y
1, z
1, ..., z
4]
T; b
1 und b2 2x2-Matrizen sind;
M(-1) eine 2x2-Trägheitsmatrix und ein positiver definitiver Wert ist und [y
1, y
2]
T ein Messvektor ist. Der Vektor [z
1, ..., z
4]
T ist ein stabiler Vektor mit Nulldynamik.
-
6 ist ein Diagramm eines Steueralgorithmus 600 für eine beispielhafte Ausführungsform eines Fahrzeugmodells, das auf ein autonomes System anwendbar ist, gemäß den offenbarten Ausführungsformen. Der Steueralgorithmus in 6 ist die Steueranwendung, die spezifisch für eine autonome Fahrzeugausführungsform ist, wobei eine allgemeine Steueranwendung, die auf autonome Systeme anwendbar ist, zuvor beschrieben wurde unter Bezugnahme auf 4, und wobei die autonome Fahrzeugausführungsform zuvor beschrieben wurde unter Bezugnahme auf 5. Somit werden die verallgemeinerten Gleichungen (Referenz 400, 4.), die auf Systemmodelle autonomer mechanischer Systeme anwendbar sind, auf das spezifische Systemmodell des autonomen Fahrzeugs angewendet (Referenz 500, 5) und derart manipuliert, dass sie den dargestellten Steueralgorithmus 600 erzeugen.
-
Wie dargestellt, schließt der Steueralgorithmus
600 einen expliziten nichtlinearen modellprädiktiven Regelungsblock
602 (NMPC), einen Extended-High-Gain-Beobachter(EHGO)-Block
604, einen dynamischen Inversionsblock
606 und einen Systemdynamikblock
608 ein. Der explizite NMPC-Block
602 stellt ein explizites NMPC-Framework für das autonome Fahrzeug bei Unsicherheiten wie folgt dar:
-
Der EHGO-Block
604 schätzt unbestimmte, ungemessene und/oder anderweitig unbekannte Werte für das Systemmodell wie folgt:
-
Der dynamische Inversionsblock
606 berechnet geschätzte Werte für unbekannte Eingabekoeffizienten des Systemmodells wie folgt:
-
Der Systemdynamikblock 608 stellt mathematische Beschreibungen für die autonomen Fahrzeugsysteme bereit, wie zuvor beschrieben unter Bezugnahme auf 5.
-
Der Steueralgorithmus 600 ist repräsentativ für ein durch eine Rechenvorrichtung implementiertes Regelkreis-Steuersystem (siehe Referenz 102, 1; Referenz 200, 2). Das Regelkreis-Steuersystem schließt den expliziten NMPC-Block 602 ein, der Steuereingaben empfängt (einschließlich früherer Steuerbewegungen für das autonome Fahrzeug) und einen Rahmen für die Bereitstellung optimaler Verstärkungen für das Regelkreis-Steuersystem für das autonome Fahrzeug bietet. Der explizite NMPC-Block 602 optimiert eine Kostenfunktion (siehe Referenz 402, 4) unter Verwendung eines Systemmodells (dargestellt durch den Systemdynamikblock 608), um Arbeitsvorgangsparameter und Steuerbefehle für das autonome Fahrzeug zu erzeugen. Die Eingaben des expliziten NMPC-Frameworks schließen einen oder mehrere Steuereingaben, eine geplante Trajektorie für das autonome Fahrzeug und ein Systemmodell des autonomen Fahrzeugs ein. Das explizite NMPC-Framework erzeugt aus den Eingabesteuerdaten Arbeitsvorgangsparameter für das autonome Fahrzeug, einschließlich Steuerbefehle für den autonomen Betrieb des Fahrzeugs basierend auf der geplanten Trajektorie. Die Ausgabe des expliziten NMPC-Frameworks wird dann modifiziert (über EHGO und/oder dynamische Inversion), um modifizierte Arbeitsvorgangsparameter zu erzeugen, einschließlich modifizierter Steuerbefehle für die Genauigkeit der Fahrzeugleistung, die die Leistung mit unveränderten Arbeitsvorgangsparametern und unveränderten Steuerbefehlen übersteigt.
-
Die modellprädiktive Regelung (MPC) stellt eine Funktionalität für eine Rechenvorrichtung zur Steuerung eines autonomen Systems unter optimalen Bedingungen unter Verwendung von Einschränkungen, die Systemzustände und Systemeingaben basierend auf Systemmodellen einschließen, bereit. Lineare MPC verwenden eine weitreichende generalisierte prädiktive Regelung, einschließlich Polynomen zur Linearisierung der Ausgaben. Nichtlineare MPC (NMPC) unterscheiden sich von linearen MPC, und Optimierungen durch NMPC sind ressourcenintensiv und in der Regel instabil. Dennoch wird die Stabilität von NMPC unter Verwendung eines dualen Steuerungsansatzes gesteuert, wobei eine zurückgefahrene Horizontkontrolle außerhalb des Terminalbereichs verwendet wird, und wenn die Zustände die Grenze des Terminalbereichs erreichen, wird ein NMPC-Schema mit nahezu unendlichem Horizont verwendet, einschließlich einer präzisen Zielfunktion, die sich aus Kosten für einen endlichen Horizont und Kosten für ein Terminal zusammensetzt. Durch den Einsatz der Kostenfunktion begrenzt die Terminalfunktion die unbegrenzten Horizontkosten des nichtlinearen Systems, es wird Stabilität erreicht. Das explizite NMPC-Framework nähert sich den Ausgaben von kontinuierlichen Zeitsystemen mit Hilfe der Taylorreihe mit der Anzahl der relativen Grade und Eingabederivaten an. Die explizite NMPC ermittelt explizit eine Lösung, wodurch (1) die intensive Rechenlast reduziert wird, die für NMPC typisch ist und (2) die Stabilität des Regelkreis-Steuersystems sichergestellt wird. Die explizite NMPC berücksichtigt jedoch keine dem Systemmodell zugeordneten Unvollkommenheiten und unbekannten Werte, einschließlich ungemessener Systemzustände, Systemmodellunsicherheiten, unbekannter Eingabekoeffizienten, Systemstörungen und dergleichen. Durch die Nichtberücksichtigung von Unvollkommenheiten und unbekannten Werten des Systemmodells akkumuliert die Steuerung des autonomen Fahrzeugs Fehler und die Leistung des autonomen Fahrzeugs nimmt ab.
-
Der dynamische Inversionsblock 606 empfängt Eingabewerte vom expliziten NMPC-Block 602 (z. B. die optimalen Verstärkungen) und vom EHGO-Block 604 (z. B. Schätzdaten, wie unten beschrieben) und modifiziert die Eingabewerte, um unbekannte Eingabekoeffizienten des Systemmodells (dargestellt durch den Systemdynamikblock 608) zu berücksichtigen.
-
Die Steuerung des autonomen Fahrzeugs beginnt mit dem EHGO-Block 604, der eine aktuelle Position des autonomen Fahrzeugs empfängt: y=[x1, y1]T von einem oder mehreren Fahrzeugsensoren. Daten, die von Sensoren innerhalb des autonomen Systems (z. B. des autonomen Fahrzeugs) empfangen werden, können auch als Messdaten oder gemessene Systemzustände bezeichnet werden. In der dargestellten beispielhaften Ausführungsform kann der jeweilige Fahrzeugsensor ein Global Positioning System (GPS), ein Odometriesystem, ein lokales Entfernungsmesssystem (z. B. Laser-Entfernungsmessung) oder dergleichen sein, und die aktuelle Position schließt Daten des jeweiligen Sensors ein, der die Position des Fahrzeugs anzeigt. Der EHGO-Block 604 empfängt ferner Systemmodelldaten aus dem Systemdynamikblock 608 in Form von gewöhnlichen Differentialgleichungen (ODE), die für die Dynamik des autonomen Fahrzeugs und aller Komponenten-Subsysteme repräsentativ sind. Unter Verwendung der Systemmodelldaten (aus dem Systemdynamikblock 608) und der aktuellen Fahrzeugpositionsdaten (gemessen durch Fahrzeugsensoren) schätzt der EHGO-Block 604 Beschleunigungs- und Geschwindigkeitswerte für eine geplante Trajektorie, die vordefiniert und für die Verwendung durch das autonome Fahrzeug gespeichert wurde. Die geschätzten Werte werden dargestellt durch: x̂s, σ̂s.
-
Die geschätzten Werte vom EHGO-Block 604 werden dem dynamischen Inversionsblock 606 bereitgestellt. Der dynamische Inversionsblock 606 verwendet die empfangenen Schätzwerte (vom EHGO-Block 604) und die empfangenen optimalen Verstärkungen (vom expliziten NMPC-Block 602), um unbekannte Eingabekoeffizienten, die dem Systemmodell und der Kostenfunktion zugeordnet sind (siehe vorherige Beschreibung in Bezug auf den expliziten NMPC-Block 602), zu berücksichtigen. Das Ergebnis der dynamischen Inversion ist der Zustandsvektor u(t), der vom dynamischen Inversionsblock 606 an den Systemdynamikblock 608 bereitgestellt wird, zur Anwendung auf die Systemmodellberechnungen und Übertragung an das autonome Fahrmodul des autonomen Fahrzeugs. In der dargestellten beispielhaften Ausführungsform schließt u(t) einen Hinterrad- oder Vorderraddrehmomentwert und ein Giermoment ein, berechnet zur Steuerung des autonomen Fahrzeugs und zur Korrektur der aktuellen Trajektorie des Fahrzeugs, sodass das autonome Fahrzeug nach der Korrektur eine vordefinierte, geplante Trajektorie genauer einhält.
-
Wie dargestellt, wird die Steuerausgabe der expliziten NMPC wie folgt modifiziert: (i) die EHGO-Schätzungen von ungemessenen Systemzuständen und externen Störungen und (ii) die dynamisch invers berechneten Werte für die unbekannten Eingabekoeffizienten. Unbekannte und/oder unsichere Werte in der Systemmodellierung führen zu nicht optimalen Ergebnissen und potenziell verschlechterter Leistung für autonome Systeme. Die verschlechterte Leistung für ein autonomes System zeigt erhöhte Fehler durch einen Satz von erwarteten Ergebnissen an, wie beispielsweise einen zunehmenden Versatz von einer geplanten Trajektorie für das autonome Fahrzeug. Durch Modifizieren der Steuerausgabe der expliziten NMPC zur Anpassung an potenzielle Fehler oder verschlechterte Leistungen verbessert der Steueralgorithmus 600 die Leistung des autonomen Fahrzeugs, indem er Fehler reduziert oder eliminiert, die durch unbekannte und unsichere Werte für den Steueralgorithmus verursacht werden, was zu einer engeren Übereinstimmung des autonomen Fahrzeugs mit der geplanten Trajektorie führt, als ohne die Änderungen, die durch den EHGO-Block 604 und den dynamischen Inversionsblock 606 bereitgestellt werden.
-
In numerischen Simulationen wird die Position des Kraftfahrzeugs (y=[x
1, y
1]
T) gemessen. Die Positionsdaten werden verwendet, um [x
2, y
2]
T und unsichere Ausdrücke zu schätzen
-
Im schnellsten Zeitraumabschnitt des Steueralgorithmus
600 (z. B. dem EHGO-Block
604) stellt das EHGO Schätzungen für [x̂
2, ŷ
2]
T und σ̂(t) bereit. In einem mittleren Zeitraumabschnitt des Steueralgorithmus
600 (z. B. dem dynamischen Inversionsblock
606) verwendet der dynamische Wechselrichter die vom EHGO bereitgestellten Schätzungen, um die Lösung der unsicheren Zuordnung zu finden und den unsicheren Eingabekoeffizienten
zu bearbeiten, wobei
der Nominalwert ist und
eine Unsicherheit ist. Die unsicheren nichtlinearen Steuerbedingungen werden durch die explizite nichtlineare modellprädiktive Regelung (NMPC) erzeugt, um optimale Bedingungen für das System in der langsamsten Zeitspanne zu erreichen.
-
Unter normalen Bedingungen und ohne die Verwendung von Modifikationen an der expliziten NMPC-Ausgabe erzeugt die explizite NMPC Steuerbefehle für das autonome Fahrzeug, die letztlich zu einer tatsächlichen Fahrzeugtrajektorie führen, die aufgrund unbekannter Systemwerte, unbekannter Systemzustände, unbekannter Systemmodelleingabekoeffizienten, Systemunsicherheiten und externer Systemstörungen von einer geplanten Trajektorie für das Fahrzeug abweicht. Durch die Verwendung der hierin beschriebenen Struktur mit mehreren Zeiträumen, die die explizite NMPC-Ausgabe vor dem Einsatz modifiziert, ist der Steueralgorithmus 600 dennoch in der Lage, eine autonome Fahrzeugsteuerung so durchzuführen, dass die tatsächliche Trajektorie des Fahrzeugs der gegebenen Referenztrajektorie (d. h. der geplanten Trajektorie) bei ungemessenen Zuständen und Unsicherheiten präzise entspricht, während die optimalen Bedingungen erfüllt sind.
-
7 ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses 700 zur Verwendung eines Regelkreis-Steuersystems veranschaulicht, das eine explizite nichtlineare modellprädiktive Regelung (NMPC) zum Steuern eines autonomen Systems gemäß den offenbarten Ausführungsformen umfasst. Zuerst empfängt der Prozess 700 einen oder mehrere Steuereingaben über das Regelkreis-Steuersystem für das autonome System (Schritt 702). Steuereingaben können Daten vergangener Steuerbewegungen, Referenzlastdaten (z. B. eine Referenztrajektorie und andere Steuerbewegungsdaten für ein bestimmtes autonomes mechanisches System) und Ausgaben von einem dynamischen Wechselrichter unter Verwendung von Extended-High-Gain-Beobachter (EHGO)-Ausgabedaten und expliziten NMPC-Ausgabedaten einschließen. Die Steuereingaben werden über ein Regelkreis-Steuersystem erfasst und von der expliziten NMPC zur weiteren Analyse verwendet.
-
Anschließend erhält der Prozess 700 ein Systemmodell für das autonome System, das Systemmodell mathematische Beschreibungen der Systemdynamik des autonomen Systems umfassend (Schritt 704). Das Systemmodell schließt eine Vielzahl von Steueralgorithmen ein, die repräsentativ für die Systemdynamik des autonomen Systems sind, wobei die Vielzahl von Steueralgorithmen in Form von gewöhnlichen Differentialgleichungen (ODE) vorliegen. Die ODE-Beschreibungen des Systemmodells sind kompatibel mit ODE-Darstellungen von dynamischen Inversionsalgorithmen und Extended-High-Gain-Beobachter(EHGO)-Algorithmen, sodass dynamische Inversions- und/oder EHGO-Arbeitsvorgänge unter Verwendung anwendbarer Systemdynamikalgorithmen und geeigneter Eingabedaten durchgeführt werden können.
-
Der Prozess 700 berechnet anschließend Arbeitsvorgangsparameter für das autonome System unter Verwendung des expliziten NMPC-Frameworks, umfassend eine oder mehrere Steuereingaben und mathematische Beschreibungen, wobei die Ausgabe der expliziten NMPC die Arbeitsvorgangsparameter umfasst (Schritt 706). Ein typisches modellprädiktives Regelungs (MPC)-System ist ein multivariabler Steueralgorithmus, der ein internes dynamisches Modell des Prozesses (z. B. das Systemmodell), eine Verlaufshistorie vergangener Steuerbewegungen (z. B. die Steuereingaben) und eine Optimierungskostenfunktion (J) über den sich verringernden Prognosehorizont verwendet, um optimale Steuerbewegungen und zugehörige Arbeitsvorgangsparameter zu berechnen, um die besten Steuerbewegungen für das autonome System zu erzeugen. Die Optimierungskostenfunktion (J) wird unter Verwendung eines Dual-Mode-Steuerungsansatzes durchgeführt, wobei eine zurückgehende Horizontsteuerung außerhalb eines Endbereichs verwendet wird und wenn Zustände des Systemmodells eine Grenze des Endbereichs erreichen, unter Verwendung einer virtuellen linearen Stabilisierungssteuerung, die ein quasi unendliches Horizont-NMPC-Schema verwendet, unter Verwendung einer Online-Zielfunktion, die endliche Horizontalkosten und Anschlusskosten umfasst. Das explizite NMPC-Framework berechnet explizit Ausgabewerte, um die intensive Rechenlast zu reduzieren, indem es Ausgabewerte von kontinuierlichen Zeitsystemen des Systemmodells unter Verwendung der Taylorreihe schätzt (um angenäherte Ausgaben zu erzeugen) und explizit die optimalen Steuerbewegungen basierend auf den angenäherten Ausgaben berechnet.
-
Das explizite NMPC-Framework setzt voraus, dass dem Prozess 700 alle autonomen Systemzustände bekannt sind und dass das erhaltene Systemmodell für das autonome System perfekt ist und keinen Fehler, keine Unsicherheit oder unvollständige oder unbekannte Werte einschließt. Bei einer typischen expliziten NMPC ist dies jedoch nicht der Fall, und Änderungen an der Ausgabe der expliziten NMPC sind notwendig, um die Unvollkommenheiten im Systemmodell zu berücksichtigen und Steuerbefehle mit erhöhter Genauigkeit zu erzeugen.
-
Der Prozess 700 modifiziert die Ausgabe der expliziten NMPC, um ungemessene Systemzustände, unbekannte Systemmodellwerte und externe Störungen des autonomen Systems zu berücksichtigen und modifizierte Arbeitsvorgangsparameter zu erzeugen (Schritt 708). Geeignete Methodologien zum Modifizieren der Ausgabe der expliziten NMPC werden im Folgenden beschrieben unter Bezugnahme auf 8 und 9. Im Rahmen der vorliegenden Offenbarung kann die Ausgabe der expliziten NMPC mit einem Extended-High-Gain-Beobachter (EHGO) modifiziert werden (8), dynamische Inversion (9) oder eine Kombination des EHGO und der dynamischen Inversion, wie zuvor beschrieben unter Bezugnahme auf 3.
-
Der Prozess 700 erzeugt ein modifiziertes Ausgabesignal für das Regelkreis-Steuersystem (Schritt 710). Das modifizierte Ausgabesignal umfasst dabei die modifizierten Arbeitsvorgangsparameter und dient als Steuersignal für das autonome System.
-
In einigen Ausführungsformen wird der Prozess 700 mit einer eigenständigen Steuereinheit oder Rechenvorrichtung implementiert, die kommunikativ mit dem autonomen System gekoppelt ist. In diesem Fall überträgt der Prozess 700 das modifizierte Ausgabesignal des Regelkreis-Steuersystems an die autonomen Systemschaltlogiken und/oder Steuermodule, um den Betrieb des autonomen Systems unter Verwendung der modifizierten Arbeitsvorgangsparameter zu steuern (Schritt 712).
-
In weiteren Ausführungsformen wird der Prozess 700 mit einer Steuerung oder Rechenvorrichtung realisiert, die in die autonome Systemsteuerschaltlogiken und/oder die Steuermodule integriert ist und zusammen mit diesen angeordnet ist. In diesem Fall verwendet der Prozess 700 das modifizierte Ausgabesignal, um den Betrieb des autonomen Systems direkt zu steuern. In dieser Ausführungsform wendet der Prozess 700 einen Zustandsvektor auf eine Trajektorie des autonomen Systems an, der Zustandsvektor die modifizierten Arbeitsvorgangsparameter umfassend; der Prozess 700 passt die Trajektorie basierend auf dem Zustandsvektor an, um eine korrigierte Trajektorie zu erzeugen; und der Prozess 700 betreibt das autonome System gemäß der korrigierten Trajektorie.
-
8 ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses 800 zum Modifizieren von durch explizite nichtlineare modellprädiktive Regelung (NMPC) generierte Arbeitsvorgangsparameter unter Verwendung eines Extended-High-Gain-Beobachters (EHGO) gemäß den offenbarten Ausführungsformen darstellt. Es ist zu beachten, dass der Prozess 800, welcher in 8 beschrieben wird, eine Ausführungsform von Schritt 708 darstellt, der vorstehend in der Erörterung von 7 beschrieben wurde, einschließlich zusätzlicher Details.
-
Der Prozess 800 erfasst gemessene Systemzustände für das autonome System über einen oder mehrere Sensoren innerhalb des autonomen Systems (Schritt 802). Wie zuvor unter Bezugnahme auf 1 bis 6 beschrieben, verwendet der Prozess 800 einen EHGO zum Schätzen der Werte für Systemunsicherheiten (z. B. ungemessene Systemzustände, externe Störungen), um die Berechnung der Arbeitsvorgangsparameter des autonomen Systems zu verbessern. In Ausführungsformen, in denen das autonome System als Fahrzeug implementiert ist, können die gemessenen Systemzustände Positionsdaten für das autonome System einschließen, wie beispielsweise GPS-Daten (Global Positioning System) oder andere Positionsdaten.
-
Der Prozess 800 verwendet einen EHGO, um die ungemessenen Systemzustände und die externen Störungen basierend auf den gemessenen Systemzuständen zu schätzen, um geschätzte ungemessene Systemzustände und geschätzte externe Störungen zu erzeugen (Schritt 804). Der Prozess 800 erfasst Eingabewerte für den EHGO des Regelkreis-Steuersystems, einschließlich (i) Messungen, die von Sensoren innerhalb des autonomen Systems empfangen werden, und (ii) des dem autonomen System zugeordneten Systemmodells. Der EHGO ist ein System, das eine Schätzung des internen Zustands des autonomen Systems unter Verwendung von Messungen der Eingaben und Ausgaben des autonomen Systems liefert. Wie hierin beschrieben, wird das System mit Hilfe von gewöhnlichen Differentialgleichungen (ODE) modelliert, und der Prozess 800 verwendet den EHGO zum Schätzen der Werte für die Systemunsicherheiten mithilfe der ODE und den Eingabemesswerten gemäß dem Systemmodell. In Ausführungsformen, in denen das autonome System als Fahrzeug implementiert ist, schätzt der Prozess 800 Geschwindigkeitsdaten und Beschleunigungsdaten für das Fahrzeug, basierend auf den Fahrzeugpositionsdaten und dem entsprechenden ODE-Systemmodell.
-
Der Prozess 800 erzeugt das modifizierte Ausgabesignal, das die modifizierten Arbeitsvorgangsparameter umfasst, basierend auf den geschätzten ungemessenen Systemzuständen und den geschätzten externen Störungen (Schritt 806). In einigen Ausführungsformen (wie unter Bezugnahme auf 3, 4 und 6 beschrieben) stellt der Prozess 800 die vom EHGO geschätzten Werte einem dynamischen Wechselrichter des Regelkreis-Steuersystems 300 zur Verfügung. In Ausführungsformen, in denen das autonome System als Fahrzeug implementiert ist, erzeugt der Prozess 800 ein modifiziertes Ausgangssignal für das Regelkreis-Steuersystem, wobei das modifizierte Ausgangssignal einen Hinterraddrehmomentwert oder einen Vorderraddrehmomentwert und ein Giermoment einschließt, die zur Steuerung des Betriebs des autonomen Fahrzeugs verwendet werden.
-
9 ist ein Flussdiagramm, das eine Ausführungsform eines Prozesses 900 zum Modifizieren von durch explizite nichtlineare modellprädiktive Regelung (NMPC) generierte Arbeitsvorgangsparameter unter Verwendung dynamischer Inversion gemäß den offenbarten Ausführungsformen darstellt. Es ist zu beachten, dass der Prozess 900, welcher in 9 beschrieben wird, eine Ausführungsform von Schritt 708 darstellt, der vorstehend in der Erörterung von 7 beschrieben wurde, einschließlich zusätzlicher Details.
-
Der Prozess 900 verwendet einen dynamischen Wechselrichter, um Werte unbekannter Eingabekoeffizienten für ein Systemmodell des autonomen Systems zu berechnen, worin die unbekannten Systemmodellwerte mindestens die unbekannten Eingabekoeffizienten umfassen (Schritt 902). Wie unter Bezugnahme auf 3, 4, und 6 beschrieben, empfängt der dynamische Wechselrichter Eingabewerte vom expliziten NMPC (einschließlich durch explizite NMPC generierte optimale Verstärkungen) und vom Extended-High-Gain-Beobachter (EHGO) (einschließlich Schätzdaten) und modifiziert die Eingabewerte, um unbekannte Eingabekoeffizienten des Systemmodells anzupassen.
-
Der Prozess 900 erzeugt das modifizierte Ausgabesignal, das die modifizierten Arbeitsvorgangsparameter umfasst, basierend auf den Werten der unbekannten Eingabekoeffizienten (Schritt 904). Der dynamische Wechselrichter verwendet die empfangenen Schätzwerte und die empfangenen optimalen Verstärkungen, um unbekannte Eingabekoeffizienten, die dem Systemmodell und der durch die explizite NMPC optimierten Kostenfunktion zugeordnet sind, zu berücksichtigen. Der dynamische Wechselrichter erzeugt einen Zustandsvektor, der optimierte oder korrigierte Arbeitsvorgangsparameter für das autonome System einschließt, wie beschrieben unter Bezugnahme auf 6.
-
Das Regelkreis-Steuersystem schließt die explizite NMPC ein, die Steuereingaben und ein Systemmodell empfängt, um Arbeitsvorgangsparameter für die weitere Steuerung des autonomen Systems zu erzeugen. In der beispielhaften Ausführungsform, die unter Bezugnahme auf 6 beschrieben wurde, können die Steuereingaben einen Eingangsdrehmomentwert von Hinterrädern eines autonomen Fahrzeugs einschließen, einschließlich eines Drehmomentkoeffizienten, der einen umgekehrten Ausdruck einer Trägheitsmatrix umfasst, worin die unbekannten Eingabekoeffizienten mindestens den Drehmomentkoeffizienten umfassen. In dieser speziellen Ausführungsform verwendet der Prozess 900 den dynamischen Wechselrichter, um die Werte der unbekannten Eingabekoeffizienten zu berechnen, und erzeugt einen Zustandsvektor zur Steuerung des autonomen Fahrzeugs. Der Zustandsvektor schließt einen Hinterrad- oder Vorderraddrehmomentwert und ein Giermoment ein, das zur Steuerung des autonomen Fahrzeugs und zur Korrektur der aktuellen Trajektorie des Fahrzeugs berechnet ist, sodass das autonome Fahrzeug nach der Korrektur eine vordefinierte, geplante Trajektorie genauer einhält.
-
Die verschiedenen Aufgaben, die im Zusammenhang mit den Prozessen 700 bis 900 ausgeführt werden, können durch Software, Hardware, Firmware oder eine beliebige Kombination davon ausgeführt werden. Zur Veranschaulichung können sich die vorangegangenen Beschreibungen der Prozesse 700 bis 900 auf die vorstehend genannten Elemente in Verbindung mit 1 bis 6 beziehen. In der Praxis können Teile der Prozesse 700 bis 900 durch verschiedene Elemente des beschriebenen Systems ausgeführt werden. Es ist zu beachten, dass die Prozesse 700 bis 900 eine beliebige Anzahl von zusätzlichen oder alternativen Aufgaben einschließen können, die in 7 bis 9 dargestellten Aufgaben müssen nicht in der dargestellten Reihenfolge ausgeführt werden, und jeder der Prozesse 700 bis 900 kann in ein umfassenderes Verfahren oder einen umfassenderen Prozess mit zusätzlichen Funktionen integriert werden, die hier nicht im Detail beschrieben sind. Darüber hinaus könnte eine oder mehrere der in 7 bis 9 dargestellten Aufgaben in den Ausführungsformen der Prozesse 700 bis 900 ausgelassen werden, solange die beabsichtigte Gesamtfunktionalität intakt bleibt.
-
Techniken und Technologien können hierin in Form von funktionalen und/oder logischen Blockkomponenten und in Bezug auf symbolische Darstellungen von Arbeitsvorgängen, Verarbeitungsaufgaben und Funktionen beschrieben werden, die von verschiedenen Rechenkomponenten oder Vorrichtungen ausgeführt werden können. Solche Arbeitsvorgänge, Aufgaben und Funktionen werden manchmal als computerausgeführt, computerisiert, softwareimplementiert oder computerimplementiert bezeichnet. In der Praxis können eine oder mehrere Prozessorvorrichtungen die beschriebenen Arbeitsvorgänge, Aufgaben und Funktionen ausführen, indem sie elektrische Signale, die Datenbits an Speicherplätzen im Systemspeicher darstellen, sowie andere Signalverarbeitungen manipulieren. Die Speicherplätze, an denen Datenbits gepflegt werden, sind physische Orte, die bestimmte elektrische, magnetische, optische oder organische Eigenschaften aufweisen, die den Datenbits entsprechen. Es ist zu beachten, dass die verschiedenen in den Figuren dargestellten Blockkomponenten durch eine beliebige Anzahl von Hard-, Software- und/oder Firmwarekomponenten realisiert werden können, die zur Ausführung der angegebenen Funktionen konfiguriert sind. So kann beispielsweise eine Ausführungsform eines Systems oder einer Komponente verschiedene integrierte Schaltlogikkomponenten verwenden, z. B. Speicherelemente, digitale Signalverarbeitungselemente, Logikelemente, Nachschlagetabellen oder dergleichen, die eine Vielzahl von Funktionen innerhalb der Steuerung eines oder mehrerer Mikroprozessoren oder anderer Steuervorrichtungen ausführen können.
-
Bei der Implementierung in Software oder Firmware sind verschiedene Elemente der hierin beschriebenen Systeme im Wesentlichen die Codesegmente oder Anweisungen, die die verschiedenen Aufgaben erfüllen. Die Programm- oder Codesegmente können in einem prozessorlesbaren Medium gespeichert oder durch ein in einer Trägerwelle verkörpertes Computerdatensignal über ein Übertragungsmedium oder einen Kommunikationspfad übertragen werden. Das „computerlesbare Medium“, „prozessorlesbare Medium“ oder „maschinenlesbare Medium“ kann jedes Medium einschließen, das Informationen speichern oder übertragen kann. Beispiele für das prozessorlesbare Medium schließen eine elektronische Schaltlogik, eine Halbleiterspeichervorrichtung, einen ROM, einen Flash-Speicher, einen löschbaren ROM (EROM), eine Diskette, eine CD-ROM, eine optische Diskette, eine Festplatte, ein Glasfasermedium, eine Radiofrequenz-Verbindung (RF) oder dergleichen ein. Das Computerdatensignal kann jedes beliebige Signal einschließen, das sich über ein Übertragungsmedium ausbreiten kann, wie beispielsweise elektronische Netzwerkkanäle, Glasfasern, Luft, elektromagnetische Pfade oder HF-Verbindungen. Die Codesegmente können über Computernetzwerke wie das Internet, ein Intranet, ein LAN oder dergleichen heruntergeladen werden.
-
Die vorstehende Beschreibung bezieht sich auf Elemente oder Knoten oder Merkmale, die „verbunden“ oder „gekoppelt“ sind. Wie hierin verwendet, bedeutet „gekoppelt“, wenn nicht ausdrücklich anders angegeben, dass ein Element/Knoten/Merkmal direkt oder indirekt mit einem anderen Element/Knoten/Merkmal verbunden ist (oder direkt oder indirekt mit diesem kommuniziert), was nicht notwendigerweise mechanisch geschieht. Gleichermaßen bedeutet „verbunden“, wenn nicht ausdrücklich anders angegeben, dass ein Element/Knoten/Merkmal direkt mit einem anderen Element/Knoten verbunden ist (oder direkt mit diesem kommuniziert), was nicht notwendigerweise mechanisch geschieht. Obwohl das Schema, das in 2 dargestellt wird, eine exemplarische Anordnung von Elementen darstellt, können in einer Ausführungsform des dargestellten Gegenstands zusätzliche Zwischenelemente, Vorrichtungen, Merkmale oder Komponenten vorhanden sein.
-
Der Kürze halber können herkömmliche Techniken in Bezug auf Signalverarbeitung, Datenübertragung, Signalisierung, Netzwerksteuerung und andere funktionale Aspekte der Systeme (und der einzelnen Betriebskomponenten der Systeme) hier nicht im Detail beschrieben werden. Darüber hinaus sollen die in den verschiedenen Figuren dargestellten Verbindungslinien exemplarische funktionale Zusammenhänge und/oder physische Kopplungen zwischen den verschiedenen Elementen darstellen. Es ist zu beachten, dass viele alternative oder zusätzliche funktionale Beziehungen oder physische Verbindungen in einer Ausführungsform des Gegenstands vorhanden sein können.
-
Einige der in dieser Spezifikation beschriebenen Funktionseinheiten wurden als „Module“ bezeichnet, um ihre Implementierungsunabhängigkeit besonders hervorzuheben. So kann beispielsweise die hierin als Modul bezeichnete Funktionalität ganz oder teilweise als Hardware-Schaltung implementiert werden, die benutzerdefinierte VLSI-Schaltungen oder Gate-Arrays, handelsübliche Halbleiter wie Logikchips, Transistoren oder andere separate Komponenten umfasst. Ein Modul kann ferner in programmierbaren Hardwarevorrichtungen wie feldprogrammierbaren Gate-Arrays, programmierbaren Array-Logiken, programmierbaren Logikvorrichtungen oder dergleichen implementiert werden. Module können ferner in Software zur Ausführung durch verschiedene Arten von Prozessoren implementiert werden. Ein identifiziertes Modul aus ausführbarem Code kann beispielsweise ein oder mehrere physische oder logische Module von Computeranweisungen umfassen, die beispielsweise als Objekt, Prozedur oder Funktion organisiert sein können. Dennoch müssen die ausführbaren Elemente eines identifizierten Moduls nicht physisch zusammen liegen, sondern können unterschiedliche Anweisungen umfassen, die an verschiedenen Stellen gespeichert sind, die bei logischer Verknüpfung das Modul bilden und den für das Modul angegebenen Zweck erfüllen. Tatsächlich kann ein Modul aus ausführbarem Code eine einzelne Anweisung oder viele Anweisungen sein und sogar über mehrere verschiedene Codesegmente, zwischen verschiedenen Programmen und über mehrere Speichervorrichtungen verteilt sein. Ebenso können Arbeitsvorgangsdaten in beliebiger geeigneter Form verkörpert und in einer beliebigen geeigneten Art von Datenstruktur organisiert werden. Die Arbeitsvorgangsdaten können als ein einziger Datensatz erfasst oder über verschiedene Standorte einschließlich verschiedener Speichervorrichtungen verteilt werden und zumindest teilweise nur als elektronische Signale in einem System oder Netzwerk vorliegen.
-
Obwohl in der vorstehenden ausführlichen Beschreibung mindestens eine beispielhafte Ausführungsform vorgestellt wurde, ist zu beachten, dass eine Vielzahl von Varianten existiert. Es ist ferner zu beachten, dass die hierin beschriebenen beispielhaften Ausführungsformen nicht dazu bestimmt sind, den Umfang, die Anwendbarkeit oder die Konfiguration des beanspruchten Gegenstands in irgendeiner Weise einzuschränken. Vielmehr bietet die vorstehende detaillierte Beschreibung Fachleuten eine praktische Roadmap zur Umsetzung der beschriebenen Ausführungsform(en). Es ist zu berücksichtigen, dass verschiedene Änderungen in der Funktion und Anordnung der Elemente vorgenommen werden können, ohne von dem durch die Ansprüche definierten Umfang abzuweichen, der bekannte und vorhersehbare Äquivalente zum Zeitpunkt der Einreichung dieser Patentanmeldung einschließt.