Questions fréquentes (FAQ)

Poser une question

Comment envoyer une requête de lecture de registres vers un esclave modbus à travers la passerelle TSXETG100 depuis le port Ethernet d'un Premium (TSX57) ?

Le synoptique de l'installation est le suivant :


  • L'automate Premium est relié à la passerelle ConneXium TSXETG100 via le réseau Ethernet.
  • La passerelle ConneXium TSXETG100 est le maître Modbus sur la liaison RS485.
  • L'automate Premium interroge les esclaves Modbus au travers de la passerelle TSXETG100.

Configuration de la passerelle ConneXium TSXETG100 :

Les paramètres de configuration de la passerelle sont accessibles via l'onglet Setup de son serveur Web (le login et password par défaut pour se connecter sont Administrator et Gateway).
Le paramétrage minimal à effectuer est :
  • L'affectation d'une adresse IP, d'un masque de sous-réseau et si nécessaire d'une Gateway.
  • La déclaration du port série en maître Modbus RTU avec des paramètres de communication adaptés aux esclaves Modbus.
Il n'est pas nécessaire de déclarer les esclaves dans la liste des appareils.


Configuration de l'automate Premium :


La TSXETG100 doit être déclarée au niveau de l'onglet Messagerie du coupleur Ethernet du Premium :
  • Affectation d'une adresse Xway (>= 100 en protocole Modbus TCP/IP).
  • Saisie de son adresse IP.
  • Choix du protocole MODBUS (implicite sous Unity Pro).

  Dans cette illustration (écran PL7), l'adresse IP de la passerelle TSXETG100 est 10.199.14.122. L'adresse Xway associée est 2.122.


Programmation de la requête de lecture avec la fonction READ_VAR sous PL7 :

L'adresse de la fonction READ_VAR est de la forme ADR#{adresse Xway}0.0.@ adresse de l'esclave avec :
  • adresse Xway : adresse Xway affectée à la passerelle dans la configuration des connexions, ici {2.122}.
  • adresse de l'esclave : adresse de l'esclave Modbus à interroger.

Exemple :
La requête suivante permet de lire 10 registres à partir du registre 1000 dans l'esclave d'adresse 1. Les valeurs lues dans l'esclave sont stockées dans le tableau %MW450:10 du Premium. La table de gestion de la fonction READ_VAR est %MW460:4.
La requête s'écrit alors READ_VAR(ADR#{2.122}0.0.1,'%MW',1000,10,%MW450:10,%MW460:4)


Programmation de la requête de lecture avec la fonction READ_VAR sous Unity Pro :

L'adresse de la fonction READ_VAR est de la forme ADDR('{adresse Xway}0.0.0.@ adresse de l'esclave. La requête de l'exemple ci-dessus s'écrit READ_VAR(ADDR('{2.122}0.0.0.1'),'%MW',1000,10,%MW460:4,%MW450:10);


Voir également : FA164349 : Comment lire les registres d'un esclave modbus au travers la passerelle TSXETG100 depuis le port Ethernet d'un Premium via le service I/O scanning ?

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