Zero-Order Hold
Implementare un periodo di campionamento di mantenimento di ordine zero
Librerie:
Simulink /
Discrete
HDL Coder /
Discrete
Descrizione
Il blocco Zero-Order Hold mantiene il proprio input per il periodo di campionamento specificato. Se l'input è un vettore, il blocco trattiene tutti gli elementi del vettore per lo stesso periodo del tempo di campionamento.
Il tempo tra i campionamenti si specifica con il parametro Sample time. Un'impostazione di -1
indica che il blocco eredita il Sample time.
Suggerimento
Non utilizzare il blocco Zero-Order Hold per creare una transizione da veloce a lenta tra blocchi che operano a frequenze di campionamento diverse. Utilizzare invece il blocco Rate Transition.
Supporto per il bus
Il blocco Zero-Order Hold è un blocco compatibile con il bus. L'input può essere un segnale bus virtuale o non virtuale. Non esistono restrizioni specifiche per il blocco. Tutti i segnali in un bus non virtuale di input a un blocco Zero-Order Hold devono avere lo stesso tempo di campionamento, anche se gli elementi dell'oggetto bus associato specificano tempi di campionamento ereditati. È possibile utilizzare un blocco Rate Transition per modificare il tempo di campionamento di un singolo segnale o di tutti i segnali di un bus. Per ulteriori informazioni, vedere Modify Sample Times for Nonvirtual Buses e Bus-Capable Blocks.
È possibile utilizzare un array di bus come segnale di input per un blocco Zero-Order Hold. Per ulteriori dettagli sulla definizione e l'utilizzo di un array di bus, vedere Group Nonvirtual Buses in Arrays of Buses.
Confronto con blocchi simili
I blocchi Memory, Unit Delay e Zero-Order Hold presentano funzionalità simili, ma con capacità diverse. Inoltre, anche lo scopo di ciascun blocco è diverso.
La tabella mostra l'utilizzo consigliato per ciascun blocco.
Blocco | Scopo del blocco | Esempi di riferimento |
---|---|---|
Unit Delay | Implementare un ritardo utilizzando un tempo di campionamento discreto specificato dall'utente. Il blocco accetta e genera segnali con un tempo di campionamento discreto. |
|
Memory | Implementare un ritardo di un passo temporale di integrazione principale. Idealmente, il blocco accetta segnali continui (o fissi con passo temporale minore) e genera un segnale fisso con passo temporale minore. |
|
Zero-Order Hold | Convertire un segnale di input con tempo di campionamento continuo in un segnale di output con tempo di campionamento discreto. |
Ciascun blocco ha le seguenti funzionalità.
Capacità | Memoria | Ritardo di unità | Mantenimento di ordine zero |
---|---|---|---|
Specifica della condizione iniziale | Sì | Sì | No, perché l'output del blocco al tempo t = 0 deve corrispondere al valore di input. |
Specifica del tempo di campionamento | No, perché il blocco può ereditare il tempo di campionamento solo dal blocco di comando o dal risolutore utilizzato per l'intero modello. | Sì | Sì |
Supporto per segnali basati su frame | No | Sì | Sì |
Supporto per la registrazione dello stato | No | Sì | No |
Esempi
Porte
Input
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