Main Content

add_block

Hinzufügen von Blöcken zu einem Modell

Beschreibung

Beispiel

h = add_block(source,dest) fügt eine Kopie des source-Blocks aus einer Bibliothek oder einem Modell zum angegebenen Zielmodell und Blocknamen hinzu. Diese Syntax erstellt den Block an derselben Position, an der er sich im Modell oder Bibliotheksmodell befindet.

Wenn Sie zwischen Modellen oder aus einer Bibliothek kopieren, laden Sie zunächst das Zielmodell.

Beispiel

h = add_block(source,dest,'MakeNameUnique','on') gewährleistet, das der Zielblockname im Modell eindeutig ist. Diese Syntax fügt dem Zielblocknamen eine Zahl hinzu, wenn ein Block mit dem Namen bereits besteht; die Zahl wird inkrementiert, um einen eindeutigen Namen zu gewährleisten.

h = add_block(___,'CopyOption','nolink') kopiert den source-Block bzw. das Subsystem aus einer Bibliothek, ohne einen Link zum Bibliotheksblock zu erstellen.

Beispiel

h = add_block(sourceIn,destIn,'CopyOption','duplicate') dupliziert einen Eingangsport-Block in einem Subsystem und überträgt die Portnummer des Quellenblocks auf den Zielblock. Duplizieren Sie einen Eingangsportblock, um ein Signal von einem Eingangsport abzuzweigen, ohne einen Port zu erstellen oder Linien hinzuzufügen. Weitere Informationen finden Sie unter Create Duplicate Inport Blocks.

Beispiel

h = add_block(___,Name,Value) verwendet optionale Name,Value-Argumente.

Optional können Sie kommagetrennte Paare an Name,Value-Argumenten angeben. Name ist der Name des Arguments, Value der entsprechende Wert. Name muss in Anführungszeichen stehen. Sie können mehrere Namen-Wert-Paar-Argumente in beliebiger Reihenfolge in der Form Name1,Value1,...,NameN,ValueN angeben.

Mit der Funktion add_block können Sie Blockparameter und Wertpaare verwenden. Eine Liste aller Blockparameter finden Sie unter Common Block Properties und Block-Specific Parameters.

Beispiele

alle reduzieren

Sie können einen Block aus einer Bibliothek hinzufügen, indem Sie die Funktion add_block und die folgenden Eingangsargumente verwenden:

  • Den Pfad des Bibliotheksblocks von der obersten Ebene der Library Browser-Baumstruktur zum hinzuzufügenden Bibliotheksblock, beispielsweise 'Simulink/Math Operations/Gain'

  • Den vollständigen Block-Pfad von der obersten Ebene der Modellhierarchie zur Position des hinzuzufügenden Blocks, beispielsweise 'myModel/mySubsystem/myblock'

Beide Pfade müssen mit einem Blocknamen enden.

In diesem Beispiel fügen Sie dem Subsystem Controller im Modell f14 eine anpassbare Skalenanzeige hinzu.

Öffnen Sie das Beispiel. Laden oder öffnen Sie daraufhin das Zielmodell.

open_system('f14')

Nehmen wir an, dass Sie den genauen Namen des für diese Aufgabe benötigten Blocks oder die Position des Blocks in der Library Browser-Baumstruktur nicht kennen. Um den Pfad des Bibliotheksblocks zu ermitteln, führen Sie eine Suche im Library Browser durch. Öffnen Sie den Library Browser. Geben Sie im Suchfeld den Text gauge ein und drücken Sie die Eingabetaste.

Pausieren Sie in den Suchergebnissen beim Skalenanzeigen-Symbol. In einem Tooltip wird der Pfad des Bibliotheksblocks angezeigt.

Fügen Sie den Circular-Gauge-Block dem Subsystem Controller hinzu. Nennen Sie den Block myGauge.

  • Der Pfad des Bibliotheksblocks ist simulink_hmi_customizable_blocks/Circular Gauge'.

  • Der vollständige Pfad des Blocks ist f14/Controller/myGauge'.

add_block('simulink_hmi_customizable_blocks/Circular Gauge','f14/Controller/myGauge');

Um den Block im Modell f14 anzuzeigen, navigieren Sie zum Subsystem Controller.

open_system('f14/Controller')

Fügen Sie eine Kopie eines Blocks aus dem f14-Modell dem vdp-Modell hinzu.

