Dispositif à 3 états discret (D3SD)
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 Dispositif à 3 états discret (Discrete 3-State Device, D3SD) contrôle un dispositif discret ayant trois états possibles, tels que rapide/lent/inactif ou avant/arrêt/arrière.
Langues disponibles
Diagramme à relais
Cette instruction n'est pas disponible dans la logique à relais.
Bloc fonctionnel

Texte structuré
D3SD(D3SD_tag)
Opérandes
Texte structuré
Opérande | Type | Format | Description |
D3SD tag | DISCRETE_3STATE | structure | Structure D3SD |
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 |
D3SD tag | DISCRETE_3STATE | structure | Structure D3SD |
Structure de DISCRETE_3STATE
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. |
Prog0Command | BOOL | Commande Programme, état 0. Cette entrée détermine l'état du dispositif lorsque celui-ci est en mode de contrôle Programme. Si la valeur est définie sur vrai, le dispositif est défini sur l’état 0. La valeur par défaut est fausse. |
Prog1Command | BOOL | Commande Programme, état 1. Cette entrée détermine l'état du dispositif lorsque celui-ci est en mode de contrôle Programme. Si la valeur est définie sur vrai, le dispositif est défini sur l’état 1. La valeur par défaut est fausse. |
Prog2Command | BOOL | Commande Programme, état 2. Cette entrée détermine l'état du dispositif lorsque celui-ci est en mode de contrôle Programme. Si la valeur est définie sur vrai, le dispositif est défini sur l’état 2. La valeur par défaut est fausse. |
Oper0Req | BOOL | Demande Opérateur, état 0. Définir sur vrai par l’interface opérateur afin de placer le dispositif dans l’état 0 lorsque celui-ci est en mode de contrôle Opérateur. La valeur par défaut est fausse. |
Oper1Req | BOOL | Demande Opérateur, état 1. Définir sur vrai par l’interface opérateur afin de placer le dispositif dans l’état 1 lorsque celui-ci est en mode de contrôle Opérateur. La valeur par défaut est fausse. |
Oper2Req | BOOL | Demande Opérateur, état 2. Définir sur vrai par l’interface opérateur afin de placer le dispositif dans l’état 2 lorsque celui-ci est en mode de contrôle Opérateur. La valeur par défaut est fausse. |
State0Perm | BOOL | État 0 autorisé. Sauf en mode Portable ou Outrepassement, cette entrée doit être définie sur vrai pour que le dispositif passe dans l’état 0. Cette entrée n’a aucun effet si le dispositif est déjà dans l’état 0. La valeur par défaut est définie sur vrai. |
State1Perm | BOOL | État 1 autorisé. Sauf en mode Portable ou Outrepassement, cette entrée doit être définie sur vrai pour que le dispositif passe dans l’état 1. Cette entrée n’a aucun effet si le dispositif est déjà dans l’état 1. La valeur par défaut est définie sur vrai. |
State2Perm | BOOL | État 2 autorisé. Sauf en mode Portable ou Outrepassement, cette entrée doit être définie sur vrai pour que le dispositif passe dans l’état 2. Cette entrée n’a aucun effet si le dispositif est déjà dans l’état 2. La valeur par défaut est définie sur vrai. |
FB0 | BOOL | La première entrée de retour disponible pour l’instruction. La valeur par défaut est fausse. |
FB1 | BOOL | La deuxième entrée de retour disponible pour l’instruction. La valeur par défaut est fausse. |
FB2 | BOOL | La troisième entrée de retour disponible pour l’instruction. La valeur par défaut est fausse. |
FB3 | BOOL | La quatrième entrée de retour disponible pour l’instruction. La valeur par défaut est fausse. |
HandFB0 | BOOL | Retour portable, état 0. Cette entrée d’une station auto/arrêt/portable de terrain montre l'état demandé du dispositif de terrain. Si elle est définie sur vrai, le dispositif de terrain doit passer à l’état 0. Si elle est définie sur faux, le dispositif de terrain doit passer dans un autre état. La valeur par défaut est fausse. |
HandFB1 | BOOL | Retour portable, état 1. Cette entrée d’une station auto/arrêt/portable de terrain montre l'état demandé du dispositif de terrain. Si elle est définie sur vrai, le dispositif de terrain doit passer à l’état 1. Si elle est définie sur faux, le dispositif de terrain doit passer dans un autre état. La valeur par défaut est fausse. |
HandFB2 | BOOL | Retour portable, état 2. Cette entrée d’une station auto/arrêt/portable de terrain montre l'état demandé du dispositif de terrain. Si elle est définie sur vrai, le dispositif de terrain doit passer à l’état 2. Si elle est définie sur faux, le dispositif de terrain doit passer dans un autre état. La valeur par défaut est fausse. |
FaultTime | REAL | Valeur du temps de défaut. Saisissez la durée (en secondes) au bout de laquelle le dispositif d'atteindre doit avoir atteint un nouvel état commandé. Définir FaultTime sur 0 pour désactiver le temporisateur de défaut. 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 = toute valeur flottante 0,0Par défaut = 0,0 |
FaultAlarmLatch | BOOL | Entrée de verrouillage d’alarme de défaut. Si cette entrée et FaultAlarm sont définies sur vrai, FaultAlarm est verrouillé. Pour déverrouiller FaultAlarm, définissez FaultAlmUnlatch sur vrai ou FaultAlarmLatch sur faux. La valeur par défaut est fausse. |
FaultAlmUnLatch | BOOL | Entrée de déverrouillage d’alarme de défaut. Définissez cette entrée sur vrai si FaultAlarmLatch est défini pour déverrouiller FaultAlarm. L’instruction met à zéro cette entrée sur faux. La valeur par défaut est fausse. |
OverrideOnInit | BOOL | Demande d’outrepassement lors de l’initialisation. Si ce bit est défini sur vrai, l’instruction est placée en mode de contrôle Opérateur, avec Outrepassement défini sur vrai et Portable sur faux pendant la première scrutation de l’instruction. Si ProgHandReq est défini sur vrai, Outrepassement est défini sur faux et Portable sur vrai. La valeur par défaut est fausse. |
OverrideOnFault | BOOL | Demande d’outrepassement lors d’un défaut. Définir cette valeur sur vrai si le dispositif doit passer en mode Outrepassement et entrer dans l’État Outrepassement sur une alarme de défaut. Une fois l’alarme de défaut supprimée, l’instruction est placée en mode de contrôle Opérateur. La valeur par défaut est fausse. |
Out0State0 | BOOL | Entrée Sortie 0 État 0. Cette valeur détermine la valeur d’Output0 si le dispositif est dans l’état 0. La valeur par défaut est fausse. |
Out0State1 | BOOL | Entrée Sortie 0 État 1. Cette valeur détermine la valeur d’Output0 si le dispositif est dans l’état 1. La valeur par défaut est fausse. |
Out0State2 | BOOL | Entrée Sortie 0 État 2. Cette valeur détermine la valeur d’Output0 si le dispositif est dans l’état 2. La valeur par défaut est fausse. |
Out1State0 | BOOL | Entrée Sortie 1 État 0. Cette valeur détermine la valeur d’Output1 si le dispositif est dans l’état 0. La valeur par défaut est fausse. |
Out1State1 | BOOL | Entrée Sortie 1 État 1. Cette valeur détermine la valeur d’Output1 si le dispositif est dans l’état 1. La valeur par défaut est fausse. |
Out1State2 | BOOL | Entrée Sortie 1 État 2. Cette valeur détermine la valeur d’Output1 si le dispositif est dans l’état 2. La valeur par défaut est fausse. |
Out2State0 | BOOL | Entrée Sortie 2 État 0. Cette valeur détermine la valeur d’Output2 si le dispositif est dans l’état 0. La valeur par défaut est fausse. |
Out2State1 | BOOL | Entrée Sortie 2 État 1. Cette valeur détermine la valeur d’Output2 si le dispositif est dans l’état 1. La valeur par défaut est fausse. |
Out2State2 | BOOL | Entrée Sortie 2 État 2. Cette valeur détermine la valeur d’Output2 si le dispositif est dans l’état 2. La valeur par défaut est fausse. |
OverrideState | DINT | Entrée Outrepassement de l'état. Définissez cette entrée pour indiquer l’état du dispositif en mode Outrepassement. 2 = le dispositif doit passer à l’état 2 1 = le dispositif doit passer à l’état 1 0 = le dispositif doit passer à l’état 0 Une valeur non valide définit le bit approprié dans Status. Valide = de 0 à 2 Par défaut = 0 |
FB0State0 | BOOL | Entrée Retour 0 État 0. Cette valeur détermine la valeur attendue pour FB0 lorsque le dispositif est dans l’état 0. La valeur par défaut est fausse. |
FB0State1 | BOOL | Entrée Retour 0 État 1. Cette valeur détermine la valeur attendue pour FB0 lorsque le dispositif est dans l’état 1. La valeur par défaut est fausse. |
FB0State2 | BOOL | Entrée Retour 0 État 2. Cette valeur détermine la valeur attendue pour FB0 lorsque le dispositif est dans l’état 2. La valeur par défaut est fausse. |
FB1State0 | BOOL | Entrée Retour 1 État 0. Cette valeur détermine la valeur attendue pour FB1 si le dispositif est dans l’état 0. La valeur par défaut est fausse. |
FB1State1 | BOOL | Entrée Retour 1 État 1. Cette valeur détermine la valeur attendue pour FB1 si le dispositif est dans l’état 1. La valeur par défaut est fausse. |
FB1State2 | BOOL | Entrée Retour 1 État 2. Cette valeur détermine la valeur attendue pour FB1 si le dispositif est dans l’état 2. La valeur par défaut est fausse. |
FB2State0 | BOOL | Entrée Retour 2 État 0. Cette valeur détermine la valeur attendue pour FB2 si le dispositif est dans l’état 0. La valeur par défaut est fausse. |
FB2State1 | BOOL | Entrée Retour 2 État 1. Cette valeur détermine la valeur attendue pour FB2 si le dispositif est dans l’état 1. La valeur par défaut est fausse. |
FB2State2 | BOOL | Entrée Retour 2 État 2. Cette valeur détermine la valeur attendue pour FB2 si le dispositif est dans l’état 2. La valeur par défaut est fausse. |
FB3State0 | BOOL | Entrée Retour 3 État 0. Cette valeur détermine la valeur attendue pour FB3 si le dispositif est dans l’état 0. La valeur par défaut est fausse. |
FB3State1 | BOOL | Entrée Retour 3 État 1. Cette valeur détermine la valeur attendue pour FB3 si le dispositif est dans l’état 1. La valeur par défaut est fausse. |
FB3State2 | BOOL | Entrée Retour 3 État 2. Cette valeur détermine la valeur attendue pour FB3 si le dispositif est dans l’état 2. La valeur par défaut est fausse. |
ProgProgReq | BOOL | Demande de contrôle Programme du programme. Défini sur vrai par le programme utilisateur pour demander le contrôle Programme. Ignoré si ProgOperReq est vrai. Le maintien de cet élément sur vrai et de ProgOperReq sur faux verrouille l'instruction dans le contrôle Programme. La valeur par défaut est fausse. |
ProgOperReq | BOOL | Demande de contrôle Opérateur du programme. Défini sur vrai par le programme utilisateur pour demander le contrôle Opérateur. Le maintien de cet élément sur vrai verrouille l'instruction dans le contrôle Opérateur. La valeur par défaut est fausse. |
ProgOverrideReq | BOOL | Demande d’Outrepassement du programme. Défini sur vrai par le programme utilisateur pour demander au dispositif de passer en mode Outrepassement. Ignoré si ProgHandReq est vrai. La valeur par défaut est fausse. |
ProgHandReq | BOOL | Demande de portable du programme. Défini sur vrai par le programme utilisateur pour demander au dispositif de passer en mode Portable. La valeur par défaut est fausse. |
OperProgReq | BOOL | Demande de contrôle Programme de l’opérateur. Définissez cette valeur sur vrai au moyen de l’interface opérateur pour demander le contrôle Programme. L’instruction met à zéro cette entrée sur faux. La valeur par défaut est fausse. |
OperOperReq | BOOL | Demande de contrôle Opérateur de l’opérateur. Définissez cette valeur sur vrai au moyen de l’interface opérateur pour demander le contrôle Opérateur. L’instruction met à zéro cette entrée sur faux. La valeur par défaut est fausse. |
ProgValueReset | BOOL | Réinitialiser les valeurs de contrôle du programme. Lorsque ce paramètre est défini sur vrai, toutes les entrées de demandes du programme sont définies sur faux à chaque exécution de l'instruction. La valeur par défaut est fausse. |
Paramètre de sortie | Type de données | Description |
|---|---|---|
EnableOut | BOOL | Indique si l'instruction est activée. |
Out0 | BOOL | La première sortie de l’instruction. |
Out1 | BOOL | La deuxième sortie de l’instruction. |
Out2 | BOOL | La troisième sortie de l’instruction. |
Device0State | BOOL | Sortie état 0 pour le dispositif. Défini sur vrai si le dispositif est défini sur l’état 0 et que le retour indique que le dispositif est effectivement dans l’état 0. |
Device1State | BOOL | Sortie état 1 pour le dispositif. Défini sur vrai si le dispositif est défini sur l’état 1 et que le retour indique que le dispositif est effectivement dans l’état 1. |
Device2State | BOOL | Sortie état 2 pour le dispositif. Défini sur vrai si le dispositif est défini sur l’état 2 et que le retour indique que le dispositif est effectivement dans l’état 2. |
Command0Status | BOOL | État de la commande état 0 pour le dispositif. Défini sur vrai si le dispositif est défini sur l’état 0, et défini sur faux s’il est défini sur un autre état. |
Command1Status | BOOL | État de la commande état 1 pour le dispositif. Défini sur vrai si le dispositif est défini sur l’état 1, et défini sur faux s’il est défini sur un autre état. |
Command2Status | BOOL | État de la commande état 2 pour le dispositif. Défini sur vrai si le dispositif est défini sur l’état 2, et défini sur faux s’il est défini sur un autre état. |
FaultAlarm | BOOL | Sortie Alarme de défaut. Défini sur vrai si le dispositif est défini sur un nouvel état et que FaultTime a expiré sans que le retour n’indique que le nouvel état a été effectivement atteint. Défini également sur vrai si, après avoir atteint l’état demandé, le retour indique subitement que le dispositif ne se trouve plus dans l’état demandé. |
ModeAlarm | BOOL | Sortie Alarme de mode. Défini sur vrai si le dispositif est en mode de contrôle Opérateur et que l’entrée ProgxCommand demande un état différent de l’état actuel commandé par l’opérateur. Cette alarme vise à rappeler que le dispositif a été laissé en mode de contrôle Opérateur. |
ProgOper | BOOL | Indicateur de contrôle programme/opérateur. Vrai dans le mode de contrôle Programme. Faux dans le mode de contrôle Opérateur. |
Override | BOOL | Mode Outrepassement. Défini sur vrai si le dispositif se trouve en mode Outrepassement. |
Hand | BOOL | Mode Portable. Défini sur vrai si le dispositif se trouve en mode Portable. |
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. |
FaultTimeInv (Status.1) | BOOL | Valeur FaultTime non valide. L’instruction définit FaultTime = 0. |
OverrideStateInv (Status.2) | BOOL | La valeur de l’outrepassement calculée est hors limites. Cela empêche l’instruction de passer en mode Outrepassement. |
ProgCommandInv (Status.3) | BOOL | Plusieurs bits de commande d’état du programme sont définis en même temps. Reportez-vous à la section « État commandé en mode de contrôle Programme ». |
OperReqInv (Status.4) | BOOL | Plusieurs bits de demande d’état de l’opérateur manuel sont définis en même temps. Reportez-vous à la section « État commandé en mode de contrôle Programme ». |
HandCommandInv (Status.5) | BOOL | Plusieurs bits de demande d’état de retour portable sont définis en même temps. |
Description
L’instruction (D3SD) contrôle un dispositif discret disposant de trois états possibles (par exemple, rapide/lent/inactif ou avant/arrêt/arrière, etc.). Les appareils discrets classiques de ce type sont les systèmes d’alimentation et les moteurs réversibles.
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 | Définir ProgOper sur le mode Opérateur. Définir Command0Status sur vrai. Définir Command1Status sur faux. Définir Command2Status sur faux. |
Première scrutation de l'instruction | Le temporisateur de défaut est mis à zéro. ModeAlarm est défini sur faux. Toutes les entrées de demandes opérateur sont mis à zéro (faux). Si ProgValueReset est vrai, toutes les entrées de demandes opérateur sont mis à zéro (faux). Lorsque OverrideOnInit est vrai, ProgOper est défini sur faux (Contrôle de l’opérateur). Si ProgHandReq est défini sur faux et OverrideOnInit sur vrai, Portable est défini sur faux et Outrepassement sur vrai (mode Outrepassement). Si ProgHandReq est défini sur vrai, Portable est défini sur vrai et Outrepassement sur faux (mode Portable). |
Post-scrutation | Les bits EnableIn et EnableOut sont définis sur faux. |
Texte structuré
Dans Texte Structuré, EnableIn est toujours vrai lors d'une scrutation normale. Par conséquent, si l'instruction est dans le chemin d'accès de commande activé par la logique, elle sera exécutée.
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. |
Exemples
L’instruction D3SD est généralement utilisée pour commander des dispositifs à 3 états tels que les systèmes d’alimentation haut/bas/arrêt. Dans cet exemple, l’instruction D3SD commande un système d’alimentation composé d’une paire d'électrovannes ajoutant de l'huile végétale à un réservoir de charge. L'une des électrovannes se trouve sur un tuyau d’alimentation de grand diamètre connecté au réservoir de charge, et l’autre est raccordée en parallèle sur un tuyau d’alimentation de petit diamètre. Lorsque l’huile est ajoutée au début, l'instruction D3SD est définie sur l’état d’alimentation rapide (état 2), dans lequel les deux électrovannes sont ouvertes. Lorsque l’huile ajoutée s’approche de la quantité cible, l’instruction D3SD est définie sur l'état d’alimentation lente (état 1), dans lequel la « grande vanne » est fermée et la « petite vanne » laissée ouverte. Lorsque la quantité cible est atteinte, l’instruction D3SD est définie sur l’état « arrêt » (état 0), et les deux vannes sont fermées. Tant que l’instruction D3SD se trouve dans le mode de contrôle Programme, les vannes s'ouvrent en fonction des entrées CloseOilFeed, SlowOilFeed et FastOilFeed. L'opérateur peut par ailleurs prendre le contrôle du système d’alimentation si nécessaire. Dans cet exemple, les électrovannes sont dotées d’interrupteurs de fin de course, qui indiquent quand les vannes sont entièrement ouvertes ou fermées. Ces interrupteurs sont câblés aux entrées de retour FB0, FB1, FB2 et FB3. L’instruction D3SD peut ainsi déclencher une alarme FaultAlarm si les électrovannes n’atteignent pas les états commandés dans le temps FaultTime configuré.
Bloc fonctionnel

