Le gestionnaire Modbus est utilisé pour le protocole Modbus RTU ou ASCII en mode maître ou esclave.
Pour ajouter un gestionnaire Modbus au contrôleur, sélectionnez l'élément
dans le , faites-le glisser vers l'arborescence , puis déposez-le sur l'un des nœuds en surbrillance.Pour plus d'informations sur l'ajout d'un équipement à votre projet, consultez :
• Utilisation du catalogue de matériels
• Utilisation du Menu contextuel ou du bouton Plus
Pour configurer le gestionnaire Modbus de votre contrôleur, double-cliquez sur
dans l'arborescence .La fenêtre de configuration du gestionnaire Modbus s'affiche :
Définissez les paramètres comme décrit dans le tableau ci-dessous :
Elément |
Description |
---|---|
|
Spécifiez le mode de transmission à utiliser :
Ce paramètre doit être identique pour tous les équipements Modbus de la ligne. |
|
Spécifiez le type d'équipment :
|
|
Adresse Modbus de l'équipement, lorsque l'option Esclave est sélectionnée. |
|
Délai pour éviter les collisions sur le bus. Ce paramètre doit être identique pour chaque équipement Modbus sur la liaison. |
|
Paramètres spécifiés dans la fenêtre de configuration des lignes série. |
Lorsque le contrôleur est configuré en tant que maître Modbus, les blocs fonction suivants de la bibliothèque PLCCommunication sont pris en charge :
ADDM
READ_VAR
SEND_RECV_MSG
SINGLE_WRITE
WRITE_READ_VAR
WRITE_VAR
Pour plus d'informations, consultez la description des blocs fonction de la bibliothèque PLCCommunication.
Lorsque le contrôleur est configuré en tant qu'esclave Modbus, les requêtes Modbus suivantes sont prises en charge :
Code fonction Déc (Hex) |
Sous-fonction Déc (Hex) |
Fonction |
---|---|---|
1 (1 hex) |
– |
Lecture des sorties numériques (%Q) |
2 (2 hex) |
– |
Lecture des entrées numériques (%I) |
3 (3 hex) |
– |
Lecture de plusieurs registres (%MW) |
6 (6 hex) |
– |
Ecriture d'un registre (%MW) |
8 (8 hex) |
– |
Diagnostic |
15 (F hex) |
– |
Ecriture de plusieurs sorties numériques (%Q) |
16 (10 hex) |
– |
Ecriture de plusieurs registres (%MW) |
23 (17 hex) |
– |
Lecture/écriture de plusieurs registres (%MW) |
43 (2B hex) |
14 (E hex) |
Lecture de l'identification de l'équipement |
Le tableau suivant fournit la liste des codes de sous-fonction pris en charge par la requête Modbus de diagnostic 08 :
Code de sous-fonction |
Fonction |
|
---|---|---|
Déc |
Hex |
|
10 |
0A |
Efface les compteurs et le registre de diagnostic |
11 |
0B |
Renvoie le nombre de message de bus |
12 |
0C |
Renvoie le nombre d'erreurs de communication de bus |
13 |
0D |
Renvoie le nombre d'erreurs d'exception de bus |
14 |
0E |
Renvoie le nombre de messages esclaves |
15 |
0F |
Renvoie le nombre de messages sans réponse de l'esclave |
16 |
10 |
Renvoie le nombre de NAK esclaves |
17 |
11 |
Renvoie le nombre de messages occupé esclaves |
18 |
12 |
Renvoie le nombre de débordement de caractères de bus |
Le tableau suivant répertorie les objets pouvant être lus avec une requête d'identification d'équipement (niveau d'identification de base) :
ID d'objet |
Nom de l'objet |
Type |
Valeur |
---|---|---|---|
00 hex |
Code fabricant |
Chaîne ASCII |
Schneider Electric |
01 hex |
Code produit |
Chaîne ASCII |
Référence du contrôleur. Exemple : TM241CE24T |
02 hex |
Révision majeure/mineure |
Chaîne ASCII |
aa.bb.cc.dd (identique au descripteur d'équipement) |
La section suivante décrit les différences entre le mappage de la mémoire Modbus du contrôleur et le mappage Modbus de l'IHM. Si vous ne programmez pas la reconnaissance de ces différences de mappage dans l'application, le contrôleur et l'IHM ne communiqueront pas correctement. Il se peut alors que des valeurs incorrectes soient écrites dans les zones mémoire contrôlant les opérations de sortie.
AVERTISSEMENT | |
---|---|
Lorsque le contrôleur et l'IHM Magelis sont connectés via Modbus (l'IHM est maître des requêtes Modbus), l'échange de données utilise des requêtes composées de mots simples.
Il existe un chevauchement pour les mots simples de la mémoire de l'IHM lors de l'utilisation de mots doubles, mais pas pour la mémoire du contrôleur (voir le graphique suivant). Pour obtenir une correspondance entre la zone mémoire de l'IHM et la zone mémoire du contrôleur, le rapport entre les doubles mots de la mémoire de l'IHM et ceux de la mémoire du contrôleur doit être de 2.
Les exemples suivants de mémoire coïncident pour les doubles mots :
La zone mémoire %MD2 de l'IHM correspond à la zone mémoire %MD1 du contrôleur, car les mêmes mots simples sont utilisés par la requête Modbus.
La zone mémoire %MD20 de l'IHM correspond à la zone mémoire %MD10 du contrôleur, car les mêmes mots simples sont utilisés par la requête Modbus.
Les exemples suivants de mémoire coïncident pour les bits :
La zone mémoire %MW0:X9 de l'IHM correspond à la zone mémoire %MX1.1 du contrôleur, car les mots simples sont divisés en deux octets distincts dans la mémoire du contrôleur.
Pour ajouter un modem au gestionnaire Modbus, reportez-vous à la section Ajout d'un modem à un gestionnaire.