Communication avec l'adaptateur
 
Description
Chaque adaptateur contient trois groupes de registres permettant à l'application de communiquer avec l'adaptateur de l'embase.
L'application accède aux registres pour :
Tous les paramètres sont accessibles en tant que référence 4XXXX par les blocs de fonction MSTR dans le programme d'application.
Registres d'accès de l'adaptateur de communication
Registres de données
40001 hexadécimale – Entrée ou sortie de données
La référence de départ 40001 est utilisée pour adresser des données d'entrée provenant des entrées de champs et des données de sortie vers des sorties de champ. Les données sont transférées au format CEI. Le mappage entre les registres de données du contrôleur et les borniers de l'embase est propre à chaque base. Cette affectation est décrite dans le Guide utilisateur des embases Momentum (870USE002).
Pour écrire les sorties sur une embase d'E/S Momentum, utilisez les registres 40000x en commençant par le registre 400001 (code fonction Modbus 16).
Pour lire les entrées sur une embase d'E/S Momentum, utilisez les registres 40000x en commençant par le registre 400001 (code fonction Modbus 3).
Cet adaptateur prend également en charge le code fonction Modbus 23, qui regroupe les requêtes de lecture et d'écriture dans le même paquet.
Registres de configuration
4F001 hexadécimale – Valeur de temporisation de pause des sorties
La référence 4F001 indique la durée pendant laquelle les sorties sont maintenues dans leur état actuel, si elles ne sont pas mises à jour par une nouvelle commande d'écriture Modbus TCP/IP. Si le temps de maintien du module expire avant la réception d'une nouvelle commande d'écriture Modbus TCP/IP, toutes les sorties sont réglées sur le zéro logique (0).
La longueur du champ est d'un mot. La valeur du délai d'attente est exprimée en unités de 10 millisecondes. Les valeurs correctes sont 0 (zéro) ou une plage comprise entre 30 (300 millisecondes) et 6 000 (60 secondes). La valeur par défaut est 100 (1 seconde).
Le contenu des registres peut être lu via une commande de lecture Modbus TCP/IP.
Remarque : la valeur 0 (zéro) dans ce registre indique un temps de maintien indéfini et les sorties ne sont pas modifiées si elles ne sont pas mises à jour par une écriture Modbus TCP/IP.
AVERTISSEMENT
RUPTURE DE COMMUNICATION – TEMPS DE MAINTIEN INDEFINI
  • Configurez le contrôleur afin qu'il lise périodiquement l'état de fonctionnement du module d'E/S (mot 10) du bloc d'état du module, registre 4F801 hexadécimal, du Momentum 170ENT11002 (170ENT11000) pour vérifier que la communication entre le contrôleur et l'adaptateur Momentum 170ENT11002 (170ENT11000) est opérationnelle et que le contrôleur fonctionne correctement.
  • Le bloc d'état du module est décrit dans le tableau Bloc d'état du module ci-dessous.
