Modellbasierte Software-Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für offene Kommunikationssysteme FOKUS
Fragestunde Wie modelliert man physikalische Sachverhalte? Beispiele? Wie werden Gleichungen in Diagramme übersetzt? Was kann bei Rückkopplungen passieren? Lösungsmöglichkeit? Abstraktion von Blöcken? Was ist eine Trajektorie? Was sind Bereiche für Trajektorien?
Zustandsraum kontinuierlicher Systeme these slides thanks to Stephan Merz, LORIA / INRIA
Terminologie
Existenz und Eindeutigkeit von Lösungen
Probleme mit der Existenz (1)
Probleme mit der Existenz (2)
Experiment?
Lipschitz-Stetigkeit
Existenz und Eindeutigkeit von Trajektorien
Näherungslösungen
gesteuerte Systeme
Im Beispiel gesucht: „sanfte“ Regelung Füllstandsanzeiger Zulauf Ablauf max min Im Beispiel Zulauf sei kontinuierlich regelbar (0 z(t) 1) Annahme: min = max = soll der Füllstand sollte möglichst nahe an soll gehalten werden intendiertes Verhalten: je näher der Füllstand bei soll ist, desto mehr wird der Zulauf geschlossen erlaubtes Verhalten: voller Zulauf bis soll erreicht wird, dann zu (oszilliert, ruiniert auf Dauer das Ventil) verboten: max wird irgendwann überschritten und Ventil ist auf gesucht: „sanfte“ Regelung
Regelungstechnik Eingebettetes System: Umgebung Allgemeines Schema eines Regelkreises: © Prof. Dr.-Ing. Ch. Ament
Reglerklassen Proportionaler, integraler und differentialer Anteil bei der Regelung P-Regler: u(t)=k*e(t) I-Regler: u(t)=k*e(t) dt D-Regler: u(t) = k*e(t) PI-Regler: u(t) = k1*e(t) + k2*e(t) dt PD-Regler: u(t) = k1*e(t) + k2*e(t) PID-Regler: u(t) = k1*e(t) + k2*e(t) dt + k3*e(t) u(t) = KP*[e(t) + 1/TI*e(t) dt + TD *e(t)] KP: Proportionalbeiwert, TI: Nachstellzeit, TD: Vorhaltezeit Ziel: Vermeidung bzw. Dämpfung von Überschwingungen „Reiner“ Differenzierer nicht realisierbar (Verzögerung!)
informell PID-Regler: P(proportionaler) Anteil: „Je größer die Regelabweichung, umso größer muß die Stellgröße sein“ I(integraler) Anteil: „Solange eine Regelabweichung vorliegt, muß die Stellgröße verändert werden“ D(differentieller) Anteil: „Je stärker sich die Regelabweichung verändert, umso stärker muß die Regelung eingreifen“
PID in Scicos Als fester vorgegebener Block verfügbar!
Überschwingungen ohne integralen Anteil mit integralem Anteil
Einstellung des Reglers Erst den proportionalen Anteil einstellen erhöhen bis leichte Oszillation auftritt Dann integralen Teil hochregeln solange bis die Oszillation aufhört Dann differentiellen Anteil damit Zielgerade möglichst schnell erreicht wird Parameter Anstiegszeit Überschwingung Einschwingzeit Abweichung P -- + +- - I ++ D
Beispiel Wasserstandsregelung
nochmal Pendel Aufstellen physikalischer Schwingungsgleichungen Erstellen eines Simulationsmodells (Strecke/Regelung) Simulation und Validierung des Modells Codegenerierung
einfaches Pendel Ansatz: Trägheitskraft = Rückstellkraft Länge L Masse m Auslenkung s Ansatz: Trägheitskraft = Rückstellkraft m*s= -m*g*sin =s/L m*s=-m*g*sin(s/L) Anfangsbedingung (0) bzw. s(0) Analytische Lösung meist schwierig / nicht nötig Simulation: Auflösen nach der höchsten Ableitung s=-g*sin(s/L) „tu so als wenn s gegeben wäre und male ein Diagramm“
inverses Pendel Modellierung der Strecke mit Wagen und Pendel http://www-user.tu-chemnitz.de/~beber/DA/Diplomarbeit_IP.pdf Modellierung der Strecke mit Wagen und Pendel
inverses Pendel Wagen: F=U-M*x Pendel: FT*cos() = Fg * sin()
Pendel @ Fraunhofer