Main Content

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Ein einfaches Modell erstellen

Mit Simulink® können Sie ein System modellieren und dann das dynamische Verhalten dieses Systems simulieren. Die grundlegenden Verfahren, die Sie in diesem Tutorial zum Erstellen eines einfachen Modells verwenden, sind die gleichen wie bei komplexeren Modellen. In diesem Beispiel wird die vereinfachte Bewegung eines Autos simuliert. Ein Auto ist in der Regel in Bewegung, wenn das Gaspedal betätigt wird. Wird das Pedal losgelassen, rollt das Auto aus und kommt zum Stillstand.

Ein Simulink-Block ist ein Modellelement, das eine mathematische Beziehung zwischen seiner Eingabe und Ausgabe definiert. Um dieses einfache Modell zu erstellen, benötigen Sie vier Simulink-Blöcke.

Name des BlocksZweck des BlocksZweck für das Modell
Pulse GeneratorEin Eingangssignal für das Modell generierenDas Gaspedal darstellen
GainDas Eingangssignal mit einem konstanten Wert multiplizierenBerechnen, wie sich das Betätigen des Gaspedals auf die Beschleunigung des Autos auswirkt
Integrator, Second-OrderDas Eingangssignal zweimal integrierenPosition aus Beschleunigung ableiten
OutportEin Signal als Ausgabe des Modells kennzeichnenDie Position als Ausgabe des Modells kennzeichnen

A Simulink model with Pulse Generator, Gain, Integrator, Second-Order block, and two Outport blocks.

Beim Simulieren dieses Modells wird ein kurzer Puls zweimal integriert, um einen Anstieg zu erhalten. Die Ergebnisse werden in einem Scope-Fenster angezeigt. Der Eingangspuls stellt eine Betätigung des Gaspedals dar: 1, wenn das Pedal betätigt wird, und 0, wenn nicht. Der Anstieg am Ausgang ist die zunehmende Entfernung vom Startpunkt.

Neues Modell öffnen

Verwenden Sie den Simulink Editor, um Ihre Modelle zu erstellen.

  1. Starten Sie MATLAB®. Klicken Sie auf der MATLAB-Symbolleiste auf die Schaltfläche Simulink .

    Simulink start page. The page has two tabs, New and Examples from which you can open a new template or an example to work on.

  2. Klicken Sie auf die Vorlage Blank Model.

    Der Simulink Editor wird geöffnet.

    Empty Simulink Editor

  3. Klicken Sie auf der Registerkarte Simulation auf Save > Save as. Geben Sie im Textfeld File name einen Namen für Ihr Modell ein. Beispiel: simple_model. Klicken Sie auf Save. Das Modell wird mit der Dateierweiterung .slx gespeichert.

Simulink Library Browser öffnen

Simulink stellt mehrere Blockbibliotheken bereit, die im Library Browser nach Funktionalität geordnet sind. Die folgenden Bibliotheken finden bei den meisten Workflows Anwendung:

  • „Continuous“: Blöcke für Systeme mit stetigen Zuständen

  • „Discrete“: Blöcke für Systeme mit diskreten Zuständen

  • „Math Operations“: Blöcke, die algebraische und logische Gleichungen implementieren

  • „Sinks“: Blöcke, die die Signale, die an sie angeschlossen sind, speichern und anzeigen

  • „Sources“: Blöcke, die die Signalwerte generieren, die das Model ansteuern

  1. Klicken Sie auf der Registerkarte Simulation auf die Schaltfläche Library Browser .

    Library Browser

  2. Legen Sie fest, dass der Library Browser immer vor den anderen Desktop-Fenstern bleibt. Wählen Sie auf der Simulink Library Browser-Symbolleiste die Schaltfläche Stay on top aus.

Um die Blockbibliotheken zu durchsuchen, wählen Sie im linken Fensterbereich eine Kategorie und dann einen Funktionsbereich aus. Um alle verfügbaren Blockbibliotheken zu durchsuchen, geben Sie einen Suchbegriff ein.

Beispiel: Sie suchen den Block Pulse Generator. Geben Sie im Suchfeld auf der Browser-Symbolleiste den Text pulse ein und drücken Sie dann die Eingabetaste. Simulink durchsucht die Bibliotheken nach Blöcken mit dem Text pulse im Namen oder in der Beschreibung und zeigt diese Blöcke dann an.

Simulink Library Browser displaying the results for the term pulse. The browser displays Pulse Generator, and Continuous Pulse Generator blocks.

Rufen Sie detaillierte Informationen über einen Block ab. Klicken Sie mit der rechten Maustaste auf den „Pulse Generator“-Block und wählen Sie dann Help for the Pulse Generator block aus. Der Hilfe-Browser wird mit der Referenzseite für diesen Block geöffnet.

Blöcke besitzen in der Regel mehrere Parameter. Sie können auf alle Blockparameter zugreifen, indem Sie auf den Block doppelklicken.

