{}

Nos marques

Bienvenue sur le site Web de Schneider Electric

Bienvenue sur notre site Web.
Consulter notre FAQ
Comment émettre une requête de lecture 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 vers un équipement distant est réalisé par la fonction SEND_REQ.
Code
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#0036 pour une requête de lecture dans l'équipement distant

Table de transmission :

Mot de la table Contenu
%Mwi adresse X-Way de l'équipement distant
- octet de poids faible : numéro de réseau exprimé en héxa
- octet de poids 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 à lire dans l'équipement distant
%Mwi+5 nombre de mots à lire
  • La table de transmission a une taille fixe de 6 mots.
  • 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 connexions du coupleur TSXETZ410 ou TSXETZ510 via ses pages Web (voir l'illustration ci dessous).

Table de réception :

Mot de la table Contenu
Octet de poids fort Octet de poids faible
%Mwi octet de poids faible du 1er mot lu Type d'objet lu
%Mwi+1 octet de poids faible du 2ème mot lu octet de poids ford du 1er mot lu
%Mwi+2 octet de poids faible du Nème mot lu octet de poids ford du 2ème mot lu
%Mwi+N - octet de poids ford du Nème mot lu
  • Lors d'une requête de lecture la table de réception a une taille de 1 mot + le nombre de mots à lire dans l'équipement distant. L'utilisateur n'a pas à lui affecter de valeur.

Table de gestion :

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


Exemple de programmation de lecture de mots.

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

  • La requête permet de lire les mots %MW50, %MW51, %MW52 de l'équipement distant (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:6 (6 mots) :

  • %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 à lire*)
  • %MW105:=3;                (*nb des mots à lire*)
Préparation de la table de gestion %MW60:4 (4 mots) :
  • %MW62:=10;              (*time out par 100ms soit 1000ms*)
  • %MW63:=12;              (*longueur en octets des données à transmettre = taille de la table de transmission  X 2 soit 6 X 2=12 *)

Syntaxe de la requête :
  • SEND_REQ(ADR#0.0.4,16#0036,%MW100:6,%MW200:4,%MW60:4);
Résultat :

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


Astuce :
La fonction ROR1_ARB permet d'effectuer un décalage circulaire à droite d'un octet d'un tableau d'octets. Elle est utilisable après réception d'une réponse de la requête fonction SEND_REQ.
Dans cet exemple la fonction ROR1_ARB s'écrira : ROR1_ARB(%MB400:7) avec :
  • %MB400 = adresse du 1er octet de la table de réception (%MW200)
  • 7 = taille du tableau en octet correspondant au nombre de mots lus * 2  + 1 soit (3 * 2) +1
Octet de poids fortOctet de poids faible
%MW200octet de poids ford du 1er mot luoctet de poids faible du 1er mot lu
%MW201octet de poids ford du 2ème mot luoctet de poids faible du 2ème mot lu
%MW202octet de poids ford du 3ème mot luoctet de poids faible du 3ème mot lu
%MW203Type d'objet lu

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

Illustration

Configuration des connexions du coupleur TSXETZx10

Config

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 passerelle Ethernet TCP/IP / Modbus (comme par exemple un Twido raccordé au réseau Ethernet via le module TwidoPort 499TWD01100, un esclave derrière une passerelle TSXETG100) 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 à lire est au maximum de 63 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.
Voir également : Comment émettre une requête d'écriture de mots depuis un TSX Micro via un module TSXETZ410 ou TSXETZ510 en protocole Modbus TCP/IP ?

Schneider Electric France

En savoir plus
Gamme:
Les articles qui pourraient être utiles
En savoir plus
Gamme: