Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine...

26
Computational Intelligence and Control Laboratory CIC Lab Einführung in SIMULINK Prof. Dipl.-Ing. Dipl.-Ing. Ulrich Lehmann Dipl.-Ing. Udo Reitz

Transcript of Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine...

Page 1: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Computational Intelligence and Control Laboratory

CIC Lab

Einführung in SIMULINK

Prof. Dipl.-Ing. Dipl.-Ing. Ulrich Lehmann Dipl.-Ing. Udo Reitz

Page 2: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

22

Page 3: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Inhaltsverzeichnis

3

Inhaltsverzeichnis

1 Grundsätzliches über SIMULINK............................................................................ 5

2 SIMULINK-Hilfe........................................................................................................ 7

3 Handhabung von SIMULINK ................................................................................... 8

3.1 Aufbau eines SIMULINK-Blockschaltbildes ....................................................................9

3.2 Blockparametrierung ....................................................................................................11

3.3 Simulation des Modells.................................................................................................13

4 Der SIMULINK Library Browser............................................................................ 15

4.1 Commonly Used Blocks ...............................................................................................15

4.2 Continous .....................................................................................................................15

4.3 Discontinuities ..............................................................................................................15

4.4 Discrete ........................................................................................................................15

4.5 Lookup Tables ..............................................................................................................15

4.6 Math Operations ...........................................................................................................16

4.7 Signal Routing ..............................................................................................................16

4.8 Sinks.............................................................................................................................16

4.9 Sources ........................................................................................................................16

5 Die Datensenke Scope .......................................................................................... 17

6 Kennlinien ............................................................................................................. 19

7 Datenexport und Datenimport .............................................................................. 21

7.1 Datenexport ..................................................................................................................21

7.2 Datenimport ..................................................................................................................21

8 Vereinfachung von SIMULINK-Modellen.............................................................. 22

8.1 Subsysteme..................................................................................................................22

8.2 Erstellen eigener Funktionsblöcke................................................................................23

Page 4: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Inhaltsverzeichnis

4

9 Anhang .................................................................................................................. 24

9.1 Öffnen des Library Browsers........................................................................................ 24

9.2 Ändern des Arbeitsverzeichnisses ............................................................................... 24

9.3 Editieren im Modellfenster ........................................................................................... 24

Page 5: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Grundsätzliches über SIMULINK

5

1 Grundsätzliches über SIMULINK

Bei dem Simulationswerkzeug SIMULINK handelt es sich um eine Toolbox der Programmierumgebung MATLAB. Sie dient mit ihrer speziell konzipierten Grafikoberfläche der Simulation dynamischer Systeme.

Im Gegensatz zur zeilenorientierten Programmierung mit alphanu-merischen Zeichen wird in SIMULINK das Systemmodell mittels grafischer Blöcke in einem Editierfenster erstellt. Die Blöcke werden mittels des Simulink Library Browsers einer nach Funktionen unter-teilten Bibliothek entnommen und in das Editierfenster „gezogen“. Dort werden sie per Mausklick sinnvoll miteinander verbunden.

In den allermeisten Fällen handelt es sich bei dynamischen Systemen um zeitabhängige, lineare (oder nichtlineare) Vorgänge, die sich mit Differnzialgleichungen beschreiben lassen.

In der Systemtechnik wird zur Beschreibung häufig eine andere Form, nämlich die von Blockschaltbildern bevorzugt. Dabei wird versucht, das Verhalten des Gesamtsystems durch eine grafische Darstellung zu erfassen. Einzelne Blöcke werden durch gezielte Ver-bindungen, den Signalflüssen, miteinander verbunden.

k3 T3

w x

-

yd

kR T k T0TD,

+

N

x

k T11 2,TV

Da SIMULINK auf dieser Art der Darstellung fußt, ist es offensicht-lich, dass sich viele in Form von Blockschaltbildern vorliegende Systeme unmittelbar in SIMULINK programmieren und simulieren lassen.

Page 6: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Grundsätzliches über SIMULINK

6

