HANDBUCH MATLAB & SIMULINK - tu- · PDF file1 - 2 Einleitung 1. Einleitung 1.1 MATLAB/Simulink...

download HANDBUCH MATLAB & SIMULINK - tu- · PDF file1 - 2 Einleitung 1. Einleitung 1.1 MATLAB/Simulink als Werkzeuge MATLAB und Simulink sind, einem neueren Sprachgebrauch folgend, integrierte

If you can't read please download the document

Transcript of HANDBUCH MATLAB & SIMULINK - tu- · PDF file1 - 2 Einleitung 1. Einleitung 1.1 MATLAB/Simulink...

  • TECHNISCHE UNIVERSITT DRESDENFakultt MaschinenwesenInstitut fr Verfahrenstechnik & UmwelttechnikProfessur fr Verfahrensautomatisierung

    HANDBUCH

    MATLAB & SIMULINK

    zum Gebrauch in den Lehrveranstaltungen

    des Vertiefungsfachs

    Verfahrensautomatisierung

    Dresden, Oktober 2009 Prof. Dr.-Ing. habil. W. Klden

  • Einleitung1 - 2

    1. Einleitung1.1 MATLAB/Simulink als Werkzeuge

    MATLAB und Simulink sind, einem neueren Sprachgebrauch folgend, integrierte Probleml-sungsumgebungen (integrated problem solving environment). Im Gegensatz zur klassischenProgrammierumgebung stellen derartige Umgebungen neben einer Programmiersprache Werk-zeuge und Bibliotheken bereit, die auf einem hohen Niveau in die Problemlsung integriertwerden knnen. Das sind vor allem leistungsfhige Grafik-Funktionen, einfach aufrufbarenumerische Lsungsverfahren und Toolboxes fr bestimmte Anwendungsfelder, die ihreFunktionalitt sowohl auf der Ebene der Programmiersprache als auch ber integrierte grafischeOberflchen dem Anwender zur Verfgung stellen.MATLAB ist ein interaktiv nutzbares Programmiersystem, dass vor allem durch die einfach zuhandhabenden Matrizenoperationen (MATLAB ist die Kurzform von MATrix LABoratory)ausgezeichnet ist. Die fr MATLAB entwickelten Toolboxes decken ein weites Anwendungs-feld ab. Die folgenden Tool-Boxes sind am Institut verfgbar:S Control System ToolboxS Neural Network ToolboxS Fuzzy Logic ToolboxS Optimization ToolboxS Statistics Toolbox

    Im folgenden werden fr MATLAB die Version 6 und fr SIMULINK die Version 4 angenom-men. Eine Reihe von Eigenschaften ist auch fr vorangegangene Versionen noch zutreffend; eswird aber darauf verzichtet, die Unterschiede zu anderen Versionen zu erlutern.

    Die folgende Literatur ist zu empfehlen:

    [1] Using MATLAB," Using SIMULINK The MathWorks Inc., 2009Es sind dies die Originalhandbcher des Systementwicklers.

    [2] berhuber, Ch. ; Katzenbeisser, St.MATLAB 7 - eine EinfhrungSpringer, Wien, 2004In dieser einfhrenden Darstellung sind die grundlegenden Programmiertechniken sowiedie wichtigsten Funktionen von MATLAB 7 kurz und bersichtlich dargestellt worden.

    [3] Angermann, A. ; u.a.Matlab, Simulink, StateflowOldenbourg, Mnchen, 2009, (6. Aufl.)Das Buch bietet eine ausfhrliche Einfhrung mit vielen Beispielen, auch aus demBereich der Automatisierungstechnik.

    [4] Constantinides, A. ; Mostoufi, NNumerical Methods for Chemical Engineers with MATLAB ApplicationsPrentice Hall, 2000Das Buch enthlt neben den numerischen Verfahren viele Beispiele und Aufgaben.

  • Einleitung 1 - 3

    1.2 Die Benutzeroberflche von MATLAB

    In der folgenden Abbildung ist die Benutzeroberflche von MATLAB dargestellt.

    Das Fenster der Benutzeroberflche gliedert sich in folgende Teilfenster:

    S Command Window Dieses Fenster ist der eigentliche Arbeitsbereich; nach demPrompt-Zeichen >> kann der Benutzer Kommandos eingeben.

    S Command History Hier werden die Befehle, die in der Vergangenheit ausgefhrtwurden, angezeigt. Der Benutzer kann ber markieren/kopierenzurckliegende Befehle wieder in das Kommandofenster holen.

    Die folgenden Fenster lassen sich wahlweise aktivierenS Workspace Dieses Fenster gestattet den Zugriff auf die definierten Variablen

    im Arbeitsbereich.S Current Directory ber dieses Fenster kann der aktuelle Zugriffspfad eingesehen

    und verndert werden.

    Das Erscheinungsbild der Benutzeroberflche kann ber den Menpunkt View des Hauptmensmodifiziert werden. Im folgenden Bild sind die Bedeutungen der wesentlichen Menpunkte desHauptmens sowie der wichtigsten Buttons des Toolbar erlutert.

  • Einleitung1 - 4

    File-Men - ber das entsprechende Pull-Down-Men lassen sich u. a. Dateien ffnen,neue Dateien erzeugen, Standardeinstellungen verndern.

    In diesem Men werden die Funktionen fr die Editierung von Texten bereitgestellt.

    ber dieses Men kann das Erscheinungsbild der Benutzeroberflche gendertwerden.

    SIMULINK wird aktiviertDas aktuelle Verzeichnis wird angezeigt

    Die on-line-Hilfe wird aktiviert.

    Es gibt ein sehr umfangreiches System zur on-line-Hilfe. Der Hilfe-Navigator ist in der folgen-den Abbildung dargestellt:

  • Einleitung 1 - 5

    1.3 Der Texteditor

    Fr die Erzeugung und Editierung von Programmtexten (Skripte oder Funktionen) stellt dieEntwicklungsumgebung einen Editor bereit; das Erscheinungsbild ist folgender Abbildung zuentnehmen:

    Die in der Menleiste angebotenen Funktionen lassen erkennen, dass dieses Editierwerkzeugmehr ist als ein einfacher Quelltexteditor. Im besonderen stellt der Editor einen integriertenDebugger bereit. Die wichtigsten Menpunkte werden im folgenden erlutert:

    S File Die blichen File-Funktionen wie ffnen, Speichern, Drucken usw.werden hier definiert.

    S Edit Die Editierfunktionen fr Texte werden definiert.S View Das Erscheinungsbild des Editors kann verndert werden.S Debug Es erscheinen Menpunkte, die die schrittweise Programmbearbeitung

    ermglichen oder ber die die Abarbeitung gestartet werden kann.

    ber die Buttons des Toolbar lassen sich bestimmte Funktionen sehr schnell aktivieren (so dieAnzeige ausgewhlter Funktionen oder das Suchen von Textabschnitten).

  • Einleitung1 - 6

    1.4 Die Benutzeroberflche von Simulink

    Simulink wird aus der MATLAB-Umgebung heraus aktiviert. Nach dieser Aktivierung erscheintdas folgende Fenster:

    ber dieses Fenster wird die Modell-Bibliothek von SIMULINK erreichbar. Fr den Aufbaueiner Simulationsstruktur, die aus Elementen dieser Bibliothek bestehen soll, muss der Benutzerber den New-Menpunkt im File-Men oder ber das entsprechende Button des Toolbar diesesFensters ein neues, leeres Fenster fr den Arbeitsbereich erzeugen. Die Elemente werden dannper Mausklick in den Arbeitsbereich gezogen.Das linke Teilfenster stellt den Navigator fr die Abschnitte der Modellbibliothek zur Verf-gung; im rechten Teilfenster erscheinen die im jeweils ausgewhlten Abschnitt verfgbarenBlcke.

  • Elementare Konstrukte 2 - 1

    2. Elementare Konstrukte in MATLAB 2.1 Die interaktive Arbeitsweise

    Im folgenden wird stets davon ausgegangen, dass das Kommandofenster der Benutzeroberflcheaktiv ist. Der Anwender kann zunchst das System interaktiv im reinen Kommandobetriebnutzen. Dabei wird im Kommandofenster nach dem Kommandoprompt >> eine Zeichenfolgefr ein Kommando eingegeben. Nach Abschluss der Zeichenfolge durch die -Tastewird das Kommando sofort ausgefhrt. Folgende Regeln sind bezglich der Kommandozeile zubeachten: Mit den Cursor-Steuertasten und kann unter den zurckliegenden Kommandos

    geblttert werden. Mit den Tasten fr die horizontale Cursor-Steuerung sowie mit den Korrekturtasten

    kann die Kommandozeile editiert werden. Sollen mehrere Kommandos auf einer Zeile eingegeben werden, so sind sie jeweils

    durch Komma zu trennen. Soll die Resultatausgabe eines Kommandos unterdrckt werden, so ist die Kommando-

    zeile mit einem Semikolon abzuschlieen. Soll ein Kommando auf der folgenden Bildschirmzeile fortgesetzt werden, so ist vor der

    Bettigung der -Taste die Zeichenfolge ... ( drei Punkte ) einzugeben. Ein Kommentar beginnt mit dem Prozentzeichen %. Der Kommentar kann an beliebiger

    Stelle beginnen; der Rest der Kommandozeile wird von da an nicht interpretiert.

    Die TaschenrechnerfunktionIm einfachsten Fall werden als Kommandos arithmetische Ausdrcke eingegeben, die lediglichaus numerischen Konstanten, Standardfunktionen (trigonometrische Funktionen, Exponential-funktion usw.) und arithmetischen Operatoren bestehen. Die Ausdrcke mssen den blichensyntaktischen Regeln gengen. Auch Vektoren und Matrizen lassen sich in diesem Bearbei-tungsmodus verknpfen (nheres zu Vektoren und Matrizen s. Abschnitt 2.2.3)

    < Beispiel

    >> 123.6*exp(-2.4)/0.47ans = 23.8569>> [1 2 3]*[2 3 4]' %Skalarprodukt zweier Vektorenans = 20>>Die Variable ans wird durch das System mit dem Ergebnis belegt; auf sie kann in nachfolgendenBerechnungen Bezug genommen werden. Der Ergebnis-Typ wird durch die jeweilige Be-rechnung dynamisch festgelegt. Die Anzeige des Resultats erfolgt in dem Beispiel, da dasKommando nicht mit ; abgeschlossen wurde.

    Die Kommandofolge - sequentielle ProgrammierungDer Anwender kann im Rahmen eines Kommandos auch Variable definieren bzw. auf dieseBezug nehmen. Weiterhin kann er im Rahmen eines Kommandos auch MATLAB-Funktionenaufrufen. Prinzipiell kann er auch strukturierende Anweisungen (z.B. Laufanweisungen) imKommandobetrieb eingeben. Der Anwender kann somit einfache Berechnungsvorschriften sehr

  • Elementare Konstrukte2 - 2

    schell zur Abarbeitung bringen. Vor allem ist diese Betriebsweise von Bedeutung, wenn durcheine umfangreiche MATLAB-Funktion Ergebnisse erzeugt werden, die je nach konkreterSituation unterschiedlich weiter zu bearbeiten sind. Die Kommandofolge kann auf alle Varia-blen Bezug nehmen, die im Workspace verfgbar sind.

    < Beispiel

    >> H=4;>> V=pi/4*HV = 3.1416

    Der FunktionsaufrufWenn ein Kommando-Skript oder eine Funktion aktiviert werden sollen, so ist wenigstens derAufruf als MATLAB-Kommando notwendig. Mit den Resultaten, sofern sie nach der Ab-arbeitung noch verfgbar sind, kann im Kommandobetrieb anschlieend weitergearbeitetwerden.

    2.2 Konstanten und Variable 2.2.1 Konstanten

    Numerische KonstantenDer Typ numerischer Konstanten wird aus ihrer Darstellung abgeleitet. Wird ein Dezimalpunktverwendet, so handelt es sich um eine reelle Konstante, sonst um eine ganzzahlige. Fr reelleKonstanten kann auch die Schreibweise mit Zehnerpotenz (halblogarithmische Notation)verwendet werden. Als Zeichen fr den Beginn des Exponentialteils wird der Buchstabe e (auchE ist zulssig) verwendet. Vordefinierte Konstanten (Schreibweise