Lade Inhalt...

SIMULINK - Entwicklung von Modellen

Demonstrationsmodelle

©2012 Fachbuch 74 Seiten

Zusammenfassung

Zweck dieser Schrift ist die Einführung in die elementaren Eigenschaften von SIMULINK. Sie ersetzt nicht das ausführliche Studium von MATLAB-Help. Was ist SIMULINK? - SIMULINK dient der Simulation von technischen Systemen. Aber auch ökologische Systeme oder Gesellschaftssysteme, soweit sie mathematisch beschreibbar
sind, können simuliert werden.
- In der Regel ist in derartigen Systemen die Zeit die unabhängige Variable. Man spricht daher auch von dynamischen Systemen.
- Die Systeme werden mit linearen und nichtlinearen algebraischen Gleichungen und Differential- und Differenzengleichungen beschrieben.
- Notwendig ist die Darstellung der Systeme durch Signalflußbilder.
- SIMULINK ist eine, auf MATLAB basierende, blockorientierte Programmiermethode.
Es können Signalflußbilder direkt in ein Programm umgesetzt werden. [...]

Leseprobe

Inhaltsverzeichnis


Inhaltsverzeichnis

1 Einführung
1.1 Was ist Simulink?
1.2 Realisierung
1.3 Was nicht behandelt wird

2 Modelle
2.1 Bereitstellen eines Modellfensters
2.2 Bereitstellung der Simulink-Blöcke
2.3 Bearbeitung von Blöcken
2.4 Aufbau des Modells
2.5 Signale
2.6 Speichern der Bilder von Modellen

3 Subsysteme
3.1 Einführung
3.2 Erklärung eines Subsystems
3.3 Subsystem maskieren und benennen
3.4 Speichern der Bilder von Simulink-Subsystemen

4 S-Funktionen
4.1 Einführung
4.2 S-Funktionen für zeitkontinuierliche Blöcke
4.3 S-Funktionen für zeitdiskrete Blöcke
4.4 Betrieb einer S-Funktion
4.5 S-Funktion-Blöcke

5 Parameterversorgung von Modellen
5.1 Einführung
5.2 Direkte Methode
5.3 Versorgung über den Basis-Workspace
5.4 Zum Basis-Workspace

6 Ablauf von Modellen
6.1 Klassifizierung von Systemen
6.2 Simulation von Systemen
6.3 Simulationsvorbereitung
6.4 Simulationsablauf

7 Erfassung und Darstellung von Signalverläufen
7.1 Einführung
7.2 Erfassung der Daten
7.3 Darstellung der Signalverläufe
7.4 Speichern der Figures

8 Assistenzprogramm

9 Mathematische Grundlagen
9.1 Integration
9.2 Lineare Differentialgleichungen 1.Ordnung
9.3 Lineare Differentialgleichungen 2.Ordnung
9.4 Zustandsdarstellung von linearen
Differentialgleichungssystemen
9.5 Zahlenfolgen, zeitdiskrete Signale
9.6 Signalverzögerung
9.7 Lineare Differenzengleichung
9.8 Zeitdiskrete Integrationsformeln
9.9 Zustandsdarstellung von linearen Differenzengleichungssystemen
9.10 Algebraische Schleife

10 Differentialgleichungen
10.1 Pendel
10.1.1 Ideales Pendel
10.1.2 Pendel mit parametrischer Anregung
10.2 Van der Pol’sche Differentialgleichung

11 Differenzengleichungen
11.1 Sinus-, Cosinusgenerator
11.2 Amplitudenmodulator
11.3 Generator für nahezu beliebige Signale

12 Zustandsdarstellung zeitkontinuierlicher Systeme

13 Simulation eines Regelkreises
13.1 Einführung in die Regelungsaufgabe
13.2 Modellbildung des zeitkontinuierlichen Regelkreises
13.3 Modellbildung des digitalen Regelkreises

I Anhänge

14 Abkürzungen

15 Download der Software

1 Einführung

Zweck dieser Schrift ist die Einführung in die elementaren Eigenschaften von SIMULINK. Sie ersetzt nicht das ausführliche Studium von MATLAB-Help.

1.1 Was ist Simulink?