Laden oder öffnen Sie das Zielmodell.

open_system('vdp');

Fügen Sie den Actuator Model-Block aus dem f14-Modell dem vdp-Modell hinzu.

add_block('f14/Actuator Model','vdp/Actuator Model');

Fügen Sie einen Scope-Block aus der Simulink®-Bibliothek dem vdp-Modell hinzu. Da das vdp-Modell bereits einen Block namens Scope enthält, verwenden Sie die Option MakeNameUnique, um sicherzustellen, dass der neue Blockname eindeutig ist.

Laden oder öffnen Sie das Zielmodell.

open_system('vdp');

Fügen Sie den Scope-Block aus der Simulink® Sinks-Bibliothek dem vdp-Modell hinzu, was gewährleistet, dass der Name eindeutig ist.

add_block('simulink/Sinks/Scope','vdp/Scope','MakeNameUnique','on')

Fügen Sie einen Inport-Block mit derselben Portnummer wie ein anderer Inport-Block dem Subsystem f14/Controller hinzu.

Duplizieren Sie den Inport-Block namens Stick Input (in) im Subsystem Controller. Nennen Sie die Kopie Stick Input (in)2.

add_block('f14/Controller/Stick Input (in)',...
'f14/Controller/Stick Input (in)2','CopyOption','duplicate')

Der resultierende Block verwendet dieselbe Portnummer wie der Block namens Stick Input (in), fügt jedoch dem übergeordneten Subsystem keinen Eingangsport hinzu. Das Signal, das in den Port eintritt, wird zu beiden Inport-Blöcken weitergeleitet.

Fügen Sie einen Block aus einer Bibliothek einem Modell hinzu und legen Sie Parameter mithilfe eines Namen-Wert-Arguments fest.

Laden oder öffnen Sie das Zielmodell.

open_system('vdp');

Fügen Sie dem vdp-Modell einen Gain-Block aus der Bibliothek hinzu. Setzen Sie daraufhin den Gain-Wert auf 5.

add_block('simulink/Math Operations/Gain','vdp/Five','Gain','5')

Eingabeargumente

alle reduzieren

In das Modell zu kopierender Block, angegeben als:

  • Der vollständige Blockpfad, wenn Sie den Block aus einem Modell kopieren, beispielsweise 'vdp/Mu'. Hierbei werden der Block und dessen Einstellungen kopiert.

  • Der Pfad des Bibliotheksblocks, wenn sie einen Block aus einer Bibliothek hinzufügen möchten, beispielsweise 'simulink/Math Operations/Gain'.

    Um den Pfad des Bibliotheksblocks abzurufen, können Sie im Library Browser bei dem Block pausieren. Alternativ können Sie das Bibliotheksmodell öffnen, den Block auswählen und in der Befehlszeile gcb eingeben. Um das Bibliotheksmodell zu öffnen, klicken Sie im Library Browser rechts auf den Bibliotheksnamen in der Bibliotheksliste und wählen Sie Open library_name library aus.

Zudem können Sie die Syntax 'built-in/blocktype' als Quellen-Blockpfad verwenden, wobei blocktype der programmatische Blockname ist, der Wert des Parameters BlockType (siehe Common Block Properties). Blöcke, die mithilfe von 'built-in/blocktype' hinzugefügt werden, weisen jedoch manchmal andere Standardparameter-Werte als Library-Blöcke auf.

Verwenden Sie für Subsysteme und maskierte Blöcke den Pfad des Bibliotheksblocks. Verwenden Sie den Wert BlockType (SubSystem), um ein leeres Subsystem zu erstellen.

Beispiel: 'vdp/Mu', 'simulink/Sinks/Scope'

Name und Position des neuen Blocks im Modell, angegeben als Pfad des Blocks.

Beispiel: 'f14/Controller/MyNewBlock'

Zu duplizierender Eingangsport-Block, angegeben als Blockpfad.

Beispiel: 'f14/Controller/Stick Input (in)', 'myModel/mySubsystem/In1'

Zu erstellender Eingangsport-Block, angegeben als Blockpfad. Erstellen Sie den Zielblock in dem System, in dem sich der Quellblock befindet.

Beispiel: 'myModel/mySubsystem/DupPortIn'

Ausgabeargumente

alle reduzieren

Neuer Block, ausgegeben als Handle.

Versionsverlauf

Eingeführt vor R2006a