MATLAB Grundlagen MATLAB. Grundlagen. Lehrstuhl für Elektrische Antriebssysteme und Leistungseelektronik Simulation mit Matlab/Simulink

Ähnliche Dokumente
MATLAB Grundlagen MATLAB. Grundlagen. Vorlesung Matlab/Simulink Dipl.-Ing. U. Wohlfarth

Mathematische Computer-Software

Einführung in MATLAB + MATLAB Simulink. Dipl.-Inf. Markus Appel

Tipps und Tricks in MATLAB

Matlab Selbstlernkurs

Grundlagen von MATLAB

4.2 Selbstdefinierte Matlab-Funktionen 1. Teil

Einführung in die Informatik I

Kurze Einführung in Octave

Numerik-Programm, mittlerweile mit vielen Erweiterungen (Toolboxen) Matlab = Matrix Laboratory Sehr gute Doku (doc, help, lookfor)

MATLAB Eine Einführung

Schülerworkshop Computertomographie Mathematik als Schlüsseltechnologie

Einführung in Octave. Theorie & Aufgaben

INTELLIGENTE DATENANALYSE IN MATLAB. Einführung in MATLAB

Einführung in Matlab

2. Einführung in das Ingenieurtool MATLAB

Matlab: Grundlagen und Hilfen

Inhaltsverzeichnis. Angelika Bosl. Einführung in MATLAB/Simulink. Berechnung, Programmierung, Simulation. ISBN (Buch):

Informatik Erste Schritte mit MATLAB

10:Exkurs MATLAB / Octave

Ulrich Stein

1. Einstieg in MATLAB

Programmieren in MATLAB Mehr als nur ein Taschenrechner

Inhaltsverzeichnis. Ulrich Stein. Programmieren mit MATLAB. Programmiersprache, Grafische Benutzeroberflächen, Anwendungen

Zweiter Teil des Tutorials. Workspace M-files Matrizen Flow Control Weitere Datenstrukturen Gemeinsames Beispiel erarbeiten

Grundlagen der Videotechnik (Angewandte Mediensysteme/Prof. Schuller)

Ulrich Stein. Einstieg in das Programmieren. mit MATLAB. 2., aktualisierte Auflage. Mit 153 Bildern. Fachbuchverlag Leipzig im Carl Hanser Verlag

Mathematik (Teil II)

Elementare Befehle. Operatoren

Programmieren in MATLAB Mehr als nur ein Taschenrechner

Matlab Einführung Einführung in die Neuroinformatik SS 12. Miriam Schmidt Institut für Neuroinformatik

2. Programmieren in MATLAB (1)

3 Kurzeinführung in Matlab

Zyklen: break und continue

Einführung in MATLAB

Einführung in Matlab Was ist MATLAB? Hilfe Variablen

Elementare Befehle. Operatoren

Inhaltsverzeichnis. Ulrich Stein. Einstieg in das Programmieren mit MATLAB ISBN: Weitere Informationen oder Bestellungen unter

Matlab Einführung Theorie Neuronaler Netze WS 11/12. Miriam Schmidt Institut für Neuroinformatik

Grundlagen der Programmierung

Markus Grasmair. 8. März 2010

Ein kleiner Matlab Primer Frank Schimmel

Prof. Dr. Stefan Funken, Dipl.-Ing. Christoph Erath 15. Mai WiMa-Praktikum (Matlab 2/9) Einführung in LATEXund Matlab

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

> Soft.ZIV. Matlab Programmiersystem für mathematische Berechnungen

Matlab Einführung. Tobias Wunner

Einführung in Matlab

This image cannot currently be displayed. Java à Matlab. bereitgestellt von Dr. Lukas Faessler 12/4/17

Stichworte zu Octave

Einführung in die Programmierung mit VBA

PPS "Bits on Air" 1. Teil, Matlab-Tutorial Vorbereitungsaufgaben (Lösungsvorschläge)

Thomas Theis PHP4. Webserver-Programmierung für Um- und Einsteiger. Galileo Press

MATLAB. Mathematik mit Rechnerunterstützung. Dr. Margarita Esponda-Argüero. Sommeruniversität 2005

MATLAB Sommersemester 2018 Dr. Ulf Mäder

Eine praktische Einführung in die Programmierung mit der Programmiersprache C

WiMa-Praktikum 1. Woche 8

Vorkurs Informatik WiSe 16/17

Einstieg in die Informatik mit Java

Anwendung von (Mathematica und) Matlab in der Physikalischen Chemie

Einstieg in die Informatik mit Java

Vorkurs Informatik WiSe 17/18

m-files sind Folgen von MATLAB-Anweisungen oder Daten-Files.

