Main Content

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

Unit Delay

Ritardare il segnale di un periodo di campionamento

  • Unit Delay block

Librerie:
Simulink / Discrete
HDL Coder / Discrete

Descrizione

Il blocco Unit Delay trattiene e ritarda il proprio input per il periodo di campionamento specificato. Quando è inserito in un sottosistema iteratore, trattiene e ritarda il proprio input di un'iterazione. Questo blocco è equivalente all'operatore a tempo discreto z-1. Il blocco accetta un input e genera un output. Ciascun segnale può essere scalare o vettoriale. Se l'input è un vettore, il blocco trattiene e ritarda tutti gli elementi del vettore per lo stesso periodo del tempo di campionamento.

L'output del blocco per il primo periodo di campionamento si specifica con il parametro Initial conditions. Un'attenta selezione di questo parametro può minimizzare il comportamento indesiderato dell'output. Il tempo tra i campionamenti si specifica con il parametro Sample time. Un'impostazione di -1 indica che il blocco eredita il Sample time.

Nota

Il blocco Unit Delay genera un errore se lo si utilizza per creare una transizione tra blocchi che utilizzano frequenze di campionamento diverse. Utilizzare invece il blocco Rate Transition.

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.

BloccoScopo del bloccoEsempi di riferimento
Unit DelayImplementare un ritardo utilizzando un tempo di campionamento discreto specificato dall'utente. Il blocco accetta e genera segnali con un tempo di campionamento discreto.
MemoryImplementare 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 HoldConvertire 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àMemoriaRitardo di unitàMantenimento di ordine zero
Specifica della condizione inizialeNo, perché l'output del blocco al tempo t = 0 deve corrispondere al valore di input.
Specifica del tempo di campionamentoNo, perché il blocco può ereditare il tempo di campionamento solo dal blocco di comando o dal risolutore utilizzato per l'intero modello.
Supporto per segnali basati su frameNo
Supporto per la registrazione dello statoNoNo

Supporto per la stringa

Il blocco Unit Delay può accettare e generare un tipo di dati stringa solo se il blocco è configurato per il valore predefinito del parametro Initial condition (0).

Porte

Input

espandi tutto

Segnale di input che il blocco ritarda di un periodo di campionamento.

Tipi di dati: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus | image

Output

espandi tutto

Segnale di output che corrisponde all'input ritardato di un periodo di campionamento.

Tipi di dati: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus | image

Parametri

espandi tutto

Principale

Specificare l'output della simulazione per il primo periodo di campionamento durante il quale l'output del blocco Unit Delay sarebbe altrimenti indefinito.

Utilizzo programmatico

Parametro dei blocchi: InitialCondition
Tipo: vettore di caratteri
Valore: scalare | vettore
Impostazione predefinita: '0'

Specificare se il blocco esegue un'elaborazione basata su campioni o su frame:

  • Columns as channels (frame based): tratta ciascuna colonna dell'input come un canale separato (elaborazione basata su frame).

    Nota

    L'elaborazione basata su frame richiede una licenza DSP System Toolbox™.

    Per ulteriori informazioni, vedere Sample- and Frame-Based Concepts (DSP System Toolbox).

  • Elements as channels (sample based): tratta ciascun elemento dell'input come un canale separato (elaborazione basata su campioni).

Utilizzare Input processing per specificare se il blocco esegue un'elaborazione basata su campioni o su frame. Per ulteriori informazioni su queste due modalità di elaborazione, vedere Sample- and Frame-Based Concepts (DSP System Toolbox).

Utilizzo programmatico

Parametro dei blocchi: InputProcessing
Tipo: vettore di caratteri
Valori: 'Columns as channels (frame based)' | 'Elements as channels (sample based)'
Impostazione predefinita: 'Elements as channels (sample based)'

Inserire l'intervallo discreto tra gli hit del tempo di campionamento o specificare -1 per ereditare il tempo di campionamento.

Vedere anche Specifica del tempo di campionamento.

Utilizzo programmatico

Parametro dei blocchi: SampleTime
Tipo: vettore di caratteri
Value: scalare reale
Impostazione predefinita: '-1'

Attributi dello stato

Utilizzare questo parametro per assegnare un nome univoco allo stato del blocco. L'impostazione predefinita è ' '. Quando questo campo è vuoto, non è assegnato alcun nome. Quando si utilizza questo parametro, tenere presente le seguenti considerazioni:

  • Un identificatore valido inizia con un carattere alfabetico o di sottolineatura, seguito da caratteri alfanumerici o di sottolineatura.

  • Il nome dello stato si applica solo al blocco selezionato.

Questo parametro abilita State name must resolve to Simulink signal object quando si fa clic su Apply.

Per ulteriori informazioni, vedere C Data Code Interface Configuration for Model Interface Elements (Simulink Coder).

Utilizzo programmatico

Parametro dei blocchi: StateName
Tipo: vettore di caratteri
Valore: nome univoco
Impostazione predefinita: ''

Specificare se i nomi dello stato devono essere associati agli oggetti segnale. Se è selezionato, il software genera un errore in fase di esecuzione se si specifica un nome di stato che non corrisponde al nome di un oggetto segnale.

La selezione di questo parametro disabilita il parametro Code generation storage class.

Dipendenze

Abilitato quando si specifica un valore per il parametro State name e si imposta il parametro di configurazione del modello Signal resolution su un valore diverso da None.

Utilizzo programmatico

Parametro dei blocchi: StateMustResolveToSignalObject
Tipo: vettore di caratteri
Valori: 'off' | 'on'
Impostazione predefinita: 'off'

Caratteristiche del blocco

Tipi di dati:

Boolean | bus | double | enumerated | fixed point | half | image | integer | single | string

Passaggio diretto

noa

Segnali multidimensionali

Segnali di dimensioni variabili

Rilevamento zero-crossing

no

a 

Funzionalità estese

Generazione di codice PLC
Genera codice di testo strutturato con Simulink® PLC Coder™.

Conversione a virgola fissa
Progetta e simula sistemi a virgola fissa con Fixed-Point Designer™.

Cronologia versioni

Introduzione prima di R2006a