Blöcke zu einem Modell hinzufügen

Um mit dem Erstellen des Modells zu beginnen, durchsuchen Sie die Bibliothek und fügen die Blöcke hinzu.

  1. Ziehen Sie den Pulse Generator-Block aus der Bibliothek Sources zum Simulink Editor. In Ihrem Modell wird eine Kopie des Pulse Generator-Blocks mit einem Textfeld für den Wert des Parameters Amplitude angezeigt. Geben Sie 1 ein.

    Pulse Generator block with value 1 in its text box

    Parameterwerte bleiben während der Simulation erhalten.

  2. Fügen Sie mit derselben Methode die folgenden Blöcke zu Ihrem Modell hinzu.

    BlockBibliothekParameter
    GainSimulink/Math Operations

    „Gain“ (Verstärkung): 2

    Integrator, Second-OrderSimulink/Continuous

    „Initial condition“ (Anfangsbedingung): 0

    OutportSimulink/Sinks

    „Port number“ (Portnummer): 1

    Fügen Sie einen zweiten Outport-Block hinzu, indem Sie mithilfe von Tastenkombinationen den vorhandenen Block kopieren und an einer anderen Stelle einfügen.

    Jetzt enthält Ihr Modell die Blöcke, die Sie benötigen.

  3. Ordnen Sie die Blöcke nach Bedarf an, indem Sie sie einzeln mit der Maus anklicken und verschieben. Um die Größe eines Blocks zu ändern, ziehen Sie eine Ecke.

    Arranged blocks from left to right.

Blöcke verbinden

Verbinden Sie die Blöcke, indem Sie Linien zwischen Eingabeports und Ausgabeports erstellen.

  1. Klicken Sie auf den Ausgabeport an der rechten Seite des Pulse Generator-Blocks.

    Der Ausgabeport und alle Eingabeports, die für eine Verbindung geeignet sind, werden durch ein blaues Winkelsymbol port hint symbol angezeigt.

  2. Zeigen Sie auf port hint symbol, um den Verbindungshinweis zu sehen.

    Klicken Sie auf den Hinweis. Simulink verbindet die Blöcke mit einer Linie und einem Pfeil, der die Richtung des Signalflusses angibt.

  3. Verbinden Sie den Ausgabeport des Gain block mit dem Eingabeport am Integrator, Second-Order-Block.

  4. Verbinden Sie die zwei Ausgänge des Integrator, Second-Order-Blocks mit den zwei Outport-Blöcken.

  5. Speichern Sie Ihr Modell. Klicken Sie auf der Registerkarte Simulation auf Save.

Signal Viewer hinzufügen

Damit die Simulationsergebnisse angezeigt werden, verbinden Sie den ersten Ausgang mit einem Signal Viewer.

Klicken Sie auf das Signal. Klicken Sie auf der Registerkarte Simulation unter Prepare auf Add Viewer. Wählen Sie Scope aus. Danach wird ein Viewer-Symbol am Signal angezeigt und ein Scope-Fenster geöffnet.

Sie können das Scope jederzeit öffnen, indem Sie auf dieses Symbol doppelklicken.

Simulation ausführen

Nachdem Sie die Konfigurationsparameter definiert haben, können Sie Ihr Modell simulieren.

  1. Legen Sie auf der Registerkarte Simulation den Endzeitpunkt der Simulation fest, indem Sie den Wert auf der Symbolleiste entsprechend ändern.

    Der Standardwert 10.0 für den Endzeitpunkt ist für dieses Modell geeignet. Dieser Zeitwert hat keine Einheit. Die Zeiteinheit in Simulink hängt von der Konstruktion der Gleichungen ab. In diesem Beispiel wird die vereinfachte Bewegung eines Autos über einen Zeitraum von 10 Sekunden simuliert. In anderen Modellen könnten Millisekunden oder Jahre als Zeiteinheiten verwendet werden.

  2. Um die Simulation auszuführen, klicken Sie auf die Schaltfläche Run .

Die Simulation wird ausgeführt und erzeugt die Ausgabe im Viewer.

Modell verfeinern

In diesem Beispiel wird das vorhandene Modell moving_car.slx verwendet und basierend auf diesem Bewegungsmodell ein Näherungssensor modelliert. In diesem Szenario misst ein digitaler Sensor die Entfernung zwischen dem Auto und einem 10 m (30 Fuß) entfernten Hindernis. Das Modell gibt die Sensormessung und die Position des Autos aus, wobei es die folgenden Bedingungen berücksichtigt:

  • Wenn das Auto das Hindernis erreicht, kommt es abrupt zum Stillstand.

  • In der Realität misst ein Sensor die Entfernung ungenau, was zu numerischen Zufallsfehlern führt.

  • Ein digitaler Sensor arbeitet mit festen Zeitintervallen.

Blockparameter ändern

Öffnen Sie zuerst das Modell moving_car. Geben Sie auf der MATLAB-Befehlszeile den folgenden Befehl ein:

