PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV (précédentes versions) → Envoi trame Hexa vers Afficheur via protocole ModbusTCP
Envoi trame Hexa vers Afficheur via protocole ModbusTCP
Débuté par Eric, 02 nov. 2017 16:34 - 3 réponses
Membre enregistré
3 messages
Posté le 02 novembre 2017 - 16:34
Bonjour,

J'essaie d'envoyer une trame HEXA vers un afficheur via un protocole Modbus TCP.
L'afficheur en question ne gère pas les sockets , il est seulement à l'écoute sur son port 502 (Modbus TCP).

Je suis parti sur l'idée de communiquer et d'envoyer la trame à l'aide de socketUDP mais le problème est que le port utilisé en Modbus n'est pas dans la tranche validée pour UDP (n° port < 5000).

J'ai aussi tenté l'utilisation de la collection de procédure MODBUS (voir dépot.pcsoft.fr) mais là je ne vois pas comment je dois utiliser ces procédures.

Quelqu'un a t'il une idée ?

Merci. Eric.
Posté le 02 novembre 2017 - 16:55
Ton serveur attend du TCP, il faut lui parler en Modbus TCP et pas en
UDP!
C'est du standard et tu trouveras tous les renseignements sur internet.


Eric
Membre enregistré
3 messages
Posté le 07 novembre 2017 - 16:29
Merci Eric mais le problème c'est qu'il n'y a pas de notion de serveur.
L'afficheur a juste une routine qui lit la trame qui arrive sur son port 502.

Je suis un peu perdu.

Eric.
Posté le 08 novembre 2017 - 11:41
Bon voici en gros la procédure à suivre:

SocketConnecte - sur le port 502 de ton afficheur
suivi immédiatement de Socket.Option = SocketNagleOff et
SocketChangeModeTransmission(Nom de la Socket, SocketSansMarqueurFin)

Pour communiquer avec l'afficheur:

SocketEcrit en envoyant la trame au format ModBus
(http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b.pdf)

Lire la réponse avec SocketLit


fermer la communication si tu n'en a plus besoin avec SocketFerme

Bon dev,

Eric LAURENT