kramann.info
© Guido Kramann

Login: Passwort:










7.4 Anwendung der Methode2 mit Unterstützung von Scilab

Bestimmung der charakteristischen Größen K<sub>S</sub>, T<sub>u</sub> und T<sub>a</sub> aus dem Graph der Sprungantwort für G(s)=1/(1+2s+s^2).

Bild 7.4-1: Bestimmung der charakteristischen Größen KS, Tu und Ta aus dem Graph der Sprungantwort für G(s)=1/(1+2s+s^2).

  • Die Kurve wurde mit Hilfe des folgenden Scilab-Skriptes gewonnen:
//s als Argument für ein Polynom definieren:
s = poly(0,"s"); 
//Übertragungsfunktion definieren:
//G = syslin('c',[K],[1+s*T+P*s^2]); //PT2
G = syslin('c',[1],[1+2*s+s^2]); //Auch Nullstelle
//G = syslin('c',[K*exp(-0.5*s)],[1+s*T+P*s^2]); //PT2 mit Totzeit
//Zeitbereich für die Simulation festlegen:
t=[0:0.01:10]; 
u=ones(1,1001);
//Sprungantwort für die gegebene Übertragungsfunktion bestimmen:
//y=csim('impuls',t,G); 
y=csim(u,t,G); 
yp=diff(y);
ypp=diff(yp);
wendestellen = find(abs(ypp)<0.00000001);
wende = find(min(ypp(wendestellen)));
yw=y(wendestellen(wende));
tw=t(wendestellen(wende));
ypw=yp(wendestellen(wende))/(t(2)-t(1));
tt=t(30:300);
wt = yw + ypw*(tt-tw);
plot(tt,wt,'red');
plot2d(t,y);
xtitle("Sprungantwort zu G(s) ")
Tu=t(30)
Ta=t(300)-Tu
Ks=1

Code 7.4-1: Berechnung der Sprungantwort eines PT2-Gliedes in Scilab.

  • Scilab unterstützt direkt die Darstellung einer ganzen Reihe an in der Regelungstechnik üblichen Darstellungen von Übertragungsgliedern.
  • Im folgenden Skript werden der Reihe nach ein Pol-Nullstellen-Diagramm, ein Nyquist-Diagramm, ein Bode-Diagramm und die Sprungantwort eines Übertragungsgliedes dargestellt.
//s als Argument für ein Polynom definieren:
s = poly(0,"s"); 
//Parameter festlegen:
K = 1; 
T = 1; 
P = 1; 
//Übertragungsfunktion definieren:
G = syslin('c',[K],[1+s*T+P*s^2]); //PT2
//G = syslin('c',[s+1],[2+s*T+P*s^2]); //Auch Nullstelle
//G = syslin('c',[K*exp(-0.5*s)],[1+s*T+P*s^2]); //PT2 mit Totzeit
//Pol-Nullstellen Diagramm zeichnen
subplot(221);
plzr(G); 
//Frequenzgang berechnen
freqmin=1; // minimale Frequenz
freqmax=1000; // maximale Frequenz
subplot(222);
nyquist(G,freqmin,freqmax); // Ortskurve über Frequenzbereich
subplot(223);
bode(G,freqmin,freqmax); // Ortskurve über Frequenzbereich
//Zeitbereich für die Simulation festlegen:
t=[0:0.01:10]; 
u=ones(1,1001);
//Sprungantwort für die gegebene Übertragungsfunktion bestimmen:
//y=csim('impuls',t,G); 
y=csim(u,t,G); 
subplot(224);
plot2d(t,y);
xtitle("Sprungantwort zu G(s) ")

Code 7.4-2: Erzeugen diverser in der Regelungstechnik gebräuchlicher Darstellungen für Übertragungsglieder.

Mit obigem Skript erzeugte Diagramme.

Bild 7.4-2: Mit obigem Skript erzeugte Diagramme.

Übung 5
  • Bestimmen Sie mit Hilfe von Scilab und "01_ziegler_nichols", bzw. "02_ziegler_nichols_Totzeit" mit beiden Methoden passende PID-Regelparameter für folgende Strecken:
  • G(s) = exp(-0.1s)/(s^2+2s+1)
  • G(s) = 1/((s+1)*(s+2))
  • G(s) = 1/(s^2+1)
  • G(s) = 1/((s-1)*(s+2))
  • G(s) = exp(-s)/((s+1)*(s+2))
  • Legen Sie eine Drehzahlregelung für den Motor aus Kapitel 5.4 aus gemäß Ü4 Aufg.1/2.
  • Wird die Bedingung aus Ü4 Aufg.2 (maximale Spannung 10V) erfüllt?
  • Hinweis: Die Exponentialfunktion kann mit %p_e(-a*s) in Scilab geschrieben werden.