Projektkurs MATLAB. ik i i ITK Engineering AG 1

Übung April Was ist Matlab? Aufgabe 1.1: Hochschule Bochum Sommersemester 2014 Vorlesung Autonome Roboter Prof. Dr.

R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung.

Informatik I (D-ITET)

Ingenieurmathematik kompakt Problemlösungen mit MATLAB

INTELLIGENTE DATENANALYSE IN MATLAB

Einführung in. Pierre Bayerl

Einführung in das rechnergestützte Arbeiten

Matlab Übersicht. Matlab steht für MATrix LABoratory, die Fa. The Mathworks wurde 1984 gegründet

Programmiervorkurs für die Numerik Teil 2/4

Einführung in MATLAB

Grundlagen der Optimierung. Übung 1

Einführung in MATLAB

Operatoren und Ausdrücke

Grundlagenlabor Nachrichtentechnik

Datentypen: integer, char, string, boolean

Algorithmen zur Datenanalyse in C++

Einführung in die Programmierung (MA8003)

Einführung in Matlab/Octave

Übungen zur Einführung in die wissenschaftliche Programmierung. MATLAB Einführung Teil II. Teil I. Teil II

Scilab Consortium (École Polytechnique... Renault) kostenloses Download

Angewandte Mathematik und Programmierung

Einführung in Matlab Teil I

Matlab-Seminar: Grundlagen

Physische Datenstrukturen

Funktionen in Matlab. Lehrstuhl für Angewandte Mathematik Sommersemester und 29. Mai 2008

Technische Mechanik mit Computern. Labor-Einführung

Transkript:

MATLAB Grundlagen Simulation mit Matlab/Simulink

Was ist MATLAB? Softwarepaket zur numerischen Mathematik Speziell für Vektoren & Matrizen: MATrix LABoratory Basismodul für allgemeine Mathematik, Ein/Ausgabe, Programmablaufsteuerung Erweiterungsmodule als sog. Toolboxen Simulation mit Matlab/Simulink 1

Was ist Simulink? Graphische Oberfläche zur Modellierung von physikalischen Systemen mittels Signalflußgraphen Ergänzungspaket zu MATLAB (Toolbox) Simulink Erweiterung: Blocksets (SimPowerSystems) Sine Wave Clock 80 Constant Product1 1 Gain e u Math Function Product2 Product3 1 Gain1 Mux gedaempfte Sinusschwingung Simulation mit Matlab/Simulink 2

Was ist Stateflow? Grafische Erweiterung zu Simulink Modellierung von Zustandsautomaten Vollständige Integration in Simulink und Real-Time- Workshop schaltung/chart Gang 1 G1/ G3/ G5/ entry:gang=1; entry:gang=3; entry:gang=5; H12 N21 N10 N20 H01 H03 N30 Leerlauf/ N50 H05 H02 H04 N40 G2/ entry:gang=2; G4/ entry:gang=4; Printed 10 Oct 2004 16:41:01 Simulation mit Matlab/Simulink 3

Toolboxen I MATLAB Products Design Automation Products MATLAB MATLAB Compiler & C/C++ Math Library MATLAB C/C++ Graphics Library Database Toolbox Data Acquisition Toolbox Excel Link MATLAB Report Generator MATLAB Runtime Server MATLAB Web Server MatrixVB Simulink Embedded Target Infineon C166 Embedded Target Motorola HC12 Embedded Target Motorola MPC555 Embedded Target TI C2000(TM) DSP Embedded Target TI C6000(TM) DSP Real-Time Windows TargetReal-Time Workshop Real-Time Workshop Embedded Coder SimDriveline SimMechanics SimPowerSystems Simulink Accelerator Simulink Control Design Simulink Report Generator Simulink Response Optimization Simulink Verification and Validation Stateflow und Stateflow Coder xpc Target Simulation mit Matlab/Simulink 4

Toolboxen II Application Toolboxes Signal & Image Processing Signal Processing Image Processing Wavelet Higher-Order Spectral Analysis Quantized Filtering Control Design Control System Fuzzy Logic Robust Control Nonlinear Control Design Blockset System Identification µ-analysis and Synthesis LMI Control Model Predictive Control QFT Control Design General Optimization Statistics Neural Network Symbolic/Extended Symbolic Math Partial Differential Equation Financial Financial Derivatives Financial Time Series GARCH Mapping Spline Datafeed Simulation mit Matlab/Simulink 5

Inhalt der Vorlesung MATLAB 1. Grundlagen 2. Eingabe und Ausgabe 3. Regelungstechnische Funktionen: Control System TB 4. Signalverarbeitung: Signal Processing TB 5. Optimierung: Optimization TB Simulink 6. Grundlagen 7. Lineare und nichtlineare Systeme 8. Stateflow Simulation mit Matlab/Simulink 6

