Contenu principal

Saturation

Limiter le signal d’entrée aux valeurs de saturation supérieure et inférieure

  • Saturation block

Bibliothèques :
Simulink / Commonly Used Blocks
Simulink / Discontinuities
HDL Coder / Discontinuities

Description

Le bloc Saturation produit un signal de sortie qui correspond à la valeur du signal d’entrée limité aux valeurs de saturation supérieure et inférieure. Les limites supérieure et inférieure sont spécifiées par les paramètres Upper limit et Lower limit.

Entrée(s)Sortie(s)
Limite inférieure ≤ valeur d’entrée ≤ limite supérieureValeur d’entrée
Valeur d’entrée < limite inférieureLimite inférieure
Valeur d’entrée > limite supérieureLimite supérieure

Exemples

développer tout

Cet exemple montre comment les blocs Quantizer et Saturation sont utilisés dans le modèle ex_sldemo_boiler. Le sous-système ADC numérise la tension analogique d’entrée en :

  • Multipliant la tension analogique par 256/5 avec le bloc Gain

  • Arrondissant la valeur à l’entier inférieur avec le bloc Quantizer

  • Limitant la sortie à un maximum de 255 (la plus grande valeur entière sur 8 bits non signée) avec le bloc Saturation

Exemples étendus

Ports

Entrée(s)

développer tout

Signal d’entrée de l’algorithme de limitation de saturation.

Types de données : double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Sortie(s)

développer tout

Signal de sortie qui est la valeur du signal d’entrée, la limite supérieure de saturation ou la limite inférieure de saturation.

Types de données : double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Paramètres

développer tout

Paramètres principaux

Spécifiez la limite supérieure du signal d’entrée. Si le signal d’entrée est supérieur à cette limite, le signal de sortie est réglé sur cette valeur de saturation. Le paramètre Upper limit est converti en type de données de sortie à l’aide des méthodes d’arrondi au plus proche et de saturation. La valeur du paramètre Upper limit doit être supérieure à celle du paramètre Output minimum et inférieure à celle du paramètre Output maximum.

Utilisation programmatique

Paramètre de bloc : UpperLimit
Type : vecteur de caractères
Valeur : scalaire réel ou vecteur
Par défaut : '0.5'

Spécifiez la limite inférieure du signal d’entrée. Si le signal d’entrée est inférieur à cette limite, le signal de sortie est réglé sur cette valeur de saturation. Le paramètre Lower limit est converti en type de données de sortie à l’aide des méthodes d’arrondi au plus proche et de saturation. La valeur du paramètre Lower limit doit être supérieure à celle du paramètre Output minimum et inférieure à celle du paramètre Output maximum.

Utilisation programmatique

Paramètre de bloc : LowerLimit
Type : vecteur de caractères
Valeur : scalaire réel ou vecteur
Par défaut : '-0.5'

Sélectionnez ce paramètre pour que les commandes traitent le gain comme égal à 1. Les commandes de linéarisation de Simulink® traitent ce bloc comme un gain dans la représentation d’état. Désélectionnez ce paramètre pour que les commandes traitent le gain comme égal à 0.

Utilisation programmatique

Paramètre de bloc : LinearizeAsGain
Type : vecteur de caractères
Valeurs : 'off' | 'on'
Par défaut : 'on'

Sélectionnez pour activer la détection des passages par zéro. Pour plus d’informations, consultez Zero-Crossing Detection.

Utilisation programmatique

Paramètre de bloc : ZeroCross
Type : vecteur de caractères | chaîne de caractères
Valeurs : 'off' | 'on'
Par défaut : 'on'

Spécifiez l’intervalle de temps entre échantillons. Pour hériter du pas d’échantillonnage, définissez ce paramètre sur -1. Pour plus d’informations, consultez Spécifier les pas d'échantillonnage.

Dépendances

Ce paramètre n’est visible que si vous le définissez sur une valeur différente de -1. Pour en savoir plus, consultez la rubrique Blocks for Which Sample Time Is Not Recommended.

Utilisation programmatique

Pour définir la valeur du paramètre du bloc de manière programmatique, utilisez la fonction set_param.

Paramètre : SampleTime
Valeurs : "-1" (par défaut) | scalar or vector in quotes

Signal Attributes