Nach dem Aufbau des Modells im Editierfenster müssen die einzel-nen Blöcke parametriert werden. Nach Einstellung der Simulations-parameter kann dann die Simulation gestartet und das Ergebnis gra-fisch dargestellt werden.

Die Simulation von Simulinkmodellen basiert auf iterativen Nähe-rungsverfahren (Runge-Kutta, Adams, etc). Das zeitliche Verhalten der simulierten Systeme wird daher in den seltensten Fällen völlig identisch dem mit Differezialgleichung errechten sein. Bei richtiger Programmierung und guter Parameterwahl wird es diesem aber sehr Nahe kommen.

Page 7: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

SIMULINK-Hilfe

7

2 SIMULINK-Hilfe

Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü Help. Dieses Menü stellt eine Windows-typische Hilfe für die gesamte MATLAB-Produktfamilie zur Verfügung.

Die Hilfe für SIMULINK befindet sich in der ersten Hierarchie-ebene.

Ist SIMULINK bereits geöffnet, so führt die Auswahl der Hilfe im Library Browser oder im Editierfenster direkt zur SIMULINK-Hilfe.

Hilfe zu den einzelnen Blöcken der Bibliothek erhält man durch ei-nen rechten Mausklick auf den entsprechenden Block und Auswahl Help im Editierfenster bzw. Help for .... im Library Browser.

Darüber hinaus werden in der SIMULINK-Hilfe viele Beispiele als lauffähige Programme zur Verfügung gestellt. Diese findet man in der Hilfe unter Demos.

Page 8: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Handhabung von SIMULINK

8

3 Handhabung von SIMULINK

Um mit SIMULINK arbeiten zu können, muss zunächst die MATLAB-Entwicklungsumgebung in den Arbeitsspeicher geladen werden. Der Start von SIMULINK kann dann entweder durch Ein-gabe des Kommandos ‚simulink’ im Kommandofenster von MATLAB oder durch drücken auf das SIMULINK-Symbol in der Symbolleiste erfolgen. Es öffnet sich dann der Library Browser, der den Zugriff auf die nach Funktionalität unterteilten Bibliotheken erlaubt.

Die folgende Abbildung zeigt den Library Browser und die geöffnete Bibliothek Continous mit den darin enthaltenen Blöcken.

Durch Drücken der Schaltfläche Create a new model wird ein weite-res Fenster geöffnet, in dem das Modell programmiert wird. Dieses Fenster wird als Modell- oder Editierfenster bezeichnet.

Soll ein bereits vorhandenes Modell geöffnet werden, so kann dies über die Schaltfläche Open a model geschehen.

Page 9: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Aufbau eines SIMULINK-Blockschaltbildes

9

SIMULINK-Modelle werden mit der Dateiendung .mdl gespeichert. Es sind Textdateien, die die Modellbestandteile, die Signalverbin-dungen und die Simulationsparameter enthalten. Sie können mit Texteditoren eingesehen bzw. verändert werden.

Ist MATLAB noch nicht in den Arbeitsspeicher geladen, so bewirkt ein Doppelklick auf eine Modelldatei, dass zunächst MATLAB und dann SIMULINK gestartet wird. Das gewählte Modell wird dann im Modellfenster angezeigt.

3.1 Aufbau eines SIMULINK-Blockschaltbildes

Nach Auswahl von Create a new model öffnet sich ein neues Editier-fenster mit dem Namen untitled. Es empfiehlt sich, das leere Fenster gleich unter einem aussagekräftigen Namen für das zu erstellende Modell zu speichern.

Im Folgenden wird anhand eines sehr einfachen Beispiels der Auf-bau eines Modells gezeigt.

Zunächst wird aus der Bibliothek sources der Modellblock Step aus-gewählt und unter Festhalten der linken Maustaste in das Modell-fenster gezogen. Da es sinnvoll ist, jeden Block im Blockschaltbild individuell zu bezeichnen, wird der Name Step per Mausklick auf das Label und markieren in ‚Quelle’ geändert. Gegebenenfalls kann der Block durch Ziehen an den Ecken in der Größe verändert wer-den.

Das Modellfenster hat dann folgendes Aussehen:

Als nächstes soll ein Übertragungsglied 1ter Ordnung im Modell-fenster platziert werden. Dieses befindet sich in der Bibliothek Continuos und hat den Namen Transfer Fnc (Transferfunction). Übertragungsglieder 1ter Ordnung werden auch als PT1-Glieder bezeichnet. Der Block soll daher den Namen „PT1-Glied“ erhalten.

Page 10: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Aufbau eines SIMULINK-Blockschaltbildes

10

Die beiden Blöcke können nun mit einer Signalleitung verbunden werden, indem man mit der linken Maustaste auf den Ausgang der Quelle klickt und mit gehaltener Taste eine Verbindung zum Ein-gang des PT1-Glieds erstellt. Das Erstellen der Verbindung kann natürlich auch in umgekehrter Richtung erfolgen.

Bei dem Eintrag 1

1+s

in dem Block handelt es sich um die Laplace-

Transformierte für ein Übertragungsglied 1ter Ordnung. Viele der linearen Funktionsblöcke sind mit der Laplace-Transformierten be-zeichnet. An dieser Stelle soll hierauf aber nicht näher eingegangen werden.

Um das Übertragungsverhalten des PT1-Glieds darstellen zu können, muss noch eine Datensenke platziert werden. Im Allgemeinen ist es sinnvoll, das Eingangs- und Ausgangssignal des Modells in einem Fenster darzustellen. Deshalb müssen beide Signale zuvor noch mit Multiplexer (Signal Routing > Mux) auf eine Signalverbindung zu-sammengelegt werden. Der Ausgang des Multiplexers kann nun an eine Datensenke angeschlossen werden. Es wird aus der Bibliothek Sinks der Block Scope gewählt.

Die noch freien Ein- und Ausgänge werden nun wie beschrieben mit Signalleitungen verbunden.

Interessant ist die Möglichkeit, auch den Signalverbindungen Namen zu geben. Hierzu wird ein Doppelklick auf die entsprechende Ver-bindung ausgeführt.

Weitere Informationen zur Handhabung der Blöcke und deren Ver-bindungen befinden sich im Anhang.

Das fertige Blockschaltbild kann jetzt mit einer Dokumentation ver-sehen werden. Dazu wird ein Doppelklick an einer beliebigen Stelle im Editierfenster ausgeführt und die Dokumentation per Tastatur eingegeben.

Page 11: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Blockparametrierung

11

Das Modellfenster hat nun folgendes Aussehen:

Bevor die Simulation des Modells gestartet werden kann, müssen die Modellblocks parametriert und die Simulationsparameter eingestellt werden

3.2 Blockparametrierung

Der Zugriff auf die Blockparameter erfolgt am einfachsten per Dop-pelklick. Es öffnet sich dann eine Parameterliste.

Die Parameterliste des Multiplexers zeigt, dass die Anzahl der Ein-gänge, abweichend von der Standardeinstellung zwei, beliebig ge-wählt werden kann. Ferner lässt sich unter Display option die Dar-stellung von bar auf signals umstellen. Es werden dann im Multiple-xer die zugeführten Signale angezeigt, was bei großen Systemen die Übersichtlichkeit deutlich erhöht. Hierzu ist es erforderlich, die Grö-ße des Blocks wie beschrieben anzupassen.

Page 12: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Blockparametrierung

12

Nun sollen die Werte für das PT1-Glied eingegeben werden. Es soll einen Proportionalbeiwert von 2 und eine Zeitkonstante von 0,5s haben.

Die Parameter von Transferfunktionen werden getrennt als Zähler- (Numerator) und Nennerpolynom (Denominator) eingegeben. Hier-bei steht der Multiplikator für die höchste Potenz von s links in der eckigen Klammer. Die Transferfunktion für das im Beispiel gegebe-

ne PT1-Glied lautet: 15,0

2+s

. Die Parameter sind also wie folgt

einzutragen:

Die Parameter für die Quelle (Step) werden wie folgt eingestellt:

