Hauptinhalt

Programmatische Bearbeitung von Modellen

Verwenden von APIs zur Durchführung grundlegender Modellierungsaufgaben wie das Hinzufügen, Konfigurieren und Verbinden von Blöcken

Sie können Simulink®-Modelle programmgesteuert erstellen, bearbeiten, suchen und überprüfen. Um mit einem Modell programmgesteuert zu interagieren, muss das Modell geladen werden. Durch das Erstellen oder Öffnen eines Modells wird das Modell auch geladen. Verwenden Sie die unter „Create Models“ aufgeführten Funktionen, um ein Modell zu erstellen, zu laden oder zu öffnen. Verwenden Sie dann die anderen Funktionen auf dieser Seite, um das Modell und seinen Inhalt programmgesteuert zu bearbeiten. Geben Sie in der Funktion zur Eingabe von Argumenten das Objekt, das die Funktion bearbeiten soll, als Handle, Pfad oder Dateinamen an. Dieses Zielobjekt kann ein Modell, eine Komponente wie ein Subsystem oder eine Bibliothek oder ein Modellelement wie ein Block oder eine Signalleitung sein. Sie können Zielobjekte angeben, deren Namen und Position Sie kennen, oder Sie können programmgesteuert nach Zielobjekten suchen, die bestimmte Kriterien erfüllen. Weitere Informationen finden Sie in der Funktionsdokumentation und unter Get Handles and Paths.

Wenn Sie ein Modell mit Dritten teilen möchten, ohne geistiges Eigentum preiszugeben, erstellen Sie mithilfe der Funktion Simulink.ModelReference.protect (Embedded Coder) eine geschützte Version Ihres Modells. Siehe Protect Models to Conceal Contents (Embedded Coder) für weitere Informationen.

Informationen zur programmgesteuerten Ausführung von Simulationen finden Sie unter Run Simulations Programmatically. Informationen zum programmgesteuerten Erstellen und Bearbeiten von Projekten finden Sie unter Create and Edit Projects Programmatically. Informationen zur programmgesteuerten Konfiguration des Simulink-Editors finden Sie unter Programmatic Model Editor Appearance Parameters. Informationen zum Debuggen von Simulationen aus dem MATLAB®-Befehlsfenster finden Sie unter Simulationen programmatisch debuggen.

Funktionen

alle erweitern

getSimulinkBlockHandleGet block handle from block path
getfullnameGet path that identifies block or line
get_paramGet parameter names and values
gcsGet path name of current system
gcbGet path name of current block
gcbhAbrufen des Handle des aktuellen Blocks
gcbpGet Simulink.BlockPath object for current block
bdrootTop-level model of current system
getCurrentAnnotationGet current annotation object
getCallbackAnnotationGet annotation executing callback

Modellelemente suchen

find_systemFind models, blocks, lines, ports, and annotations
Simulink.findBlocksSuchen von Blöcken in Simulink-Modellen
Simulink.findBlocksOfTypeSuchen nach einem bestimmten Blocktyp in Simulink-Modellen
Simulink.FindOptionsSpecify options for finding blocks in models and subsystems
hilite_systemHighlight block, signal line, port, or annotation

Modelle suchen

find_systemFind models, blocks, lines, ports, and annotations
Simulink.allBlockDiagramsFind loaded Simulink models and libraries
modelfinderSearch and open examples, models, and projects (Seit R2022a)
modelfinder.importDatabaseImport database to Model Finder (Seit R2023b)
modelfinder.createDatabaseCreate new database to index models (Seit R2023b)
modelfinder.setDefaultDatabaseSet default database to index models (Seit R2023b)
modelfinder.setSearchDatabaseSet search scope to find models (Seit R2023b)
modelfinder.searchFilterCreate Model Finder search filter (Seit R2025a)
modelfinder.registerFolderIndex models in Model Finder (Seit R2022a)
modelfinder.unregisterFolderRemove models from Model Finder (Seit R2022a)
modelfinder.deleteDatabaseRemove database from Model Finder (Seit R2023b)

Modell-Metadaten abrufen