Data Type Assistant vous aide à définir les attributs de données. Pour utiliser Data Type Assistant, cliquez sur the Show data type assistant button. Pour plus d’informations, consultez Specify Data Types Using Data Type Assistant.

Valeur inférieure de la plage de sortie vérifiée par le logiciel.

Le logiciel utilise la valeur minimale pour effectuer les opérations suivantes :

Conseils

La valeur Output minimum ne sature pas et ne coupe pas le signal de sortie réel. Utilisez le bloc Saturation à la place.

Utilisation programmatique

Pour définir la valeur du paramètre du bloc de manière programmatique, utilisez la fonction set_param.

Paramètre : OutMin
Valeurs : '[]' (par défaut) | scalar in quotes

Valeur supérieure de la plage de sortie vérifiée par le logiciel.

Le logiciel utilise la valeur maximale pour effectuer les opérations suivantes :

Conseils

La valeur Output Maximum ne sature pas et ne coupe pas le signal de sortie réel. Utilisez le bloc Saturation à la place.

Utilisation programmatique

Pour définir la valeur du paramètre du bloc de manière programmatique, utilisez la fonction set_param.

Paramètre : OutMax
Valeurs : '[]' (par défaut) | scalar in quotes

Spécifiez le type de données de la sortie. Le type peut être hérité, spécifié directement ou exprimé comme un objet de type de données tel qu’un objet Simulink.NumericType. Pour plus d’informations, consultez Control Data Types of Signals.

Utilisation programmatique

Paramètre de bloc : OutDataTypeStr
Type : vecteur de caractères
Valeurs : 'Inherit: Same as input' | 'Inherit: Inherit via back propagation' | 'double' | '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>'
Par défaut : 'Inherit: Same as input'

Sélectionnez ce paramètre pour empêcher les outils à virgule fixe de remplacer le type de données Output que vous spécifiez sur le bloc. Pour plus d’informations, consultez Use Lock Output Data Type Setting (Fixed-Point Designer).

Utilisation programmatique

Pour définir la valeur du paramètre du bloc de manière programmatique, utilisez la fonction set_param.

Paramètre : LockScale
Valeurs : 'off' (par défaut) | 'on'

Choisissez l’un des modes d’arrondi ci-après.

Ceiling

Arrondit les nombres positifs et négatifs à l’infini positif. Équivalent de la fonction ceil de MATLAB®.

Convergent

Arrondit le nombre à la valeur représentable la plus proche. En cas d’égalité, arrondit à l’entier pair le plus proche. Équivalent de la fonction convergent de Fixed-Point Designer™.

Floor

Arrondit les nombres positifs et négatifs à l’infini négatif. Équivalent de la fonction floor de MATLAB.

Nearest

Arrondit le nombre à la valeur représentable la plus proche. En cas d’égalité, arrondit à l’infini positif. Équivalent de la fonction nearest de Fixed-Point Designer.

Round

Arrondit le nombre à la valeur représentable la plus proche. En cas d’égalité, arrondit les nombres positifs à l’infini positif et arrondit les nombres négatifs à l’infini négatif. Équivalent de la fonction round de Fixed-Point Designer.

Simplest

Choisit automatiquement entre l’arrondi à l’entier inférieur ou égal le plus proche et l’arrondi à zéro afin de générer un code d’arrondi aussi efficace que possible.

Zero

Arrondit le nombre à zéro. Équivalent de la fonction fix de MATLAB.

Utilisation programmatique

Paramètre de bloc : RndMeth
Type : vecteur de caractères
Valeurs : 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero'
Par défaut : 'Floor'

Voir aussi

Pour plus d’informations, consulter Rounding Modes (Fixed-Point Designer).

Caractéristiques des blocs

Types de données

double | fixed point | integer | single

Traversée directe

oui

Signaux multidimensionnels

non

Signaux de taille variable

non

Détection des passages à zéro

oui

Capacités étendues

développer tout

Génération de code C/C++
Générez du code C et C++ avec Simulink® Coder™.

Génération de code PLC
Générez du texte structuré avec Simulink® PLC Coder™.

Conversion en virgule fixe
Concevez et simulez des systèmes en virgule fixe avec Fixed-Point Designer™.

Historique des versions

Introduit avant R2006a