Step time: 0.5 (Beginn des Sprungs bezogen auf Simulationsbeginn) Initial value: 0 (Startwert der Amplitude) Final value: 1 (Endwert der Amplitude) Sample time: 0 (Intervall wird von den Simulationsparametern übernommen)

Ein Doppelklick auf das Scope öffnet ein neues Fenster, in dem die Signale der Simulation aufgezeichnet werden. Das Fenster besitzt eine Symbolleiste zur Anpassung der Signale nach der Simulation. Hier befindet sich auch eine Schaltfläche für die Scope parameters. Diese ermöglichen u.A. die interessante Möglichkeit, die Daten der Simulation in den Workspace (Arbeitsspeicher) von MATLAB zu transferieren. Mit den entsprechenden Anweisungen kann dann sehr komfortabel auf das Simulationsergebnis zugegriffen werden. Hier-auf wird an anderer Stelle näher eingegangen.

Page 13: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Simulation des Modells

13

Das Modellfenster hat nun folgendes Aussehen:

3.3 Simulation des Modells

Durch Auswahl von Configuration Parameters im Menü Simulation kann auf die Simulationsparameter zugegriffen werden. Standardmäßig werden beim Öffnen die Optionen für die Einstellung des Solvers angezeigt, siehe folgende Abbildung.

Als Solver bezeichnet man das Näherungsverfahren zur numerischen Lösung von Differenzialgleichungen, welches für die vorliegende Simulation eingesetzt werden soll. Sie werden in zwei Klassen unter-teilt: mit und ohne variabler Schrittweitensteuerung. Die Klasse wird durch die Auswahl Type > Variable-step oder Fixed-step festgelegt. Der wesentliche Unterschied zwischen beiden besteht darin, dass bei der variablen Schrittweite die Anzahl der berechneten Stützpunkte in Abhängigkeit der Dynamik festgelegt wird. D.h. für Signalabschnit-te, die sich nur wenig ändern, wird die Schrittweite größer eingestellt und damit weniger Punkte berechnet.

Page 14: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Simulation des Modells

14

Zur Simulation können zunächst die voreingestellten Solver verwen-det werden (ode45 und ode3). Die Wahl anderer Solver wird immer dann notwendig, wenn diese Solver keine schlüssigen Lösungen liefern.

Für das vorliegende Modell wird eine variable Schrittweite mit dem Solver ode45 gewählt. Durch Setzen der Max step size soll allerdings eine gewünschte Schrittweite von 5ms nicht überschritten werden.

Die Start time wird i.A. auf dem Wert 0 belassen. Für die Stop time ist eine sinnvolle Abschätzung notwendig. Für das vorliegende Mo-dell wird sie auf 5s gesetzt.

Alle anderen Parameter bleiben unverändert.

Über die Schaltfläche Start simulation kann das Modell nun simuliert und das Ergebnis im Fenster des Scope angezeigt werden.

Das Ergebnis ist in der folgenden Abbildung dargestellt:

Page 15: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Der SIMULINK Library Browser

15

4 Der SIMULINK Library Browser

Wie unter 3 beschrieben, beinhaltet der Library-Browser nach Funk-tionen unterteilte Bibliotheken. Der Inhalt der am häufigsten ge-brauchten Bibliotheken soll im Folgenden kurz beschrieben werden:

4.1 Commonly Used Blocks

Eine Zusammenfassung der am häufigsten gebrauchten Funktions-blöcke. Diese Bibliothek ist aus den anderen zusammengestellt.

4.2 Continous

Hierin befinden sich alle Elemente zur Darstellung linearer kontinu-ierlicher Systeme, wie Differenziator, Integrator, Übertragungsfunk-tionen, Totzeit.

4.3 Discontinuities

Enthält nichtlineare Blöcke wie Hysterese, Sättigung, Unempfind-lichkeit, Quantisierung.

4.4 Discrete

Hierin befinden sich alle Elemente zur Darstellung linearer zeitdis-kreter Systeme, wie z.B. zeitdiskrete(r) Übertragungsfunktion, -Integrator, -Filter. Jeder Block enthält ein Abtast- und Halteglied.

4.5 Lookup Tables

