begin process at 2012 02 15 03:52:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Divers

 > 

Débutants

 > 

MODBUS RTU "Silence"?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

MODBUS RTU "Silence"?

mercredi 8 août 2007 à 17:13:09 | MODBUS RTU "Silence"?

aftens

Bonjour, j'ai créé un programme qui envoie des trames MODBUS ASCII sous visual basic 2005 express.
Maintenant j'aimerais rajouter le format RTU, mais la je coince, les sources sur le format RTU sont peu nombreuses et bug.
Concernant la construction du CRC, je n'ai pas de souci avec, il y a suffisamment de sources.
Je voudrais savoir sous quel format on envoie les infos en mode RTU.

En MODBUS ASCII j'utilise la ligne suivante:
dim send_string as string
send_string = "01060100177071"
objMSCOMM.Output = C
hr(&H3AS) & send_string & Chr(&HDS) & Chr(&HAS)
Aucun souci avec le modbus ASCII.

Par contre si je modifie ma trame en RTU , j'obtiens ca:
dim send_string as string
send_string =
"0106000012ABAD14"
objMSCOMM.Output =  send_string, cela ne marche pas.
J'ai vus quelque part que le mode RTU utilisait l'hexa pour sa trame.
Quelqu'un peut il me dire comment je dois convertir mon send_string, le format string ne doit pas être le bon. Me donner le type et le format de la ligen en verte ci-dessus?
J'ai essayer le format char et integer sans succés non plus.

J'ai vu également qu'il était question de silence au début et à la fin de la trame, et en fonction des matériels (automates, variateurs...), elle pouvait être différentes.
Quelqu'un peut il me donner quelque précision sur ces silences, comment les rajoute t-on dans le code, et dois t'on forcément connaitre la valeur du silence du recepteur?
Merci pour vos réponses

jeudi 9 août 2007 à 00:47:44 | Re : MODBUS RTU "Silence"?

jack

Administrateur CodeS-SourceS
Salut
Je pense que "0106000012ABAD14" ne doit pas être envoyé sous forme ASCII mais sous forme de Bytes dont les valeurs sont dans ta chaine :
Dim monCode As String
monCode = "0106000012ABAD14"
Send_String = ""
For r = 1 To (Len(monCode$) / 2) Step 2
   Send_String = Send_String & Chr$(Val("&h" & Mid$(monCode$, r, 2)))
Next r

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
vendredi 10 août 2007 à 20:30:09 | Re : MODBUS RTU "Silence"?

jack

Administrateur CodeS-SourceS
... tu nous le dirais si ça tombait en marche ...


Cette discussion est classée dans : send, string, format, modbus, rtu


Répondre à ce message

Sujets en rapport avec ce message

Probleme de format de string (slashs) [ par ThePsychowizard ] Voilà.J'ai une string du type 123/456/789.Le fichier automatiquement enregistré utilise cette string comme nom (et évidemment il a du mal avec les /.. Comment recuperer des donnees d'une MSHFlexGrid autre que format string ? [ par youkitof ] J'ai rempli une MSHFlexGrid avec des Dates et Times venant d'un control Adodc.... Je voudrais savoir comment je peux recuperer les valeurs contenues d problème d'envoi de mails [ par dOsSpr0uTosS ] salut à tous, Mon problème c'est que quand j'essai d'envoyer un mail grace a un control winsock il ne se passe rien,dans mon form je met un bouton et aide [ par leguiben ] je suis au tout debut de ma formation en vb et je voudrai conaitre comment on fait pour attribuer à un textbox un format specifique; par exemple si l' requettes sql [ par GersoneAhoussi ] Merci pour la repnse que vous venez de m'envoyer DARKSIDIOUS et tous les autres Cependant voici les erreurs que génère mon progamme pour être plus p Transformer un string en date [ par nicobou ] Bonjour,J'ai un soucis de date. Je récupére un fichier sur un site internet avec mon programme vb, et l'idée est de comparer la date de derniére modif RTF/CELLULES/ACCESS [ par kanga11 ] Bonjour, Voila mon probème : 1°) Lors d'un evenement sur une colonne j'utilise Worksheet_SelectionChange pour ouvrir un form de commentaire. Convertion d'une textbox byte en format string [ par tallia64 ] Bonjour je travaille sur un userform qui contient une textbox en byte qui contient une date et je souhaiterais la convertir en string. Cela est il pos format d une variable STRING [ par toufou2006 ] Salut à tousje recupere dans ma varaible A (as string) une valeur numerique avec 8 decimaux et je voudrais savoir comment en vb2008 arondire ca a 2 de format de "String" à modoifier pour copie de fichiers ???? [ par Tyrell2 ] bonjour,HELP >j'ai une exception que mon niveau ne me permet pas de comprendre  :je fais de la copie de fichiers avec <font color="#0000ff" size="


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales