Sine Wave
Generare un'onda sinusoidale, utilizzando il tempo di simulazione come sorgente temporale
Librerie:
Simulink /
Sources
Descrizione
Il blocco Sine Wave genera un'onda sinusoidale. Il blocco può funzionare in modalità basata sul tempo o in modalità basata sul campione.
Nota
Questo blocco è identico al blocco Sine Wave Function presente nella libreria Math Operations (Operazioni matematiche). Se si seleziona Use external signal per il parametro Time nella finestra di dialogo del blocco, si ottiene il blocco Sine Wave Function.
Modalità basata sul tempo
Il blocco calcola la forma d'onda dell'output.
Nella modalità basata sul tempo, il valore del parametro Sample time determina se il blocco funziona in modalità continua o discreta.
0(impostazione predefinita) determina il funzionamento del blocco in modalità continua.>0determina il funzionamento del blocco in modalità discreta.
Per ulteriori informazioni, vedere Specifica del tempo di campionamento.
Quando funziona in modalità continua, il blocco Sine Wave può diventare impreciso a causa della perdita di precisione man mano che il tempo aumenta.
Un valore del parametro Sample time maggiore di zero induce il blocco a comportarsi come se pilotasse un blocco Zero-Order Hold il cui tempo di campionamento è impostato su tale valore.
In questo modo, è possibile costruire modelli con sorgenti di onde sinusoidali esclusivamente discrete, anziché modelli che siano sistemi ibridi continui/discreti. I sistemi ibridi sono intrinsecamente più complessi e, di conseguenza, richiedono più tempo per essere simulati.
In modalità discreta, questo blocco utilizza un algoritmo incrementale differenziale anziché un algoritmo basato sul tempo assoluto. Di conseguenza, il blocco può essere utile nei modelli destinati a funzionare per un periodo di tempo indefinito, come nei test di vibrazione o di fatica.
L'algoritmo incrementale differenziale calcola il seno in base al valore calcolato al tempo di campionamento precedente. Questo metodo utilizza le seguenti identità trigonometriche:
In forma matriciale, queste identità sono:
Poiché Δt è costante, la seguente espressione è una costante:
Pertanto, il problema diventa quello di una moltiplicazione matriciale del valore di per una matrice costante in modo da ottenere .
La modalità discreta riduce, ma non elimina, l'accumulo di errori di arrotondamento. Questo accumulo può verificarsi perché il calcolo dell'output del blocco in ogni passo temporale dipende dal valore dell'output nel passo temporale precedente.
Per gestire gli errori di arrotondamento quando Sine Wave block funziona in modalità discreta basata sul tempo, utilizzare uno dei seguenti metodi.
| Metodo | Logica |
|---|---|
| Inserire un blocco Saturation direttamente a valle del blocco Sine Wave. | Impostando i limiti di saturazione sull'output del blocco Sine Wave, è possibile rimuovere la sovraelongazione dovuta all'accumulo di errori di arrotondamento. |
| Impostare il blocco Sine Wave in modo da utilizzare la funzione della libreria matematica
| La funzione della libreria matematica |
Modalità basata sul campione
La modalità basata sul campione utilizza questa formula per calcolare l'output del blocco Sine Wave.
A è l'ampiezza dell'onda sinusoidale.
p è il numero di campioni temporali per periodo dell'onda sinusoidale.
k è un valore di numero intero, ripetuto, con un intervallo che va da 0 a p–1.
o è l'offset (spostamento di fase) del segnale.
b è il bias del segnale.
In questa modalità, Simulink® imposta k uguale a 0 al primo passo temporale e calcola l'output del blocco utilizzando la formula. Al passo temporale successivo, Simulink incrementa k e calcola nuovamente l'output del blocco. Quando k raggiunge p, Simulink imposta nuovamente k su 0 prima di calcolare l'output del blocco. Questo processo continua fino alla fine della simulazione.
La modalità basata sul campione per il calcolo dell'output del blocco in un determinato passo temporale non dipende dall'output dei passi temporali precedenti. Pertanto, questa modalità evita l'accumulo di errori di arrotondamento. La modalità basata sul campione supporta la semantica di ripristino nei sottosistemi che la offrono. Ad esempio, se un blocco Sine Wave si trova in un sottosistema ripristinabile che riceve un'attivazione di ripristino, il numero intero ripetuto k viene ripristinato e l'output del blocco viene ripristinato alla condizione iniziale.
Esempi
Porte
Output
Parametri
Caratteristiche del blocco
Tipi di dati: |
|
Passaggio diretto |
|
Segnali multidimensionali |
|
Segnali di dimensioni variabili |
|
Rilevamento zero-crossing |
|
Funzionalità estese
Cronologia versioni
Introduzione prima di R2006a


