TP2 sur le module CIE-H10 MODBUS/TCP Durée : 4heures Propreté : /1 Autonomie : /3 Binôme : Bilan : Note /40 : 1
1: MISE EN SITUATION Vous êtes technicien de contrôle au sein de la société Sollae, le fabricant du module CIE-H10. Vous avez reçu d un client, l un de ces modules qui semble présenter un dysfonctionnement concernant le protocole Modbus/TCP. Le client ne sait pas si son problème provient de son module «serveur», un automate programmable ou s il s agit du CIE-H10 fonctionnant en «client». Vous avez en charge de réaliser quelques tests, notamment sur la communication Modbus/TCP et sur l analyse des paquets émis sur le réseau. 2 : PRINCIPE DES TESTS Sniffer réseau : Wireshark Logiciel de test : Simply Modbus/TCP Les tests consisteront à configurer le module en Modbus/TCP esclave, puis à utiliser un logiciel de test pour s assurer qu un dialogue est possible en lecture. Parallèlement, une capture et une analyse des paquets sera effectuée. Puis, le test se fera en écriture, pour commander, via Modbus/TCP, un éclairage câblé sur une des sorties du module. A l issue des tests et si tout fonctionne, vous ferez un compte-rendu qui sera délivré au client certifiant que le module ne présente aucun dysfonctionnement. 2
3 : TESTS (consulter la fiche cours sur le Modbus/TCP) 3.1 Configuration du module en mode Modbus/TCP a) Câbler le module CIE-H10 et l alimenter. b) Lancer le logiciel eztcpmanager puis détecter le module (IP : 192.168.5.40). c) Configurer le module en esclave, son ID (identifiant) est 1. d) L adresse de base pour lire les entrées est 0 et pour lire les sorties, l adresse est 8. 3.2 Configuration du logiciel de test Simply Modbus en lecture Se rendre sur le site suivant : http://www.simplymodbus.ca/tcpmanual.htm Installer le logiciel SimplyModbusTCP7.0 et aidez-vous si besoin de l aide en ligne. a) Mettre le mode TCP et l adresse IP du module. b) Le port par défaut du Modbus est 502. c) Mettre «No.of Regs» à 1 (au lieu de 10 par défaut). d) Vérifier les octets de la requête. 3
Question 1 : Connectez-vous au module et si cela fonctionne, envoyez la requête (Request). Noter ci-dessous la trame de réponse envoyée par le CIE-H10 et la valeur du registre. Repérer la donnée dans la trame ; est-ce normal? Question 2: Connecter une alimentation 10V sur les entrées DI 1 et DI 2. Envoyer de nouveau la requête (si message d erreur, déconnecter puis reconnecter le logiciel). Noter ci-dessous la trame de réponse envoyée par le CIE-H10 et la valeur du registre. Repérer la donnée ; est-ce normal? Justifiez. Question 3: Passer le module en mode macro et rentrer les équations suivantes : Modifier la configuration du logiciel maître de sorte que la «reference» soit 00 08, pour permettre de lire l état des sorties du CIE-H10 (First Register N 40009 et No.of Regs =1). Envoyer de nouveau la requête (si message d erreur, déconnecter puis reconnecter le logiciel). Noter ci-dessous la trame de réponse envoyée par le CIE-H10 et la valeur du registre. Repérer la donnée ; est-ce normal? Justifiez. 4
3.3 Configuration du logiciel de test Simply Modbus en écriture Question 1 : Quel est l octet qui change par rapport à la lecture? Donner sa valeur en décimal et en hexa. Désactiver la macro du CIE-H10 pour les questions suivantes! Question 2 : Dans le logiciel Simply ModbusTCP, il y a un bouton «write» ; lorsque vous cliquez dessus, vous obtenez cette fenêtre : Entrez cette configuration. Remarquez que «function code» = 16 ; la donnée est sur 2 octets mais pour le CIE-H10, nous avons besoin d 1 seul octet. Entourez dans l image ci-dessous, l endroit où vous pouvez modifier l état des sorties. Quelle est la valeur maxi en décimal (pour le CIE-H10)? Modifiez la configuration pour mettre à 1 toutes les sorties du module. Notez ci-dessous la trame envoyée par le maître et celle envoyée par l esclave. VALIDATION : 5
Question 3 : Câblez sur la sortie DO 5 une lampe alimentée en 12V. Modifiez la trame data pour allumer uniquement cette lampe. Justifiez votre valeur. Il se peut que vous ayez à redémarrer le logiciel, celui-ci n étant qu une démo. 3.4 Analyse des trames Modbus/TCP Pour cette partie, vous utiliserez le logiciel Wireshark, analyseur de protocoles réseaux ou sniffer. A l ouverture, cliquez sur Interface List. On obtient l adresse IP de la carte réseau du PC où est installé Wireshark. Faites «Start». Une série de données défile à l écran ; vous pouvez les stopper en faisant «Capture», puis «Stop». L objectif ici est de lancer la capture sur Wireshark et de se connecter au module avec le logiciel Simply Modbus/TCP, puis de lancer une lecture des entrées du module CIE-H10. Ensuite, la capture sera stoppée et une analyse des échanges de paquets sera faite sur Wireshark. 6
Question 1 : Procédez comme écrit précédemment, à la capture des paquets circulant sur le réseau local lors d une connexion au module et d une lecture de l état des entrées. Copiez les trames concernant le Modbus. Question 2 : Ouvrez la ligne Ethernet II (dans la 2 ème moitié de l écran). Que signifient Src et Dst? Que voyez vous ensuite? Notez ce que vous lisez d important. Question 3 : Sur la ligne suivante, que notez-vous d important? Question 4 : Sur la ligne suivante, il y a Src Port et Dst Port ; donnez les valeurs et la signification. Sur la dernière ligne, il est question de la trame Modbus/TCP ; lorsque vous cliquez dessus, (sans ouvrir la ligne), dans la 3 ème partie, des valeurs hexadécimales sont soulignées, au nombre de 12 octets. Il s agit bien du nombre d octets pour la lecture par exemple. 7
Question 5 : Procédez à la même démarche, mais cette fois sur une commande d une sortie (DO 5). Vous ferez une capture d écran de l ensemble des trames intéressantes concernant le modbus/tcp. Retrouvez la donnée et le code fonction. VALIDATION : 8