Modellbasierte Software-Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik
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!)
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 Simulink-Lösung: Interaktiv!
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 @ FIRST