- SIMULINK dient der Simulation von technischen Systemen. Aber auch ökolo- gische Systeme oder Gesellschaftssysteme„ soweit sie mathematisch beschreib- bar sind, können simuliert werden.
- In der Regel ist in derartigen Systemen die Zeit die unabhängige Variable. Man spricht daher auch von dynamischen Systemen.
- Die Systeme werden mit linearen und nichtlinearen algebraischen Gleichungen und Differential- und Differenzengleichungen beschrieben.
- Notwendig ist die Darstellung der Systeme durch Signalflußbilder.
- SIMULINK ist eine, auf MATLAB basierende, blockorientierte Programmier- methode. Es können Signalflußbilder direkt in ein Programm umgesetzt wer- den.

1.2 Realisierung

- Um ein Simulink-Modell erzeugen zu können muss erst ein Simulinkfenster erzeugt werden. Es sollte den Namen des Modells tragen.
- Über den Simulink Library Browser hat man Zugriff auf vorgefertigte Simulink- Blöcke.
- Mit der Methode der S-Funktionen kann man auch neue Blöcke erzeugen.
- Die Simulink-Modelle werden grafisch durch den Zusammenbau dieser Simulink- Blöcke im Simulinkfenster erzeugt.
- Die Verbindungslinien zwischen Blöcken beschreiben Signale.
- Läuft das dem Modell zugeordnete Programm ab, erhält man eine Simulation des modellierten Systems.
- Es ist sicher am besten wenn die Simulation so schnell wie möglich abläuft. Abhängig vom Aufwand bei der Erstellung des ablauffähigen Programms kann man Rechenzeit einsparen.
- Für die Entwicklung und Demonstration von Modellen ist das Programm As- sistent hilfreich.
- Die Modellbilder können als Postscript-Files gespeichert werden.
- Die Verläufe der Signale im System können grafisch dargestellt und ebenfalls als Postscript-Files gespeichert werden.

1.3 Was nicht behandelt wird.

- Von besonderer Bedeutung ist bei Genauigkeitsfragen die verwendete Integra- tionsmethode. In SIMULINK stehen verschiedene Methoden zur Verfügung. Auf die theoretischen Grundlagen numerischer Integrationsverfahren wird ver- zichtet.
- Auf die Systemtheorie und auf die Laplace- und z-Transformation wird in dieser Schrift nicht eingegangen. Grundkenntnisse werden vorausgesetzt.
- Ist die Simulation aber über DA- und AD-Umsetzer und digitalen Ein- und Ausgängen mit Hardware verbunden muss diese in Echtzeit ablaufen. Hierfür müssen besondere Vorkehrungen getroffen werden.

2 Modelle

Modelle entstehen in einem Fenster durch die Verdrahtung von Blöcken.

Zur Modellentwicklung kann man das Programm Assistent benutzen, es wird später besprochen.

Man kann aber auch der hier beschriebenen Vorgehsweise folgen.

2.1 Bereitstellen eines Modellfensters

- MCW/Simulink oder MCW/simulink anklicken. Es erscheint der Simulink Li- brary Browser (SLB) in unterschiedlichen Darstellungen.
- Durch Anklicken von SLB/Create a new model wird ein Fenster, das Model Window (MOW) erzeugt. In diesem Fenster kann das neue Modell erstellt werden.
- Es ist sinnvoll dafür zu sorgen, dass stets nur ein Modell aufgerufen ist.
- Das Modell wird mit MOW/File/Save as unter dem angegebenen Namen mit Suffix mdl im gewählten Directory abgespeichert. Der Modellname darf keinen Newline-Befehl enthalten!
- Mit SLB/Open a model oder mit MCW/Open a model kann man das Modell wieder sichtbar machen.
- Es muss noch die Simulationsdauer eingestellt werden. Dazu klickt man MOW/Simulation/Configuration Parameters an. Bei Stoptime trägt man die Zeit ein. Will man das Modell zusammen mit den Assistenzprogrammen benutzen muss man T s eintragen.

- Die Farbe kann man mit MOW/Format/Screen Color festlegen.
- Schrift im Modellfenster.
- Zur Eingabe eines Textes öffnet man durch Doppelklick mit der LMT eine Box. Hier tippt man den Text ein.
- Durch MOW/Format/Font kann man Schriftart, Schriftschnitt und Schrift- grad auswählen. Durch anklicken der Scriftbox erscheint die neue Schrift- form.
- Nach anklicken der Schrift und Halten mit der LMT kann man die Schrift verschieben.
- Mit MOW/Edit/Cut kann man eine markierte Schrift löschen, wenn man sie nochmals anklickt.

2.2 Bereitstellung der Simulink-Blöcke