Command Desktop Integrierte Entwicklungsumgebung: Command Window Command History Workspace Browser Current Directory Browser Variable Browser Quick Access Toolbar Toolstrips für Home, Plots, Apps, Shortcuts Profiler profile viewer Editor Simulation mit Matlab/Simulink 7

Online Hilfe Zu allen Befehlen existiert eine Online Hilfe Aufruf der Hilfe zu einem Befehl: help [befehl] Eigener Hilfe-Browser: helpwin [befehl] doc [befehl] Suche nach Ausdruck suchstring: lookfor suchstring Handbücher als PDF-Dateien vom Helpdesk aus Simulation mit Matlab/Simulink 8

Variablen Namen: Maximal 63 Zeichen Buchstaben, Unterstrich und Zahlen Erstes Zeichen muss Buchstabe sein Unterscheidung von Groß- und Kleinschreibung Zuweisung von Werten an Variable: variable 1 = 25 Standardergebnisvariable ans Variablen global im Workspace definiert Simulation mit Matlab/Simulink 9

Variablen-Typen Variablen-Typen: logical Logische Werte 0 oder 1 char Character (Buchstaben, Zeichen) single Fließkomma 32 Bit double Fließkomma 64 Bit intx Festkomma X = 8, 16, 32 uintx Festkomma ohne Vorzeichen X = 8, 16, 32 struct Zusammenfassung von Daten cell Programmierung großer Systeme double und char am meisten verwendet Speicherplatz über full und sparse einstellbar Simulation mit Matlab/Simulink 10

Ausgeben, Grundrechenarten und Konstanten Komma oder Leerzeichen nach der Operation lassen die Ausgabe zu, der Strichpunkt unterdrückt sie Rechnung: + Addition - Subtraktion * Multiplikation / Division ^ Potenzieren Konstanten: pi Kreiszahl Pi eps Fließkomma Genauigkeit inf Unendlich NaN Not a Number Komplexe Zahlen: i, j Imaginäre Einheit 1 Simulation mit Matlab/Simulink 11

Vektoren und Matrizen Vektoren: Trennung der Elemente durch Komma oder Leerzeichen: vektor = [ 1 2 3 ] Matrizen: Trennung der Zeilen durch Strichpunkt: matrix = [ 1 2 3 ; 5 6 7 ] Erstes Element hat Index 1 Doppelpunkt für Zeile/Spalte: zeile 1 = matrix(1,:) Zusammensetzen: matrix = [ vektor ; 5 6 7 ] Letztes Element: matrix(:,end) Simulation mit Matlab/Simulink 12

Spezielle Vektoren und Matrizen Elemente mit gleicher Schrittweite: fort = (1:2:100) Bestimmte Anzahl anzahl von Elementen innerhalb eines Intervalls mit Grenzen start und ziel: Linear: linspace(start,ziel,anzahl) Logarithmisch: logspace(start,ziel,anzahl) Spezielle Matrizen(m Zeilen, n Spalten): Einheitsmatrix: eye(m) Einsermatrix: ones(m,n) Nullmatrix: zeros(m,n) Zufallswertmatrix: rand(m,n) Simulation mit Matlab/Simulink 13

Mathematische Funktionen Viele mathematische & trigonometrische Funktionen sqrt(x) Quadratwurzel exp(x) Exponentialfunktion log(x) Natürlicher Logarithmus log10(x) Zehner Logarithmus rem(x, y) Rest nach Division x/y round(x) Runden ceil (x) Rundet nach oben floor(x) Runden nach unten abs(x) Betrag sum(v) Summe der Vektorelemente sign(x) Signum (Vorzeichen) prod(v) Produkt der Vektorelemente real(x) Realteil min(v) kleinstes Vektorelement imag(x) Imaginärteil max(v) größtes Vektorelement angle(x) Phase einer komplexen Zahl mean(v) Arithmetisches Mittel sin(x) Sinus atan(x) Arcus Tangens ±90 cos(x) Cosinus atan2(x,y) Arcus Tangens ±180 tan(x) Tangens sinc(x) Spaltfunktion sin(πx)/(πx) Online Hilfe mit help elfun und help datafun Simulation mit Matlab/Simulink 14

Rechnen mit Vektoren und Matrizen Viele Operationen können auf Vektoren und Matrizen angewendet werden Elementeweises Ausführen mit dem Punktoperator. Spezielle Vektoren- und Matrixfunktionen:. Transposition Transposition kk inv(x) Inversion det(x) Determinante rank(x) Rang eig(x) Eigenwerte Simulation mit Matlab/Simulink 15

