S-Function - Stadi di simulazione e routine di S-function
Durante l’esecuzione di un modello Simulink effettua chiamate successive ai singoli blocchi, e quindi anche alle S-Function, onde effettuare su essi specifiche operazioni relative allo stadio attuale in cui si trova la computazione, es. inizializzazione del blocco, definizione dei parametri, calcolo delle uscite e così via. La successione di questi stadi può essere visualizzata con il presente diagramma di flusso:

Figura 2: Come Simulink esegue la simulazione
L’esecuzione di questi passi è realizzata mediante routine che eseguono il loro compito durante ciascun passo.Queste azioni si possono classificare come:
- Inizializzazione – Durante questo stadio Simulink:
- Inizializza SimStruct, una struttura che contiene informazioni sulla S-Function;
- Definisce numero e dimensione delle porte di ingresso e di uscita;
- Definisce gli istanti di campionamento;
- Predispone aree di memorizzazione e l’array size.
- Calcolo del prossimo istante di campionamento – Se si sta utilizzando un passo variabile si effettua il calcolo del successivo istante di campionamento.
- Calcolo dell’uscita nell’istante di campionamento principale – Al completamento di questa fase le uscite del blocco saranno disponibili nell’istante di tempo attuale.
- Aggiornamento degli stati discreti nell’intervallo principale – Ciascun blocco esegue l’aggiornamento degli stati discreti per il prossimo istante.
- Integrazione – Questa si applica a modelli con stati continui e/o attraversamenti dello zero non campionati. Se la S-Function lavora con stati continui il calcolo delle uscite e delle derivate della S-Function avviene nell’istante di tempo secondario. Se la S-Function ha attraversamenti dello zero non campionati, Simulink calcola le uscite e gli attraversamenti dello zero nell’istante secondario.
Ultima modifica: October 07 2007 06:06:11
| Vota il contenuto di questa pagina (non verrà aperta nessuna pagina) |
