Bonjour à tous,
Je vais commencer par exposer ce qui fonctionne, puis je détaillerai ma demande d'aide.
Je cherche à établir une communication Modbus entre une CPU 1516F Siemens et un M340 équipé d'une carte NOC 401.2.
Si je passe par le port Ethernet de la CPU M340 :
MB_SERVER côté Siemens + READ_VAR / WRITE_VAR côté Schneider : fonctionne
MB_CLIENT côté Siemens sans configuration particulière côté Schneider : fonctionne
Si je passe par le port Ethernet de la NOC (ce qui correspond à mon besoin) :
MB_SERVER côté Siemens + READ_VAR / WRITE_VAR côté Schneider : ne fonctionne pas
MB_CLIENT côté Siemens sans configuration particulière côté Schneider : ne fonctionne pas
Pourtant, avec Modbus Doctor, j'arrive bien à lire et à écrire aussi bien sur le serveur Siemens que sur le serveur Schneider via la NOC.
La seule solution que j'ai réussi à faire fonctionner consiste à ajouter un équipement Modbus dans la NOC et à configurer une requête. Dans ce cas, je parviens à lire et écrire des données. Cependant, cela ne répond pas à mon besoin, car cette communication est cyclique alors que je souhaite pouvoir échanger des données à la demande.
Auriez-vous une piste expliquant pourquoi la communication Modbus fonctionne via le port CPU du M340 mais pas via le port de la NOC, alors que les tests réalisés avec Modbus Doctor sont concluants ?
Merci d'avance pour votre aide.
ModBus S71500 - M340 NOC401.2
- itasoft
- Mi homme - Mi automate

- Messages : 7844
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: ModBus S71500 - M340 NOC401.2
Tester avec ça pour voir.
M340 sur NOC0401 ModBus tcp/ip le NOC à l'emplacement 4
READ_VAR(ADDM('0.4.0{192.168.1.100}TCP.MBS'),'%MW',1000,16,%MW0:4,%MW100:16);
M340 sur NOC0401 ModBus tcp/ip le NOC à l'emplacement 4
READ_VAR(ADDM('0.4.0{192.168.1.100}TCP.MBS'),'%MW',1000,16,%MW0:4,%MW100:16);
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: ModBus S71500 - M340 NOC401.2
Merci ça fonctionne. J’utilisais le read_var en ladder avec la même chose mais cela ne fonctionnait pas. Seul interrogation comment passer le mw0:4 en ladder ? Et que signifie t’il ? Je pense qu’il explique mon problème.
Une idée pourquoi côté Siemens j’arrive à écrire directement sur la cpu et par sur la noc ?
Une idée pourquoi côté Siemens j’arrive à écrire directement sur la cpu et par sur la noc ?
Modifié en dernier par JCF le 14 août 2026, 12:17, modifié 1 fois.
Re: ModBus S71500 - M340 NOC401.2
De mémoire il y a des bits internes de commande pour activer/désactiver à la demande des com de la NOC.
Même si ça n'explique pas les cas qui ne fonctionnent pas, ça peut solutionner ton besoin de requêtes à la demande.
Même si ça n'explique pas les cas qui ne fonctionnent pas, ça peut solutionner ton besoin de requêtes à la demande.
-
MiGaNuTs
- Mi homme - Mi automate

- Messages : 1655
- Enregistré le : 12 nov. 2015, 21:02
- Localisation : 45 - Loiret
- Contact :
Re: ModBus S71500 - M340 NOC401.2
C'est un tableau de 4 mots de "statut d'echange", a l'interieurs desquels il y'a tout un tas de bits qui donnent plein d'informations.JCF a écrit : ↑14 août 2026, 11:48 Merci ça fonctionne. J’utilisais le read_var en ladder avec la même chose mais cela ne fonctionnait pas. Seul interrogation comment passer le mw0:4 en ladder ? Et que signifie t’il ? Je pense qu’il explique mon problème.
Une idée pourquoi côté Siemens j’arrive à écrire directement sur la cpu et par sur la noc ?
Je les connais pas par coeur, mais c'est marqué dans la doc de read_var. Au pire chatgpt devrait pouvoir te donner le detail.

