Start
La valeur 1 du signal Start déclenche l'opération XXMIT. La valeur 1 doit être appliquée jusqu'à ce que l'opération aboutisse ou qu'une erreur intervienne.
Command
Le bloc XXMIT interprète chaque bit du mot de commande comme une fonction à exécuter. Si les bits 9 et 8 sont activés simultanément ou si plusieurs bits parmi les bits 3, 2, 1 ou 0 sont activés simultanément ou si le bit 9 n'est pas activé alors que l'un des bits 3, 2, 1 ou 0 l'est, le système génère l'erreur 129. Pour plus d'informations, consultez la section Fonctions de communication du bloc XXMIT. La définition de chaque bit est indiquée dans le tableau ci-dessous.
Structure du mot de commande

Définition des bits de mot XXMIT Command
Bit |
Définition |
---|---|
Bit 15 (MSB, bit de poids fort) |
Avec les processeurs Momentum, une fois le bloc XMIT, XXMIT ou L9_XMIT actif, le port série ne repasse pas en mode esclave. Ce bit de commande a été créé pour rétablir la configuration initiale du port série Momentum. Le réglage sur 1 active la configuration du port telle qu'elle était dans l'application. Le bit DONE est mis à 1 lorsque l'action est terminée. |
Bit 14 Activation du contrôle modem RTS/CTS |
Réglé sur 1 lorsqu'un équipement DCE connecté à l'automate nécessite une reconnaissance matérielle à l'aide du contrôle RTS/CTS. Ce bit peut être utilisé conjointement avec les valeurs contenues dans StartDly et EndDly. Le délai de début de transmission garde le signal RTS activé pendant la durée StartDly (ms) avant l'envoi d'un message par XXMIT via le port de l'automate. De même, le délai de fin de transmission garde le signal RTS activé pendant la durée EndDly (ms) après l'envoi d'un message par XXMIT via le port de l'automate. Après l'expiration du délai de fin de transmission, le bloc XXMIT désactive le signal RTS. |
Bit 13 Activation du mode RS485 |
Réglé sur 1 lorsque le port sélectionné doit fonctionner en mode RS485. Sinon, il est réglé sur 0, valeur correspondant au mode RS232. En cas d'utilisation du port Modbus en mode RS485 avec la messagerie Modbus, veillez à utiliser exactement les mêmes paramètres (débit en bauds, bits de données, bits d'arrêt, parité) pour le bloc fonction XXMIT que pour ce port. |
Bit 12 Inversion de mot ASCII |
Réglé sur 1 pour l'utilisation avec les commandes de communication ASCII_IN, ASCII_OUT etTERM_ASCII_IN pour modifier l'ordre des octets du tableau MSGIN dans le format Concept. Lorsqu'il n'est pas défini (0), ces commandes conservent le format d'octets MSGIN actuel. |
Bit 11 Entrée ASCII terminée |
Réglé sur 1 pour supprimer et ignorer tous les caractères du tampon FIFO jusqu'à ce que la chaîne de départ soit trouvée. Ensuite, les caractères de départ et les caractères suivants sont écrits dans MsgIn jusqu'à ce que la séquence de fin soit trouvée. La chaîne de fin est également écrite dans MsgIn. Pour plus d'informations, consultez la section Fonction d'entrée ASCII terminée. |
Bit 10 Entrée ASCII simple |
Réglé sur 1 pour supprimer les caractères ASCII du tampon FIFO pour l'écriture dans le tableau MsgIn. Pour plus d'informations, consultez la section Fonction d'entrée ASCII simple. |
Bit 9 Activation des messages sous forme de chaînes ASCII |
Réglé sur 1 lorsque vous souhaitez envoyer des messages ASCII à partir de l'automate. XXMIT envoie des chaînes ASCII d'une longueur maximale de 1024 caractères. Programmez le message ASCII dans MsgOut. Utilisez le bit 9 OU le bit 8, mais n'utilisez pas les deux. |
Bit 8 Activation des messages Modbus |
Réglé sur 1 si vous souhaitez envoyer des messages Modbus à partir de l'automate. Les messages Modbus peuvent être envoyés au format RTU ou ASCII. Avec 8 bits de données, XXMIT utilise le format Modbus RTU. Avec 7 bits de données, XXMIT utilise le format Modbus ASCII. Utilisez le bit 9 OU le bit 8, mais n'utilisez pas les deux. |
Bit 7 Activation du tampon FIFO de réception ASCII |
Réglé sur 1 pour permettre au bloc fonction XXMIT de prendre le contrôle du port sélectionné (1) de l'automate. Le bloc commence à recevoir des caractères ASCII dans un tampon FIFO circulaire vide de 512 octets. Reportez-vous à Tampon FIFO de réception ASCII pour plus d'informations. |
Bit 6 Activation du caractère de retour arrière |
Défini sur 1 pour permettre le traitement particulier du caractère de retour arrière ASCII (BS, 8 hex) lors de l'utilisation d'une entrée ASCII simple (bit 10) ou d'une entrée ASCII terminée (bit 11). Si le bit 6 est défini, aucun caractère de retour arrière n'est stocké dans MsgIn. Pour plus d'informations, consultez la section Validation du caractère de retour arrière. |
Bit 5 Activation du contrôle de flux RTS/CTS |
Défini sur 1 pour autoriser le contrôle de flux matériel en duplex intégral à l'aide des signaux de synchronisation RTS et CTS pour les messages ASCII. Le contrôle de flux RTS/CTS fonctionne en mode d'entrée et en mode de sortie. Reportez-vous à Validation du contrôle de flux RTS/CTS pour plus d'informations. |
Bit 4 Activation du contrôle de flux Xon/Xoff |
Défini sur 1 pour permettre un contrôle de flux logiciel en duplex intégral, à l'aide des caractères ASCII Xon (DC1, 11 hex) et Xoff (DC3, 13 hex). Le contrôle de flux Xon/Xoff fonctionne en mode d'entrée et en mode de sortie. Reportez-vous à Validation du contrôle de flux Xon/Xoff pour plus d'informations. |
Bit 3 Modem à numérotation par impulsion |
Défini sur 1 si vous utilisez un modem à numérotation automatique compatible Hayes et souhaitez composer un numéro de téléphone en utilisant la numérotation par impulsion. Programmez le numéro de téléphone dans MsgOut. La longueur du message doit être définie dans MsgLen. Les numéros composés par impulsion sont envoyés au modem, automatiquement précédés d'ATDT et suivis d'un retour chariot <CR> et d'un retour à la ligne <LF>. Le message de numérotation étant une chaîne ASCII, le bit 9 doit être activé avant l'envoi du numéro à composer. |
Bit 2 Raccrochage du modem |
Défini sur 1 si vous utilisez un modem à numérotation automatique compatible Hayes et souhaitez raccrocher le modem. Vous devez utiliser le programme utilisateur pour activer ce bit. Le message de raccrochage étant une chaîne ASCII, le bit 9 doit être activé avant l'envoi du message. Les messages de raccrochage sont envoyés au modem, automatiquement précédés de +++AT et suivis d'un retour chariot <CR> et d'un retour à la ligne <LF>. XXMIT recherche une réponse de déconnexion correcte de la part du modem avant d'activer (ON) le signal de sortie Done qui indique que l'exécution a réussi. |
Bit 1 Modem à numérotation à tonalité |
Défini sur 1 si vous utilisez un modem à numérotation automatique compatible Hayes et souhaitez composer un numéro de téléphone au clavier. Programmez le numéro de téléphone dans MsgOut. La longueur du message doit être définie dans MsgLen. Les numéros composés par tonalité sont envoyés au modem, automatiquement précédés d'ATDT et suivis d'un retour chariot <CR> et d'un retour à la ligne <LF>. Le message de numérotation étant une chaîne ASCII, le bit 9 doit être activé avant l'envoi du numéro à composer. |
Bit 0 Initialisation du modem |
Défini sur 1 si vous utilisez un modem à numérotation automatique compatible Hayes et souhaitez initialiser le modem. Programmez le message d'initialisation dans MsgOut et la longueur du message dans MsgLen. Tous les messages sont envoyés au modem, automatiquement précédés de AT et suivis d'un retour chariot <CR> et d'un retour à la ligne <LF>. Le message d'initialisation étant une chaîne ASCII, le bit 9 doit être activé avant l'envoi du message. |
Conversion du mot Command