- Die Blöcke sind im Simulink Library Browser zusammengefasst.
- Hier sind Listen mit verschiedenen Blocktypen dargestellt:
- Commonly used Blocks
- Continous
- Discontinuitis
- Discrete
- Logic and Bit Operations
- Lookup Tables
- Math Operations
- Model Verification
- Model-Wide Utilities
- Ports & Subsystems
- Signal Attributes
- Signal Routing
- Sinks
- Sources
- User-Defined Functions
- Additional Math & Discrete
- Durch Anklicken eines Blocktyps wird die zugehörige Liste geöffnet.
- Man findet in einer Liste mehrere Blöcke.
- Für jeden Block gilt:
- Klickt man den Block mit der RMT an , so erscheint eine Liste mit folgenden Auswahlmöglichkeiten:

- Add to the Current Model.

Der Block wird in das aktuelle Modellfenster übertragen.

- Help.

Man erreicht MATLAB-Help.

- Go up a level.

Man erreicht den Simulink Library Browser.

- (Function) Block Parameter.

Das Fenster dient dem Eintrag blockspezifischer Parameter.

- Man kann auch Blöcke im Modell-Fenster kopieren. Dazu wird der gewünschte Block durch Anklicken mit der LMT markiert, der Block ist an den Ecken fett gekennzeichnet. Anschließend wird MOW/Edit/Copy kommandiert. Mit MOW/Edit/Paste kann man die Kopie sichtbar machen.
- Markierte Blöcke werden durch Drücken der Taste Entf auf dem Keyboard gelöscht.
- Klickt man einen Block mit der LMT an, so kann man ihn bei gedrückter Maustaste in das Modell-Fenster ziehen.
- Auf die gleiche Weise kann man den Block im Modellfenster bewegen.

2.3 Bearbeitung von Blöcken

- Bei einem Doppelklick mit der LMT über einem Block öffnet sich das Figure Function Block Parameter. Hier kann man blockspezifische Parameter eintra- gen. Man kann aber auch] MATLAB-Help erreichen.
- Bewegt man den Cursor auf einen Block und klickt mit der LMT so wird der Block markiert (Mar).
- Klickt man einen Block mit der LMT an geht anschließend mit dem Cursor auf einen Eckpunkt, so kann man durch Cursorbewegung die Größe des Blocks verändern.
- Mit Mar/MOW/Format/Background Color kann man die Farbe des Blocks und mit Mar/MOW/Format/Foreground Color die Farbe von Umrahmung und Schrift einstellen.
- Ein weiteres Gestaltungselement für Blöcke ist der Schatten. Dazu führt man Mar/MOW/Drop Shadow aus. Entfernen kann man ihn mit Mar/MOW/Hide Drop Shadow.
- Man kann einen Block mit Mar/MOW/Format/Flip Block um seine klappen.
- Mit Mar/MOW/Format/Rotate Block wird der Block um 90 ◦ im Uhrzeigersinn um seine Hochachse gedreht.
- Jeder Block hat einen Namen. Er kann entweder unter oder über dem Block stehen. Mit Mar/MOW/Format/Flip Name kann man die Position des Namens ändern.
- Mit Mar/MOW/Format/Hide Name bzw. Mar/MOW/Format/Show Name kann man den Namen verbergen oder wieder sichtbar machen.
- Bei mehreren markierten Blöcken kann man die Größe mit MOW/Format/Resize Blocks, die Ausrichtung mit MOW/Format/Align Blocks und die Verteilung mit MOW/Format/Distribute Blocks beeinflussen.

2.4 Aufbau des Modells

- Die bereitgestellten Blöcke werden in die gewünschten Positionen gebracht.
- Blöcke müssen über Signalleitungen miteinander verbunden werden. Dazu klickt man den gewünschten Blockeingang mit der LMT an.
- Bei gedrückter LMT zieht man den Cursor auf den Ausgang eines anderen Blocks oder auf eine andere Signalleitung und lässt dann die Taste los.
- Die entstandene Signalleitung muss durchgezogen und schwarz erscheinen, an- dernfalls ist die Verbindung noch nicht hergestellt.
- Zum Entfernen eines Signals führt man Mar/KEY/Entf aus.
- Bei gedrückter LMT kann man ein gestricheltes Rechteck aufziehen. Alle in diesem Rechteck enthaltenen Blöcke und Leitungen werden markiert.
- Mit den Keyboard-Tasten ↑ ↓ → ← kann man diese Elemente verschieben.
- Durch Betätigung der LMT an beliebiger Stelle im Modellfenster kann man eine Markierung aufheben.
- Mit MOW/Format/Port-,Signal-Display kann man verschiedene Modell- und Signaleigenschaften anzeigen.

