kramann.info
© Guido Kramann

Login: Passwort:










Robuste Systemintegration
1 Grundlagen
..1.1 Newton
....1.1.1 LinearSchwinger
....1.1.2 Daempfung
....1.1.4 ODE
....1.1.5 Saaluebung
..1.2 NewtonEuler
....1.2.1 Traegheitsmomente
....1.2.2 Modellgleichungen
....1.2.3 Einfachpendel
..1.3 Scilab
....1.3.1 Erste_Schritte
....1.3.2 Skripte
....1.3.3 Funktionen
..1.4 Laplace
....1.4.1 Eigenwerte
....1.4.2 PT1
..1.5 Regleroptimierung
....1.5.1 Guetefunktion
....1.5.2 Heuristiken
....1.5.3 Scilab
..1.6 Einstellregeln
....1.6.1 Totzeit
....1.6.2 Methode1
....1.6.3 Methode2
....1.6.4 Scilab
..1.7 Zustandsregler
..1.8 Polvorgabe
..1.8 Polvorgabe_alt
..1.9 Beobachter
....1.9.1 Haengependel
..1.10 Daempfungsgrad
..1.11 Processing
....1.11.1 Installation
....1.11.2 Erste_Schritte
....1.11.3 Mechatronik
....1.11.4 Bibliotheken
....1.11.5 Uebung
....1.11.6 Snippets
......1.11.6.1 Dateioperationen
......1.11.6.2 Bilder
......1.11.6.3 GUI
......1.11.6.4 Text
......1.11.6.5 PDF
......1.11.6.8 Maus
......1.11.6.10 Zeit
......1.11.6.13 Animation
......1.11.6.15 Simulation
....1.11.7 Referenzen
..1.12 Breakout
2 Beispiel
3 Beispielloesung
4 Praxis
5 javasci
6 Fehlertoleranz1
7 Reglerentwurf
..7.1 Sprungantwort
..7.2 Messdaten
..7.3 Systemidentifikation
..7.4 Polvorgabe
..7.5 Beobachter
..7.6 Robuster_Entwurf
..7.7 SIL
8 Systementwicklung
9 Arduino
..9.1 Lauflicht
..9.2 Taster
..9.3 Sensor
..9.12 Motor_PWM1
..9.13 Motor_PWM2_seriell
..9.14 Motor_PWM3_analogWrite
..9.15 Scheduler
..9.20 AV
..9.21 Mikrofon
..9.22 Universal
....9.22.1 Laborplatine
....9.22.2 LED_Leiste
....9.22.3 Motortreiber
....9.22.4 Sensoreingaenge
....9.22.5 Taster
....9.22.6 Tests
....9.22.7 Mikrofon
....9.22.8 Lautsprecher
....9.22.9 Fahrgestell
..9.23 Zauberkiste
..9.24 OOP
....9.24.1 Uebungen
..9.25 AVneu
....9.25.1 Tests
..9.26 DA_Wandler
..9.27 CompBoard
....9.27.1 Tastenmatrix
....9.27.2 ASCIIDisplay
..9.28 CTC
..9.29 Tonerzeugung
10 EvoFuzzy
..10.1 Fuzzy
....10.1.1 Fuzzylogik
....10.1.2 FuzzyRegler
....10.1.3 Uebung9
....10.1.5 Softwareentwicklung
......10.1.5.1 AgileSoftwareentwicklung
......10.1.5.2 FuzzyRegler
......10.1.5.3 Uebung
....10.1.6 Umsetzung
......10.1.6.1 FuzzyRegler
......10.1.6.2 Simulation
......10.1.6.3 Optimierung
......10.1.6.4 Uebung
....10.1.7 Haengependel
......10.1.7.1 Haengependel
......10.1.7.2 Simulation
......10.1.7.3 FuzzyRegler
......10.1.7.4 Optimierer
......10.1.7.5 Genetisch
....10.1.8 Information
....10.1.9 Energie
..10.2 Optimierung
....10.2.1 Gradientenverfahren
....10.2.2 Heuristiken
....10.2.3 ModifizierteG
....10.2.4 optim
..10.3 Genalgorithmus
..10.4 NeuronaleNetze
....10.4.1 Neuron
....10.4.2 Backpropagation
....10.4.3 Umsetzung
....10.4.4 Winkelerkennung
..10.5 RiccatiRegler
11 Agentensysteme
12 Simulation
20 Massnahmen
21 Kalmanfilter
..21.1 Vorarbeit
..21.2 Minimalversion
..21.3 Beispiel
30 Dreirad
31 Gleiter
..31.1 Fehlertoleranz

7.5 Zustandsregler mit Beobachter

Zur Verdeutlichung soll die Situation "Zustandsregler mit Beobachter" zunächst simuliert werden. D.h. statt des "echten" realen Systems dient ein weiteres Modell als als "realses System":

clear();
function f = rechteSeite(t,y)
    real_phi    = y(1,1);  //Pixelposition
    real_omega  = y(2,1);  //Pixelgeschwindigkeit "w"
    real_alfa   = y(3,1);  //Pixelbeschleunigung
    real_intphi = y(4,1);  //Integral von Phi

    sim_phi    = y(5,1);  //Pixelposition
    sim_omega  = y(6,1);  //Pixelgeschwindigkeit "w"
    sim_alfa   = y(7,1);  //Pixelbeschleunigung
    sim_intphi = y(8,1);  //Integral von Phi
    
    a=36.0;
    b=326.0;
    c=115509.0;    
    
    R=[0.1028838, 0.0075232, 0.0001731, 0.4205213];

    u = -R*y(5:8,1); //simuliertes y als Grundlage fuer u.

    usim = u + 0.01*(real_phi-sim_phi); //Abweichung zw. realem und simul. phi zurueckfuehren.

    f(1,1) = real_omega;
    f(2,1) = real_alfa;
    f(3,1) = -a*real_alfa-b*real_omega+c*u;
    f(4,1) = real_phi;

    f(5,1) = sim_omega;
    f(6,1) = sim_alfa;
    f(7,1) = -a*sim_alfa-b*sim_omega+c*usim;
    f(8,1) = sim_phi;
endfunction

//Testweise wie in der Messung simulieren:
t=linspace(0,1.0,100);
t0=0.0;
y0=[100;0;0;0;  0;0;0;0];
y=ode(y0,t0,t,rechteSeite);

//wird das reale system ausgeregelt?:
plot(t,y(1,:),t,y(5,:));  //real_phi und sim_phi

Code 7.5-1: Simulation "reales" beobachtetes System und Zustandsregler.

Verlauf reales phi (durchgezogen) und simuliertes phi (gestrichelt).

Bild 7.5-1: Verlauf reales phi (durchgezogen) und simuliertes phi (gestrichelt).