Configuration du paramètre CONTROL de la messagerie explicite Modbus TCP
Traduction de la notice originale
Présentation
Les paramètres de sortie CONTROL et DATABUF définissent l'opération effectuée par le bloc fonction MBP_MSTR. Pour le protocole Modbus TCP, la structure et le contenu du paramètre de sortie CONTROL varient selon le code fonction.
La structure du paramètre CONTROL est décrite ci-après pour chaque code fonction pris en charge.
Reportez-vous au document Quantum EIO - Guide de planification du système pour voir un exemple de bloc MSTR créé dans une application Control Expert afin de lire les ports d'un commutateur double anneau (DRS) et de diagnostiquer une rupture d'un sous-anneau.
Registre de routage du paramètre CONTROL
Le registre de routage CONTROL[5] spécifie l'adresse des nœuds source et cible pour le transfert de données de réseau, et contient les deux octets suivants :
Registre de routage CONTROL[5] :
Lorsque le module de communication Ethernet se comporte comme un serveur, l'octet de poids faible indique la destination d'un message qu'il a reçu :
NOTE : l'ID d'unité 255 doit être utilisé lorsque le module de communication Ethernet demande des données de diagnostic.
Ecriture de données
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
1= écriture de données
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
Longueur du tampon de données
Nombre d'adresses envoyées à l'esclave
COMMANDE[4]
Registre de départ
Adresse de départ de l'esclave dans lequel les données sont écrites, en mots de 16 bits.
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
CONTROL[6] 1
Adresse IP
Octet 4 de l'adresse IP (MSB)
CONTROL[7] 1
Octet 3 de l'adresse IP
CONTROL[8] 1
Octet 2 de l'adresse IP
CONTROL[9] 1
Octet 1 de l'adresse IP (LSB)
1. Par exemple, le paramètre CONTROL gère l'adresse IP 192.168.1.7 dans l'ordre suivant : Octet 4 = 192, Octet 3 = 168, Octet 2 = 1, Octet 1 = 7.
Lecture de données
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
2 = lecture de données
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
Longueur du tampon de données
Nombre d'adresses à lire depuis l'esclave
COMMANDE[4]
Registre de départ
Détermine le registre de départ %MW dans l'esclave à partir duquel les données sont lues. Par exemple : 1 = %MW1, 49 = %MW49)
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
CONTROL[6] 1
Adresse IP
Octet 4 de l'adresse IP (MSB)
CONTROL[7] 1
Octet 3 de l'adresse IP
CONTROL[8] 1
Octet 2 de l'adresse IP
CONTROL[9] 1
Octet 1 de l'adresse IP (LSB)
1. Par exemple, le paramètre CONTROL gère l'adresse IP 192.168.1.7 dans l'ordre suivant : Octet 4 = 192, Octet 3 = 168, Octet 2 = 1, Octet 1 = 7.
Obtention de statistiques locales
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
3 = lecture de statistiques locales
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
Longueur du tampon de données
Nombre d'adresses à lire depuis les statistiques locales (0 à 37).
COMMANDE[4]
Registre de départ
Première adresse à partir de laquelle la table des statistiques est lue (Reg1=0).
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
COMMANDE[6]
(non utilisé)
COMMANDE[7]
COMMANDE[8]
COMMANDE[9]
Réponse du module : un module TCP/IP Ethernet répond à la commande Obtention de statistiques locales avec les informations suivantes :
Mot
Description
00...02
Adresse MAC
03
Etat de la carte – Ce mot contient les bits suivants :
Bit 15
0 = DEL Link éteinte ; 1 = DEL Link allumée
Bit 3
Réservé
Bits 14 à 13
Réservé
Bit 2
0 = semi-duplex ; 1 = duplex intégral
Bit 12
0 = 10 Mbits ; 1 = 100 Mbits
Bit 1
0 = non configuré ; 1 = configuré
Bits 11 à 9
Réservé
Bit 0
0 = l'automate ne fonctionne pas ; 1 = l'automate/NOC fonctionne
Bits 8 à 4
Type du module – Ce bit contient les valeurs suivantes :
  • 0 = NOE 2x1
  • 1 = ENT
  • 2 = M1E
  • 3 = NOE 771 00
  • 4 = ETY
  • 5 = CIP
  • 6 = (réservé)
  • 7 = 140 CPU 651 x0
  • 8 = 140 CRP 312 00
  • 9 = (réservé)
  • 10 = 140 NOE 771 10
  • 11 = 140 NOE 771 01
  • 12 = 140 NOE 771 11
  • 13 = (réservé)
  • 14 = 140 NOC 78• 00
  • 15...16 = (réservé)
  • 17 = UC M340
  • 18 = M340 NOE
  • 19 = BMX NOC 0401
  • 20 = TSX ETC 101
  • 21 = 140 NOC 771 01
04 et 05
Nombre d'interruptions récepteur
06 et 07
Nombre d'interruptions émetteur
08 et 09
Nombre d'erreurs détectées de timeout d'émission
10 et 11
Compte d'erreur de détection de collisions
12 et 13
Paquets manquants
14 et 15
(réservé)
16 et 17
Nombre de fois où le pilote a redémarré
18 et 19
Erreur détectée de trame de réception
20 et 21
Erreur détectée de débordement du récepteur
22 et 23
Erreur détectée du CRC de réception
24 et 25
Erreur détectée du tampon de réception
26 et 27
Erreur détectée du tampon d'émission
28 et 29
Emission dépassement par valeur inférieure silo
30 et 31
Collision tardive
32 et 33
Perte de porteuse
34 et 35
Nombre de réitérations
36 et 37
Adresse IP
Suppression de statistiques locales
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
4 = suppression de statistiques locales
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
(non utilisé)
COMMANDE[4]
(non utilisé)
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
COMMANDE[6]
(non utilisé)
COMMANDE[7]
COMMANDE[8]
COMMANDE[9]
Obtention de statistiques distantes
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
7 = obtention de statistiques distantes
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
Longueur du tampon de données
Nombre d'adresses à lire dans le champ de données statistiques (0 à 37).
COMMANDE[4]
Registre de départ
Première adresse à partir de laquelle la table des statistiques de l'abonné est lue.
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
CONTROL[6] 1
Adresse IP
Octet 4 de l'adresse IP (MSB)
CONTROL[7] 1
Octet 3 de l'adresse IP
CONTROL[8] 1
Octet 2 de l'adresse IP
CONTROL[9] 1
Octet 1 de l'adresse IP (LSB)
1. Par exemple, le paramètre CONTROL gère l'adresse IP 192.168.1.7 dans l'ordre suivant : Octet 4 = 192, Octet 3 = 168, Octet 2 = 1, Octet 1 = 7.
Suppression de statistiques distantes
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
8 = suppression de statistiques distantes
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
(non utilisé)
COMMANDE[4]
(non utilisé)
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
CONTROL[6] 1
Adresse IP
Octet 4 de l'adresse IP (MSB)
CONTROL[7] 1
Octet 3 de l'adresse IP
CONTROL[8] 1
Octet 2 de l'adresse IP
CONTROL[9] 1
Octet 1 de l'adresse IP (LSB)
1. Par exemple, le paramètre CONTROL gère l'adresse IP 192.168.1.7 dans l'ordre suivant : Octet 4 = 192, Octet 3 = 168, Octet 2 = 1, Octet 1 = 7.
Réinitialisation du module
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
10 = réinitialisation du module
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
(non utilisé)
COMMANDE[4]
(non utilisé)
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
COMMANDE[6]
(non utilisé)
COMMANDE[7]
COMMANDE[8]
COMMANDE[9]
Lecture/écriture de données
Le paramètre CONTROL est composé de 11 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
23 = lecture/écriture de données
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule).
COMMANDE[3]
Longueur du tampon de données
Nombre d'adresses envoyées à l'esclave
COMMANDE[4]
Registre de départ
Détermine le registre de départ %MW dans l'esclave, dans lequel écrire les données. Par exemple : 1 = %MW1, 49 = %MW49)
COMMANDE[5]
Registre de routage
Octet de poids fort = Emplacement du module de communication Ethernet
Octet de poids faible = Index de mappage MET (MBP on Ethernet Transporter)
CONTROL[6] 1
Adresse IP
Octet 4 de l'adresse IP (MSB)
CONTROL[7] 1
Octet 3 de l'adresse IP
CONTROL[8] 1
Octet 2 de l'adresse IP
CONTROL[9] 1
Octet 1 de l'adresse IP (LSB)
COMMANDE[10]
Longueur du tampon de données
Nombre d'adresses à lire depuis l'esclave
COMMANDE[11]
Registre de départ
Détermine le registre de départ %MW dans l'esclave à partir duquel les données sont lues. Par exemple : 1 = %MW1, 49 = %MW49)
1. Par exemple, le paramètre CONTROL gère l'adresse IP 192.168.1.7 dans l'ordre suivant : Octet 4 = 192, Octet 3 = 168, Octet 2 = 1, Octet 1 = 7.
Activaction/désactivation des services HTTP ou FTP/TFTP
Si HTTP ou FTP/TFTP a été activé via les outils de configuration de Control Expert, vous pouvez utiliser un bloc MSTR pour changer l'état activé du service durant le fonctionnement de l'application. Le bloc MSTR ne peut pas changer l'état d'un service HTTP ou FTP/TFTP si le service a été désactivé via un outil de configuration.
Le paramètre CONTROL est composé de 9 mots contigus, décrits ci-après :
Registre
Fonction
Description
COMMANDE[1]
Opération
FFF0 (hexadécimal) 65520 (décimal) = activer/désactiver HTTP ou FTP/TFTP
COMMANDE[2]
Etat d'erreur détectée
Contient le code d'événement (lecture seule). Principaux codes de retour :
0x000 (réussite) : le bloc MSTR ayant le code opérationnel 0xFFF0 a été appelé et l'état activé du service HTTP ou FTP/TFTP a été changé.
0x5068 (occupé) : le bloc MSTR ayant le code opérationnel 0xFFF0 a été appelé dans un délai de 2 secondes après l'appel précédent (quel que soit le code de retour de l'appel précédent).
0x4001 (même état) : le bloc MSTR ayant le code opérationnel 0xFFF0 a été appelé pour faire passe l'état activé des services HTTP et FTP/TFTP à l'état dans lequel ils se trouvaient.
0x2004 (données non valides) : le bloc MSTR ayant le code opérationnel 0xFFF0 a été appelé et les données du bloc de contrôle ne correspondaient pas aux spécifications.
0x5069 (désactivé) : le service HTTP ou FTP/TFTP a déjà été désactivé via l'interface de Control Expert lorsque le bloc MSTR ayant le code opérationnel 0xFFF0 a été appelé pour changer l'état du service désactivé.
COMMANDE[3]
Définir ce registre sur 1.
COMMANDE[4]
COMMANDE[5]
Numéro d'emplacement du module et ID de destination
Octet de poids fort = Numéro d'emplacement du module et emplacement du module de communication
Octet de poids faible = ID de destination
COMMANDE[6]
Mode de requête
Bit 0 (LSB) = 1 : activer FTP/TFTP
Bit 0 (LSB) = 0 : désactiver FTP/TFTP
Bit 1 = 1 : activer HTTP
Bit 1 = 0 : désactiver HTTP
COMMANDE[7]
Définir ce registre sur 0.
COMMANDE[8]
COMMANDE[9]
Les changements d'état des services HTTP, FTP et TFTP effectués par MSTR avec le code opération FFF0 (hexadécimal) sont remplacés par la valeur configurée lorsque le module est redémarré ou réinitialisé et lorsqu'une nouvelle application est téléchargée sur le module.
Voici quelques exemples :
Etat configuré par Control Expert
Action tentée à l'aide de MSTR avec le code opération FFF0 (hex)
Résultat
Désactivé
Tout
MSTR renvoie le code d'erreur détectée 0x5069 (le service a déjà été désactivé par configuration)
Activé
Désactiver
MSTR renvoie le code 0x000 (réussite).
  • Une autre action par bloc MSTR active le service
    OU
  • Le module est réinitialisé ou redémarré
    OU
  • Une nouvelle application est téléchargée et le service est désactivé par configuration
Activer
MSTR renvoie le code d'erreur détectée 0x4001 (même état). Aucun changement effectué