SIMULINK - math.uni- · PDF fileSIMULINK und Differentialgleichungen K. Taubert Vorwort und Einleitung Der Inhalt dieses Kurses über SIMULINK wurde vom Autor im Rahmen einer

  • Upload
    dinhthu

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

  • SIMULINKUND

    DIFFERENTIALGLEICHUNGEN

    K.Taubert

    Schwerpunkt SPPDFachbereich Mathematik

    Universitt HamburgWS01/02

    Aktualisierungen, Verbesserungen und Korrekturen 2002

  • SIMULINK und DifferentialgleichungenK. Taubert

    Vorwort und Einleitung

    Der Inhalt dieses Kurses ber SIMULINK wurde vom Autor im Rahmen einerWeiterbildungsveranstaltung fr Ingenieure am Fachbereich Mathematik der UniversittHamburg im WS01/02 vorgetragen.Ziel war es nicht nur den Umgang mit SIMULINK zu erlernen, sondern auch noch etwasan die zugehrigen Mathematik zu erinnern bzw. einige Grundlagen bereitzustellen.In diesen Zusammenhang sei z.B. an die (7) Differentialgleichungen mit Unstetigkeitenerinnert. Der Anwendungsbezug legt in der Praxis einiges fest, aber auch eine zugehrigeTheorie gibt es. Die brigens manches numerische Verhalten erklrt.Unerlsslich in diesem Kurs sind die bungen mit deren Lsungen. Hier wird nicht nur dasausgefhrte gebt sondern auch erweitert.Das Programm SIMULINK ist natrlich zuerst fr Regelungstechniker gedacht. Die Spracheder Regelungstechniker ist hufig dem heutigen Mathematiker fremd. Das ist schade undeigentlich unntig. Auch Mathematiker knnten sich wieder schnell in diese praxisbezogeneSprache einleben und durch seine groe Anschaulichkeit Profit daraus ziehen. Mit Erfolgknnte dann dieses Mittel z.B. bei der Untersuchung der heute so gelobtem dynamischenSysteme eingesetzt werden.Der Kurs wurde schlielich auch noch fr weiterfhrende Veranstaltungen berDifferentialgleichungen am Fachbereich Mathematik verwendet. Dieses hat noch zu einigenwenigen Vernderungen im Text gefhrt. Auerdem zeigte sich, dass nach krzester Zeitund ohne Vorkenntnisse aus der Regelungstheorie ein effizienter Einsatz von SIMULINKmglich ist.Natrlich hat SIMULINK noch viel mehr Mglichkeiten, als die hier erwhnten. Dieseswird der einzelne Anwender aber schnell und entsprechend dem Erfordernissen lernenknnen.

    Klaus Taubert

    Im Juni 2002

  • Inhalt

    1. Gleichungen in SIMULINK2. Die Laplace Transformation. Lineare Differentialgleichungen und bertragungsglieder3. Diskrete Glieder in SIMULINK und die Z-Tranformation4. SIMULINK. Subsysteme und Masken5. Analysis Tools in SIMULINK mit Anwendungen in der qualitativen Theorie von Differentialgleichungen6. Bemerkungen zur numerischen Integration von gewhnlichen Anfangswertaufgaben7. Differentialgleichungen mit Unstetigkeiten. Numerische Lsungsmethoden

    Zu jedem Paragraphen gehren bungen und die zugehrigen Lsungen

  • 1

    SIMULINK und DifferentialgleichungenK. TaubertWS00/01

    1. Gleichungen in SIMULINK

    Zusammenfassung: An einfachen linearen und nichtlinearen Gleichungs-systemen soll der Umgang mit der SIMULINK-Bibliothek und der Aufbau vonSIMULINK-Modellen erlernt werden. Eine Tabelle fr Maus und TastaturAktionen schliet den Text ab.

    1.1 Einfhrung

    Ein mathematisches Modell fr eine Regelung oder Steuerung entsteht imNormalfall dadurch, da mittels physikalischer Gesetze Gleichungen aufgestelltwerden, welche den Zusammenhang zwischen den Vernderlichen Grenherstellen. Es entsteht ein Gleichungssystem.Fr die Ingenieurarbeit kann es zweckmig sein diese Zusammenhnge durch

    Strukturbilder, Blockbilder, Signalfluplne oder Wirkplne

    anschaulich darzustellen. SIMULINK untersttzt diese Arbeitsweise und liefertgleichzeitig Mglichkeiten zur Untersuchung der Modelle (z.B. Zeitsimulation,Linearisierung, Parameteranpassung u.v.m.).

    BeispielDas elektrische Netzwerk

    fhrt zunchst auf die Strombilanz

    I1 - I2 = 0.

    Aktualisierungen, Verbesserungen und Korrekturen SS02

  • 2

    Werden die Strme ber die konstitutiven Strom-Spannungs-Beziehungen desWiderstandes und der Kapazitt C ausgedrckt, dann ergibt sich

    f(1111-C) - C*(C-0000)' = 0, 0 0 0 0 = 0 = 0 = 0 = 0

    Fr einen linearen Widerstand mit dem Leitwert G und mit 0 0 0 0 = 0 = 0 = 0 = 0, ergibt sich

    G*(1111-C) - C*(C)' = 0

    oder(C/G)*(C)' + C = 1

    Diese Beziehung zwischen der Stellgre 1 und der Ausgangsgre C kanndurch ein Blockbild ausgedrckt

    werden.Aus verschiedenen Grnden kann es nun zweckmig sein diese Beziehungunterschiedlich zu veranschaulichen bzw. aufzubauen. SIMULINK nimmtRcksicht darauf und untersttzt dieses Vorgehen:

    1. Ein Aufbau mit einem Summier-, Proportional- und Integrier-Glied fhrt z.B.zu

    2. Ein zugehriges Strukturbild (PT1-Glied) wre

  • 3

    3. Liegt ein nichtlinearer Widerstand vor, dann knnten die Zusammenhngemit der entsprechenden nichtlinearen Kennlinie f (z.B. fr eine ideale Diodemit f(u) = a*(exp(b*u)-1)) durch

    ausgedrckt werden.

    1.2 SIMULINK

    SIMULINK ist ein Unterprogramm von MATLAB

    und wird durch Linksklick des (Programm-) Symbols

    in der Symbolleiste des MATLAB-Kommando Fensters oder dem Launch Paderreicht. SIMULINK stellt dann eine Bibliothek (Simulink Library Browser)und ber das Men File (nach Linksklick auf New und Model Ctrl+N) einModellfenster (untitled) zur Verfgung.

  • 4

    Ein Linksklick auf die Bibliothekselemente (Continous, . ,Sinks oder Sources)liefert dann ein Fenster mit Blcken die durch "Drag-and-Drop" in dasModellfenster berfhrt werden knnen.Mit dem Men "Format" des Modellfensters lassen sich die einzelnen Blckenoch behandeln: z.B. drehen, frben, vergrern und vieles mehr. Im Paragraph1.4 sind weitere Kommandos aufgefhrt. Insbesondere auch solche mit denendie Blcke verbunden werden knnen.Eine sicherlich nicht immer so gltige Fallanalyse [1] zeigt, da neben derAnschaulichkeit auch noch erhebliche Arbeitseinsparungen gegenberkonventionellen Programmiermethoden mglich sind.Fr den Fall

    x'' + (k/m)*x = 0

    mit dem SIMULINK-Modell

    ergibt sich der folgende Vergleich

  • 5

    Programmiersprache Codezeilen Ungefhre Anzahl derAnschlge

    8086 Assembler 92 1540FORTRAN 14 24MATLAB 3 90Simulink 4 25

    Wie schnell mit SIMULINK-Modellen Simulationsergebnisse erzielt werdenknnen, zeigt z.B. die Differentialgleichung

    u' = u - u3 - v + C, u(0) = 0v' = *[*(u - A)3 - v], v(0) = 0

    = 0.01, = 5, A = -0.5

    Dieses System fhrt auf das SIMULINK- Modell

    Fr C=5.856 liegt eine asymptotisch stabile Lsung vor. Fr den ParameterC=5.85 liegt augenscheinlich eine periodische Lsung vor. Die Lsungsanteileu(t) knnen aus den folgenden Bildern entnommen werden.

  • 6

    C = 5.856 C = 5.85

    Nun handelt es sich hier um ein sehr empfindliches Problem. Mit den AnalysisTools (5) von SIMULINK kann dennoch spter ohne Schwierigkeiten gezeigtwerden, da fr den entsprechenden Parameter auch wirklich eine asymptotischstabile oder eine Hopf-Verzweigung (periodische Lsung) vorliegt. DieNherungslsungen wurden mit dem ODE113(Adams)(!) Verfahren und einemPentium II Rechner erzielt.

    1.3 Lineare und nichtlineare Gleichungssysteme in SIMULINK

    Das primre Ziel von SIMULINK ist sicherlich nicht die Behandlung vonlinearen und nichtlinearen Gleichungssystemen. Dennoch kann an Ihnen dieBenutzung der SIMULINK-Bibliothek und der Aufbau von SIMULINK-Modellen vortrefflich gebt werden.

    Beispiel [2]Betrachte das lineare Gleichungssystem

    a11*y1 + a12*y2 + a13*y3 = u1a21*y1 + a22*y2 + a23*y3 = u2 uii 0a31*y1 + a32*y2 + a33*y3 = u3

    Dieses Gleichungssystem kann umgeschrieben werden in die Form

    F1 : y1 = (1/a11)*u1 - (a12/a11)*y2 - (a13/a11)*y3F2 : y2 = (1/a22)*u2 - (a21/a22)*y1 - (a23/a22)*y3F3 : y3 = (1/a33)*u3 - (a31/a33)*y1 - (a32/a33)*y2

  • 7

    Ein Grobstrukturbild fr das Gleichungssystem ist dann

    Als detalliertes Strukturbild ergibt sich

    Mit Blcken aus den Katalogen "Sources", "Sinks" und "Math" kann dazu dasSIMULINK-Modell (mit der Ausgabe y1 und speziell festgelegten Koeffizientenaij, bj) aufgebaut werden:

    F3 F2 F1y1y2y3

    u3 u2 u1

    -

    u1u2u3

    y3 y2 y1

    1/a33 1/a111/a22

    a31/a33

    a32/a33

    a12/a11a23/a22

    a21/a22 a13/a11

    - - - - -

  • 8

    Wird die Auflsung der einzelnen Variablen als unangebracht oder vielleichtsogar als unzweckmig erachtet, dann kann auch mit dem Block

    gearbeitet werden. Dieser Block liefert jene z die f zu Null machen (natrlichsoweit vorhanden und ermittelbar).

    Das Beispiela11*y1 + a12*y2 - u1 = 0a21*y1 + a22*y2 - u2 = 0

    fhrt fr spezielle Koeffizienten zum SIMULINK-Modell

  • 9

    Beachten Sie dabei, da es mglich ist, (Siehe hierzu 1.4) die Untertitel derBlcke zu ndern, um diese der jeweiligen Situation anzupassen.Selbstverstndlich knnen auch nichtlineare Probleme behandelt werden. AlsBeispiel sei das Gleichungssystem

    y2 + x2 - r = 0y2 x2 = 0

    gegeben, das fr r >0 stets vier Lsungen besitzt

    Das Gleichungssystem fhrt zum Modell

    x

    y

  • 10

    Die Ermittlung der beiden Nullstellen lt sich durch Vorgabe geeigneterStartwerte gewhrleisten. Die Startwerte knnen ber ein Kontextmen(Doppellinksklick) des "Algebraic Constraint" Blocks eingegeben werden.

    1.4 Maus und Tastatur Aktionen in SIMULINK

    Die folgenden Tabellen wurden aus [1] entnommen. Sie geben einen Auszugber die Mglichkeiten wie Blcke, Signale und Untertitel behandelt werdenknnen. Dabei bedeutet

    LMB = LinksklickRMB = Rechtsklick

    Maus und Tastatur-Aktionen fr Blcke und Verbindungslinien

  • 11

    Maus und Tastatur Aktionen fr Verknpfungen und Untertitel

    Literatur[1] Dabney, J.B., Harman, T.L. Mastering SIMULINK2. The MatlabCurriculum Series. Pre