Dispositif à 2 états discret (D2SD)

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 à 2 états discret (Discrete 2-State Device, D2SD) contrôle un dispositif discret ne pouvant disposer que de deux états (par exemple actif/inactif ou ouvert/fermé).
Langues disponibles
Diagramme à relais
Cette instruction n'est pas disponible dans la logique à relais.
Bloc fonctionnel
D2SD_FB_avail_v31
Texte structuré
D2SD(D2SD_tag)
Opérandes
Il existe des règles de conversion de données pour les types de données mixtes dans une instruction. Reportez-vous à la section Conversions de données.
Texte structuré
Opérande
Type
Format
Description
D2SD tag
DISCRETE_2STATE
Structure
Structure D2SD
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
D2SD tag
DISCRETE_2STATE
Structure
Structure D2SD
Structure de DISCRETE_2STATE
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.
ProgCommand
BOOL
Utilisé pour déterminer la valeur de CommandStatus lorsque le dispositif est en mode de contrôle Programme. Si cette entrée est définie sur vrai, le dispositif est défini sur l’état 1 ; si elle est définie sur faux, il est défini sur l’état 0.
La valeur par défaut est fausse.
Oper0Req
BOOL
Demande Opérateur, état 0. Définir 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 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.
State0Perm
BOOL
État 0 autorisé. Sauf en mode Portable ou Outrepassement, cette entrée doit être définie 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 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.
FB0
BOOL
La première entrée de retour disponible pour l’instruction D2SD.
La valeur par défaut est fausse.
FB1
BOOL
La deuxième entrée de retour disponible pour l’instruction D2SD.
La valeur par défaut est fausse.
HandFB
BOOL
Entrée de retour portable. Cette entrée d’une station auto/arrêt/portable de terrain et 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 à l’état 0.
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 Greater than or equal to 0,0
Par 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 FaultAlmUnLatch lorsque 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, le dispositif à 2 états est placé en mode de contrôle Opérateur, Outrepassement est 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éfinissez OverrideOnFault sur vrai si le dispositif doit passer en mode Outrepassement et passer dans l’état OverrideState en cas d’alarme de défaut. Une fois l’alarme de défaut supprimée, le dispositif à 2 états est placé en mode de contrôle Opérateur.
La valeur par défaut est fausse.
OutReverse
BOOL
Inverse l'état de sortie par défaut. L’état par défaut de Out est défini sur faux lorsqu’il lui est demandé de passer à l’état 0, et sur vrai s’il lui est demandé de passer à l’état 1. Si OutReverse est défini sur vrai, Out est défini sur vrai lorsqu’il lui est demandé de passer à l’état 0, et sur faux s’il lui est demandé de passer à l’état 1.
La valeur par défaut est fausse.
OverrideState
BOOL
Entrée Outrepassement de l'état. Configurez cette valeur pour spécifier l'état du dispositif en mode Outrepassement. Si cette entrée est définie sur vrai, le dispositif doit passer à l’état 1 ; si elle est définie sur faux, il doit passer à l’état 0.
La valeur par défaut est fausse.
FB0State0
BOOL
Entrée Retour 0 État 0. Configurez l’état de FB0 lorsque le dispositif est dans l’état 0.
La valeur par défaut est fausse.
FB0State1
BOOL
Entrée Retour 0 État 1. Configurez l’état de FB0 lorsque le dispositif est dans l’état 1.
La valeur par défaut est fausse.
FB1State0
BOOL
Entrée Retour 1 État 0. Configurez l’état de FB1 lorsque le dispositif est dans l’état 0.
La valeur par défaut est fausse.
FB1State1
BOOL
Entrée Retour 1 État 1. Configurez l’état de FB1 lorsque le dispositif est dans l’état 1.
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.
Out
BOOL
La sortie de l’instruction à 2 états.
Device0State
BOOL
Sortie état pour le dispositif 0. Défini sur vrai si le dispositif est défini sur l’état 0 et que les retours indiquent que le dispositif est effectivement dans l’état 0.
Device1State
BOOL
Sortie état pour le dispositif 1. Défini sur vrai si le dispositif est défini sur l’état 1 et que les retours indiquent que le dispositif est effectivement dans l’état 1.
CommandStatus
BOOL
Sortie de l’état de la commande. Défini sur vrai si le dispositif est défini sur l’état 1, et défini sur faux lorsqu’il est défini sur l’état 0.
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 les retours n’indiquent 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 la commande par programme change pour un état différent de l’état actuel demandé 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.
OperReqInv (Status.2)
BOOL
Les deux bits de demande d’état de l’opérateur sont définis sur vrai.
Description
L’instruction D2SD contrôle un dispositif discret ne pouvant disposer que de deux états (par exemple actif/inactif ou ouvert/fermé). Les dispositifs discrets classiques de ce type incluent les moteurs, les pompes et les électrovannes.
Surveillance de l’instruction D2SD
Une face avant opérateur est disponible pour l’instruction D2SD.
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 CommandStatus sur faux.
Première scrutation de l'instruction
Définir EnableOut sur vrai.
Les entrées ModeAlarm et de demande de l’opérateur sont définis sur faux.
Si ProgValueReset est vrai, toutes les entrées de demandes opérateur sont mis à zéro (faux).
Si OverrideOnInit est défini sur vrai, ProgOper est défini sur faux (contrôle Opérateur).
Si ProgHandReq est mis à zéro et que OverrideOnInit défini, effacez Portable et définissez Outrepasser (mode Outrepassement).
Si ProgHandReq est défini, définissez Portable et effacez Outrepasser (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 SD est généralement utilisée pour contrôler des dispositifs de type marche/arrêt ou ouvert/fermé, par exemple des pompes ou des électrovannes. Dans cet exemple, l’instruction D2SD commande une électrovanne qui ajoute du sirop de glucose à un réservoir de charge. Tant que l'instruction D2SD est en mode de contrôle Programme, la vanne s’ouvre lorsque l’entrée AddSyrup est définie sur vrai. L’opérateur peut par ailleurs prendre le contrôle de la vanne pour l'ouvrir ou la fermer si nécessaire. Dans cet exemple, l'électrovanne est dotée d’interrupteurs de fin de course qui indiquent quand la vanne est entièrement ouverte ou entièrement fermée. Ces interrupteurs sont câblés aux entrées de retour FB0 et FB1. L’instruction D2SD peut ainsi déclencher une alarme FaultAlarm si l’électrovanne n’atteint pas l’état commandé dans le temps FaultTime configuré.
Bloc fonctionnel
D2SD_FB_ex_v31
Texte structuré
SyrupController.ProgCommand := AddSyrup;
SyrupController.FB0 := SyrupValveClosedLimitSwitch;
SyrupController.FB1 := SyrupValveOpenedLimitSwitch;
D2SD(SyrupController);
SyrupValve := SyrupController.Out;
Passer entre le contrôle Programme et le contrôle Opérateur
Le diagramme suivant montre comment l'instruction D2SD réalise la transition entre le contrôle Programme et le contrôle Opérateur.
D2SD_program_operator control
(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
La diagramme suivant présente le fonctionnement de l’instruction D2SD en mode de contrôle Programme.
D2SD_program_operator control 2
État commandé en mode de contrôle Opérateur
Le diagramme suivant montre le fonctionnement de l'instruction D2SD en contrôle Opérateur.
D2SD_program_operator control 3
Si les deux entrées Oper0Req et Oper1Req sont définies sur vrai :
  • L’instruction définit le bit approprié dans Status sur vrai
  • 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 :
  • Définit toutes les entrées de demande de l’opérateur sur faux
  • 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 D2SD 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 l’instruction est en mode Outrepassement, CommandStatus = OverrideState.
Si l’instruction est en mode Portable, CommandStatus = HandFB.
État de sortie
L'état de sortie D2SD est basé sur l'état de la commande.
CommandStatus
État de sortie
faux
Si OutReverse est faux, Out est défini sur faux.
Si OutReverse est vrai, Out est défini sur vrai.
vrai
Si OutReverse est faux, Out est défini sur vrai
Si OutReverse est vrai, Out est défini sur faux
faux et
FB0 = FB0State0 et
FB1 = FB1State0
Le temporisateur de défaut est arrêté et remis à zéro
Device0State est défini sur vrai
vrai et
FB0 = FB0State1 et
FB1 = FB1State1
Le temporisateur de défaut est arrêté et remis à zéro
Device1State est défini sur vrai
Conditions d’alarme de défaut
L’instruction D2SD 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éfauts lorsque CommandStatus
n
Not equal to sign CommandStatus
n-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 :
CommandStatus est défini sur faux et Device0State sur faux
CommandStatus est défini sur vrai et Device1State sur faux
FaultAlarm est défini sur faux si l’une des conditions suivantes est satisfaite :
  • CommandStatus est défini sur faux et Device0State sur vrai
  • CommandStatus est défini sur vrai et Device1State sur vrai
  • FaultTime Less than or equal to 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 D2SD vérifie la présence de conditions d’alarme de mode selon ces règles.
ModeAlarm
Si
Vrai
ProgCommand
n
Not equal to sign ProgCommandn-1 et
ProgCommand
n
Not equal to sign CommandStatus
Faux
ProgCommand = CommandStatus ou
le dispositif est en mode Outrepassement, Manuel ou Programme
Fournir une réponse
Vous avez des questions ou des commentaires sur cette documentation ? Veuillez envoyer vos commentaires ici.
Normal