begin process at 2008 07 20 12:58:57
1 213 234 membres
151 nouveaux aujourd'hui
14 166 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : TCP/IP Modbus pour Automate [ Réseaux & Internet / Client - Serveur ] (snakzbenjy)

TCP/IP Modbus pour Automate le 07/06/2007 10:33:26

snakzbenjy

Bonjour à tous,
Alors voilà je suis en stage (BAC+2) et celà fait plusieurs jours que je m'arrache les cheveux.

Je doit faire un petit programme en Visual Basic (d'où mon post ici ) qui doit envoyer une trame modbus sur mon automate TWIDO. Avec "winsock" j'arrive a envoyer sur mon port ETHERNET. Je le vois grâce à ethereal. Mais imposible de trouver la synthaxe modbus à envoyer. Je pense avoir compris que en ETHERNET il n'y a pas de CRC?

Exemple je veut envoyer la valeur "10" dans le mot %MW25 celà donne :

iput = 01 + 06+ 00 19 + 00 10 
Winsock1.SendData iput

Pouvez-vous m'aider merci d'avance

Cordialement Benjamin


Re : TCP/IP Modbus pour Automate le 07/06/2007 10:40:17

jrivet
Membre Club
Salut,
REgarde cette petite discution
Et aussi Cette Source de jack
@+: Ju£i€n
Pensez: Réponse acceptée

Re : TCP/IP Modbus pour Automate le 07/06/2007 11:02:43

snakzbenjy
Merci de ta réponse jrivet.

Mais les liens que tu m'as donné, ne me donne pas la synthaxe du modbus en ETHERNET.
En faite le serveur OPC je ne pense pas en avoir besoin(de plus il est payant je crois ). J'arrive à envoyer mes trames via winsock.
Je souhaitrai connaitre quoi envoyer sur le réseau pour que mon automate affecte 10 au mot %MW25 (exemple)

Codialement Benjamin 

Re : TCP/IP Modbus pour Automate le 08/06/2007 08:13:07

akim77
Salut,

2 solutions à ton problème:

1) Utiliser un simulateur modbus par exemple ModbusPoll et analyser les trames avec    Ethereal

2) Tatonner
J'ai trouvé quelques infos ici:
http://www.codeproject.com/cs/library/Modbus_TCP_class.asp
c'est en csharp mais en interprétant çà pourrait donner ça:

La trame doit avoir le format doit être : Le header sur 12 bytes + les donneés à écrire

data(0) = 0;    ' Slave id high byte
data(1) = 1;    ' Slave id low byte+
data(4) = 0;    ' Complete message size in bytes
data(5) = ?????;    'Complete message size in bytes
data(6) = 0;    'Slave address
data(7) = 6;    ' Function code
data(8) = 0;    ' Start address
data(9) = 25;    ' Start address
'les 3 bytes suivants pour écrire dans plusieurs mots
data(10) = 0;    ' Number of bytes
data(11) = 0;    ' Number of bytes
data(12) = 0;
data(13) = 0;
data(14) = 10;

Cà ne fontionnera certainement pas du premier coup mais c'est une base de travail

Bon courage A +
Akim

Re : TCP/IP Modbus pour Automate le 08/06/2007 11:23:19

snakzbenjy
Merci de ton aide, alors voilà ce matin et un grand jour car j'ai réussi...

Pour ce qui on le même problème que moi, voilà ce que j'ai envoyé:

' Juste la syntaxe du protocole modbus en VB
' J'envoye la valeur 88 dans le mot %MW25

iput = chr(00)+chr(01)+chr(00)+chr(00)+chr(00)+chr(06)+chr(01)+chr(06)+chr(00)+chr(25)+chr(00)+chr(88)
Winsock1.SendData iput

Si vous avez des question??...

Cordialement

Re : TCP/IP Modbus pour Automate le 12/06/2007 20:58:45

Alien
Membre Club

Salut  snakzbenjy,

j'ai ecris une petite supervision en VB6 vers des appareils modbus via le port Com, a l'aide d'un convertisseur du style aksys j'aimerais modifier mon application pour l'utiliser comme toi via ethernet et modbus TCP,

je vois qu'avec l'aide de Akim77 tu as bien avancé, as tu trouvé de la doc sur la trame ? longueur ? etc... si oui pourrais tu me l'envoyer ? ou alors detailler ta trame avec une petite explication sur chaque donnée..

"iput = chr(00)+chr(01)+chr(00)+chr(00)+chr(00)+chr(06)+chr(01)+chr(06)+chr(00)+chr(25)+chr(00)+chr(88)
Winsock1.SendData iput"


Merci d'avance.
Jérôme...


Re : TCP/IP Modbus pour Automate le 13/06/2007 09:12:42

snakzbenjy

D'après mes souvenirs déja en Ethernet il n'y a pas de CRC à mettre bonne nouvelle.
Aprés je vais te donnée de tête ma trame

chr(00)+chr(01)  ===> La valeur de l'esclave
+chr(00)+chr(00) ===> ????
+chr(00)+chr(06) ===> écriture(6)/lecture(3 je crois)
+chr(01)+chr(06)
+chr(00)+chr(25)===> Le mot à affecter ici pour télémecanique ce serra %MW25
+chr(00)+chr(88)===> La valeur a mettre dans le mot

[ Lien ] ==> ça pourra peut être d'aider(Attention c'est du serie)

Je ne sais pas si j'ai répondu à tes questions?

cordialement Benjy


Re : TCP/IP Modbus pour Automate le 13/06/2007 20:15:20

akim77

Tu trouveras le protocole complet ici:
http://www.rtaautomation.com/modbustcp/files/Open_ModbusTCP_Standard.pdf
C'est évidemment en anglais, hélas.
@+
Akim


Re : TCP/IP Modbus pour Automate le 25/06/2007 10:16:49

alainpollet
Bonjour,

je suis devans mon PC et mon TWIDO... mais j'arrive pas à faire communiquer tout ce petit monde...

je ne maitrise malheureusement pas l'outils WINSOCK !!!

avez vous la possibilité de me faire une copie de la zone programme consernant l'ouverture de la COM ETHERNET et son paramétrage (N° de port)

Un grand merci

PS j'ai mis un petit prog dans le TWIDO + configurer un adresse IP d'ailleur si je fait un PING il me réponds...
donc j'en déduit que le HARD est bon... et mon problème viens du SOFT...

Re : TCP/IP Modbus pour Automate le 25/06/2007 10:52:14

alainpollet
Re,

Bon j'ai trouver mon bonheur sur le WEB ==> [ Lien ]
dans ces deux exemples VB + sources avec WINSOCK (donc pas besoin de serveur OPC payant...)
on trouve donc 2 exemples de programmation 1 RTU (RS232) et 1 ETHERNET...

afin de lire/ecrire dans un TWIDO

Bye 


[Page 1 Page 2]
Classé sous : envoyer, ip, automate, tcp, modbus

Participer à cet échange

Pub



Appels d'offres

Dessins techniques
Budget : 60€
Animation Flash - Doma...
Budget : 370€
Application flash medi...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS