Systemübersicht Matlab / Simulink · PDF fileLehrstuhl für Regelungstechnik und Signaltheorie Systemübersicht Matlab / Simulink 1. Das Matlab-System 2. Elementare Matlab-Anweisungen

  • Upload
    lytruc

  • View
    230

  • Download
    2

Embed Size (px)

Citation preview

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Systembersicht Matlab / Simulink

    1. Das Matlab-System

    2. Elementare Matlab-Anweisungen

    3. Skripts und Funktionen

    4. Analyse dynamischer Systeme

    5. Simulink

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Matlab (Matrix Laboratory)

    Wurde ursprnglich fr die mathematische Ausbildung

    von Ingenieuren entwickelt.

    Ziel war die Integration bekannter Mathematikpakete

    in einem problemorientierten, erweiterbaren Software-

    system.

    - als Datentyp gibt es nur die Matrix

    - Dialogbetrieb

    - Strukturierte Programmiersprache

    - Einfache Variablenverwaltung (vgl. BASIC)

    - Graphische Ausgabemglichkeiten

    - Im- und Export von Daten

    Softwarepakete wie Matrixx, CTRL-C bauen auf der

    Matlab-Sprache auf

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Funktionsbersicht Grundpaket

    * Matrixoperationen und -funktionen

    * Mathematische Standardfunktionen ( Sin, Exp etc. )

    * Runge-Kutta Verfahren

    * Elementare Signalverarbeitung ( FFT, Faltung, ... )

    * Elementare Optimierungsfunktionen

    * Polynombearbeitung

    * I/O - Behandlung

    * Funktionen zur Graphikausgabe

    * Kontrollstrukturen

    bereits viele Aufgabenstellungen knnen in diesemUmfeld gelst werden

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Arbeiten mit Skalaren

    Ergebnis wird in derVariablen gespeichert.ans

    Komplexe Zahlen werdenin allen Funktionen untersttzt.

    Hilfe ist zu jedemBefehl verfgbar.

    Variablen mssen nicht deklariert werden.";" verhindert Ausgabe des Ergebnisses.

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Arbeiten mit Vektoren

    Zeilenvektor

    Skalarprodukt

    Vektorprodukt

    Dimension

    elementweisemultiplizieren

    Spaltenvektor

    Zahlenfolgen

    Teilvektor

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Grafiken und Polynome

    Zwei Kurven ineinem Diagramm

    Polynom wirddurch seineKoeffizientendargestellt.

    polyfit

    approximiertPunkte durchPolynom

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Matrizen

    charakteristisches

    Polynom

    Teilmatrix

    Spaltenvektor

    Zeilenvektor

    Determinante

    Eigenwerte

    Transposition

    Inversion

    elementweise

    Multiplikation

    Matrizen-

    multiplikation

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    3-D-Grafiken

    Hhenlinien im selben Plot

    Farbdarstellung in neuem Plot

    3-D-Plot als Flche

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Skripte

    Variable aus

    ist global

    y

    fakul1.m

    - Abfolge von Matlab-Befehlen wird in einerASCII-Datei " .m" gespeichert.

    - Variablen im Skript sindSkriptname

    global

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Funktionen

    Kommentar ist zu-gleich Hilfestellung.

    Funktionskopf

    Rekursion

    - Variablen in der Funktion sind lokal.

    Variablen und aus

    sind lokal.

    x y

    fakul2.m

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Analyse dynamischer Systeme

    Beispiel: VZ1-Glied

    Y ss

    U s( ) ( )1

    1

    x x u

    y x

    dx x

    dt t

    x x

    tf x un n n n

    1

    , dx tdt

    f x t u t( )

    ( ), ( )

    Integration der Zustandsgleichungen:

    x x t f x un n n n 1 ,

    t

    x

    xn

    xn+1

    tn

    t tn

    t f x un n ,

    x A x B u

    y C x D u

    Lineares, zeitinvariantesSystem in Zustandsdarstellung:

    Mit ergibt sich fr das gegebene System: t T

    x x T A x B uy C x D un n n n

    nn n

    1

    x x T x u

    y xn n n n

    n n

    +

    1( )Fr die Simulation auf dem

    Digitalrechner ergibt sich:

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Analyse dynamischer Systeme

    Matlab-Funktion zur Simulation eines dynamsichen Systems:

    function [y, Time] = response(A, B, C, D, x0, u, T)

    % [y, Time] = response(A, B, C, D, x0, u, T)

    % Berechnet die Antwort des Systems

    %

    % x_dot = A * x + B * u

    % y = C * x + D * u

    % % fr die gegebene Eingangsfolge 'u', den Anfangs-

    % zustand 'x0', die Abtastzeit 'T'.

    %

    % Die Matrix 'y' enthlt als Spaltenvektoren die Ausgangs-

    % vektoren des Systems, 'u' die Eingangsvektoren.

    % Initialisierungen

    % =================

    [dimin, steps] = size(u); % Anzahl der Abtastschritte (steps)

    [outputs, states] = size(B); % Anzahl der Zustnde (states)

    y = zeros(outputs, steps); % Initialisieren der Matrix y

    Time = 0:T:steps*T-T; % Erzeugen des Zeitvektors

    % Berechnen von y(t=0)

    % ====================

    xalt = x0;

    y(:,1) = C * x0 + D * u(:,1);

    % Berechnung der Ausgangsvektoren y

    % =================================

    for k = 2:steps x = xalt + T * (A * xalt + B *

    u(:,k-1));

    y(:,k) = C * x + D * u(:,k);

    xalt = x;

    end;

    % Graphische Ausgabe von u und y

    % ==============================

    plot(Time, u, Time, y);

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Analyse dynamischer Systeme

    Sprung nach 1 svon 0 nach 1

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Control System Toolbox

    Darstellung linearer dynamischer Systeme

    1. Zustandsraumdarstellung(state space, "ss")

    2. bertragungsfunktion(transfer function, "tf")

    3. Pol-Nullstellen-Darstellung(zero-pole, "zp")

    Umwandlung der Darstellungsformen:- ss2tf, ss2zp

    - tf2ss, tf2zp

    - zp2ss, zp2tf

    x Ax Bu

    y Cx Du

    Angabe der MatrizenA, B, C, D

    Y sb s b s b

    a s a s aU s

    n

    n

    n

    m( ) ( )=

    + + +

    + + +

    L

    L

    1 0

    1 0

    Angabe vonnum = [bn, ..., b1, b0],den = [am, ..., a1, a0]

    Angabe vonz = [z1, z2, ..., zn],p = [p1, p2, ..., pm],k

    Y s ks z s z s zn

    s p s p s pmU s( )

    ( )( ) ( )

    ( )( ) ( )( )

    1 2

    1 2

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Analyse mit Control Systems Toolbox

    Analyse im Zeitbereich

    impulse

    step

    lsim

    ImpulsantwortSprungantwortSimulation zu gegebenem Fhrungsvektor

    Analyse im Frequenzbereich

    bode

    nyquist

    pzmap

    rlocus

    Frequenzkennlinie (Bode-Diagramm)Ortskurve (Nyquist-Diagramm)Pol-Nullstellen-DiagrammWurzelortskurve (WOK)

    "Verschalten" von Blcken

    series

    prallel

    feedback

    cloop

    HintereinanderschaltungParallelschaltungSchlieen des Regelkreises mit dyn. SystemSchlieen des Regelkreises

    Weitere Funktionen der Control Systems Toolbox

    - zeitdiskrete Systeme- Untersuchungen im Zustandsraum(Steuerbarkeit, Beobachtbarkeit, Reglerentwurf)

    - Kalman-Filter- Ordnungsreduktion

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Beispiel zur Control System Toolbox

    G ss s

    ( ) =+ +

    100

    4 1002

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Simulink

    Eigenschaften der Control System Toolbox:

    + zahlreiche Analyseverfahren (Bode-Diagramm, WOK, etc.)

    + Automatischer Reglerentwurf (z. B. Polvorgabe)

    + Schnelles Eingeben bekannter Systeme

    - Funktionalitt umfat nur lineare Systeme

    - schwierige Bedienung

    - keien graphische Darstellung des erzeugten Systems

    Erweiterung von Matlab mit Simulink

    + Graphische Modellierung der Systeme

    + intuitive Bedienung

    + Betrachtung nichtlinearer Systeme mglich

    - viele Analyseverfahren weiterhin nur mit der

    Control System Toolbox mglich

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Gesamtstruktur Matlab/Simulink

    Erweiterungen von Matlab/Simulink

    Matlab

    Simulink

    InterneKommandos

    M - Files(Funktionen)

    Toolboxen

    VordefinierteBlcke

    Eigene Blcke(S - Function)

    GraphischesModell

    Ausgabe

    M-Files(Scripte)

    Dialog

    - Toolboxen (z. B. Control System Toolbox)

    - Eigene Skripte, Funktionen

    - Eigene Toolboxen (Sammlung von M-Files)

    - Eigene Simulink-Blcke

    - Einbinden von C-Programmen (MEX-Files)

    - Erzeugen von C-Code (Matlab-Compiler,

    Real Time Workshop)

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Simulink

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Beispiel

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Analyse von Simulink-Modellen

    Mit wird das

    Simulink-Modell line-

    arisiert und als Zustands-

    raumdarstellung ge-

    speichert.

    Dieses linearisierte Modell

    kann dann mit den be-

    kannten Funktionen der

    Control System Toolbox

    oder mit eigenen M-Files

    untersucht werden.

    linmod

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Analyse von Simulink-Modellen

  • Lehrstuhl frRegelungstechnik und Signaltheorie

    Weitere Informationen

    Matlab-Homepage:

    Deutscher Vertrieb:

    Studentenversion: Prentice-Hall

    The Student Edition of MatlabISBN 0-13-022598-3

    Dieser Vortrag:

    MatlabFolien.zip (750 kB)Postscript-Format

    www.mathworks.com

    www.scientific.de

    www.prentice-hall.com

    www.uni-kl.de/AG-Pandit