Funktionsblöcke zum Erzeugen von Kennlinien oder –Feldern.

Page 16: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Der SIMULINK Library Browser

16

4.6 Math Operations

Grundlegende mathematische Funktionen wie Addieren, Multiplizie-ren, etc. Hier befinden sich auch der häufig benötigte Summenpunkt Sum und der Block zur Multiplikation mit einer Konstanten Gain.

4.7 Signal Routing

Enthält Blöcke zum Zusammenlegen oder Aufteilen von Signalver-bindungen wie Multiplexer, Demultiplexer und Schalter.

4.8 Sinks

Enthält Funktionsblöcke zur Anzeige, Darstelung und zum Abspei-chern von Signalen, wie z.B. das oft benutzte Scope.

4.9 Sources

Hierin befinden sich Blöcke mit allen möglichen Eingangssignalen, wie z.B. Einheitssprung (Step), Rampe (Ramp), Sinussignal (Sine Wave). Darüber hinaus können auch beliebig generierte Signalfor-men geladen werden (aus dem Workspace oder vom Speichermedi-um).

Page 17: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Die Datensenke Scope

17

5 Die Datensenke Scope

Da die am häufigsten in SIMULINK verwendete Datensenke das Scope ist, werden dessen Optionen und Parameter im Folgenden kurz erklärt.

Nach Öffnen dieser Anzeigeeinheit wird der simulierte Signalverlauf im Scope grafisch dargestellt.

Als Beispiel dient die folgende Abbildung:

Das Drücken auf die Icons der Symbolleiste verursacht folgende Aktionen:

Der Inhalt wird auf einem Drucker ausgegeben.

Das Fenster Scope’-Parameters wird geöffnet.

General: Auf dieser Registerkarte kann unter Time range eine von der Simulationsdauer unterschiedliche Darstellungszeit eingegeben werden.

Data history: Unter Limit data points to last kann die Anzahl der aufzunehmenden Datenpunkte begrenzt werden. Es empfiehlt sich, die Option zu deaktivieren. Wird die Option Save data to workspace aktiviert, so werden die aufgezeichneten Daten in den Arbeitsspei-cher von MATLAB exportiert. Hierzu ist die Angabe eines Namens und des Formats (meistens Array) erforderlich.

Die Daten liegen dann im Workspace in Form eines zweidimensiona-len Arrays vor und können über Workspace und Doppelklick auf den Variablen-Namen eingesehen werden. In der ersten Spalte befindet

Page 18: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Die Datensenke Scope

18

sich der Zeitvektor (Achtung: In MATLAB beginnt die Arrayindizie-rung mit 1). In den folgenden Spalten sind die Signale in der Reihen-folge abgelegt, in der sie dem Scope zugeführt wurden.

Mit dem Kommando:

plot (name (:,1), name(:,[2 3 4]))

können die Daten dann in einem Plotfenster (Figure) angezeigt wer-den. Dieses Plotfenster bietet vielfältige Gestaltungsmöglichkeiten (Farbe, Raster, etc). Außerdem können die Daten in unterschiedli-chen Formaten als Grafik abgespeichert werden.

Von links nach rechts: Zoom in beide Richtungen, Zoom nur in X-Richtung, Zoom nur in Y-Richtung.

Von links nach rechts: Autoskalierung des Plots, Speichern der aktuellen Achseinstellungen, Laden der ursprünglichen Achseinstellungen.

Die anderen Symbole sind von untergeordneter Bedeutung.

Page 19: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Kennlinien

19

6 Kennlinien

Häufig lässt sich der funktionale Zusammenhang zwischen Ein- und Ausgang eines Systems nicht allein durch Angabe einer Formel oder Funktionsvorschrift beschreiben, sondern durch Wertepaare, die an diskreten Stellen aufgenommen werden. Der Zusammenhang lässt sich dann in einer indizierten Tabelle abspeichern. Eine solche Ta-belle nennt man Kennlinie.

Im einfachsten Fall besteht eine Kennlinie aus zwei gleich langen Vektoren. Jedem Eingangswert ist genau ein Ausgangswert zugeord-net.

