Questions fréquentes (FAQ)

Poser une question

Comment émettre une requête d'écriture de mots depuis un TSX Micro via un module TSXETZ410 ou TSXETZ510 en protocole Modbus TCP/IP ?

L'envoi via le module TSXETZ410 ou TSXETZ510 d'une requête Modbus depuis un TSX Micro ( TSX37 ) vers un équipement distant est réalisé par la fonction SEND_REQ.




Le détail des paramètres de la fonction SEND_REQ est le suivant :

@dest : adresse Unitelway de l'ETZ (Ad0 Number dans la page web Setup /UNITELWAY CONFIGURATION du coupleur). Exemple :

  • ADR#0.0.4 si l'adresse Unitelway est  4 (valeur par défaut des coupleurs TSXETZ410 et TSXETZ510)
  • ADR#0.0.6 si l'adresse Unitelway est  6

Code requête : 16#0037 pour une requête d'écriture de mots dans l'équipement distant

Table de transmission :


Mot de la table  Contenu
%Mwi  adresse X-Way de l'équipement distant
 - octet de poid faible : numéro de réseau exprimé en héxa
 - octet de poid fort : numéro de station exprimé en héxa
%Mwi+1  16#0000 (adresse)
%Mwi+2  16#0000 (adresse)
%Mwi+3  16#0768 (type segment: internal word)
%Mwi+4  adresse du 1er mot à écrire dans l'équipement distant
%Mwi+5  nombre de mots à écrire
%Mwi+6  1ère valeur à écrire
%Mwi+7  2ème valeur à écrire
%Mwi+8  N ème valeur à écrire
  • La table de transmisson a une taille de 6 mots + le nombre de mots à écrire dans l'équipement distant.
  • Avec PL7, pour une requête Modbus TCP/IP, le numéro de station doit être > 100.
  • L'équipement distant doit être déclaré dans la configuration des connections du coupleur TSXETZ410 ou TSXETZ510 via ses pages Web (voir l'illustration ci dessous).

Table de réception :

  • Lors d'une requête d'écriture, la table de réception a une taille de 1 mot. L'utilisateur n'a pas à lui affecter de valeur.

Table de gestion :

Numéro du mot
Octet de poids fort
Octet de poids faible
%MWi Numéro d'échange Bit 0 :Bit d'activité
%MWi+1
Compte-rendu
d'opération
Compte-rendu
de communication
%MWi+2           Timeout                
%MWi+3 Longueur de la table de transmission (en octects)    



Exemple de programmation d’écriture de mots.

Cet exemple permet d’envoyer une requête Modbus vers un équipement distant

  • La requête permet d’écrire dans les mots %MW50, %MW51, %MW52 de l'équipement distant les valeurs 4, 5 et 6 respectivement (soit 3 mots).
  • L’adresse X-Way de l'équipement distant déclarée dans le coupleur ETZ est : 2.136  (16# 8802).
  • Le coupleur ETZ est à l'adresse Unitelway 4 (ADR#0.0.4).

Préparation de la table de transmission %MW100:9  (6 mots + nombre de mots à écrire soit 9 mots dans notre exemple) :

  • %MW100:=16#8802; (adresse XWAY AP distant : station=136 décimal soit 88 Hexa; réseau=2 décimal soit 02 Héxa)
  • %MW101:=16#0000;  (adresse)
  • %MW102:=16#0000;  (adresse)
  • %MW103:=16#0768;  (*type segment: internal word*)
  • %MW104:=50;              (*adresse du 1er mot à écrire*)
  • %MW105:=3;                (*nb des mots à écrire*)
  • %MW106:=4                 (*valeur des données à écrire*)
  • %MW107:=5;                (*valeur des données à écrire*)
  • %MW108:=6;                (*valeur des données à écrire*)
Préparation de la table de gestion %MW60:4   (4 mots) :
  • %MW62:=10;              (*time out par 100ms soit 1000ms*)
  • %MW63:=18;              (*longueur en octets des données à transmettre=taille de la table de transmission  X 2 soit 9 X 2=18 *)

Syntaxe de la requête :
  • SEND_REQ(ADR#0.0.4,16#0037,%MW100:9,%MW200:1,%MW60:4);

Résultat :

La confirmation d'un échange correct est signifiée par la valeur 16#FE00 dans le mot de compte-rendu de la table de gestion soit %MW61 dans notre exemple.


Illustration : Application PL7 mettant en oeuvre l'exemple décrit ci-dessus.


Illustration : Déclaration de l'équipement distant dans le coupleur TSXETZ410 ou TSXETZ510.


Remarques :

  • L'équipement distant peut être par exemple un Twido équipé d'un port Ethernet intégré (TWDLCAE40DRF, TWDLCDE40DRF).
  • Si l'équipement distant se trouve derrière une une passerelle Ethernet TCP/IP / Modbus (comme par exemple un Twido raccordé au réseau Ethernet via le module TwidoPort 499TWD01100) alors les
    mots %Mwi+1 et %Mwi+2 de la table de transmission doivent prendre les valeurs suivantes :
     - %Mwi+1 := 16#0005
     - %Mwi+2 := 16#xx00 avec xx adresse Modbus de l'esclave Modbus (par exemple 16#0100 pour un esclave @1, ce qui est généralement le cas pour le module TwidoPort 499TWD01100).
  • Le nombre de mots à écrite est au maximum de 57 mots (limitation liée à celle de la prise Terminal de l’automate).
  • L'exemple ci-dessus reste un exemple rudimentaire qui a pour but d'illustrer cette Faq (les erreurs de communication ne sont pas traitées).
  • Le manuel utilisateur des modules TSX ETZ 410/510 est disponible en fichier attaché.
Voir également : Comment émettre une requête de lecture de mots depuis un TSX Micro via un module TSXETZ410 ou TSXETZ510 en protocole Modbus TCP/IP ?

Cela vous a-t-il aidé ?
Que pouvons-nous faire pour améliorer l'information ?