2

Click here to load reader

Wichtige Matlab Befehle - Automatic Control Laboratorycontrol.ee.ethz.ch/~rs/mlk/MATbasic_commands.pdf · Wichtige Matlab Befehle 2 Transformieren von Systemen tf2zp T ransformiert

Embed Size (px)

Citation preview

Page 1: Wichtige Matlab Befehle - Automatic Control Laboratorycontrol.ee.ethz.ch/~rs/mlk/MATbasic_commands.pdf · Wichtige Matlab Befehle 2 Transformieren von Systemen tf2zp T ransformiert

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

Page 2: Wichtige Matlab Befehle - Automatic Control Laboratorycontrol.ee.ethz.ch/~rs/mlk/MATbasic_commands.pdf · Wichtige Matlab Befehle 2 Transformieren von Systemen tf2zp T ransformiert

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