open_system('moving_car.slx')

Sie müssen zuerst den abrupten Stillstand modellieren, wenn das Auto die Position 10 erreicht. Der „Integrator, Second-Order-Block“ besitzt einen Parameter für diesen Zweck.

  1. Doppelklicken Sie auf den „Integrator, Second-Order“-Block. Das Dialogfeld „Block Parameters“ wird angezeigt.

  2. Wählen Sie Limit x aus und geben Sie 10 für Upper limit x ein. Die Hintergrundfarbe für den Parameter ändert sich, um eine Änderung anzuzeigen, die nicht auf das Modell angewendet wurde. Klicken Sie auf OK, um die Änderungen anzuwenden und das Dialogfeld zu schließen.

Neue Blöcke und Verbindungen hinzufügen

Fügen Sie einen Sensor hinzu, der die Entfernung zum Hindernis misst.

  1. Modifizieren Sie das Modell. Erweitern Sie das Modellfenster, damit es die neuen Blöcke aufnehmen kann.

    • Ermitteln Sie die tatsächliche Entfernung. Um die Entfernung zwischen der Position des Hindernisses und der Position des Fahrzeugs zu ermitteln, fügen Sie den Subtract-Block aus der Bibliothek Math Operations hinzu. Fügen Sie auch den Constant-Block aus der Bibliothek Sources hinzu, um den konstanten Wert 10 für die Position des Hindernisses festzulegen.

    • Modellieren Sie die ungenaue Messung, die für einen echten Sensor typisch ist. Verwenden Sie den Band-Limited White Noise-Block aus der Bibliothek Sources, um weißes Rauschen zu generieren. Legen Sie den Parameter Noise power auf 0.001 fest. Verwenden Sie einen Add-Block aus der Bibliothek Math Operations, um das Rauschen zur Messung hinzuzufügen.

    • Modellieren Sie einen digitalen Sensor, der alle 0,1 Sekunden auslöst. In Simulink ist für die Abtastung eines Signals in einem bestimmten Intervall das Abtasten und Halten erforderlich. Fügen Sie den Zero-Order Hold-Block aus der Bibliothek Discrete hinzu. Nachdem Sie den Block zum Modell hinzugefügt haben, legen Sie den Parameter Sample Time auf 0.1 fest.

    • Fügen Sie einen weiteren Outport-Block für die Verbindung mit dem Sensorausgang hinzu. Lassen Sie den Wert des Parameters Port number unverändert.

  2. Verbinden Sie die neuen Blöcke. Der Ausgang des Integrator, Second-Order-Blocks ist bereits mit einem anderen Port verbunden. Um in diesem Signal eine Verzweigung zu erstellen, klicken Sie mit der linken Maustaste auf das Signal, um die für die Verbindung infrage kommenden Ports hervorzuheben, und klicken dann auf den entsprechenden Port.

Signale kommentieren

Fügen Sie Signalnamen zum Modell hinzu.

  1. Doppelklicken Sie auf das Signal und geben Sie den Signalnamen ein.

  2. Zum Beenden brauchen Sie nur auf eine Stelle außerhalb des Textfeldes zu klicken.

  3. Wiederholen Sie diese Schritte, um die Namen gemäß der Abbildung hinzuzufügen.

Mehrere Signale vergleichen

Vergleichen Sie das Signal actual distance mit dem Signal measured distance.

  1. Erstellen Sie einen Scope Viewer und verbinden Sie ihn mit dem Signal actual distance. Klicken Sie mit der rechten Maustaste auf das Signal und wählen Sie Create & Connect Viewer > Simulink > Scope aus. Der Name des Signals wird im Viewer-Titel angezeigt.

  2. Fügen Sie demselben Viewer das Signal measured distance hinzu. Klicken Sie mit der rechten Maustaste auf das Signal und wählen Sie Connect to Viewer > Scope1 aus. Stellen Sie sicher, dass Sie die Verbindung zu dem Viewer herstellen, den Sie im vorherigen Schritt erstellt haben.

  3. Führen Sie das Modell aus. Im Viewer werden die zwei Signale angezeigt: actual distance in Gelb und measured distance in Blau.

  4. Vergrößern Sie das Diagramm, um den Effekt von Rauschen und Abtasten zu beobachten. Klicken Sie auf die Schaltfläche Zoom . Klicken Sie mit der linken Maustaste und ziehen Sie ein Fenster um den Bereich, den Sie näher betrachten möchten.

    Sie können auch weiter vergrößern, um die Details genauer zu betrachten.

Im Diagramm können Sie erkennen, dass die Messung um bis zu 0,3 m vom tatsächlichen Wert abweichen kann. Diese Information ist beim Entwickeln einer Sicherheitsfunktion, zum Beispiel einer Kollisionswarnung, von Nutzen.

Siehe auch

Blöcke

Verwandte Themen