Encoder_LMC058 : bloc fonctionnel du codeur
Ce bloc fonctionnel contrôle un compteur de type codeur :
Le nom d'instance du bloc fonctionnel doit correspondre au nom défini par la configuration.
Représentation en langage IL et ST
Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction.
Description des variables d'E/S
Le tableau suivant décrit les variables d'entrée :
Entrées |
Type |
Commentaire |
---|---|---|
EN_Enable |
BOOL |
TRUE = autorise l'activation du codeur via l'entrée Enable (si elle est configurée). |
EN_Preset |
BOOL |
TRUE = autorise la synchronisation et le démarrage du codeur via l'entrée Sync (si elle est configurée). |
EN_Cap |
BOOL |
TRUE = active l'entrée Capture (si elle est configurée). |
EN_Compare |
BOOL |
TRUE = active l'opération de comparaison (en utilisant les seuils 0, 1, 2 et 3) : ocomparaison de base (bits de sortie TH0, TH1, TH2, TH3) oréflexe (bits de sortie Reflex0, Reflex1) oévénements (pour déclencher des tâches externes en cas de franchissement de seuil) |
EN_Out0 |
BOOL |
TRUE = permet à Output0 de renvoyer la valeur de Reflex0 (si elle est configurée, sur les modules DM72F). |
EN_Out1 |
BOOL |
TRUE = permet à Output1 de renvoyer la valeur de Reflex1 (si elle est configurée, sur les modules DM72F). |
F_Enable |
BOOL |
Force la condition d'activation Enable. En cas de détection d'erreur SSI, la mise à 0 de l'entrée F_Enable acquitte l'erreur. |
F_Preset |
BOOL |
Force la condition de préréglage Preset. |
F_Out0 |
BOOL |
TRUE = force Output0 à prendre la valeur 1 (si Reflex0 est configuré). |
F_Out1 |
BOOL |
TRUE = force Output1 à prendre la valeur 1 (si Reflex1 est configuré). |
ACK_Overflow |
BOOL |
Sur le front montant, réinitialise Overflow_Flag. |
ACK_Preset |
BOOL |
Sur le front montant, réinitialise Preset_Flag. |
ACK_Cap0 |
BOOL |
Sur le front montant, réinitialise Cap0_Flag. |
ACK_Cap1 |
BOOL |
Sur le front montant, réinitialise Cap1_Flag. |
SuspendCompare |
BOOL |
TRUE = les résultats de l'opération de comparaison sont figés : oLes bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1 conservent leur dernière valeur. oLes sorties matérielles 0 et 1 conservent leur dernière valeur. oLes événements sont masqués. Les variables EN_Compare, EN_Reflex0, EN_Reflex1, F_Out0, F_Out1 restent opérationnelles tant que SupendCompare est défini. |
Le tableau suivant décrit les variables de sortie :
Sorties |
Type |
Commentaire |
---|---|---|
ENC_REF |
Référence du codeur |
|
Encoder_Err |
BOOL |
TRUE = indique qu'une erreur a été détectée. Pour obtenir des informations sur cette erreur détectée, utilisez le bloc fonctionnel EXPERTGetDiag |
Validity |
BOOL |
TRUE = indique que les valeurs de sortie du bloc fonctionnel sont valides. |
TH0 |
BOOL |
Défini à 1 lorsque CurrentValue > Seuil 0 (si configuré). Actif uniquement si EN_Compare est défini. |
TH1 |
BOOL |
Défini à 1 lorsque CurrentValue > Seuil 1 (si configuré). Actif uniquement lorsque EN_Compare est défini. |
TH2 |
BOOL |
Défini à 1 lorsque CurrentValue > Seuil 2 (si configuré). Actif uniquement si EN_Compare est défini. |
TH3 |
BOOL |
Défini à 1 lorsque CurrentValue > Seuil 3 (si configuré). Actif uniquement si EN_Compare est défini. |
Overflow_Flag |
BOOL |
Défini à 1 lorsque le codeur dépasse ses limites. |
Preset_Flag |
BOOL |
Défini à 1 après le préréglage du codeur. |
Cap0_Flag |
BOOL |
Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture. Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. |
Cap1_Flag |
BOOL |
Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture. Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. |
Réflexe 0 |
BOOL |
Etat de Reflex0 (si configuré). Actif uniquement si EN_Compare est défini. |
Réflexe 1 |
BOOL |
Etat de Reflex1 (si configuré). Actif uniquement si EN_Compare est défini. |
Out0 |
BOOL |
Indique l'état de Output0. |
Out1 |
BOOL |
Indique l'état de Output1. |
Low_Limit |
BOOL |
Géré uniquement pour les modes Incrémental et Linéaire dans Verrouiller les limites. Défini à 1 lorsque le codeur dépasse - 2 147 483 648. Réinitialisé à 0 lors du préréglage ou la réinitialisation du codeur. |
High_Limit |
BOOL |
Géré uniquement pour les modes Incrémental et Linéaire dans Verrouiller les limites. Défini à 1 lorsque le codeur dépasse + 2 147 483 648. Réinitialisé à 0 lors du préréglage ou la réinitialisation du codeur. |
EncoderValue |
DINT |
Valeur actuelle du codeur. |