2.5 Signale

- Signale können reell oder komplex sein.
- Eine Signalleitung kann mehrere Signale umfassen. Sie heißt dann Signalvektor mit n Signalen.
- Klickt man eine Signalleitung mit der LMT an, so kann man bei gedrückter Taste durch Cursorbewegung den Verlauf der Verbindung ändern.
- Die Blockein- und Blockausgänge, die verbunden werden sollen, müssen dann die gleiche Anzahl n von Signalen haben.
- Man kann einem Signal auch einen Namen geben. Dazu führt man Mar/DoLMT auf der Leitung aus. Es erscheint eine Box. Hier kann man den Text eintragen.
- Mit gedrückter LMT kann man den Text verschieben.
- Zur Entfenung eines Textes muss man Mar/DoLMT/KEY/Entf ausführen.
- Mit MOW/Format/Port-, Signal Displays/... Kann man viele Signaleigen- schaften sichtbar machen.

2.6 Speichern der Bilder von Modellen

- Das Bild eines Modells soll als Postscript-File gespeichert werden.

- Bei aktiven Modellfenster ruft man im MCW oder im Assistenzprogramm die Funktion:

model2file(pfad,typ)
pfad: Pfad des Zieldirectorys
typ: SW-Bild (’eps’) oder Farbbild (’epsc’)

- Vor Ausführung dieser Funktion muss M OW/F ile/P rintsetup die Orientie- rung auf Hochf ormat stehen.

- Das File wird unter dem Modellnamen gespeichert. Dabei werden die Zeichen / durch ersetzt.

3 Subsysteme

3.1 Einführung

- Auf die vorstehend beschriebene Weise erzeugte Modelle werden rasch groß und damit unübersichtlich.
- Dieses Problem wird durch die Einführung von Subsystemen behoben.
- Es sei ein Modell gegeben. In diesem System kann man einen Teil von Blöcken markieren.
- Diese Blöcke kann man zusammenfassen und als Subsystem erklären.
- Hierzu sind die nachfolgend beschriebenen Arbeitsschritte erforderlich.
- Das Subsystem wird nun auch als Block aufgefasst.

3.2 Erklärung eines Subsystems

- Zieht man über einen Teil des Modells mit der LMT ein Rechteck auf, so werden alle Blöcke innerhalb des Rechtecks markiert.
- Mit MOW/Edit/Create Subsystem wird aus den markierten Blöcken ein neuer Block erzeugt. Er erhält automatisch den Namen Subsystem.
- Er stellt sich als Blocksymbol mit Eingangssignalen In1,... Inm und Aus- gangssignalen Out1,... Outm dar.
- Das Subsystems kann man durch Öffnen mit Mar/MOW/Edit/Open Block in einem eigenen Subsystem-Fenster (SUW) sehen.
- Parameter von Blöcken im Subsystem sind nun nicht mehr zugänglich. Diese Parameter können bei geöffnetem Subsystem geändert werden.
- Besser ist die unten beschriebene Methode. Hierzu muss der Parameter einen Variablennamen erhalten. Er kann dann über eine Dialogbox eingegeben wer- den.
- Mit MOW/Edit/Undo Create Subsystem kann man die Erzeugung eines Sub- systems wieder rückgängig machen.

3.3 Subsystem maskieren und benennen

- Mit Mar/MOW/Edit/Edit Mask subsystem kann man das Subsystem beschrif- ten.
- Es erscheint das Menu Mask editor: Subsystemname. → Hier ist nur der Menupunkt Icon von Interesse.
- Das Fenster zeigt Möglichkeiten zur Gestaltung der Beschriftung des Subsy- stems. Man kann hier Texte und Zeichnungen einfügen.
- Die einfachste Art zur Bezeichnung des Subsystems ist: disp(’Irgendein\n Text’). Dieser Text wird nicht als Subsystemname be- nutzt.
- Man kann auch den Eingangs- und Ausgangssignalen neue Namen geben. Hier- zu dient: port label(’input’,n,’Name’) port label(’output’,n,’Name’)
Dabei ist N ame der neue Name von Inn bzw. Outn.
- Muss man eine eingestellte Maske ändern oder ergänzen, so muss man wieder Mar/Edir/Edit/Edit mask kommandieren.
- Bei Erzeugung eines Subsystems wird ihm automatisch der Name Subsystem zugeordnet. Klickt man diesen Namen mit der LMT an, so kann er geändert werden.
- Maskierte Subsysteme können auch mit Mar/MOW/Edit/Look under Mask sichtbar gemacht werden.

