Saturation
Limitare il segnale di input ai valori di saturazione superiore e inferiore
Librerie:
Simulink /
Commonly Used Blocks
Simulink /
Discontinuities
HDL Coder /
Discontinuities
Descrizione
Il blocco Saturation produce un segnale di output che è il valore del segnale di input delimitato dai valori di saturazione superiore e inferiore. I limiti superiore e inferiore sono specificati dai parametri Upper limit e Lower limit.
Input | Output |
---|---|
Limite inferiore ≤ Valore di input ≤ Limite superiore | Valore di input |
Valore di input < Limite inferiore | Limite inferiore |
Valore di input > Limite superiore | Limite superiore |
Esempi
Utilizzo dei blocchi Quantizer e Saturation in sldemo_boiler
Questo esempio mostra come vengono utilizzati i blocchi Quantizer e Saturation nel modello ex_sldemo_boiler. Il sottosistema ADC digitalizza la tensione analogica in input:
Moltiplicando la tensione analogica per 256/5 con il blocco Gain
Arrotondando il valore al piano del numero intero con il blocco Quantizer
Limitando l'output a un massimo di 255 (il più grande valore intero a 8 bit senza segno) con il blocco Saturation
Porte
Input
Port_1 — Segnale di input
scalare | vettore
Il segnale di input per l'algoritmo di saturazione.
Tipi di dati: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
Output
Port_1 — Segnale di output
scalare | vettore
Segnale di output che corrisponde al valore del segnale di input, al limite superiore di saturazione o al limite inferiore di saturazione.
Tipi di dati: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
Parametri
Principale
Limite superiore — Limite superiore di saturazione per il segnale di input
0.5
(predefinito) | scalare | vettore
Specificare il limite superiore del segnale di input. Se il segnale di input è maggiore di questo limite, il segnale di output viene impostato su questo valore di saturazione. Il parametro Upper limit viene convertito sul tipo di dati di output utilizzando l'arrotondamento al valore più vicino e la saturazione. Upper limit deve essere maggiore del parametro Output minimum e minore del parametro Output maximum.
Utilizzo programmatico
Parametro dei blocchi: UpperLimit |
Tipo: vettore di caratteri |
Valore: scalare o vettore reale |
Impostazione predefinita: '0.5' |
Limite inferiore — Limite di saturazione inferiore per il segnale di input
-0.5
(predefinito) | scalare | vettore
Specificare il limite inferiore del segnale di input. Se il segnale di input è inferiore a questo limite, il segnale di output viene impostato su questo valore di saturazione. Il parametro Lower limit viene convertito sul tipo di dati di output utilizzando l'arrotondamento al valore più vicino e la saturazione. Lower limit deve essere maggiore del parametro Output minimum e minore del parametro Output maximum.
Utilizzo programmatico
Parametro dei blocchi: LowerLimit |
Tipo: vettore di caratteri |
Valore: scalare o vettore reale |
Impostazione predefinita: '-0.5' |
Trattare come gain quando si linearizza — Specificare il valore di gain
On
(predefinito) | Booleano
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' |
Abilitare il rilevamento dello zero-crossing — Abilitare il rilevamento dello zero-crossing
on
(predefinito) | off
Selezionare per abilitare il rilevamento dello zero-crossing. Per ulteriori informazioni, vedere Zero-Crossing Detection.
Utilizzo programmatico
Parametro dei blocchi: ZeroCross |
Tipo: vettore di caratteri | stringa |
Valori: 'off' | 'on' |
Impostazione predefinita: 'on' |
Tempo di campionamento (-1 per ereditato) — Intervallo tra i campionamenti
-1
(predefinito) | scalare | vettore
Specificare l'intervallo di tempo tra i campionamenti. Per ereditare il tempo di campionamento, impostare questo parametro su -1
. Per ulteriori informazioni, vedere Specifica del tempo di campionamento.
Dipendenze
Questo parametro è visibile solo se è stato impostato su un valore diverso da -1
. Per saperne di più, vedere Blocks for Which Sample Time Is Not Recommended.
Utilizzo programmatico
Parametro dei blocchi: SampleTime |
Tipo: scalare di stringhe o vettore di caratteri |
Impostazione predefinita: "-1" |
Attributi del segnale
Data Type Assistant aiuta a impostare gli attributi dei dati. Per utilizzare Data Type Assistant, fare clic su . Per ulteriori informazioni, vedere Specify Data Types Using Data Type Assistant.
Output minimo — Valore di output minimo per il controllo dell'intervallo
[]
(predefinito) | scalare
Valore inferiore dell'intervallo di output che Simulink controlla.
Simulink utilizza il minimo per eseguire:
Il controllo dell'intervallo dei parametri (vedere Specify Minimum and Maximum Values for Block Parameters) per alcuni blocchi.
Il controllo dell'intervallo di simulazione (vedere Specify Signal Ranges e Enable Simulation Range Checking).
La scalatura automatica dei tipi di dati in virgola fissa.
L'ottimizzazione del codice generato dal modello. Questa ottimizzazione può rimuovere il codice algoritmico e influenzare i risultati di alcune modalità di simulazione, come la modalità SIL o la modalità esterna. Per ulteriori informazioni, vedere Optimize using the specified minimum and maximum values (Embedded Coder).
Nota
Output minimum non satura e non taglia il segnale di output effettivo. Utilizzare invece il blocco Saturation.
Utilizzo programmatico
Parametro dei blocchi: OutMin |
Tipo: vettore di caratteri |
Valori: '[ ]' | scalari |
Impostazione predefinita: '[ ]' |
Output massimo — Valore di output massimo per il controllo dell'intervallo
[]
(predefinito) | scalare
Valore superiore dell'intervallo di output che Simulink controlla.
Simulink utilizza il valore massimo per eseguire:
Il controllo dell'intervallo dei parametri (vedere Specify Minimum and Maximum Values for Block Parameters) per alcuni blocchi.
Il controllo dell'intervallo di simulazione (vedere Specify Signal Ranges e Enable Simulation Range Checking).
La scalatura automatica dei tipi di dati in virgola fissa.
L'ottimizzazione del codice generato dal modello. Questa ottimizzazione può rimuovere il codice algoritmico e influenzare i risultati di alcune modalità di simulazione, come la modalità SIL o la modalità esterna. Per ulteriori informazioni, vedere Optimize using the specified minimum and maximum values (Embedded Coder).
Nota
Output maximum non satura e non taglia il segnale di output effettivo. Utilizzare invece il blocco Saturation.
Utilizzo programmatico
Parametro dei blocchi: OutMax |
Tipo: vettore di caratteri |
Valori: '[ ]' | scalari |
Impostazione predefinita: '[ ]' |
Tipo di dati di output — Specificare il tipo di dati di output
Inherit: Same as input
(predefinito) | Inherit: Inherit via back propagation
| double
| single
| int8
| int32
| uint32
| int64
| uint64
| fixdt(1,16,2^0,0)
| <data type expression>
| ...
Scegliere il tipo di dati per l'output. Il tipo può essere ereditato, specificato direttamente o espresso come oggetto del tipo di dati, come Simulink.NumericType
. Per ulteriori informazioni, vedere Control Data Types of Signals.
Utilizzo programmatico
Parametro dei blocchi: OutDataTypeStr |
Tipo: vettore di caratteri |
Valori: 'Inherit: Same as input' , 'Inherit: Inherit via back propagation' , 'single' , 'int8' , 'uint8' , int16 , 'uint16' , 'int32' , 'uint32' , 'int64' , 'uint64' , fixdt(1,16,0) , fixdt(1,16,2^0,0) , fixdt(1,16,2^0,0) . '<data type expression>' |
Impostazione predefinita: 'Inherit: Same as input' |
Bloccare l'impostazione del tipo di dati di output rispetto alle modifiche apportate dagli strumenti in virgola fissa — Opzione per impedire agli strumenti in virgola fissa di sovrascrivere il tipo di dati di output
off
(predefinito) | on
Selezionare questo parametro per evitare che gli strumenti in virgola fissa sovrascrivano il tipo di dati di Output specificato nel blocco. Per ulteriori informazioni, vedere Use Lock Output Data Type Setting (Fixed-Point Designer).
Utilizzo programmatico
Parametro dei blocchi: LockScale |
Tipo: vettore di caratteri |
Valori: 'off' | 'on' |
Impostazione predefinita: 'off' |
Metodo di arrotondamento dei numeri interi — Specificare il metodo di arrotondamento per le operazioni in virgola fissa
Floor
(predefinito) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
Scegliere uno dei seguenti metodi di arrotondamento.
Ceiling
Arrotonda i numeri positivi e negativi verso l'infinito positivo. Equivale alla funzione MATLAB®
ceil
.Convergent
Arrotonda il numero al valore rappresentabile più vicino. In caso di parità, arrotonda al numero intero pari più vicino. Equivale alla funzione Fixed-Point Designer™
convergent
.Floor
Arrotonda i numeri positivi e negativi verso l'infinito negativo. Equivale alla funzione MATLAB
floor
.Nearest
Arrotonda il numero al valore rappresentabile più vicino. In caso di parità, arrotonda verso l'infinito positivo. Equivale alla funzione Fixed-Point Designer
nearest
.Round
Arrotonda il numero al valore rappresentabile più vicino. In caso di parità, arrotonda i numeri positivi verso l'infinito positivo e i numeri negativi verso l'infinito negativo. Equivale alla funzione Fixed-Point Designer
round
.Simplest
Sceglie automaticamente tra l'arrotondamento per difetto e l'arrotondamento verso lo zero per generare un codice di arrotondamento il più efficiente possibile.
Zero
Arrotonda il numero verso lo zero. Equivale alla funzione MATLAB
fix
.
Utilizzo programmatico
Parametro dei blocchi: RndMeth |
Tipo: vettore di caratteri |
Valori: 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
Impostazione predefinita: 'Floor' |
Vedere anche
Per ulteriori informazioni, vedere Rounding (Fixed-Point Designer).
Caratteristiche del blocco
Tipi di dati: |
|
Passaggio diretto |
|
Segnali multidimensionali |
|
Segnali di dimensioni variabili |
|
Rilevamento zero-crossing |
|
Funzionalità estese
Generazione di codice C/C++
Genera codice C e C++ con Simulink® Coder™.
Generazione di codice HDL
Genera codice VHDL, Verilog e SystemVerilog per progetti FPGA e ASIC utilizzando HDL Coder™.
HDL Coder™ fornisce ulteriori opzioni di configurazione che influiscono sull'implementazione HDL e sulla logica sintetizzata.
Questo blocco ha un'architettura HDL predefinita.
ConstrainedOutputPipeline | Numero di registri da posizionare sugli output spostando i ritardi esistenti nel progetto. La pipeline distribuita non ridistribuisce questi registri. L'impostazione predefinita è |
InputPipeline | Numero di stadi della pipeline di input da inserire nel codice generato. La pipeline distribuita e la pipeline vincolata in output possono spostare questi registri. L'impostazione predefinita è |
OutputPipeline | Numero di stadi della pipeline di output da inserire nel codice generato. La pipeline distribuita e la pipeline vincolata in output possono spostare questi registri. L'impostazione predefinita è |
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
Vedi anche
Comando MATLAB
Hai fatto clic su un collegamento che corrisponde a questo comando MATLAB:
Esegui il comando inserendolo nella finestra di comando MATLAB. I browser web non supportano i comandi MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)