Simulink.MDLInfoExtract SLX, SLXP, or MDL file information without loading file
Simulink.MDLInfo.getDescriptionExtract SLX, SLXP, or MDL file description without loading file
Simulink.MDLInfo.getMetadataExtract SLX, SLXP, or MDL file metadata without loading file

Simulink starten

simulinkÖffnen Sie die Simulink-Startseite
start_simulinkStart Simulink without opening any windows
isSimulinkStartedCheck whether Simulink is started
slLibraryBrowserOpen, load, and close Simulink Library Browser, create and get handle of Library Browser object

Modelle erstellen, laden, öffnen, speichern und schließen

new_systemCreate Simulink model or library in memory
load_systemSimulink-Modell in Speicher laden
open_systemOpen model, library, subsystem, or block dialog box
save_systemSave Simulink model
close_systemClose Simulink model window or block dialog box
bdcloseClose any or all Simulink model windows unconditionally

Blöcke hinzufügen, ersetzen und löschen

add_blockHinzufügen von Blöcken zu einem Modell
addtermsAdd terminators to unconnected ports in model
replace_blockReplace blocks in Simulink model
delete_blockDelete blocks from Simulink system
Simulink.BlockDiagram.deleteContentsDelete graphical contents of model
Simulink.SubSystem.deleteContentsDelete contents of subsystem

Blöcke verbinden

Simulink.connectBlocksConnect blocks with signal lines (Seit R2024b)
add_lineAdd line to Simulink model
delete_lineDelete line from Simulink model

Parameter bearbeiten

get_paramGet parameter names and values
set_paramEinstellen eines Simulink-Parameterwerts
add_paramAdd parameter to Simulink model
delete_paramDelete model parameter added with add_param function
docblockGet or set editor invoked by Simulink DocBlock block

Modell-Layout konfigurieren

Simulink.BlockDiagram.arrangeSystemImprove layout of block diagram
Simulink.BlockDiagram.routeLineRoute existing lines of model
Simulink.BlockDiagram.resizeBlocksToFitContentAdjust block size to fit displayed value (Seit R2024b)

Modellelemente in Subsysteme gruppieren

Simulink.BlockDiagram.createSubsystemCreate subsystem containing specified set of blocks
Simulink.BlockDiagram.expandSubsystemReplace subsystem with subsystem contents
Simulink.SubSystem.copyContentsToBlockDiagramCopy graphical contents from subsystem to another model
Simulink.SubSystem.deleteContentsDelete contents of subsystem
bdIsSubsystemDetermine whether model is subsystem
isSimulinkStartedCheck whether Simulink is started
bdIsLoadedDetermine whether model, subsystem, or library is loaded
bdIsDirtyDetermine whether model, subsystem, or library has unsaved changes
slIsFileChangedOnDiskDetermine whether model has changed since it was loaded
bdIsLibraryDetermine whether model is library
bdIsSubsystemDetermine whether model is subsystem
edittime.getDisplayIssuesCheck whether model design warnings and errors are on
edittime.setDisplayIssuesDetect model design errors and warnings

Modellvorlagen verwenden

Simulink.exportToTemplateCreate template from model or project
Simulink.createFromTemplateCreate model or project from template
Simulink.findTemplatesFind model or project templates with specified properties
Simulink.defaultModelTemplateSet or get default model template

Modelle exportieren

Simulink.ModelReference.protectObscure referenced model contents to hide intellectual property
Simulink.exportToVersionExport model, library, or project for use in previous version of Simulink
Simulink.exportToTemplateCreate template from model or project
slCharacterEncodingSpecify encoding to use in code generated from Simulink models

Drucken von Modellen

frameeditOpen PrintFrame Editor to edit print frames for Simulink and Stateflow block diagrams
orientPaper orientation for printing or saving
printPrint figure or save to specific file format

Objekte

ModelFinderFilterModel Finder search filter (Seit R2025a)
Simulink.AnnotationCreate and specify properties of text, image, and area annotations

Themen

Objekte für die programmatische Bearbeitung festlegen

Modelle erstellen

Modelle formatieren

Modelle teilen