Texte structuré
OilFeedController.Prog0Command := ClosedOilFeed;
OilFeedController.Prog1Command := SlowOilFeed;
OilFeedController.Prog2Command := FastOilFeed;
OilFeedController.FB0 := SmallOilValveClosed;
OilFeedController.FB1 := SmallOilValveOpened;
OilFeedController.FB2 := LargeOilValveClosed;
OilFeedController.FB3 := LargeOilValveOpened;
D3SD(OilFeedController);
SmallOilValve := OilFeedController.Out0;
LargeOilValve := OilFeedController.Out1;
Passer entre le contrôle Programme et le contrôle Opérateur
Le diagramme suivant montre comment l'instruction D3SD réalise la transition entre le contrôle Programme et le contrôle Opérateur.

(1) L’instruction reste en mode de contrôle Opérateur lorsque ProgOperReq est défini sur vrai.
État commandé en mode de contrôle Programme
Le tableau suivant présente le fonctionnement de l’instruction D3SD en mode de contrôle Programme.
Prog0 Command | Prog1 Command | Prog2 Command | State0 Perm | State1 Perm | State2 Perm | Description |
|---|---|---|---|---|---|---|
faux | faux | vrai | ou | ou | vrai | Command0Status est réinitialisé sur faux Command1Status est réinitialisé sur faux Command2Status est défini sur vrai |
faux | vrai | faux | ou | vrai | ou | Command0Status est réinitialisé sur faux Command1Status est défini sur vrai Command2Status est réinitialisé sur faux |
vrai | faux | faux | vrai | ou | ou | Command0Status est défini sur vrai Command1Status est réinitialisé sur faux Command2Status est réinitialisé sur faux |
Si plusieurs entrées de commande par programme sont définies sur vrai :
- L’instruction définit le bit approprié dans État
- Si Outrepassement et Portable sont définis sur faux, l’instruction conserve l’état précédent
État commandé en mode de contrôle Opérateur
Le tableau suivant présente le fonctionnement de l’instruction D3SD en mode de contrôle Opérateur.
Oper0Req | Oper1Req | Oper2Req | State0 Perm | State1 Perm | State2 Perm | Description |
|---|---|---|---|---|---|---|
faux | faux | vrai | ou | ou | vrai | Command0Status est réinitialisé sur faux Command1Status est réinitialisé sur faux Command2Status est défini sur vrai |
faux | vrai | faux | ou | vrai | ou | Command0Status est réinitialisé sur faux Command1Status est défini sur vrai Command2Status est réinitialisé sur faux |
vrai | faux | faux | vrai | ou | ou | Command0Status est défini sur vrai Command1Status est réinitialisé sur faux Command2Status est réinitialisé sur faux |
Si plusieurs entrées de commande par l’opérateur sont définies sur vrai :
- L’instruction définit le bit approprié dans État
- Si Outrepassement et Portable sont définis sur faux, l’instruction conserve l’état précédent
Après chaque exécution de l'instruction, celle-ci :
- Met toutes les entrées de demande de l’opérateur à zéro
- Si ProgValueReset est vrai, toutes les entrées de demandes opérateur sont définies sur faux.
Mode Portable ou Mode Outrepassement
Le tableau suivant décrit la manière dont l'instruction D3SD choisit de fonctionner en mode Portable ou en mode Outrepassement.
ProgHandReq | ProgOverrideReq | FaultAlarm et OverrideOnFault | Description |
|---|---|---|---|
vrai | ou | ou | Mode Portable Portable est défini sur vrai Outrepassement est défini sur faux |
faux | vrai | ou | Mode Outrepassement Portable est défini sur faux Outrepassement est défini sur vrai |
faux | ou | vrai | Mode Outrepassement Portable est défini sur faux Outrepassement est défini sur vrai |
Si Outrepassement est défini, il est prioritaire sur les contrôle Programme et Opérateur. Le tableau suivant décrit l’effet du mode Outrepassement sur l'état commandé.
Asservissement | État d’outrepassement | Description |
|---|---|---|
vrai | 2 | Command0Status est réinitialisé sur faux Command1Status est réinitialisé sur faux Command2Status est défini sur vrai |
vrai | 1 | Command0Status est réinitialisé sur faux Command1Status est défini sur vrai Command2Status est réinitialisé sur faux |
vrai | 0 | Command0Status est défini sur vrai Command1Status est réinitialisé sur faux Command2Status est réinitialisé sur faux |
Si OverrideState n’est pas valide, l’instruction définit le bit approprié dans Status, et ne passe pas dans l’état d’outrepassement.
Si Portable est défini sur vrai, il est prioritaire sur les contrôle Programme et Opérateur. Le tableau suivant décrit l’effet du mode Portable sur l’état commandé.
Portable (Hand) | HandFB0 | HandFB1 | HandFB2 | Description |
|---|---|---|---|---|
vrai | faux | faux | vrai | Command0Status est réinitialisé sur faux Command1Status est réinitialisé sur faux Command2Status est défini sur vrai |
vrai | faux | vrai | faux | Command0Status est réinitialisé sur faux Command1Status est défini sur vrai Command2Status est réinitialisé sur faux |
vrai | vrai | faux | faux | Command0Status est défini sur vrai Command1Status est réinitialisé sur faux Command2Status est réinitialisé sur faux |
Si plus d’une entrée HandFB est définie sur vrai, l’instruction définit le bit approprié dans Status et, si Portable est défini sur vrai, l’instruction maintient l’état précédent.
État de sortie
L'état de sortie D3SD est basé sur l'état de la commande.
CommandStatus | État de sortie |
|---|---|
Command0Status est défini sur vrai | Out0 = Out0State0 Out1 = Out1State0 Out2 = Out2State0 |
Command0Status est vrai et FB0 = FB0State0 et FB1 = FB1State0 et FB2 = FB2State0 et FB3 = FB3State0 | Arrêter et remettre à zéro le temporisateur de défaut. Device0State est défini sur vrai |
Command1Status est défini sur vrai | Out0 = Out0State1 Out1 = Out1State1 Out2 = Out2State1 |
Command1Status est défini sur vrai et FB0 = FB0State1 et FB1 = FB1State1 et FB2 = FB2State1 et FB3 = FB3State1 | Arrêter et remettre à zéro le temporisateur de défaut. Device1State est défini sur vrai |
Command2Status est défini sur vrai | Out0 = Out0State2 Out1 = Out1State2 Out2 = Out2State2 |
Command2Status est défini sur vrai et FB0 = FB0State2 et FB1 = FB1State2 et FB2 = FB2State2 et FB3 = FB3State2 | Arrêter et remettre à zéro le temporisateur de défaut. Device2State est défini sur vrai |
Conditions d’alarme de défaut
L’instruction D3SD vérifie la présence de conditions d’alarme de défaut.
Condition d’alarme de défaut résultant de | Règles |
|---|---|
Le changement de l’état du dispositif a été commandé, mais le retour n’a pas indiqué que l’état désiré a été réellement atteint à l’issue du délai FaultTime | Démarrer le temporisateur de défaut lorsque Command0Status n ![]() n-1 ou Command1Statusn Command1Statusn-1 ou Command2Statusn Command2Statusn-1 Définir FaultAlarm lorsque le délai du temporisateur de défaut s’est écoulé et que FaultTime > 0,0 |
Le dispositif a inopinément changé d’état (selon le retour) sans avoir reçu de commande pour cela | Définir FaultAlarm sur vrai lorsque le temporisateur de défaut n’est pas activé et que l’une des conditions suivantes est satisfaite : Command0Status est défini sur vrai et Device0State sur faux Command1Status est défini sur vrai et Device1State sur faux Command2Status est défini sur vrai et Device2State sur faux |
Si aucun défaut n’est présent, FaultAlarm est défini sur faux si l’une des conditions suivantes est satisfaite :
- Command0Status est défini sur vrai et Device0State sur vrai
- Command1Status est défini sur vrai et Device1State sur vrai
- Command2Status est défini sur vrai et Device2State sur vrai
- FaultTime
0
FaultAlarm ne peut pas être défini sur faux si FaultAlarmLatch est défini sur vrai, sauf si FaultAlmUnlatch est défini sur vrai et qu’aucun défaut n’est présent.
Conditions d’alarme de mode
L’alarme de mode rappelle à l’opérateur que le dispositif a été laissé en mode de contrôle Opérateur. L’alarme de mode ne se déclenche que si, en mode contrôle Opérateur, le programme tente de modifier l'état du dispositif et de quitter l’état commandé par l'opérateur. L’alarme ne se déclenche pas si un opérateur place un dispositif en mode contrôle Opérateur et change l'état. L’instruction D3SD vérifie la présence de conditions d’alarme de mode selon ces règles.
ModeAlarm est | Si |
|---|---|
vrai | Prog2Command Prog2Commandn-1 et Prog2Command Command2Status ou Prog1Command Prog1Commandn-1 et Prog1Command Command1Status ou Prog0Command Prog1Commandn-1 et Prog0Command Command0Status |
faux | Prog2Command = Command2Status et Prog1Command = Command1Status et Prog0Command = Command0Status ou Le dispositif est en mode Outrepassement, Manuel ou Programme |
Fournir une réponse
0,0
Command1Status