Page 2 sur 3

Re: Communication entre TSXP574634 et S7 300

Posté : 03 août 2017, 17:40
par djé
Bon je vais vais essayer de faire simple:

J'écris de POIDS FORT(PF) vers poids faible (pf) : PF | pf

Schneider :
MW0 : MB1(PF) | MB0(pf)
MW1 : MB3 | MB2
MW2 : MB5 | MB4
.....
MWi : MB(i*2+1) | MB(i*2)

Pour les MD/MF:
MD0 : MW1(PF) | MW0(pf)
MD1 : MW2 | MW1
MD2 : MW3 | MW2
...
MDi : MW(i+1) | MW(i)

SIEMENS :
MW0 : MB0(PF) | MB1(pf)
MW1 : MB1| MB2
MW2 : MB2 | MB3
....
MWi : MB(i) | MB(i+1)

Pour les MD/MF:
MD0 : MW0(PF) | MW1(pf)
MD1 : MW1 | MW2
MD2 : MW2 | MW3
...
MDi : MW(i) | MW(i+1)

A noter le recouvrement sur les MB en Siemens qui n'existent pas en Schneider.

Re: Communication entre TSXP574634 et S7 300

Posté : 03 août 2017, 19:00
par demoniakdu59
geronimo a écrit : 03 août 2017, 11:35 Merci pour vos réponses.
Donc le protocole utilisé sera le Modbus TCP avec liaison Ethernet

L'entreprise qui fournit le siemens me dit que le programme à été testé avec les fonctions GET (SFB14) et PUT (SFB15).

Il n'est pas prévu d'utiliser de passerelle entre nos deux automates.
Au pire si j'ai besoin de décomposer les bits je le ferais dans mon automate (schneider).

Ce qui m'inquiète c'est si il va y avoir des décalages d'adresses entre le siemens et le schneider vu qu'il me faut 2 bytes pour faire 1 mot en schneider


Par contre si vous avez quelques documentation ou aide sur les inversion de bit de poids faible et poids fort, je suis intéréssé

Merci
Les Blocs fonctions SFB14 et SFB15 sont des blocs fonctions permettant les échanges de données en Ethernet, cela sous entend que l'entreprise qui fournis le siemens à développé autour de ces bloc la logique de traitement pour être compatible modbus (Génération des trames, analyse, transfert des données dans les zones mémoires etc etc...)
Personnellement à leur place j'aurais utiliser la librairie fournie par Siemens mais bon...

De ce fait si j'ai un conseil à te donner c'est de demander directement la table des registres modbus définis dans le Programme Siemens, et surtout vérifier quels sont les codes fonctions supportés (03, 06, 16....)

Re: Communication entre TSXP574634 et S7 300

Posté : 04 août 2017, 08:53
par geronimo
Merci beaucoup Djé, je comprend mieux comme cela.

Re: Communication entre TSXP574634 et S7 300

Posté : 04 août 2017, 08:55
par geronimo
demoniakdu59 a écrit : 03 août 2017, 19:00
geronimo a écrit : 03 août 2017, 11:35 Merci pour vos réponses.
Donc le protocole utilisé sera le Modbus TCP avec liaison Ethernet

L'entreprise qui fournit le siemens me dit que le programme à été testé avec les fonctions GET (SFB14) et PUT (SFB15).

Il n'est pas prévu d'utiliser de passerelle entre nos deux automates.
Au pire si j'ai besoin de décomposer les bits je le ferais dans mon automate (schneider).

Ce qui m'inquiète c'est si il va y avoir des décalages d'adresses entre le siemens et le schneider vu qu'il me faut 2 bytes pour faire 1 mot en schneider


Par contre si vous avez quelques documentation ou aide sur les inversion de bit de poids faible et poids fort, je suis intéréssé

Merci
Les Blocs fonctions SFB14 et SFB15 sont des blocs fonctions permettant les échanges de données en Ethernet, cela sous entend que l'entreprise qui fournis le siemens à développé autour de ces bloc la logique de traitement pour être compatible modbus (Génération des trames, analyse, transfert des données dans les zones mémoires etc etc...)
Personnellement à leur place j'aurais utiliser la librairie fournie par Siemens mais bon...

De ce fait si j'ai un conseil à te donner c'est de demander directement la table des registres modbus définis dans le Programme Siemens, et surtout vérifier quels sont les codes fonctions supportés (03, 06, 16....)
Merci du conseil mais c'est quoi ces tables de registres et les codes fonctions.
Désolé mais je n'y connais vraiment rien en siemens et étant pro-Schneider c'est pas facile

En tout cas merci de votre aide

Re: Communication entre TSXP574634 et S7 300