Anhand eines einfachen Beispiels soll die Erzeugung einer Kennlinie erklärt werden.

Folgende Tabelle soll die Zuordnung von Ausgangswerten (Zeile 2) zu den Eingangswerten (Zeile1) definieren:

0 1 2 3 4 5 6 7 8 9 10 0 1.5 3 4 4.5 5 5.5 6 7 8.5 10

Zunächst wird aus der Bibliothek Lookup Tables die Kennlinie Lookup Table in das Editierfenster gezogen und per Doppelklick geöffnet.

Auf der Registerkarte Main können nun der Eingangsvektor Vector of input values und der Ausgangsvektor Table Data editiert werden. Dies geschieht durch Kopieren der Werte und Einfügen in das betref-fende Feld. Wichtig ist, dass sich beide Vektoren in eckigen Klam-mern befinden müssen.

Page 20: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Kennlinien

20

Es kann ferner die Methode der Interpolation gewählt werden: Lookup Method. Die Standardeinstellung Interpolation-Extrapolation liefert eine lineare Interpolation.

Die Sample time muss nur für Simulationen mit fester Schrittweite gesetzt werden.

Das Fenster hat nun folgendes Aussehen:

Über die Schaltfläche Edit können beide Vektoren in Tabellenform eingesehen werden.

Nach Bestätigen der Eingaben erscheint der Block mit der neuen Kennlinie im Editierfenster. Er sollte eine sinnvolle Bezeichnung erhalten und kann nun entsprechend angeschlossen werden.

Page 21: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Datenexport und Datenimport

21

7 Datenexport und Datenimport

7.1 Datenexport

Neben der unter 6 beschriebenen Möglichkeit, Daten aus SIMULINK zu exportieren, gibt es weitere Funktionsblöcke, die dies gestatten. Sie sind in der Bibliothek Sinks zu finden:

Diese Datensenke exportiert die Simulationsergebnisse in den Workspace von MATLAB. Durch Doppelklick auf den Block kön-nen der Name und das Format editiert werden.

Mit dieser Datensenke können Simulationsdaten als Datensatz (Da-teiendung .mat) auf das per Current Directory eingestellte Speicher-medium geschrieben werden.

7.2 Datenimport

Daten werden mittels folgender Blöcke aus der Bibliothek Sources in SIMULINK importiert:

Aus dem Workspace.

Aus dem aktuellen Verzeichnis.

Page 22: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Vereinfachung von SIMULINK-Modellen

22

8 Vereinfachung von SIMULINK-Modellen

Beim Aufbau komplexer SIMULINK-Modelle wird relativ schnell eine Anzahl von Funktionsblöcken erreicht, die den Inhalt des Edi-tierfensters unübersichtlich machen.

Es bietet sich dann an, zusammengehörende Blöcke zu einem Sub-system – ähnlich einem Unterprogramm – zusammenzufassen.

Eine weitere Möglichkeit zur Vereinfachung bietet die Verwendung des Fnc-Blocks.

8.1 Subsysteme

Das Erstellen eines Subsystems soll anhand eines einfachen Beispiels erklärt werden.

Gegeben ist der in der Abbildung gezeigte Regelkreis:

Die Funktionsblöcke, die den Regler bilden, sollen zu einem Subsys-tem zusammengefasst werden. Dazu müssen diese Blöcke zunächst markiert werden. Dies kann durch das Aufziehen eines Rahmens über diese Blöcke geschehen. Durch das Anklicken von Blöcken bei gedrückter Umschalttaste können weitere einzelne Blöcke der Mar-kierung hinzugefügt oder weggenommen werden.

Das Modellfenster hat nun folgendes Aussehen:

Das Subsystem wird nun durch einen rechten Mausklick auf die markierten Elemente und Auswahl von Create Subsystem erzeugt.

Es ergibt sich folgender Inhalt des Modellfensters:

Page 23: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Vereinfachung von SIMULINK-Modellen

23

Per Doppelklick auf das Subsystem wird ein neues Fenster geöffnet, in dem dieses dargestellt ist:

