Informations générales sur la gestion des blocs fonction d'administration et de mouvement
Gestion des variables d'entrée
Le bloc fonction démarre sur le front montant de l'entrée Execute.
Les modifications postérieures des variables d'entrée ne sont pas prises en compte.
Selon les normes CEI 61131-3, s'il manque une entrée de variable dans un bloc fonction, c'est-à-dire, si le bloc fonction reste ouvert ou n'est pas connecté, c'est la valeur de l'appel précédent de l'instance du bloc fonction qui est utilisée. Lors du premier appel, la valeur configurée initiale s'applique dans ce cas. Par conséquent, il est préférable de toujours attribuer des valeurs connues aux entrées d'un bloc fonction pour éviter des difficultés lors du débogage du programme. Pour les blocs fonction HSC et PTO, il est recommandé d'utiliser l'instance une seule fois et que celle-ci se trouve dans la tâche principale.
Gestion des variables de sortie
La sortie Done, InVelocity ou InFrequency est mutuellement exclusive avec les sorties Busy, CommandAborted et Error : une seule d'entre elles peut être TRUE sur un même bloc fonction. Si l'entrée Execute a pour valeur TRUE, l'une de ces sorties a également la valeur TRUE.
Au front montant de l'entrée Execute, la sortie Busy est définie. Cette sortie Busy reste définie pendant l'exécution du bloc fonction et est réinitialisée sur le front montant de l'une des autres sorties (Done, InVelocity, InFrequency, CommandAborted ou Error).
La sortie Done, InVelocity ou InFrequency est définie une fois l'exécution du bloc fonction achevée.
Lorsque l'exécution d'un bloc fonction est interrompue par un autre, c'est la sortie CommandAborted qui est définie.
Lorsque l'exécution d'un bloc fonction est arrêtée en raison de la détection d'une erreur, la sortie Error est définie et le numéro de l'erreur détectée est fourni par la sortie ErrId.
Les sorties Done, InVelocity, InFrequency, Error, ErrID et CommandAborted sont réinitialisées sur le front descendant de l'entrée Execute. Si l'entrée Execute est réinitialisée avant la fin de l'exécution, les sorties sont définies pour un cycle de tâches à la fin de l'exécution.
Lorsqu'une instance d'un bloc fonction reçoit une nouvelle entrée Execute avant la fin de son exécution, le bloc fonction ne génère aucun retour, tel que Done, pour l'action précédente.
Tous les blocs comportent 2 sorties qui peuvent signaler une erreur détectée lors de l'exécution du bloc fonction :
oError = TRUE lorsqu'une erreur est détectée.
oErrID : Lorsque Error = TRUE, renvoie l'ID de l'erreur détectée.