Strukturen und Cell Arrays Strukturen zum Verwalten von Daten verschiedenen Typs: Skalare, Matrizen, Strings, etc. Felder einer Struktur enthalten einen Wert: str = struct ( name 1,wert 1, name 2,wert 2,...) Zugriff auf Werte mit dem. Befehl: str.name Cell Arrays: Multidimensionale Strukturen Simulation mit Matlab/Simulink 16

Verwalten von Variablen Dimension: eines Vektors: length(vektor) einer Matrix: size(matrix) Anzeigen: who [variable]: Nur Namen whos [variable]: Namen, Größe, Bytes und Klasse Löschen: einer Variablen: clear variable aller Variablen: clear, clear all Simulation mit Matlab/Simulink 17

Vergleichsoperatoren Vergleichsoperatoren: ==, ~=, <, <=, >, >=, Test auf Existenz einer Variable x: exist( x ) Vergleichsoperatoren können auf Skalare, Vektoren und Matrizen angewendet werden. Werte: Null (logisch falsch) bei Nichterfüllung der Operation, andernfalls Eins (logisch wahr) Auswerte Reihenfolge: 1. Mathematische Ausdrücke 2. Vergleichsoperatoren von links nach rechts Simulation mit Matlab/Simulink 18

Logische Operatoren Logische Operatoren: ~ NOT, & AND, OR, xor XOR Logische Operatoren können auf Skalare, Vektoren und Matrizen angewendet werden. Werte: Null ist logisch falsch, alle anderen Werte sind logisch wahr. Ergebnisse immer 0 oder 1. Auswerte Reihenfolge: 1. Mathematische Ausdrücke 2. NOT 3. UND und ODER von links nach rechts Simulation mit Matlab/Simulink 19

Weitere Operatoren und Logical Indexing Shortcut -Operatoren: && (AND) und (OR) Abbruch bei eindeutigem Ergebnis: ausdruck wird nicht ausgewertet (1 ausdruck) Ein Elemente wahr: Jedes Elemente wahr: any(vektor) all(vektor) Indizes wahrer Elemente: find(vektor) Logical Indexing: a(a<0) = 1 Simulation mit Matlab/Simulink 20

Ablaufsteuerung: Verzweigungen IF Verzweigung if ausdruck bef ehle elseif ausdruck bef ehle else bef ehle end SWITCH Verzweigung switch ausdruck case ausdruck bef ehle case ausdruck ausdruck... bef ehle otherwise bef ehle end Trennen der Ausdrücke und Befehle sinnvoll (,, ; ) Verschachtelungen von if und switch möglich Simulation mit Matlab/Simulink 21

Ablaufsteuerung: Schleifen FOR: for variable = ausdruck end bef ehle for n = 1:1:10, end f = n^2, WHILE: while ausdruck end bef ehle while w > 1, end w = w + 1 ; Schleife: Überspringen: continue Abbrechen: break Simulation mit Matlab/Simulink 22

MATLAB Skripts M File: Befehle in ASCII Datei mit Endung.m Kommentar: % Kommentarzeile %{... %} Mehrzeiliger Kommentar %% Kommentar als Cell-Divider Umbruch innerhalb eines Befehls:... Anzeigen der Befehle und Kommentare: echo on Seitenweise Ausgabe: Anzeigen der Datei: more on type datei Simulation mit Matlab/Simulink 23

MATLAB Funktionen I Sonderform der M Files: Übergabe von Parametern Rückgabe von Werten Lokale Variablen Definition: function [var] = functionname (par) Interne Hilfsgrößen: nargin, nargout Fehlerabbruch mit Hilfe: error( info ) Geschachtelte Funktionen möglich Hilfetext in Funktionen: % Hilfetext Simulation mit Matlab/Simulink 24

MATLAB Funktionen II Lokale Variablen innerhalb der Funktion werden nach jedem Aufruf der Funktion wieder gelöscht. Statische Variable: persistent var Bleiben nach Funktionsaufruf mit ihrem Wert erhalten. Globale Variablen: global var Müssen in der Funktion und Workspace als global definiert werden und sind von überall aus sichtbar! Löschen mit: clear global Simulation mit Matlab/Simulink 25

MATLAB Funktionen III Function Handle: f handle = @funktion Informationen: functions(f handle) Aufruf: [y1,..., ym] = feval (f handle, x1,..., xn) Inline Functions: f = inline (funktion,var) Pseudo-Code: pcode (f unktion) Entfernen aller Funktionen: clear functions Simulation mit Matlab/Simulink 26