Posté : 04 août 2017, 09:13
par Brebiou
geronimo a écrit : 04 août 2017, 08:55
Merci du conseil mais c'est quoi ces tables de registres et les codes fonctions.
Désolé mais je n'y connais vraiment rien en siemens et étant pro-Schneider c'est pas facile

En tout cas merci de votre aide
Les codes fonctions de Modbus, page 12.

La table de registres n'est rien d'autres que la table d'échanges entre les deux automates.

Re: Communication entre TSXP574634 et S7 300

Posté : 04 août 2017, 09:24
par Bernardo59
geronimo a écrit : 03 août 2017, 11:35 L'entreprise qui fournit le siemens me dit que le programme à été testé avec les fonctions GET (SFB14) et PUT (SFB15).
Ca me parait bizarre quand même, tu es certain du coup la ?
Pour avoir fait des échanges entre SIEMENS et SCHNEIDER ELECTRIC en MODBUS TCP, je peux te garantir que sans le driver MODBUS TCP SIEMENS, c'est pratiquement impossible.
Et puis les fonctions GET et PUT c'est pour envoyer des trames à un autre équipement (lecture/écriture) en aucun cas il est esclave.
Ça ne serait pas lui qui vient récupérer les valeurs dans ton automate ?
Pense à vérifier ou a demander des explications.

A+

Re: Communication entre TSXP574634 et S7 300

Posté : 04 août 2017, 11:30
par geronimo
Bernardo59 a écrit : 04 août 2017, 09:24
geronimo a écrit : 03 août 2017, 11:35 L'entreprise qui fournit le siemens me dit que le programme à été testé avec les fonctions GET (SFB14) et PUT (SFB15).
Ca me parait bizarre quand même, tu es certain du coup la ?
Pour avoir fait des échanges entre SIEMENS et SCHNEIDER ELECTRIC en MODBUS TCP, je peux te garantir que sans le driver MODBUS TCP SIEMENS, c'est pratiquement impossible.
Et puis les fonctions GET et PUT c'est pour envoyer des trames à un autre équipement (lecture/écriture) en aucun cas il est esclave.
Ça ne serait pas lui qui vient récupérer les valeurs dans ton automate ?
Pense à vérifier ou a demander des explications.

A+
Merci Bernardo59,
Tu n'aurais pas un petit bout de code coté Schneider pour voir comment tu as fais ta reception de com avec le siemens?

Re: Communication entre TSXP574634 et S7 300

Posté : 04 août 2017, 11:40
par itasoft
slts,
A noter le recouvrement sur les MB en Siemens qui n'existent pas en Schneider.

c'est pas la même chose, sur Schneider les %MB sont des caractères ascii exclusivement (comme du type STRING)

Re: Communication entre TSXP574634 et S7 300

Posté : 04 août 2017, 11:47
par Bernardo59
geronimo a écrit : 04 août 2017, 11:30 Merci Bernardo59,
Tu n'aurais pas un petit bout de code coté Schneider pour voir comment tu as fais ta reception de com avec le siemens?
J'ai une application qui venait récupérer des données dans des automates S7-400 depuis un automate S7-300 afin de mettre à disposition une table d'échange pouvant être récupéré en Modbus TCP/IP via un automate TSX PREMIUM.
Il fallait configurer dans les automates S7-300 le serveur Modbus afin que le PREMIUM puisse récuperer les données.

J'ai ça sur mon PC, tu as un mail ?

Re: Communication entre TSXP574634 et S7 300

Posté : 05 août 2017, 11:51
par JC87
geronimo a écrit : 03 août 2017, 11:35
Ca me parait bizarre quand même, tu es certain du coup la ?
Pour avoir fait des échanges entre SIEMENS et SCHNEIDER ELECTRIC en MODBUS TCP, je peux te garantir que sans le driver MODBUS TCP SIEMENS, c'est pratiquement impossible.
Et puis les fonctions GET et PUT c'est pour envoyer des trames à un autre équipement (lecture/écriture) en aucun cas il est esclave.
Ça ne serait pas lui qui vient récupérer les valeurs dans ton automate ?
Pense à vérifier ou a demander des explications.

A+
Bonjour,

C'est tout à fait possible sans utiliser la licence Siemens. Sur l'ancien forum Automatica quelqu'un avait posté une solution gratuite a base de FC6 (AG_RECV) et FC5 (AG_SEND) coté Siemens. J'avais testé sa solution et en une paire d"heures ça dialoguait. certes ça ne traite pas touts les codes requêtes Modbus mais les plus importants (lecture de n mots, écriture de n mots) sont là. Voici le lien de la solution en question et merci encore à son auteur : https://sites.google.com/site/logiciels ... ider-tsx57

JC