Es empfiehlt sich, die Ein- und Ausgänge des Subsystems sinnvoll zu bezeichnen.

Im das Subsystem aufrufenden Fenster erscheinen nun diese Be-zeichnungen. Weiterhin ist es sinnvoll das Label von Subsystem auf einen sinnvollen Namen zu ändern. Weiterhin können die Eingangs- und Ausgangssignale für das Subsystem bezeichnet werden. Dies geschieht durch einen rechten Mausklick auf das Subsystem und Auswahl Port Signal Properties > Input/Output Ports > Port Num-ber > Signal Name. Diese Namen erscheinen dann auf den Signal-verbindungen.

Das Modellfenster hat nun folgendes Aussehen:

Ggf. können nun weitere Subsysteme – z.B. für die Regelstrecke – erstellt werden.

8.2 Erstellen eigener Funktionsblöcke

Der Block Fnc in der Bibliothek User-Defined Functions bietet die Möglichkeit, ganze Formeln in einem einzigen Block zusammenzu-fassen. So kann auf einfache Blöcke der untersten Ebene wie sum oder gain verzichtet werden. Dies wird sicher zur Vereinfachung eines Modells beitragen.

Page 24: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Anhang

24

9 Anhang

9.1 Öffnen des Library Browsers

Der Library Browser kann aus dem Modellfenster durch Klicken auf die gleichnamige Schaltfläche geöffnet werden.

9.2 Ändern des Arbeitsverzeichnisses

Beim Öffnen von MATLAB wird das aktuelle Verzeichnis auf das Verzeichnis

C:\Dokumente und Einstellungen\Udo\Eigene Dateien\MATLAB

gesetzt.

Dieser Pfad kann beliebig geändert werden. Auch in SIMULINK wird dann standardmäßig auf dieses Verzeichnis zugegriffen.

9.3 Editieren im Modellfenster

Platzieren von Blöcken aus einer Bibliothek durch Auswahl des Blocks und Ziehen bei gehaltener linker Maustaste in das Modellfenster.

Der Name eines Blocks kann per Doppelklick auf das Label und Eingabe über die Tastatur geändert werden.

Verschieben von Blöcken durch Markieren und Ziehen bei gehaltener linker Maustaste.

Markieren mehrerer Blöcke durch Aufziehen eines Rahmens oder durch Anklicken bei gehaltener Umschalttaste.

Block oder Blöcke kopieren durch Ziehen mit der linken Maustaste bei gehaltener Steuerungstaste oder durch Ziehen mit gehaltener rechter Maustaste.

Signalverbindungen erstellen durch Ziehen bei gehaltener linker Maustaste vom Eingang zum Ausgang oder umge-kehrt.

Signalverzweigungen erzeugen durch rechten Mausklick auf die Signalleitung und Verbinden mit dem entsprechenden Blockeingang oder Auswählen des Blockeingangs und zie-hen mit linker Maustaste auf die Signalleitung.

Signalleitungen können durch Doppelklick auf die Leitung und Eingabe von Text über die Tastatur bezeichnet werden.

Page 25: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Anhang

25

Durch rechten Mausklick auf einen Block und Auswahl von Format können Blöcke gedreht oder gespiegelt werden. Fer-ner lässt sich der Blockname spiegeln oder ausblenden.

Durch rechten Mausklick auf einen Block und Auswahl von (Foreground/Background) Color können Blöcke farblich gestaltet werden.

Summenpunkten (Math Operations > Sum) können per Doppelklick Eingänge hinzugefügt werden bzw. die Vorzei-chen und Anordnung geändert werden

Einfügen von Text in das Modellfenster durch Doppelklick an die gewünschte Stelle und Eingabe über die Tastatur. Durch anschließenden doppelten Mausklick auf den Text kann dieser Formatiert werden.

Page 26: Einführung in SIMULINK - fh-swf.de · PDF fileSIMULINK-Hilfe 7 2 SIMULINK-Hilfe Eine umfassende Hilfe über SIMULINK findet man nach Öffnen der MATLAB-Entwicklungsumgebung im Popup-Menü

Anhang

26