Click here to load reader
Upload
trankhue
View
217
Download
1
Embed Size (px)
Citation preview
Institut für Automatik, ETH Zürich WS 2002/03Prof. Dr. Manfred Morari 22.10.2002 – D.N.
Wichtige Matlab Befehle
Hier �nden Sie wichtige Matlab Befehle, welche für das Lösen der Übungen der Vorlesung Regelsystemevon Prof. Morari hilfreich sein können. Um eine genaue Beschreibung der Befehle zu erhalten, tippenSie einfach
help <Befehl>
in der Matlab Kommandozeile ein. Eine Einführung von Matlab �nden Sie aufhttp://www.control.ethz.ch/education/lectures/lectures.msql ⇒ Matlab-Kurs.
Matlab Hilfe benutzen
help Erzeugt einen Hilfetext zu einem bestimmten Befehllookfor Sucht in allen Matlab-Funktionen nach einem Schlüsselworthelpwin Ö�net ein interaktives Hilfefenster
Matrizen Operationen
zeros Erzeugt eine Matrix oder Vektor, wobei alle Elemente den Wert 0 habenones Erzeugt eine Matrix oder Vektor, wobei alle Elemente den Wert 1 habendiag Erzeugt eine diagonal Matrix, deren Elemente vorgegeben werden können.eig Berechnet die Eigenwerte einer Matrix. Dieser Befehl kann z.B. verwendet werden um
die Eigenwerte der Systemmatrix A zu berechnen.condeig Berechnet die Konditionszahl für die Eigenwerte einer Matrix.cond Berechnet die Konditionszahl für die Invertierung einer Matrix.conv Berechnet die polynomial Multiplikation zweier Vektoren,
z.B. (a2s2 + a1s + a0)(b3s
3 + b2s2 + b1s + b0).
Dynamische Systeme
Definieren von Systemen
tf Erzeugt ein System für eine gegebene Übertragungsfunktionss Erzeugt ein System für eine gegebene Zustandsraumbeschreibungzpk Erzeugt ein System für eine gegebene Pol-Nullstellen Darstellungfeedback Erzeugt ein neues System, welches rückgekoppelt ist.
1
Wichtige Matlab Befehle 2
Transformieren von Systemen
tf2zp Transformiert ein System von der Übertragungsfunktionsdarstellung in die Pol-NullstellenDarstellung
ss2tf Transformiert ein System von der Zustandsraumdarstellung in dieÜbertragungsfunktionsdarstellung
zp2ss Transformiert ein System von der Pol-Nullstellen Darstellung in dieZustandsraumdarstellung
zp2tf Transformiert ein System von der Pol-Nullstellen Darstellung in dieÜbertragungsfunktionsdarstellung
c2d Transformiert ein zeitkontinuierliches System in ein zeitdiskretes System.d2c Transfomiert ein zeitdiskretes System in ein zeitkontinuierliches System
Simulieren und Plotten von Systemen
pzmap Zeichnet das Pol-Nullstellen Diagrammzero Berechnet die Nullstellen eines Systemspole Berechnet die Pole eines Systemsbode Zeichnet das Bodediagrammlogspace Erzeugt einen Vektor, dessen Elemente logarithmisch zunehmen. Dieser Befehl kann zur
Generierung des Frequenzvektors für den Befehl Bode benutzt werden.nyquist Zeichnet das Nyquistdiagrammpulse Zeichnet die Impulsantwort eines Systemsstep Zeichnet die Schrittantwort eines Systemslsim Simuliert ein System für einen vorgegebenen Eingangltiview Interaktives Fenster zum Simulieren von Systemen
Beispiel
clear all; % Loescht alle aktiven Variablen
close all; % Schliesst alle Grafik-Fenster
sys = tf([1],conv([1 1],[100 1])); % Definieren des Systems G(s)=1/((s+1)*(100s+1))
figure(1); % Figure 1
bode(sys); % Zeichnen des Bodediagramms
w = logspace(-3, 1, 100); % Definieren der Frequenzen von
% 10e-3 rad/s bis 10 rad/s in 100 Schritten
[mag, phase] = bode(sys, w); % Berechnen der Amplitude und
% Phase fuer alle Frequenzen w
figure(3); % Figure 3
semilogx(w, mag(1,:),'-o'); % Plotten der Phase des Systems
xlabel('Frequenz [rad/s]'); % Beschriften der x-Achse
ylabel('Phase [rad]'); % Beschriften der y-Achse
figure(4); % Figure 2
nyquist(sys); % Zeichnen des Nyquistdiagrams
sys_c = feedback(sys,1); % Rueckkopplung des Systems sys
% mit einer Verstaerkung von 1
figure(5); % Figure 3
step(sys_c); % Schrittantwort des geschlossenen Kreises
grid on; % Grid einschalten