Si l'application doit être convertie de Concept à Control Expert, la nouvelle numérotation des bits doit être prise en compte lorsque l'accès au mot Command s'effectue par bits. Cette règle ne s'applique PAS lorsque vous accédez au mot de communication à l'aide de mots.
MsgOut
MsgOut contient les données du message à transférer, par exemple des caractères ASCII pour un transfert ASCII, la définition des caractères de fin pour une entrée ASCII terminée ou des modèles Modbus pour des messages du maître Modbus.
Le type de données à affecter au paramètre doit respecter les exigences de la fonction à exécuter. Dans le cas d'une opération Modbus, le type de données de MsgOut et MsgIn doit être identique
MsgLen
Vous devez entrer la longueur du message en cours selon la fonction XXMIT sélectionnée.
Le tableau suivant présente les fonctions Modbus et ASCII :
Fonction XXMIT |
Sous-fonction |
Longueur du message |
---|---|---|
Messagerie Modbus |
01, 02, 03, 04, 05, 06, 08, 15, 16 |
5 |
Entrée ASCII terminée |
5 |
|
Entrée ASCII simple |
1 ... 1024 |
|
Messages sous forme de chaînes ASCII |
1 ... 1024. La longueur sélectionnée doit correspondre à la taille du tableau affecté à MsgOut. Dans le cas contraire, le système génère l'erreur 129. |
Port
Le Port définit l'interface de communication. Les valeurs autorisées sont 0 ou 1.
Baudrate
XXMIT prend en charge les débits de données suivants : 50, 75, 110, 134, 150, 300, 600, 1200, 1800, 2000, 2400, 3600, 4800, 7200, 9600, 19200. Pour configurer un débit de données, entrez le nombre décimal correspondant dans ce champ. Si vous entrez un débit de données incorrect, le bloc signale une configuration incorrecte (code d'erreur 127) dans l'élément Status du bloc XXMIT
Databits
XXMIT prend en charge les bits de données suivants : 7 et 8. Pour configurer une taille de bit de données, entrez un nombre décimal dans cet élément. Les messages Modbus peuvent être envoyés en mode ASCII ou RTU. Le mode ASCII nécessite 7 bits de données, tandis que le mode RTU en nécessite 8. Lorsque vous envoyez un message en caractères ASCII, vous pouvez utiliser 7 ou 8 bits de données. Si vous entrez un bit de données incorrect, le bloc signale une configuration incorrecte (code d'erreur 127) dans l'élément Status du bloc XXMIT. Pour plus d'informations sur les formats des messages Modbus, consultez le document Modicon Modbus Protocol Reference Guide (www.modbus.org).
Stopbits
XXMIT prend en charge un ou deux bits d'arrêt. Entrez une valeur décimale : 1 (un bit d'arrêt) ou 2 (deux bits d'arrêt). Si vous entrez un bit d'arrêt incorrect, le bloc signale une configuration incorrecte (code d'erreur 127) dans l'élément Status du bloc XXMIT.
Parity
XXMIT prend en charge la parité suivante : aucune, impaire et paire. Entrez une valeur décimale : 0 (aucune parité), 1 (parité impaire) ou 2 (parité paire). Si vous entrez un bit de parité incorrect, le bloc signale une configuration incorrecte (code d'erreur 127) dans l'élément Status du bloc XXMIT.
RespTout
Entrez la valeur en millisecondes (ms) du délai d'attente du bloc XXMIT pour la réception d'une réponse valide d'un équipement esclave (automate, modem, etc.). De plus, ce délai s'applique aux transmissions ASCII et aux opérations de contrôle de flux. Si le message de la réponse n'est pas entièrement structuré dans le délai défini, le bloc XXMIT génère un défaut. La plage valide est comprise entre 0 et 32 767 ms. La temporisation débute après l'envoi du dernier caractère du message.
RetryLmt
Entrez le nombre de tentatives d'envoi d'un message par le bloc XXMIT pour obtenir une réponse valide d'un équipement esclave (automate, modem, etc.). Si le message de la réponse n'est pas entièrement structuré dans le délai défini, le bloc XXMIT génère un défaut et un code de défaut. La plage valide est comprise entre 0 et 32 767 tentatives. Ce champ est utilisé conjointement avec RespTout.
StartDly
Lorsque le contrôle RTS/CTS est activé, entrez la valeur en millisecondes (ms) du délai d'attente du bloc XXMIT pour la réception d'un signal CTS avant l'envoi d'un message à partir du port de l'automate. Vous pouvez également utiliser ce registre lorsque le contrôle RTS/CTS n'est PAS activé. Dans ce cas, la durée définie détermine le temps d'attente du bloc XXMIT avant qu'il envoie un message à partir du port de l'automate. Vous pouvez l'utiliser comme temporisateur avant message. La plage valide est comprise entre 0 et 32 767 ms.
EndDly
Lorsque le contrôle RTS/CTS est activé, indiquez la valeur en millisecondes (ms) du délai durant lequel le bloc XXMIT garde le signal RTS activé après l'envoi du message à partir du port de l'automate. Une fois ce délai écoulé, le bloc XXMIT expire. Vous pouvez également utiliser ce registre lorsque le contrôle RTS/CTS n'est PAS activé. Dans ce cas, la durée définie détermine le temps d'attente du bloc XXMIT avant qu'il envoie un message à partir du port de l'automate. Vous pouvez l'utiliser comme un temporisateur après message. La plage valide est comprise entre 0 et 32 767 ms.

Active
La valeur 1 indique qu'une opération XXMIT est en cours.
Done
La valeur 1 indique que l'opération XXMIT a été exécutée.
Error
La valeur 1 indique qu'une erreur s'est produite ou que l'opération XXMIT en cours est terminée.
MsgIn
MsgIn contient les données du message entrant pour une entrée ASCII terminée ou une entrée ASCII simple.
Dans le cas d'une opération Modbus, le type de données doit être identique au type du champ MsgOut.
RecCount
Cet élément affiche le nombre de caractères reçus.
Status
Cet élément affiche un code d'erreur généré par le bloc XXMIT.
Le tableau ci-dessous contient la liste complète.
Etat d'erreur
Code d'erreur |
Description du défaut |
---|---|
1 |
Exception Modbus - Fonction non autorisée |
2 |
Exception Modbus - Adresse de données non autorisée |
3 |
Exception Modbus - Valeur de données non autorisée |
4 |
Exception Modbus - Défaillance équipement esclave |
5 |
Exception Modbus - Acquittement |
6 |
Exception Modbus - Equipement esclave occupé |
7 |
Exception Modbus - Acquittement négatif |
8 |
Exception Modbus - Erreur de parité mémoire |
9 ... 99 |
Réservé |
100 |
La zone de données de l'automate esclave ne peut être égale à 0 |
101 |
La zone de données de l'automate maître ne peut être égale à 0 |
102 |
Bit (%M) non configuré |
103 |
Mot mémoire (%MW) de l'automate maître non configuré |
104 |
La longueur des données ne peut être égale à 0 |
105, 106 |
Réservé |
107 |
Expiration du délai de transmission de message (erreur générée lorsque l'émetteur-récepteur asynchrone universel ne parvient pas à terminer une transmission dans un délai de 10 secondes ; cette erreur contourne le compteur de répétition et active la sortie d'erreur à la première erreur ; voir la section Informations supplémentaires sur l'erreur 107 ci-dessous). |
108 |
Erreur non définie |
109 |
Le modem a signalé une ERREUR |
110 |
Le modem a renvoyé le message PAS DE PORTEUSE |
111 |
Le modem a renvoyé le message PAS DE TONALITE |
112 |
Le modem a renvoyé le message OCCUPE |
113 |
Somme de contrôle LRC de l'automate esclave non valide (voir la remarque 1 ci-dessous.) |
114 |
Somme de contrôle CRC de l'automate esclave non valide (voir la remarque 1 ci-dessous.) |
115 |
Code de fonction Modbus non valide |
116 |
Expiration du délai du message de réponse Modbus (voir la remarque 2 ci-dessous.) |
117 |
Expiration du délai de réponse Modem |
118 |
XXMIT n'a pas obtenu d'accès au port de communication numéro 1 de l'automate |
119 |
XXMIT n'a pas pu activer le récepteur du port de l'automate |
120 |
XXMIT n'a pas pu activer l'émetteur-récepteur asynchrone universel de l'automate |
121 |
Réservé |
122 |
Port non valide |
123 |
Réservé |
124 |
Etat interne non défini |
125 |
Mode de diffusion non autorisé avec ce code de fonction Modbus |
126 |
Le périphérique DCE n'a pas activé le signal CTS |
127 |
|
128 |
Réponse inattendue de la part de l'esclave Modbus (voir remarque 1 ci-dessous.) |
129 |
Paramétrage du mot de commande non autorisé |
130 |
Mot de commande modifié en étant actif |
131 |
Nombre de caractères non valide |
132 |
Réservé |
133 |
Erreur de débordement de l'entrée FIFO ASCII |
134 |
Nombre de caractères de début ou de fin non valide |
135...149 |
Réservé |
150 |
Port configuré déjà utilisé par une autre instance du bloc XXMIT ou port configuré non pris en charge sur cet automate |
151 |
MsgOut est inférieur à 12 octets alors que la fonction Messages Modbus maître est sélectionnée. Inclut également une valeur du paramètre MsgLen inférieure à 5. |
152 |
La variable connectée à MsgOut est inférieure à la valeur du paramètre MsgLen, alors que la fonction Messages sous forme de chaînes ASCII est sélectionnée. |
153 |
La variable connectée à MsgIn est inférieure à la valeur du paramètre MsgLen, alors que la fonction Entrée ASCII terminée ou Entrée ASCII simple est sélectionnée. |
154 |
Le bit Start de XXMIT est réglé sur 1 dans un automate Quantum à redondance d'UC, qui n'est pas en mode Primaire. |
Si l'esclave Modbus
utilisé est un automate Modicon, vérifiez la configuration
de son port Modbus
.
2) Pour le bloc fonction XXMIT en mode maître Modbus, si l'erreur 116 persiste après une configuration correcte à l'aide du clavier ou de modifications en ligne, régénérez l'application et transférez-la à l'automate.
Informations supplémentaires sur l'erreur 107
L'erreur 107 apparaît en cas d'incohérence détectée dans la configuration du bloc XXMIT. Si le port interne du bloc XXMIT est configuré en mode RS232 et que le mot de commande est en mode RS485 (#2100), le mode de communication doit être modifié.
Le tableau ci-dessous montre comment modifier le mode de communication si l'erreur 107 apparaît :
Etape |
Action |
---|---|
1 |
Connecter le PC à Control Expert |
2 |
Mettre l'automate en mode STOP |
3 |
Modifier les paramètres du port Modbus (RS232 ou RS 485) |
4 |
Modifier le mot de commande en fonction du mode requis |
5 |
Régénérer l'application |
6 |
Télécharger l'application |
7 |
Mettre l'automate en mode RUN |
le basculement entre le mode RS232 et le mode RS485 prend 3 secondes lorsque les paramètres du port interne et les mots de commande correspondent. Pendant ce délai de 3 secondes, le code d'erreur 126 (DCE non activé, uniquement pour le mode RS232) apparaît ;
le basculement entre le mode RS485 et le mode RS232 est immédiat car il s'agit de la configuration par défaut.
Retry
La valeur affichée ici indique le nombre de tentatives effectuées par le bloc XXMIT. Cet élément est en lecture seule.
Cette sortie est mise à jour une seule fois lorsque l'opération est terminée.
Pour Modicon Quantum, la sortie Retry est mise à jour à chaque nouvelle tentative.
Pour Modicon Momentum, la sortie Retry est mise à jour une fois l'opération terminée (avec succès ou en échec).