Main Content

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

Rate Limiter

Limitare la velocità di variazione del segnale

  • Rate Limiter block

Librerie:
Simulink / Discontinuities

Descrizione

Il blocco Rate Limiter limita la derivata prima del segnale che lo attraversa. L'output non cambia più velocemente del limite specificato. La derivata è calcolata utilizzando questa equazione:

rate=u(i)y(i1)t(i)t(i1)

dove u(i) e t(i) rappresentano l'input e il tempo del blocco corrente e y(i-1) e t(i-1)) rappresentano l'output e il tempo al passaggio precedente. L'output viene determinato confrontando rate con i parametri velocità di rotazione crescente e velocità di rotazione decrescente:

  • Se rate è maggiore del parametro velocità di rotazione crescente (R), l'output è calcolato come

    y(i)=ΔtR+y(i1).

  • Se rate è inferiore al parametro velocità di rotazione decrescente (F), l'output è calcolato come

    y(i)=ΔtF+y(i1).

  • Se rate è compreso tra i limiti di R e F, la variazione dell'output è uguale alla variazione dell'input:

    y(i)=u(i)

Quando il blocco è in esecuzione in modalità continua (ad esempio, Sample time mode è inherited e Sample time del blocco di comando è zero), la Initial condition viene ignorata. L'output del blocco a t = 0 è uguale all'input iniziale:

y(0)=u(0)

Quando il blocco è in esecuzione in modalità discreta (ad esempio, Sample time mode è inherited e Sample time del blocco di comando è zero), la Initial condition viene mantenuta:

y(1)=Ic

dove Ic è la condizione iniziale. L'output del blocco su t = 0 è calcolato come se rate fosse fuori dai limiti di R e F. Per t = 0, rate è calcolata come segue:

rate=u(0)y(1)sampletime

Limitazioni

Porte

Input

espandi tutto

Il segnale di input dell'algoritmo del limitatore di velocità.

Tipi di dati: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Output

espandi tutto

Segnale di output dall'algoritmo del limitatore di velocità.

Tipi di dati: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Parametri

espandi tutto

Specificare il limite della velocità crescente del segnale di input. Questo parametro è sincronizzabile per gli input in virgola fissa.

Utilizzo programmatico

Parametro dei blocchi: RisingSlewLimit
Tipo: vettore di caratteri
Valori: numero reale
Impostazione predefinita: '1'

Specificare il limite inferiore della velocità decrescente del segnale di input. Questo parametro è sincronizzabile per gli input in virgola fissa.

Utilizzo programmatico

Parametro dei blocchi: FallingSlewLimit
Tipo: vettore di caratteri
Valori: numero reale
Impostazione predefinita: '-1'

Specificare la modalità del tempo di campionamento, continuous o inherited dal blocco di comando.

Utilizzo programmatico

Parametro dei blocchi: SampleTimeMode
Tipo: vettore di caratteri
Valori: 'inherited' | 'continuous' |
Impostazione predefinita: 'inherited'

Impostare l'output iniziale della simulazione. Simulink® non consente di impostare la condizione iniziale di questo blocco su inf o NaN.

Utilizzo programmatico

Parametro dei blocchi: InitialCondition
Tipo: vettore di caratteri
Valori: scalar
Impostazione predefinita: '0'

Selezionare questa casella affinché i comandi trattino il gain come 1. I comandi di linearizzazione del software Simulink trattano questo blocco come un gain nello spazio dello stato. Deselezionare questa casella affinché i comandi trattino il gain come 0.

Utilizzo programmatico

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

Caratteristiche del blocco

Tipi di dati:

double | fixed point | integer | single

Passaggio diretto

Segnali multidimensionali

no

Segnali di dimensioni variabili

no

Rilevamento zero-crossing

no

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