Cet article montre comment configurer une communication Modbus RTU entre un automate Siemens S7-1200 et un pilote T6.
- Matériel :
- Automate S7-1200 : CPU 1215C DC/DC/DC
- CM1241 : RS422/485
- T6 : T6-1000RS, T6M80-1000H2A3-M17S
- Alimentation 24V : S-150-24
- Présentation générale :
L'automate S7-1200 agit en tant que maître Modbus RTU et le pilote T6 en tant qu'esclave Modbus. L'automate lit le paramètre de position du moteur depuis le pilote T6.
- Étapes de mise en œuvre :
- Étape 1 : Configurer les paramètres du pilote T6
| Paramètre | Réglage |
|---|---|
| Pr5.29 = 4 | Parité : Aucune, Bits de données : 8, Bits d'arrêt : 1 |
| Pr5.30 = 6 | Débit en bauds : 115200 |
| Pr5.31 = 1 | Adresse esclave RS485 : 1 |
- Étape 2 : Configurer le module de communication Modbus RTU

- Étape 3 : Activer la mémoire système
Dans l'arborescence du projet, sélectionnez PLC_1 et faites un clic droit pour ouvrir Propriétés. Dans la fenêtre des propriétés, accédez à Mémoire système et mémoire d'horloge et cochez la case Activer les octets de mémoire système.

- Étape 4 : Appeler l'instruction MB_COMM_LOAD
Ouvrez le bloc Main [OB1]. Accédez à Instructions → Communication → Processeur de communication → Modbus, et glissez l'instruction MB_COMM_LOAD dans le segment de programme comme indiqué ci-dessous.

- Étape 5 : Créer les zones tampon d'envoi et de réception des données
Dans l'arborescence du projet, sélectionnez Ajouter un nouveau bloc → Bloc de données (DB) → OK, comme indiqué ci-dessous. Après avoir ajouté le nouveau bloc, désactivez l'option Accès optimisé au bloc et définissez les tableaux tampon d'envoi et de réception des données.

- Étape 6 : Appeler l'instruction MB_MASTER
Ouvrez le bloc Main [OB1]. Accédez à Instructions → Communication → Processeur de communication → Modbus, et glissez l'instruction MB_MASTER dans le segment de programme comme indiqué ci-dessous.

Dans cette instruction, réglez MB_ADDR (adresse esclave) sur 1 et MODE sur 0, ce qui place le maître en mode lecture. L'adresse de départ DATA_ADDR est 424620. Cette adresse correspond au paramètre Pr8.43 (position du moteur) pour la communication RS485. L'adresse de registre Modbus pour Pr8.43 est 0x602B, soit 24619 en décimal. En ajoutant le décalage de registre de maintien du pilote T6 de 400001, on obtient : 24619 + 400001 = 424620.
- Étape 7 : Exécuter le programme et lire Pr8.43
Dans le programme de l'automate, la donnée reçue est 0x1A9D, ce qui correspond à 6813 en décimal. Vérifiez sur le pilote T6 que Pr8.43 = 6813 pour confirmer que la donnée a été lue correctement.
- Résumé
Cet article présente une configuration de base de la communication Modbus RTU entre l'automate Siemens S7-1200 et le pilote T6. La même approche peut être adaptée pour la communication entre le S7-1200 et d'autres pilotes StepperOnline.