Description de la fonction

La fonction CANCEL permet d'interrompre une fonction de communication asynchrone en cours. Le numéro d'échange affecté à chaque communication permet d'identifier la fonction à arrêter.

Le laps de temps entre la requête de fonction CANCEL et l'action CANCEL dépend du nombre de fonctions de communication en cours. L'utilisation d'une fonction CANCEL signifie, pour toutes les voies et toutes les fonctions élémentaires (EF), que :

  • les fonctions de communication asynchrones affectées qui sont en cours sont annulées,

  • les trames dédiées stockées dans le tampon avant l'utilisation de la fonction CANCEL peuvent être envoyées.

NOTE : en mode caractère, les fonctions élémentaires affectées INPUT_CHAR, INPUT_BYTE et/ou OUT_IN_CHAR en cours sont annulées et la voie de liaison série asynchrone est déverrouillée si elle est en attente de critères de fin.
NOTE : l'exécution de cette fonction est synchrone à l'exécution du programme automate (la fonction de communication est arrêtée dans le cycle automate où a été exécutée la fonction CANCEL).

Les paramètres supplémentaires EN et ENO peuvent être configurés.

NOTE : l'annulation d'un échange est effective au niveau de l'application, mais n'a aucun effet au niveau du port de communication physique. Dès qu'une fonction de communication est lancée, l'échange est géré au niveau du port de communication.

L'annulation d'une fonction de communication au niveau de l'application se traduit par la réinitialisation du bit d'activité, l'enregistrement de la valeur 2 dans le rapport et la libération du numéro d'échange. Si finalement, le port reçoit une réponse à la requête d'échange, elle ne peut plus être prise en compte au niveau de l'application.

De la même manière, l'événement Time Out (délai d'attente) de la fonction de communication n'arrête pas les nouvelles tentatives de transmission d'un module en cours de communication. Cela peut se produire lorsque les communications sur le réseau sont lentes et/ou de mauvaise qualité, entraînant des retransmissions. Dans ce cas, le délai d'attente de l'application au niveau des fonctions élémentaires doit être cohérent avec les délais d'attente du protocole configurés sur le module.

Représentation en FBD

Représentation :

Représentation en LD

Représentation :

Représentation en IL

Représentation :

LD Exchange_Num
CANCEL
ST Report

Représentation en ST

Représentation :

CANCEL(Exchange_Num, Report);

Description des paramètres

Le tableau suivant décrit les paramètres d’entrée :

Paramètre

Type

Commentaire

NUM

INT

Ce paramètre spécifie le numéro de l'échange dont l'exécution doit être arrêtée.

Le tableau suivant décrit les paramètres de sortie :

Paramètre

Type

Commentaire

CR

INT

Ce compte rendu d'opération prend l'une des deux valeurs suivantes :

  • 16#00 : opération correcte. La communication est interrompue, le bit d'activité de la fonction interrompue est réglé sur 0 et son compte rendu prend la valeur 2.

  • 16#0C : numéro d'échange incorrect.