Creare un modello semplice
È possibile usare Simulink® per modellare un sistema e poi simularne il comportamento dinamico. Le tecniche di base utilizzate in questo tutorial per creare un modello semplice sono le stesse che si usano per i modelli più complessi. Questo esempio simula il movimento semplificato di un'automobile. Di solito un'automobile è in movimento fintanto che viene premuto il pedale dell'acceleratore. Dopo che il pedale viene rilasciato, l'auto rallenta e si ferma.
Un blocco Simulink è l'elemento del modello che definisce una relazione matematica tra i suoi input e output. Per creare questo semplice modello, sono necessari quattro blocchi Simulink.
Nome del blocco | Scopo del blocco | Scopo del modello |
---|---|---|
Pulse Generator | Generare un segnale di input per il modello | Rappresentare il pedale dell'acceleratore |
Gain | Moltiplicare il segnale di input per un valore costante | Calcolare in che modo la pressione sull'acceleratore influisce sull'accelerazione dell'auto |
Second-Order Integrator | Integrare due volte il segnale di input | Ottenere la posizione dall'accelerazione |
Outport | Designare un segnale come output del modello | Designare la posizione come output del modello |
La simulazione di questo modello integra due volte un breve impulso per ricreare una rampa. I risultati vengono visualizzati in una finestra Scope. L'impulso di input rappresenta una pressione del pedale dell'acceleratore: 1 quando il pedale viene premuto e 0 quando non lo è. La rampa di output rappresenta la distanza crescente dal punto di partenza.
Aprire un nuovo modello
Utilizzare l'editor di Simulink per costruire i propri modelli.
Avviare MATLAB®. Dalla barra degli strumenti di MATLAB, fare clic su Simulink .
Fare clic sul modello Blank Model.
Si apre l'editor di Simulink.
Per evitare l'ombra, l'Editor di Simulink controlla i modelli e i file caricati sul percorso e crea un modello con il nome successivo disponibile
untitled
,untitled1
,untitled2
e così via.Dalla scheda Simulation, selezionare Save > Save as. Nella casella di testo File name, inserire un nome per il modello. Ad esempio,
simple_model
. Fare clic su Save. Il modello viene salvato con l'estensione del file.slx
.
Aprire il browser delle librerie di Simulink
Simulink fornisce un insieme di librerie di blocchi, organizzate per funzionalità nel browser delle librerie. Le librerie seguenti si trovano nella maggior parte dei workflow:
Continui: blocchi di sistemi con stati continui
Discreti: blocchi di sistemi con stati discreti
Operazioni matematiche: blocchi che implementano equazioni algebriche e logiche
Sink: blocchi che memorizzano e mostrano i segnali che si collegano a loro
Sorgenti: blocchi che generano i valori dei segnali che guidano il modello
Per aprire il browser delle librerie, sulla barra degli strumenti di Simulink, nella scheda Simulation, fare clic su Library Browser.
Per sfogliare le librerie di blocchi, nella struttura ad albero delle librerie, espandere una categoria e poi un'area funzionale.
Per cercare tutte le librerie dii blocchi disponibili, inserire un termine di ricerca.
Ad esempio, trovare il blocco Pulse Generator. Nella finestra di ricerca, inserire pulse
, quindi premere Invio. Il software cerca nelle librerie i blocchi con pulse
nel nome o nella descrizione e poi li mostra nella scheda Search Results del browser delle librerie.
Suggerimento
È possibile ritornare a sfogliare la struttura ad albero delle librerie facendo clic su Library Tab.
Ottenere informazioni dettagliate su un blocco. Nella scheda Search Results, fare clic con il tasto destro del mouse sul blocco Pulse Generator e selezionare Help for the Pulse Generator block. Si apre il browser della Guida e viene visualizzata la pagina relativa al blocco.
Solitamente i blocchi contengono numerosi parametri. È possibile accedere a tutti i parametri di un blocco facendoci doppio clic con il mouse.
Aggiungere blocchi a un modello
Per iniziare a costruire il modello, sfogliare la libreria e aggiungere i blocchi.
Dalla libreria
Sources
, trascinare il blocco Pulse Generator nell'editor di Simulink. Nel proprio modello compare una copia del blocco Pulse Generator con una casella di testo del valore del parametro di Amplitude. Inserire1
.I valori dei parametri vengono mantenuti durante tutta la simulazione.
Aggiungere questi blocchi al modello utilizzando lo stesso approccio.
Blocco Libreria Parametro Gain Simulink/Math Operations
Gain:
2
Second-Order Integrator Simulink/Continuous
Condizione iniziale:
0
Outport Simulink/Sinks
Numero di porta:
1
Aggiungere un secondo blocco Outport copiando quello esistente e incollandolo in un altro punto usando i tasti di scelta rapida.
Ora il modello possiede tutti i blocchi necessari.
Disporre i blocchi facendo clic su ogni blocco e trascinandolo. Per ridimensionare un blocco, trascinarne un angolo.
Collegare i blocchi
Collegare i blocchi creando delle linee tra le porte di output e quelle di input.
Fare clic sulla porta di output a destra del blocco Pulse Generator.
La porta di output e tutte le porte di input che possono essere collegate sono indicate dal simbolo di una freccia blu .
Puntare su per visualizzare la spunta del collegamento.
Fare clic sulla spunta per collegare i blocchi con una linea e una freccia che indica la direzione del flusso del segnale.
Collegare la porta di output del Gain block alla porta di input del blocco Second-Order Integrator.
Collegare i due output del blocco Second-Order Integrator ai due blocchi Outport.
Salvare il modello. Nella scheda Simulation, fare clic su Save.
Aggiungere lo strumento di Visualizzazione dei segnali
Per visualizzare i risultati della simulazione, collegare il primo output a uno strumento di Signal Viewer.
Fare clic sul segnale. Nella scheda Simulation sotto Prepare, fare clic su Add Viewer. Selezionare Scope. Compare l'icona dello strumento di visualizzazione sul segnale e si apre una finestra Scope.
È possibile aprire Scope in qualsiasi momento facendo doppio clic sull'icona relativa.
Eseguire una simulazione
Specificare il tempo di arresto della simulazione. Quindi, simulare il modello.
Nella scheda Simulation, impostare il tempo di arresto della simulazione. Sulla barra degli strumenti di Simulink, nella scheda Simulation, inserire il valore nel campo Stop Time.
Il tempo di arresto predefinito di
10.0
è appropriato per questo modello. Questo valore di tempo non ha unità. L'unità di tempo in Simulink dipende da come sono costruite le equazioni. Questo esempio simula il movimento semplificato di un'automobile per 10 secondi. Altri modelli potrebbero avere unità di tempo di millisecondi o di anni.Per eseguire la simulazione, fare clic su Run .
La simulazione viene eseguita e produce l'output nello strumento di visualizzazione dello scope.
Perfezionare il modello
Modificare i parametri dei blocchi
Questo esempio prende un modello esistente, moving_car.slx
, e modella un sensore di prossimità basato su questo modello di movimento.
In questo scenario, un sensore digitale misura la distanza tra l'automobile e un ostacolo a 10 m di distanza. Il modello emette la misura del sensore e la posizione dell'automobile, prendendo in considerazione queste condizioni:
L'automobile si ferma bruscamente quando raggiunge l'ostacolo.
Nel mondo fisico, un sensore misura la distanza in modo impreciso, causando errori numerici casuali.
Un sensore digitale funziona a intervalli di tempo fissi.
Per iniziare, aprire il modello moving_car
. Alla riga di comando MATLAB, inserire:
open_system('moving_car.slx');
È necessario innanzitutto modellare l'arresto brusco quando l'automobile raggiunge la posizione 10
. Il blocco Integrator, Second-Order possiede un parametro apposito.
Fare doppio clic sul blocco Integrator, Second-Order. Appare la finestra di dialogo Parametri dei blocchi.
Selezionare Limite x e inserire
10
per Limite superiore x. Il colore di sfondo del parametro cambia per indicare una modifica che non viene applicata al modello. Fare clic su OK per applicare le modifiche e chiudere la finestra di dialogo.
Aggiungere nuovi blocchi e collegamenti
Aggiungere un sensore che misura la distanza dall'ostacolo.
Modificare il modello. Se necessario, espandere la finestra per inserire i nuovi blocchi.
Trovare la distanza effettiva. Per trovare la distanza tra la posizione dell'ostacolo e la posizione del veicolo, aggiungere il blocco Subtract della libreria
Math Operations
. Aggiungere anche il blocco Constant della libreriaSources
per impostare il valore costante di10
per la posizione dell'ostacolo.Modellare la misurazione imperfetta che è tipica di un sensore reale. Generare un rumore usando il blocco Band-Limited White Noise della libreria
Sources
. Impostare il parametro Noise power su0.001
. Aggiungere il rumore alla misurazione utilizzando un blocco Add della libreriaMath Operations
.Modellare un sensore digitale che si attiva ogni 0,1 secondi. In Simulink, il campionamento di un segnale a un dato intervallo richiede un sample and hold. Aggiungere il blocco Zero-Order Hold della libreria
Discrete
. Dopo aver aggiunto il blocco al modello, modificare il parametro Sample Time a0.1
.Aggiungere un'altra Outport da collegare all'output del sensore. Mantenere il valore predefinito del parametro Port number.
Collegare i nuovi blocchi. L'output del blocco Second-Order Integrator è già collegato a un'altra porta. Per creare una diramazione in quel segnale, fare clic con il tasto sinistro del mouse sul segnale per evidenziare le potenziali porte di collegamento e fare clic sulla porta appropriata.
Annotare i segnali
Aggiungere i nomi dei segnali al modello.
Fare doppio clic sul segnale e digitare il nome del segnale.
Per terminare, fare clic al di fuori della casella di testo.
Ripetere questi passaggi per aggiungere i nomi come illustrato.
Confrontare segnali multipli
Confrontare il segnale actual distance
con il segnale measured distance
.
Creare e collegare un Scope Viewer al segnale
actual distance
. Fare clic con il tasto destro del mouse sul segnale e selezionare Create & Connect Viewer > Simulink > Scope. Il nome del segnale compare nel titolo dello strumento di visualizzazione.Aggiungere il segnale
measured distance
allo stesso strumento di visualizzazione. Fare clic con il tasto destro del mouse sul segnale e selezionare Connect to Viewer > Scope1. Assicurarsi di essere collegati allo strumento di visualizzazione che è stato creato nel passaggio precedente.Simulare il modello. Lo strumento di visualizzazione dello scope mostra i due segnali,
actual distance
in giallo emeasured distance
in blu.Ingrandire il grafico per osservare l'effetto del rumore e del campionamento. Fare clic su Zoom. Fare clic con il tasto sinistro del mouse e trascinare un riquadro intorno all'area che si desidera osservare più da vicino.
In base alle esigenze, è ripetere l'operazione per osservare i dettagli.
Il grafico mostra che la misurazione può discostarsi dal valore effettivo fino a 0,3 m. Queste informazioni sono utili quando si progettano feature per la sicurezza, ad esempio un allarme anticollisione.
Vedi anche
Blocchi
- Pulse Generator | Gain | Second-Order Integrator | Add | Constant | Zero-Order Hold | Band-Limited White Noise