Contenuto principale

La traduzione di questa pagina non è aggiornata. Fai clic qui per vedere l'ultima versione in inglese.

Modifica programmatica del modello

Utilizzare le API per eseguire le nozioni di base della modellazione, come l'aggiunta, la configurazione e il collegamento dei blocchi

È possibile creare, modificare, cercare e controllare i modelli di Simulink® in modo programmatico. Per interagire con un modello in modo programmatico, il modello deve essere caricato. La creazione o l'apertura di un modello comporta altresì il caricamento del modello. Utilizzare le funzioni elencate in Create Models (Crea modelli) per creare, caricare o aprire un modello. Quindi, utilizzare le altre funzioni presenti in questa pagina per modificare il modello e il suo contenuto in modo programmatico. Negli argomenti di input della funzione, specificare l'oggetto che si desidera che la funzione modifichi come handle, percorso o nome file. Questo oggetto target può essere un modello, un componente come un sottosistema o una libreria, oppure un elemento del modello come un blocco o una linea di segnale. È possibile specificare gli oggetti target di cui si conoscono il nome e la posizione, oppure è possibile cercare in modo programmatico gli oggetti target che soddisfano determinati criteri. Per i dettagli, vedere la documentazione della funzione e Get Handles and Paths.

Quando si desidera condividere un modello con terzi senza rivelare la proprietà intellettuale, creare una versione protetta del modello utilizzando la funzione Simulink.ModelReference.protect (Embedded Coder). Per i dettagli, vedere Protect Models to Conceal Contents (Embedded Coder).

Per informazioni su come eseguire simulazioni in modo programmatico, vedere Run Simulations Programmatically. Per creare e modificare progetti in modo programmatico, vedere Create and Edit Projects Programmatically. Per configurare l'Editor di Simulink in modo programmatico, vedere Programmatic Model Editor Appearance Parameters. Per eseguire il debug delle simulazioni dalla finestra di comando MATLAB®, vedere Debug programmatico delle simulazioni.

Funzioni

espandi tutto

getSimulinkBlockHandleGet block handle from block path
getfullnameOttenere il percorso che identifica il blocco o la linea
get_paramOttenere i nomi e i valori dei parametri
gcsGet path name of current system
gcbGet path name of current block
gcbhOttenere l'handle del blocco corrente
gcbpGet Simulink.BlockPath object for current block
bdrootTop-level model of current system
getCurrentAnnotationGet current annotation object
getCallbackAnnotationGet annotation executing callback

Identificazione degli elementi del modello

find_systemFind models, blocks, lines, ports, and annotations
Simulink.findBlocksTrovare i blocchi nei modelli di Simulink
Simulink.findBlocksOfTypeTrovare il tipo di blocco specificato nei modelli di Simulink
Simulink.FindOptionsSpecify options for finding blocks in models and subsystems
hilite_systemHighlight block, signal line, port, or annotation

Identificazione dei modelli

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

Acquisizione dei metadati del modello

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

Avvio di Simulink

simulinkAprire la pagina iniziale di Simulink
start_simulinkAvviare Simulink senza aprire alcuna finestra
isSimulinkStartedCheck whether Simulink is started
slLibraryBrowserOpen, load, and close Simulink Library Browser, create and get handle of Library Browser object

Creazione, caricamento, apertura, salvataggio e chiusura di modelli

new_systemCreate Simulink model or library in memory
load_systemCaricare un modello Simulink nella memoria
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

Aggiunta, sostituzione ed eliminazione di blocchi

add_blockAggiungere un blocco al modello
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

Collegare i blocchi

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

Modifica dei parametri

get_paramOttenere i nomi e i valori dei parametri
set_paramImpostare il valore del parametro di Simulink
add_paramAdd parameter to Simulink model
delete_paramDelete model parameter added with add_param function
docblockGet or set editor invoked by Simulink DocBlock block

Configurazione del layout del modello

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

Raggruppamento di elementi del modello in sottosistemi

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

Utilizzo dei template del modello

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

Esportazione di modelli

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

Stampa dei modelli

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

Oggetti

ModelFinderFilterModel Finder search filter (Da R2025a)
Simulink.AnnotationCreare e specificare le proprietà di testo, immagine e annotazioni di area

Argomenti

Specifica degli oggetti da modificare in modo programmatico

Creazione di modelli

Formato dei modelli

Condivisione dei modelli