Contenu principal

La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.

Unit Delay

Retarder le signal d’une période d’échantillonnage

  • Unit Delay block

Bibliothèques :
Simulink / Discrete
HDL Coder / Discrete

Description

Le bloc Unit Delay bloque son entrée et la retarde d’une période d’échantillonnage. Lorsqu’il est placé dans un sous-système itérateur, il bloque son entrée et la retarde d’une itération. Ce bloc est équivalent à l’opérateur à temps discret z-1. Le bloc accepte une seule entrée et génère une seule sortie. Chaque signal peut être un scalaire ou un vecteur. Si l’entrée est un vecteur, le bloc bloque tous les éléments du vecteur et les retarde de la même période d’échantillonnage.

Spécifiez la sortie du bloc pour la première période d’échantillonnage avec le paramètre Initial conditions. Sélectionnez ce paramètre avec soin pour réduire le risque de comportement indésirable en sortie. Spécifiez l’intervalle de temps entre les échantillons avec le paramètre Sample time. La valeur -1 signifie que Sample time est hérité par le bloc.

Remarque

Le bloc Unit Delay génère une erreur si vous l’utilisez pour créer une transition entre des blocs qui utilisent des fréquences d’échantillonnage différentes. Utilisez le bloc Rate Transition à la place.

Comparaison avec des blocs similaires

Les blocs Memory, Unit Delay et Zero-Order Hold ont un fonctionnement similaire mais offrent des possibilités différentes. De plus, l’objectif de chaque bloc est différent.

Le tableau suivant indique l’utilisation recommandée pour chaque bloc.

BlocObjectif du blocExemples de référence
Unit DelayImplémenter un délai avec un pas d’échantillonnage discret spécifié. Le bloc accepte et génère des signaux ayant un pas d’échantillonnage discret.
MemoryImplémenter un délai d’un pas de temps d’intégration majeur. Dans l’idéal, le bloc accepte des signaux continus (ou fixes dans un pas de temps mineur) et génère un signal de sortie fixe dans un pas de temps mineur.
Zero-Order HoldConvertir un signal d’entrée avec un pas d’échantillonnage continu en un signal de sortie avec un pas d’échantillonnage discret.

Chaque bloc offre les fonctionnalités suivantes.

FonctionnalitéMemoryUnit DelayZero-Order Hold
Spécification de la condition initialeOuiOuiNon car la sortie du bloc au temps t = 0 doit être identique à la valeur en entrée.
Spécification du pas d’échantillonnageNon car le bloc peut uniquement hériter du pas d’échantillonnage du bloc d’origine ou du solveur utilisé pour le modèle entier.OuiOui
Support des signaux basés sur des tramesNon OuiOui
Support de l’enregistrement des étatsNonOuiNon

Support des chaînes de caractères

Le bloc Unit Delay ne peut accepter et générer des données de type chaîne de caractères que s’il est configuré pour la valeur par défaut du paramètre Initial condition (0).

Exemples

Ports

Entrée(s)

développer tout

Signal d’entrée que le bloc retarde d’une période d’échantillonnage.

Types de données : half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus | image

Sortie(s)

développer tout

Signal de sortie correspondant à l’entrée retardée d’une période d’échantillonnage.

Types de données : half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus | image

Paramètres

développer tout

Paramètres principaux

Spécifiez la sortie de la simulation pour la première période d’échantillonnage pendant laquelle la sortie du bloc Unit Delay n’est pas définie par défaut.

Utilisation programmatique

Paramètre de bloc : InitialCondition
Type : vecteur de caractères
Valeur : scalaire | vecteur
Par défaut : '0'

Spécifiez si le bloc doit effectuer un traitement par échantillon ou par trame :

  • Columns as channels (frame based) : traitez chaque colonne de l’entrée comme un canal distinct (traitement par trame).

    Remarque

    Le traitement par trame nécessite une licence DSP System Toolbox™.

    Pour plus d’informations, consultez Sample- and Frame-Based Concepts (DSP System Toolbox).

  • Elements as channels (sample based) : traitez chaque élément de l’entrée comme un canal distinct (traitement par échantillon).

Utilisez Input processing pour spécifier si le bloc doit effectuer un traitement par échantillon ou par trame. Pour plus d’informations sur ces deux modes de traitement, consultez Sample- and Frame-Based Concepts (DSP System Toolbox).

Utilisation programmatique

Paramètre de bloc : InputProcessing
Type : vecteur de caractères
Valeurs : 'Columns as channels (frame based)' | 'Elements as channels (sample based)'
Par défaut : 'Elements as channels (sample based)'

Saisissez l’intervalle discret entre les temps d’échantillonnage ou spécifiez -1 pour hériter du pas d’échantillonnage.

Consultez également Spécifier les pas d'échantillonnage.

Utilisation programmatique

Paramètre de bloc : SampleTime
Type : vecteur de caractères
Valeur : scalaire réel | vecteur 1 x 2
Par défaut : '-1'

Attributs d’état

Utilisez ce paramètre pour attribuer un nom unique à l’état du bloc. La valeur par défaut est ' '. Lorsque ce champ est vide, aucun nom n’est attribué. N’oubliez pas de tenir compte des points suivants lorsque vous utilisez ce paramètre :

  • Un identifiant valide commence par un caractère alphabétique ou underscore suivi de caractères alphanumériques ou underscore.

  • Le nom de l’état s’applique uniquement au bloc sélectionné.

Ce paramètre active l’option State name must resolve to Simulink signal object lorsque vous cliquez sur Apply.

Pour plus d’informations, consultez C Data Code Interface Configuration for Model Interface Elements (Simulink Coder).

Utilisation programmatique

Paramètre de bloc : StateName
Type : vecteur de caractères
Valeurs : nom unique
Par défaut : ''

Spécifiez si les noms d’état doivent être résolus par rapport aux objets de signaux. Si vous sélectionnez cette option, le software génère une erreur au run time si vous spécifiez un nom d’état qui ne correspond pas au nom d’un objet de signal.

La sélection de ce paramètre désactive le paramètre Code generation storage class.

Dépendances

Cette option est activée lorsque vous spécifiez une valeur pour le paramètre State name et définissez le paramètre de configuration de modèle Signal resolution à une valeur autre que None.

Utilisation programmatique

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

Caractéristiques des blocs

Types de données

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

Traversée directe

nona

Signaux multidimensionnels

oui

Signaux de taille variable

oui

Détection des passages à zéro

non

a Les caractéristiques de traversée (feedthrough) directe de ce bloc dépendent des valeurs des paramètres du bloc.

Capacités étendues

développer tout

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