Was ist MATLAB?

Hier möchten wir Ihnen einen kurze Einführung zum Programmpacket MATLAB und Simulink der Firma The Mathworks geben.

MATLAB
Simulink
Stateflow

 nach oben MATLAB

Kleiner Überblick zur Motivation ...

Der Name MATLAB leitet sich von MATrix LABoratory ab, da das Softwarepaket auf die Verarbeitung numerischer Daten spezialisiert ist. Große Mengen solcher Daten treten z.B. als Messwerte oder bei der Simulation physikalischer Systeme auf.
Matlab Command Window MATLAB ist mehr als ein Taschenrechner auf dem PC ...

Im MATLAB Command-Window können Befehle direkt eingegeben werden - fast wie am Taschenrechner. Nur stehen in MATLAB auch fertige Befehle für unzählige und auch ausgefallene Berechnungen zur Verfügung. (Kennen Sie z.B. die modifizierten Besselfunktionen ?)

Zusätzlich bietet MATLAB eine eigene Programmiersprache, die an gängige Standards angelehnt ist. Damit können sog. MATLAB-Scripts erstellt werden, um die Funktionalität von MATLAB mit eigenen Befehlen zu erweitern.

Toolboxen erleichtern das Leben

Zu vielen Themenbereichen werden eigene Funktions-Bibliotheken als MATLAB-Toolbox angeboten. Im Rahmen des Buches werden davon die Bereiche Regelungstechnik (Control System TB), Signalverarbeitung (Signal Processing TB) und Optimierung (Optimization TB) behandelt.

Graphik

Ergebnisse lassen sich leicht abspeichern und exportieren. Ebenso können Zusammenhänge auch graphisch visualisiert und interaktiv nachbearbeitet werden (z.B. Ansicht, Beschriftung).

Zur Analyse mathematischer Funktionen stehen leistungsfähige Befehle zur Verfügung, mit deren Hilfe sich selbst die Lösungen implizit vorgegebener Funktionen graphisch darstellen lassen.

Graphiken können in vielen gängigen Dateiformaten abgespeichert und gedruckt werden, um sie z.B. in Präsentationen oder Texte einzubinden.

Plot in Matlab
Objektorientierte Programmierung von GUIs

Graphical User Interfaces (GUIs) erleichtern die Bedienung komplexer Software. MATLAB verfügt über zahlreiche GUIs für eingebaute Funktionalitäten (z.B. für Filter-Design und Signalanalyse). Ebenso unterstützt MATLAB auch die Erstellung eigener GUIs mit vielfältigen interaktiven Ein- und Ausgabemöglichkeiten.

Datumsrechner als GUI Auf diese Weise wurde z.B. der nebenstehende Datumsrechner implementiert. Das zugehörige MATLAB-Script kann hier heruntergeladen werden (datumsrechner_manuell.m 4 kB oder datumsrechner_guide.zip 5 kB)
Ein aufwendigeres Beispiel ist der Reglerkonfigurator, der für Strecken bis 3. Ordnung mögliche Regler vorschlägt und auslegt. Das zugehörige MATLAB-Script kann hier heruntergeladen werden: reglerkonfigurator.zip 10 kB

 nach oben Simulink

SIMULINK ist eine MATLAB-Toolbox zur Simulation regelungstechnischer Problemstellungen.

In einem graphischen Editor können (Differential-)Gleichungssysteme als hierarchische Signalflusspläne modelliert werden. Dafür stehen umfangreiche Bibliotheken linearer, nichtlinearer und zeitdiskreter Funktionen zur Verfügung.

Während der Simulation werden die Differentialgleichungen mit Hilfe geeigneter Integrationsalgorithmen numerisch gelöst.

Aus den Modellen kann darüberhinaus C-Code generiert werden, um diesen z.B für Echtzeitsysteme zu kompilieren. Damit ist SIMULINK ein ideales Werkzeug für Rapid Prototyping.

Gleichstrom-Nebenschluss-Maschine in Simulink

 nach oben Stateflow

Stateflow ist eine graphische Erweiterung zu Simulink und ermöglicht die Modellierung und Simulation endlicher Zustandsautomaten. Um Stateflow benutzen zu können, benötigt man immer auch Simulink.

Die Zustandsautomaten werden in einem graphischen Editor als Zustandsübergangsdiagramme erstellt und als Chart mit Simulink simuliert. Erlaubte Zustandsübergänge werden durch Ereignisse (Events) und Bedingungen spezifiziert. Im Gegensatz zu Simulink-Systemen ist Stateflow event-gesteuert, d.h. ein Chart wird nur beim Auftreten vorher definierter Events abgearbeitet.

Stateflow ist vollständig in Matlab und Simulink integriert. Während der Simulation können Signale mit Simulink ausgetauscht werden und alle verfügbaren Matlab-Funktionen benutzt werden. Mit Hilfe von Stateflow-Coder kann aus Stateflow Charts automatisch Echtzeit C-Code generiert werden. Somit können Stateflow Modelle problemlos in Hardware-in-the-Loop oder Rapid-Control-Prototyping-Systeme integriert werden.

Die nachfolgende Abbildung zeigt einen Ausschnitt eines in Stateflow modellierten Getränkeautomaten.

Getränkeautomaten in Stateflow

Webmaster, 21.03.2005