3.4 Speichern der Bilder von Simulink-Subsystemen

- Das Bild eines Subsystems soll als Postscript-File gespeichert werden.
- Das Subsystemfenster muss durch anklicken mit dem Cursor aktiviert werden.
- Bei aktiven Modellfenster ruft man im MCW oder im Assistenzprogramm die Funktion:
model2file(pfad,typ)
pfad: Pfad des Zieldirectorys
typ: SW-Bild (’eps’) oder Farbbild (’epsc’)
- Vor Ausführung dieser Funktion muss SU W/F ile/P rintsetup die Orientie- rung auf Hochf ormat stehen.
- Das Bild wird unter Modellname Subsystemname gespeichert.
- Der Subsystemname steht unter oder über dem Block. Er kann auch verborgen sein. Auf keinen Fall steht er im Block!
- Es ist dafür zu sorgen, dass der Subsystemname keine Zeilenumbruchanweisung enhält!

4 S-Funktionen

4.1 Einführung

- Unter S − F unktion versteht man eine Methode zur Erzeugung neuer Blöcke. → Sie werden als M-Files erstellt.
- Neben den beiden anschließend besprochenen Grundtypen von S-Funktionen gibt es noch weitere Realisierungsformen.
- Zur Vertiefung dieses Themas wird auf MATLAB-Help verwiesen.

4.2 S-Funktionen für zeitkontinuierliche Blöcke

- Ausgangspunkt für die Programmerstellung ist die Zustandsdarstellung von linearen Differentialgleichungssystemen, siehe auch das Kapitel Mathematische Grundlagen:

Abbildung in dieser Leseprobe nicht enthalten

- Die Reihenfolge der Berechnung ist der Tabelle zu entnehmen:

Abbildung in dieser Leseprobe nicht enthalten

- Der zugehörige Code lautet:

Abbildung in dieser Leseprobe nicht enthalten

- Für die Initialisierungsfunktion gilt:

Abbildung in dieser Leseprobe nicht enthalten

4.3 S-Funktionen für zeitdiskrete Blöcke

- Hier ist der Ausgangspunkt die Zustandsdarstellung für lineare Differenzen- gleichungssystem, siehe wiederum das Kapitel Mathematische Grundlagen:

Abbildung in dieser Leseprobe nicht enthalten

- Die Reihenfolge der Berechnung ist nun:

Abbildung in dieser Leseprobe nicht enthalten

- Der Code lautet nun:

Abbildung in dieser Leseprobe nicht enthalten

- Für die Initialisierungsfunktion gilt:

Abbildung in dieser Leseprobe nicht enthalten

4.4 Betrieb einer S-Funktion

- Der Funktionsname sei:

Abbildung in dieser Leseprobe nicht enthalten

- Die stets erforderlichen Aufrufparametern sind Zeit t, Zustand x, Eingangs- größe u, flag. Diese Parameter werden automatisch versorgt.
- Die weiteren Aufrufparameter A, B ,C, D,... müssen über die Maske eingege- ben werden. Sie werden daher auch Maskenparameter genannt.
- Die Ausgangsgröße sys ist abhängig vom kommandierten Flag, siehe obenste- hende Tabellen.
- X 0 sind die States für den nächste Schritt. → Es ist stets str = [].
- Die Größe ts beinhaltet Information über die Tastzeit.

[...]

Details

Seiten
Jahr
2012
ISBN (eBook)
9783656169444
ISBN (Paperback)
9783656169925
DOI
10.3239/9783656169444
Dateigröße
684 KB
Sprache
Deutsch
Institution / Hochschule
Hochschule für angewandte Wissenschaften Würzburg-Schweinfurt – Fakultät Elektrotechnik
Erscheinungsdatum
2012 (April)
Schlagworte
simulink entwicklung modellen demonstrationsmodelle
Zurück

Titel: SIMULINK - Entwicklung von Modellen
book preview page numper 1
book preview page numper 2
book preview page numper 3
book preview page numper 4
book preview page numper 5
book preview page numper 6
book preview page numper 7
book preview page numper 8
book preview page numper 9
book preview page numper 10
book preview page numper 11
book preview page numper 12
book preview page numper 13
book preview page numper 14
book preview page numper 15
book preview page numper 16
74 Seiten