Description de la fonction
La fonction INPUT_CHAR_QX
permet de recevoir
une chaîne de caractères envoyée par un équipement
série connecté à un module de communication série Modicon X80 (BMX NOM) situé dans une station EIO.
Le message reçu est enregistré dans une chaîne de caractères.
Les paramètres
supplémentaires EN
et ENO
peuvent
être configurés.
INPUT_CHAR_QX
fonctionne avec un module Modicon M340 BMX
NOM 0200 muni d'un micrologiciel version SV 1.4 ou ultérieure.
Si le micrologiciel est d'une version antérieure, une erreur
(STATUS
= 16#3301) est générée.Les blocs fonction de communication utilisent un chemin de transaction de données et requièrent plusieurs cycles pour effectuer une opération. Le nombre de chemins de transaction disponibles par module et par cycle MAST dépend du port de communication utilisé :
Les modules à port intégré Modbus Plus ou NOM prennent en charge jusqu'à 4 blocs simultanément.
Le port intégré Ethernet TCP/IP prend en charge jusqu'à 4 blocs simultanément.
Les modules TCP/IP Ethernet NOE, NOC et 140 CRP 312 00 prennent en charge jusqu'à 16 blocs simultanément.
D'autres blocs fonction de communication peuvent être programmés sur le même port de communication. Toutefois, le bloc de communication qui dépasse le nombre maximum sur ce port n'est traité qu'après la mise à disposition d'un des chemins de transaction. Le bloc suivant sur le port devient alors actif et commence à utiliser un chemin disponible.
Représentation en FBD
Représentation :

Représentation en LD
Représentation :

Représentation en IL
Représentation :
CAL INPUT_CHAR_QX_Instance
(ENABLE:=InputCharEnable, ABORT:=InputCharAbort, ADDR:=ModuleAddress,
RESET_BUF:=ResetInputBuffer, INPUT_LEN:=NbCharToRead, DONE=>InputCharSuccessfull,
ACTIVE=>InputCharActive, ERROR=>InputCharFaulty, STATUS=>ErrorCode,
REC_LEN=>NbCharReceived, REC_BUF=>ReceivedBuffer)
Représentation en ST
Représentation :
INPUT_CHAR_QX_Instance (ENABLE:=InputCharEnable,
ABORT:=InputCharAbort, ADDR:=ModuleAddress, RESET_BUF:=ResetInputBuffer,
INPUT_LEN:=NbCharToRead, DONE=>InputCharSuccessfull, ACTIVE=>InputCharActive,
ERROR=>InputCharFaulty, STATUS=>ErrorCode, REC_LEN=>NbCharReceived,
REC_BUF=>ReceivedBuffer)
Description des paramètres
Le tableau suivant décrit les paramètres d’entrée :
Paramètre |
Type |
Commentaire |
---|---|---|
|
|
Réglé sur 1 pour recevoir une chaîne de caractères. |
|
|
Réglé sur 1 pour abandonner l'opération en cours. |
|
|
Tableau contenant l'adresse du module Modicon M340 cible, c'est-à-dire le résultat de la fonction ADDMX. |
|
|
Ce paramètre permet de réinitialiser la mémoire de réception :
|
|
|
Nombre de caractères à recevoir :
|
Le tableau suivant décrit les paramètres de sortie :
Paramètre |
Type |
Commentaire |
---|---|---|
|
|
Réglé sur 1 lorsque la fonction s'est exécutée correctement. |
|
|
Réglé sur 1 lorsque la fonction est en cours d'exécution. |
|
|
Réglé sur 1 si une erreur est détectée par le bloc fonction. |
|
|
Fournit le code d'erreur si le bloc fonction détecte une erreur. |
|
|
Nombre de caractères reçus. |
|
|
Caractères reçus. |
Règles de programmation
Si plusieurs fonctions INPUT_CHAR_QX
sont lancées
simultanément, le paramètre RESET_BUF
doit
être réglé sur 0 (mémoire de réception du
module non réinitialisée).
Une requête de réinitialisation
(RESET_BUF
=1) doit être émise pour réinitialiser
la mémoire du module pour le message suivant, afin d'éviter
la réception de données anciennes. Si le paramètre RESET_BUF
est réglé sur 1, la fonction INPUT_CHAR_QX
doit être lancée avant l'envoi des
données. Sinon les caractères déjà reçus
sont supprimés.
Il est possible de lancer la fonction INPUT_CHAR_QX
avant l'envoi des caractères de fin à
l'automate.
Si des caractères de fin sont utilisés,
que le tampon en contient beaucoup et qu'il n'a pas été
réinitialisé, chaque fonction INPUT_CHAR_QX
reçoit la chaîne de début du tampon jusqu'au premier
caractère de fin. Les caractères lus sont ensuite supprimés
du tampon.
La lecture d'un nombre de caractères fonctionne de la même manière.
Si des caractères de fin sont configurés, il est possible d'utiliser la fonction de nombre de caractères.
INPUT_CHAR_QX
dans une communication
en mode caractère, les caractères reçus sur la liaison
série sont stockés dans un tampon en anneau. La taille de
ce buffer est de 1 024. Lorsque le buffer est plein, les autres caractères
sont perdus. Pour empêcher cette perte de caractères, il
est possible de sélectionner la gestion RTS/CTS. Dans ce cas,
lorsque le buffer en anneau est presque plein, l'UC réinitialise
son signal RTS pour interrompre l'envoi des caractères.Si une chaîne de plus de 1000 caractères est envoyée
(par exemple, 1013), le RTS n'autorise la réception que des 1000
premiers caractères, tandis que la fonction INPUT_CHAR_QX
attend le caractère de fin indéfiniment.
AVERTISSEMENT | |
---|---|