Temps mort (DEDT)
Ces informations s’appliquent aux automates
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 et ControlLogix 5590.L'instruction Temps mort (Deadtime, DEDT) applique un retard sur une entrée unique. Vous sélectionnez la valeur du retard de temps mort.
Langues disponibles
Diagramme à relais
Cette instruction n'est pas disponible dans la logique à relais.
Bloc fonctionnel

Texte structuré
DEDT(DEDT_tag,storage);
Opérandes
Texte structuré
Opérande | Type | Format | Description |
DEDT tag | DEADTIME | structure | Structure DEDT |
storage | REAL | tableau | tampon du temps mort |
Reportez-vous à
Syntaxe du texte structuré
pour plus d'informations concernant la syntaxe des expressions dans le texte structuré.Bloc fonctionnel
Opérande | Type | Format | Description |
DEDT tag | DEADTIME | structure | Structure DEDT |
storage | REAL | tableau | tampon du temps mort |
Structure de DEADTIME
Paramètre d’entrée | Type de données | Description |
|---|---|---|
EnableIn | BOOL | Activez l'entrée. Si défini sur faux, l’instruction n’est pas exécutée et les sorties ne sont pas mises à jour. La valeur par défaut est définie sur vrai. |
In | REAL | Entrée du signal analogique dans l’instruction. Valide = tout flottant Par défaut = 0,0 |
InFault | BOOL | Indicateur de mauvaise santé pour l'entrée. Si la valeur de l’entrée est reconnu par une entrée analogique, alors InFault est contrôlé par l’état de défaut sur l’entrée analogique. Si la valeur est définie sur vrai, InFault indique que le signal d’entrée présente une erreur, l’instruction définit le bit approprié dans Status, l’algorithme de contrôle n’est pas exécuté et la valeur de Out est maintenue. La valeur par défaut est fausse. faux = bonne santé |
Deadtime | REAL | Entrée du temps mort pour l’instruction. Saisissez le temps mort en secondes. Si cette valeur n'est pas valide, l'instruction présume une valeur de zéro et définit le bit approprié dans Status. Valide = de 0,0 à (taille de StorageArray * DeltaT) Par défaut = 0,0 |
Gain | REAL | Entrée du gain pour l’instruction. La valeur de In est multipliée par cette valeur. Cette valeur permet de simuler un gain du processus. Valide = tout flottant Par défaut = 1,0 |
Bias | REAL | Entrée du biais pour l’instruction. La valeur de In multipliée par le gain est ajoutée à cette valeur. Cette valeur permet de simuler une condition ambiante. Valide = tout flottant Par défaut = 0,0 |
TimingMode | DINT | Sélectionne le mode d'exécution de la temporisation. 0 = mode période 1 = mode sur-échantillonnage 2 = mode échantillonnage en temps réel Valide = de 0 à 2 Par défaut = 0 Reportez-vous aux attributs des blocs fonctionnels pour plus d’informations sur les modes de temporisation. |
OversampleDT | REAL | Temps d’exécution du mode suréchantillonnage. Valide = 0 à 4194.303 secondes Par défaut = 0 |
RTSTime | DINT | Période de mise à jour du module pour le mode Échantillonnage en temps réel. Valide = de 1 à 32 767 ms Par défaut = 1 |
RTSTimeStamp | DINT | Valeur d'horodatage du module pour le mode Échantillonnage en temps réel Valide = de 0 à 32 767 ms Par défaut = 0 |
Paramètre de sortie | Type de données | Description |
|---|---|---|
EnableOut | BOOL | Indique si l'instruction est activée. Mis à zéro (faux) en cas de débordement d'Out. |
Out | REAL | La sortie calculée de l’algorithme de temps mort. |
DeltaT | REAL | Temps écoulé entre les mises à jour. Cela correspond au temps écoulé en seconde utilisé par l'algorithme de contrôle pour calculer la sortie du processus. |
Status | DINT | État du bloc fonctionnel. |
InstructFault (Status.0) | BOOL | L'instruction a détecté l'une des erreurs d'exécution suivantes. Il ne s'agit pas d'une erreur d'automate mineure ou majeure. Contrôlez les bits d'état restants pour déterminer la cause du problème. |
InFaulted (Status.1) | BOOL | La santé de In est mauvaise. |
DeadtimeInv (Status.2) | BOOL | Valeur Deadtime non valide. |
TimingMode (Status.27) | BOOL | Valeur TimingMode non valide. Reportez-vous aux attributs des blocs fonctionnels pour plus d’informations sur les modes de temporisation. |
RTSMissed (Status.28) | BOOL | Utilisé seulement en mode Échantillonnage en temps réel. Défini lorsque ABS (DeltaT - RTSTime) > 1 milliseconde. |
RTSTimeInv (Status.29) | BOOL | Valeur RTSTime non valide. |
RTSTimeStampInv (Status.30) | BOOL | Valeur RTSTimeStamp non valide. |
DeltaTInv (Status.31) | BOOL | Valeur DeltaT non valide. |
Description
L’instruction DEDT utilise un tampon de données pour stocker les données retardées, autorisant ce faisant n’importe quelle durée souhaitée pour le temps mort. L’instruction DEDT a été conçue pour s’exécuter dans une tâche où la fréquence de scrutation reste constante.
Pour utiliser l’instruction DEDT, créez un tableau de stockage pour stocker le tampon de temps mort afin de conserver les échantillons de (In x Gain) + Bias. Le tableau de stockage doit être suffisamment grand pour contenir le temps mort le plus long, obtenu à l'aide de la formule suivante :
Taille de StorageArray nécessaire = Temps mort maximal (s)/DeltaT (s)
Fonctionnement du tampon de temps mort
Pendant l’exécution, l’instruction recherche un temps mort valide. Celui-ci doit être compris entre 0,0 et (taille de StorageArray x DeltaT).
Si le temps mort n’est pas valide, l’instruction définit un bit approprié dans Status, et définit Out = (In x Gain) + Bias.
Le tampon de temps mort fonctionne comme un tampon « premier entré, premier sorti ». Chaque fois que l’algorithme de temps mort s’exécute, la valeur la plus ancienne dans le tampon de temps mort est transférée dans Out. Les valeurs restantes dans le tampon sont décalées vers le bas, et la valeur ((In x Gain) + Bias) est placée au début du tampon de temps mort. Une nouvelle valeur placée dans le tampon de temps mort apparaît dans Out à l’issue du temps mort.
Le nombre d'éléments de tableau requis pour appliquer le retard défini est calculé en divisant le temps mort par DeltaT. Si le temps mort n’est pas parfaitement divisible par DeltaT, le nombre d'éléments et le retard défini sont alors arrondis à l’incrément le plus proche de DeltaT. Par exemple, pour le nombre d'éléments de tableau requis pour appliquer le retard défini avec Temps mort = 4,25 s et DeltaT = 0,50 s est :
4,25 s/0,50 s = 8,5
arrondi à 9 éléments de tableau requis
Dans cet exemple, le retard réel appliqué à l’entrée est :
nombre d'éléments de tableau x DeltaT = retard défini ou
9 x 0,5 s = 4,5 s
Les changements du temps d’exécution pour la valeur Deadtime ou DeltaT changent le point auquel les valeurs sont expulsées du tampon. Le nombre d'éléments requis pour appliquer le retard défini peut augmenter ou diminuer. Avant d’utiliser le tampon de temps mort, les mises à jour suivantes sont réalisées :
Si le nombre d'éléments requis doit augmenter, les nouveaux éléments du tampon sont renseignés avec la valeur la plus ancienne du tampon de temps mort actuel.
Si le nombre d'éléments requis doit diminuer, les éléments les plus anciens du tampon de temps mort actuel sont éliminés.
Comportement de l’instruction lors de la transition de InFault
Si InFault est défini sur vrai (mauvais), l’instruction suspend l’exécution, maintient la dernière sortie et définit le bit approprié dans Status.
Lorsque InFault passe de vrai à faux, l’instruction règle toutes les valeurs du tampon de temps mort sur une valeur égale à In x Gain + Bias.
Affecte les indicateurs d'état mathématique
Non
Défauts majeurs/mineurs
Aucun spécifique à cette instruction. Reportez-vous à la section Attributs communs pour plus d’informations sur les défauts liés aux opérandes.
Exécution
Bloc fonctionnel
Condition/état | Action entreprise |
|---|---|
Préscrutation | Les bits EnableIn et EnableOut sont définis sur faux. |
Tag.EnableIn est faux | Les bits EnableIn et EnableOut sont définis sur faux. |
Tag.EnableIn est vrai | Les bits EnableIn et EnableOut sont définis sur vrai. L'instruction s'exécute. |
Première exécution de l'instruction | N/A |
Première scrutation de l'instruction | N/A L’instruction ne s’exécute pas, mais valide les paramètres d'entrée. |
Post-scrutation | Les bits EnableIn et EnableOut sont définis sur faux. |
Texte structuré
Condition/état | Action entreprise |
|---|---|
Préscrutation | Reportez-vous à Pré-scrutation dans le tableau Bloc fonctionnel. |
Exécution normale | Reportez-vous à Tag.EnableIn est vrai dans le tableau Bloc fonctionnel. |
Post-scrutation | Reportez-vous à Post-scrutation dans le tableau Bloc fonctionnel. |
Exemple
Dans cet exemple, l’instruction DEDT simule un retard de temps mort dans un processus simulé. La sortie de l’instruction PIDE est transmise à travers un retard de temps mort et un retard de premier ordre pour simuler le processus. Le tableau DEDT_01array est un tableau REAL avec 100 éléments pour prendre en charge un temps mort avec un maximum de 100 échantillons. Par exemple, si cette routine s’exécute toutes les 100 ms, le tableau peut prendre en charge un temps mort maximal de 10 secondes.
Bloc fonctionnel

Fournir une réponse