Saturation Dynamic
Limiter le signal d’entrée aux valeurs dynamiques supérieure et inférieure de saturation
Bibliothèques :
Simulink /
Discontinuities
HDL Coder /
Discontinuities
Description
Le bloc Saturation Dynamic produit un signal de sortie qui correspond à la valeur du signal d’entrée limité aux valeurs de saturation des ports d’entrée up et lo.
| Entrée | Sortie(s) |
|---|---|
lo ≤ valeur d’entrée ≤ up | Valeur d’entrée |
Valeur d’entrée < lo | Limite inférieure |
Valeur d’entrée > up | Limite supérieure |
Ports
Entrée(s)
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
Valeur dynamique indiquant la limite supérieure de saturation. Lorsque l’entrée est supérieure à up, la valeur de sortie est limitée à up.
Types de données : double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Valeur dynamique indiquant la limite inférieure de saturation. Lorsque l’entrée est inférieure à lo, la valeur de sortie est limitée à lo.
Types de données : double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Sortie(s)
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
Pour modifier les paramètres du bloc Saturation Dynamic, double-cliquez sur l’icône du bloc.
Data Type Assistant vous aide à définir les attributs de données. Pour utiliser Data Type Assistant, cliquez sur
. 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 :
Vérification de la plage de paramètres (consultez Specify Minimum and Maximum Values for Block Parameters) pour certains blocs.
Vérification de la plage de simulation (consultez Specify Signal Ranges et Enable Simulation Range Checking).
Mise à l’échelle automatique des types de données à virgule fixe.
Optimisation du code que vous générez à partir du modèle. Cette optimisation peut supprimer du code algorithmique et avoir une incidence sur les résultats de certains modes de simulation tels que SIL ou le mode externe. Pour plus d’informations, consultez Optimize using the specified minimum and maximum values (Embedded Coder).
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 :
Vérification de la plage de paramètres (consultez Specify Minimum and Maximum Values for Block Parameters) pour certains blocs.
Vérification de la plage de simulation (consultez Specify Signal Ranges et Enable Simulation Range Checking).
Mise à l’échelle automatique des types de données à virgule fixe.
Optimisation du code que vous générez à partir du modèle. Cette optimisation peut supprimer du code algorithmique et avoir une incidence sur les résultats de certains modes de simulation tels que SIL ou le mode externe. Pour plus d’informations, consultez Optimize using the specified minimum and maximum values (Embedded Coder).
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 second input' | 'Inherit: Inherit via back propagation' | 'double' | 'single' | 'int8' | 'uint8' | int16 | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | fixdt(1,16) | fixdt(1,16,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.
CeilingArrondit les nombres positifs et négatifs à l’infini positif. Équivalent de la fonction
ceilde MATLAB®.ConvergentArrondit le nombre à la valeur représentable la plus proche. En cas d’égalité, arrondit à l’entier pair le plus proche. Équivalent de la fonction
convergentde Fixed-Point Designer™.FloorArrondit les nombres positifs et négatifs à l’infini négatif. Équivalent de la fonction
floorde MATLAB.NearestArrondit le nombre à la valeur représentable la plus proche. En cas d’égalité, arrondit à l’infini positif. Équivalent de la fonction
nearestde Fixed-Point Designer.RoundArrondit 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
roundde Fixed-Point Designer.SimplestChoisit 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.
ZeroArrondit le nombre à zéro. Équivalent de la fonction
fixde 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, consultez Rounding Modes (Fixed-Point Designer).
Indiquez si les overflows provoquent une saturation ou un wrap.
on: les overflows saturent jusqu’à la valeur minimale ou maximale que le type de données peut représenter.off: les overflows réintègrent jusqu’à la valeur appropriée que le type de données peut représenter.
Par exemple, la valeur maximale que l’entier signé de 8 bits int8 peut représenter est 127. Tout résultat d’opération de bloc supérieur à cette valeur maximale provoque un overflow de l’entier de 8 bits.
Lorsque ce paramètre est sélectionné, la sortie du bloc sature à 127. De même, la sortie du bloc sature à une valeur de sortie minimale de -128.
Lorsque ce paramètre est désactivé, le logiciel interprète la valeur à l’origine de l’overflow comme un entier
int8, ce qui peut produire un résultat inattendu. Par exemple, un résultat de bloc de 130 (binaire 1000 0010) exprimé commeint8est -126.
Conseils
Envisagez de sélectionner ce paramètre lorsque votre modèle présente un risque d’overflow et que vous souhaitez profiter d’une protection explicite contre la saturation dans le code généré.
Envisagez d’effacer ce paramètre si vous souhaitez optimiser l’efficacité de votre code généré. Effacer ce paramètre vous aide également à éviter de spécifier de manière trop détaillée la façon dont un bloc doit gérer les signaux hors de portée. Pour plus d’informations, consultez Troubleshoot Signal Range Errors.
Lorsque vous sélectionnez ce paramètre, la saturation s’applique à chaque opération interne sur le bloc et pas seulement à la sortie ou au résultat.
En général, le processus de génération de code peut détecter les circonstances dans lesquelles l’overflow n’est pas possible. Lorsque l’overflow n’est pas possible, le générateur de code ne produit pas de code de saturation.
Utilisation programmatique
Paramètre de bloc : DoSatur |
| Type : vecteur de caractères |
Valeurs : 'off' | 'on' |
Par défaut : 'off' |
Caractéristiques des blocs
Capacités étendues
Génération de code C/C++
Générez du code C et C++ avec Simulink® Coder™.
HDL Coder™ fournit des options de configuration supplémentaires qui influent sur l’implémentation HDL et la logique synthétisée.
Ce bloc a une architecture HDL par défaut.
| ConstrainedOutputPipeline | Nombre de registres à placer aux sorties en déplaçant les retards au sein de votre design. Le pipelining distribué ne redistribue pas ces registres. La valeur par défaut est |
| InputPipeline | Nombre d’étapes de pipelines d’entrée à insérer dans le code généré. Le pipelining distribué et le pipelining de sortie sous contrainte peuvent déplacer ces registres. La valeur par défaut est |
| OutputPipeline | Nombre d’étapes de pipelines de sortie à insérer dans le code généré. Le pipelining distribué et le pipelining de sortie sous contrainte peuvent déplacer ces registres. La valeur par défaut est |
| SynthesisAttributes | Spécifie les attributs de synthèse des blocs et des signaux de sortie des blocs du modèle. Le code HDL généré contient ces attributs. Pour plus d’informations, consultez SynthesisAttributes (HDL 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
Voir aussi
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- 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)