Si le temps de maintien indéfini est sélectionné et que la communication est interrompue entre le contrôleur et l'adaptateur Momentum 170ENT11002 (170ENT11000), les sorties d'E/S conservent la dernière valeur écrite jusqu'à ce que la communication soit rétablie.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels.
4F401 hexadécimale – Propriété des droits d'écriture
Lorsque l'adaptateur est mis sous tension pour la première fois, il attribue des droits d'écriture exclusifs au premier abonné qui lui écrit à l'aide de la commande d'écriture Modbus. L'adaptateur conserve un second temporisateur interne de 60 secondes pour la gestion des droits d'écriture et réserve des droits exclusifs à cet abonné tant que ce dernier continue à écrire sur l'adaptateur pendant le temps de réservation.
La référence initiale 4F401 détermine les adresses IP de trois abonnés supplémentaires maximum pouvant posséder simultanément des droits d'écriture sur l'adaptateur. Un abonné possédant des droits d'écriture peut écrire jusqu'à trois adresses IP (2 mots par adresse) sur l'adaptateur, en commençant par 4F401. Une fois ces adresses enregistrées, l'un des trois abonnés peut ensuite écrire sur l'adaptateur, en plus de l'abonné qui s'est vu attribuer les droits en premier. Cela permet à quatre abonnés maximum de posséder simultanément des droits d'écriture sur l'adaptateur.
Si l'un de ces trois abonnés privilégiés effectue une opération d'écriture au cours de l'intervalle de 60 secondes, aucun autre abonné ne peut écrire sur l'adaptateur. Si l'expiration du temporisateur est autorisée, n'importe quel abonné peut écrire sur l'adaptateur.
Notez que ce temporisateur de droit d'écriture de 60 secondes est différent du temporisateur de maintien des sorties et ne s'applique qu'aux droits d'écriture. La durée de 60 secondes est fixe et n'est pas accessible par l'application.
Tout abonné peut lire les données d'entrée ou les informations d'état à partir de l'adaptateur.
4F411 hexadécimale – Enregistrement de la configuration/obtention de l'adresse IP
Cette référence comporte deux objectifs, selon que l'application émette une commande d'écriture ou de lecture Modbus TCP/IP. Lorsque le registre émet une commande d'écriture Modbus TCP/IP, le nom du registre est Enregistrement de la configuration et lorsqu'il émet une commande de lecture Modbus TCP/IP, son nom est Obtention de l'adresse IP actuelle.
Commande d'écriture Modbus : Enregistrement de la configuration
Pour une commande d'écriture Modbus TCP/IP, la référence est traitée comme un registre d'un mot, l'application écrivant un mot de données. Les données de la commande d'écriture Modbus TCP/IP peuvent être composées d'une valeur comprise entre 0 (zéro) et 7, une logique OR masquée par bit (logique booléenne "OR").
Si une donnée 1 (un) est écrite dans la référence, l'adaptateur enregistre son adresse IP actuellement affectée dans la mémoire Flash. Si une nouvelle initialisation a lieu et que l'adaptateur ne parvient pas à identifier de serveur BOOTP, il utilise l'adresse enregistrée.
NOTE : Toute modification apportée au registre de sauvegarde de la configuration entraîne la réinitialisation de l'adaptateur. Cette réinitialisation a lieu lors de l'enregistrement ou de l'effacement des paramètres.
Voici les valeurs du registre de configuration pour le registre 4F411 hexadécimal : commande d'écriture seule Modbus TCP/IP.
Registre
Valeur décimale du registre
Valeur binaire du registre
Action
4F411 hexadécimale
0
0000
Efface la configuration
1
0001
Enregistre l'adresse IP configurée dans la mémoire Flash
2
0010
Enregistre les trois (3) adresses IP maîtres dans la mémoire Flash
4
0100
Enregistre la valeur de temporisation de pause des sorties dans la mémoire Flash
Exemple : si vous souhaitez enregistrer la valeur de temporisation de pause des sorties et enregistrer l'adresse IP configurée dans la mémoire Flash :
  1. ajoutez les valeurs décimales du registre :
    1 + 4 = 5
  2. Saisissez la valeur décimale 5 dans le registre.
  3. La valeur s'affiche en binaire :
    00000101
ATTENTION
FONCTIONNEMENT INATTENDU – DUPLICATION DE L'ADRESSE IP
  • Assurez-vous que cet équipement reçoit une adresse IP unique.
  • Avant de mettre un adaptateur 170ENT11002 (170ENT11000) hors service, il est préférable d'écrire un zéro logique (0) dans le registre de stockage de paramètres 4F411 pour effacer les paramètres stockés de l'adaptateur. Cette action permet de limiter les risques de duplication d'adresses sur le réseau lors d'une remise en service ultérieure de l'adaptateur.
Si plusieurs équipements possèdent la même adresse IP, votre réseau peut fonctionner de manière imprévisible.
Le non-respect de ces instructions peut provoquer des blessures ou des dommages matériels.
Commande de lecture Modbus : Obention de l'adresse IP
Pour une commande de lecture Modbus, la référence est traitée comme un registre de deux mots, l'application lisant deux mots de données. Si les paramètres IP de l'adaptateur sont enregistrés dans la mémoire RAM non volatile, l'adaptateur renvoie son adresse IP actuelle à la commande de lecture Modbus, lui indiquant qu'il possède déjà des paramètres enregistrés. Si les paramètres IP ne sont pas actuellement enregistrés, l'adaptateur les renvoie tous (FFFFFFFF hexadécimale) à la commande de lecture.
Registres d'état
4F801 hexadécimale – Bloc d'état du module
Ces registres fournissent des informations relatives au niveau de révision du module et aux paramètres opérationnels courants.
La longueur du bloc est de 13 mots. L'application peut lire les registres, mais pas écrire dedans.
NOTE : si vous tentez de lire un registre dans la table de diagnostic (offset à partir de F801), vous recevez une erreur 3002, indiquant que le registre demandé n'existe pas. Vous devez commencer la lecture dans le premier registre de F801.
Agencement du bloc d'état du module :
Référence (hexadécimale)
Objet
Contenu
4F801
Longueur du bloc d'état (mots)
13 décimales
4F802
Nombre de mots d'entrée du module d'E/S
Dépendant du module
4F803
Nombre de mots de sortie du module d'E/S
Dépendant du module
4F804
Numéro ID du module d'E/S
Dépendant du module
4F805
Numéro de révision de l'adaptateur de communication
Format : XR
Où :
  • X = 4 bits supérieurs, toujours 0000
  • R = 12 bits inférieurs, définissant la révision à 3 caractères hexadécimaux.
Exemple :
  • 100 hexadécimale = Rév. 1.00
  • 200 hexadécimale = Rév. 2.00
4F806
Longueur du bloc d'en-tête ASCII (mots)
Dépendant du module
4F807
Dernière adresse IP à communiquer avec cet adaptateur lors de la dernière transaction Modbus (mot inférieur de 2 mots). Voir 4F80D.
Dépendant de l'adresse de l'abonné
4F808
Temps restant de réservation de propriété
millisecondes
4F809
Temps restant de maintien des sorties
millisecondes
4F80A
Etat de fonctionnement du module d'E/S
8000 hexadécimale = fonctionne
0000 hexadécimale = ne fonctionne pas
4F80B
Valeur de la dernière erreur du module d'E/S
Dépendant du module
4F80C
Compteur d'erreurs du module d'E/S
Compte d'erreurs 0000 à FFFF hexadécimale
4F80D
Dernière adresse IP à communiquer avec cet adaptateur lors de la dernière transaction Modbus (mot supérieur de 2 mots). Voir 4F807.
Dépendant de l'adresse de l'abonné
4FC01 hexadécimale – Bloc d'en-tête ASCII du module
Ces registres contiennent une description au format texte ASCII du module. L'application peut lire les registres, mais pas écrire dedans.
La longueur du bloc dépend du type d'embase auquel l'adaptateur est connecté. La longueur maximale est de 64 octets de caractères ASCII, ce qui correspond à une longueur de 8 à. 32 mots comme spécifié dans le mot 6 du bloc d'état du module (à la référence 4F806).
Le bloc contient des étiquettes permettant d'identifier des quantités de mots d'entrée et de sortie et le code d'identification de l'embase. Le contenu du bloc peut être analysé par un programme d'application pour extraire ces informations.
Caractères ASCII
Description
Ethernet
Identifie l'adaptateur de communication Ethernet
20 hexadécimale (32 décimales)
Espace
CEI
Les données sont transférées avec l'embase au format CEI.
20 hexadécimale (32 décimales)
Espace
DIG :
EXP :
ANA :
Module numérique (plage ID : XX00 à XX7F hexadécimale)
Module expert (plage ID : XX80 à XXBF hexadécimale)
Module analogique (plage ID : XXC0 à XXFE hexadécimale)
20 hexadécimale (32 décimales)
Espace
Inlen=n
Mots d'entrée (n = quantité de mots, décimale)
20 hexadécimale (32 décimales)
Espace
Outlen=n
Mots de sortie (n = quantité de mots, décimale)
20 hexadécimale (32 décimales)
Espace
ID= 0xnnnn
Code d'identification du module (nnnn = code d'identification, hexadécimal)
Exemples de contenus de bloc d'en-tête ASCII pour deux embases :