Gesamter Regleraufbau der Micromouse

Regelungstechnik

Micromouse – Regelung

Damit die Micromouse dynamisch und zuverlässig ihr Ziel erreicht, ist eine Regelung notwendig. Da es praktisch unmöglich wäre, für jede Fahrsituation die passende Motorspannung manuell zu bestimmen, wird diese Aufgabe durch die Regelung abstrahiert.

Dadurch können Vorwärtsgeschwindigkeit und Winkelgeschwindigkeit vorgegeben werden, ohne direkt auf die unterliegende Systemebene wie Motorspannung, PWM-Werte oder Motordynamik achten zu müssen.

Charakterisierung des Systems

Das Antriebssystem der Micromouse wird als geregeltes elektromechanisches System betrachtet.

Das Antriebssystem der Micromouse kann vereinfacht über folgende Zusammenhänge beschrieben werden:

  • Antrieb über DC-Motoren
  • Spannung U [V] beeinflusst die Motordrehzahl bzw. Geschwindigkeit
  • Strom I [A] bestimmt das erzeugte Drehmoment
  • Drehmoment führt zu Beschleunigung

Ein Regler händisch einzustellen ist meist nicht zielführend und zeitaufwendig. Zusätzlich liefert eine rein manuelle Abstimmung oft keine robuste Lösung für unterschiedliche Fahrsituationen. Daher wird zunächst ein mathematisches Modell des Systems bestimmt, mit dem das Systemverhalten beschrieben und die Reglerparameter theoretisch abgeschätzt werden können.

Systemmodell des Motors

Die Motordynamik wird vereinfacht als PT1-System angenähert.

Dabei beschreibt Km die stationäre Verstärkung des Motors, also wie viel Geschwindigkeit pro Eingangsspannung erreicht wird. Die mechanische Zeitkonstante Tm beschreibt, wie schnell der Motor auf eine Änderung der Eingangsspannung reagiert.

Gv(s)=Km1 + Tm · s
Gm(s)=Km1 + Tm · s·1s
Gm(s)=KmTm · s2 + s

Da für die Micromouse nicht nur die Geschwindigkeit, sondern auch die Position geregelt werden soll, wird das Geschwindigkeitsmodell zusätzlich integriert. Damit ergibt sich das Positionsmodell.

  • Km: stationäre Verstärkung [mm/s/V]
  • Tm: mechanische Zeitkonstante [s]
Modellidentifikation des Motors
Modellidentifikation des Motors zur Bestimmung der PT1-Parameter.

PD-Controller

Der PD-Regler besteht aus einem proportionalen und einem differentiellen Anteil.

Positionsregelkreis
Positionsregelkreis mit PD-Regler, Strecke und Rückführung.

Der proportionale Anteil Kp reagiert auf den aktuellen Positionsfehler. Der differentielle Anteil Kd reagiert auf die Änderung des Fehlers und wirkt dadurch dämpfend.

Gc(s)=Kd· s +Kp

Open-Loop-Übertragungsfunktion

Die offene Übertragungsfunktion ergibt sich aus der Reihenschaltung von Regler und Strecke. Sie wird hauptsächlich zur Analyse des Systemverhaltens verwendet, z. B. zur Untersuchung der Stabilität.

Go(s)=Gc(s)·Gm(s)
Go(s)=(Kd · s + Kp)·KmTm · s2 + s
Go(s)=Km · (Kd · s + Kp)Tm · s2 + s

Closed-Loop-Übertragungsfunktion

Für das geregelte System wird eine Rückführung angenommen. Die geschlossene Übertragungsfunktion beschreibt, wie das System auf eine Sollwertänderung reagiert.

Gs(s)=Go(s)Go(s) + 1
Gs(s)=Km · (Kd · s + Kp)Tm · s2 + (Km · Kd + 1) · s + Km · Kp
Gs(s)=KmTm · (Kd · s + Kp)s2 + Km · Kd + 1Tm · s + Km · KpTm

Vergleich mit einem System 2. Ordnung

Das geregelte System kann näherungsweise mit einem Standard-System 2. Ordnung verglichen werden. Dabei beschreibt ωn die Eigenkreisfrequenz und ζ den Dämpfungsfaktor.

H(s)=A ·ωn2s2 + 2 · ζ · ωn · s + ωn2
ωn2=Km · KpTm
2 · ζ · ωn=Km · Kd + 1Tm

Bedeutung des Dämpfungsfaktors

Der Dämpfungsfaktor ζ beeinflusst vor allem das Überschwingen des Systems. Ein kleiner Wert führt zu schnellerem, aber stärker überschwingendem Verhalten. Ein größerer Wert reduziert das Überschwingen, macht das System aber langsamer.

Typische Wahl:

ζ=0.707

Dieser Wert ist ein sinnvoller Kompromiss zwischen schnellem Einschwingen und moderatem Überschwingen.

Bedeutung der Settling Time

Die Settling Time TD beschreibt, wie lange das System braucht, bis es dauerhaft nahe am Endwert bleibt. Im Dokument wird TD näherungsweise als die Zeit betrachtet, nach der das System innerhalb eines kleinen Fehlerbands bleibt.

ωn4ζ · TD

Eine kleinere Settling Time führt zu einer größeren Eigenkreisfrequenz. Dadurch werden die Reglerparameter größer und das System reagiert aggressiver.

Bestimmen von Kp und Kd

Aus dem Koeffizientenvergleich lassen sich die Reglerparameter bestimmen. Da ωn von ζ und TD abhängt, können Kp und Kd über gewünschte Dynamikvorgaben eingestellt werden.

Kp=Tm · ωn2Km
Kd=2 · ζ · ωn · Tm - 1Km

Modellidentifikation und Reglerberechnung

Die Modellparameter können direkt aus der Sprungantwort abgelesen werden. Mithilfe der oben beschriebenen Formeln können daraus anschließend die Reglerparameter bestimmt werden.

PT1-Fit der Vorwärtsgeschwindigkeit
Sprungantwort und PT1-Fit für die Vorwärtsgeschwindigkeit.
PT1-Fit der Winkelgeschwindigkeit
Sprungantwort und PT1-Fit für die Winkelgeschwindigkeit.

Forward Velocity

ParameterWertEinheit
Km_vel1.411590mm/s pro input
Tm_vel0.230555s
t0_vel0.005480s
y_inf1129.271945mm/s
Kp_pos98.355425-
Kd_pos4.958947-
Td_pos0.230555s

Yaw Rate

ParameterWertEinheit
Km_yaw0.037419rad/s pro input
Tm_yaw0.120276s
t0_yaw0.012810s
y_inf14.967694rad/s
Kp_ang124.132427-
Kd_ang3.264995-
Td_ang0.120276s

Gesamtsystem

Das Regelungssystem kombiniert Trajektorienvorgabe, Positionsregelung und Winkelregelung.

Das Gesamtsystem besteht aus:

  • Geschwindigkeitssteuerung mit Trajektorienvorgabe
  • Positionsregler für linken und rechten Motor
  • Winkelregler mit Sollwertvorgabe durch die Wandsensoren
Gesamter Regleraufbau
Gesamtsystem aus Trajektorienvorgabe, Positionsreglern und Winkelregler.

Feedforward-Regelung

Um das Regelverhalten zu verbessern, kann der PD-Regler um eine Vorwärtssteuerung ergänzt werden.

Dabei wird aus der vorgegebenen Sollgeschwindigkeit die notwendige Spannung bzw. der passende PWM-Wert geschätzt. Dadurch wird der PD-Regler entlastet, wodurch dessen Einstellung einfacher wird.

Positionsregelkreis mit Feedforward
Positionsregelkreis mit zusätzlichem Feedforward-Zweig.

Vergleich ohne und mit Feedforward

In der Trajektorie einer Regelung ohne Feedforward sind das Geschwindigkeitsprofil, die Reglerspannung und die Ist-Geschwindigkeit dargestellt. Speziell an den Stellen, an denen es zu Änderungen des Geschwindigkeitssollwerts kommt, hat der Regler Schwierigkeiten, sich schnell dem Zielwert anzunähern.

  • Rot: Geschwindigkeitsprofil
  • Gelb: Reglerspannung
  • Dunkelrot: Ist-Geschwindigkeit
Regelung ohne Feedforward
Trajektorie einer Regelung ohne Feedforward.
Regelung mit Feedforward
Regelung mit aktiviertem Feedforward-Zweig; die Reglerspannung liegt nahe null.

Feedforward-Berechnung

Die Schätzung der Motorspannung kann mithilfe einer linearen Funktion durchgeführt werden. Die Gerade wird aus den Endgeschwindigkeiten bei verschiedenen PWM-Werten bzw. Motorspannungen bestimmt. Aus der daraus entstehenden linearen Kennlinie kann für eine gewünschte Geschwindigkeit der zugehörige PWM-Wert bzw. die erforderliche Motorspannung abgelesen werden.

Lineare Feedforward-Kennlinie
Lineare Kennlinie zur Schätzung des Feedforward-Anteils.
Feedforward-Messungen
Messungen zur Feedforward-Parameterbestimmung.
Feedforward-Kennlinie
Auswertung der Messpunkte zur Feedforward-Kennlinie.

Feedforward-Parameterbestimmung

Die konkreten Messungen der Micromouse sind in der folgenden Tabelle zusammengefasst.

PWM vss [mm/s] τest [s] Kfit τfit [s]
200238.530.2200236.680.2164
400691.850.2600692.850.2400
6001124.950.24001131.300.2373
8001580.770.26001586.120.2491
10001952.190.26001967.220.2317

Globaler Feedforward-Fit

ParameterWertEinheit
kV0.458874PWM/(mm/s)
kS84.761725PWM
τmean0.234885s
kA0.107783PWM/(mm/s²)

Quellen

Die Quellen entsprechen den im Markdown-Dokument referenzierten Unterlagen.