le 04-07-2016 07:53 AM
Bonjour à tous,
J'essaye actuellement de commander un banc Superflow SF1020 via le protocole modbus et je fais face à un problème auquel je ne trouve pas solution, malgré les nombreux problèmes et solutions référencés sur le forum d'entraide. J'ai posté un topic sur le forum anglophone, le sujet est sur le lien est affiché ci-dessous, mais je tente également ma chance sur le forum francophone, au cas où.
Résolu ! Accéder à la solution.
le 04-07-2016 08:30 AM
Bonjour,
Refais le test en mettant des temporisation dans ton programme.
Selon les équipements, il mette environ 50ms pour traiter une requête et y répondre.
Le problème de ton exemple, c'est que tu harcèles ta communication sans lui laisser le temps de respirer (boucle while non cadencée).
Cdt,
Michael
le 04-07-2016 09:15 AM
Oui, j'avais oublié de rajouter une temporisation mais au final, ça ne changeait rien.
En revanche, j'ai rajouté une image car j'ai remarqué un autre problème qui a peut-être une influence sur la communication, puisque mes variables "VISA ressource name" se multiplient .. Le problème se résout en rebootant l'ordinateur mais c'est la première fois que je vois ça.
Si quelqu'un a une solution, je suis toujours prenneur 😄
le 04-11-2016 10:01 AM
Salut, j’ai bien vu ton message personnel. N’étant pas très disponible actuellement, je ne sais pas si je pourrai t’aider.
Il me faudrait plus d’information sur ton appareil
As-tu regardé les tutos mdobus du site NI ?
par exemple
https://decibel.ni.com/content/blogs/Luc_Desruelle/2013/06/20/modbus-et-labview
http://www.ni.com/white-paper/52135/fr/
http://www.ni.com/white-paper/7675/fr/
A+
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
le 04-12-2016 07:34 AM
Bonjour,
Il s'agit d'un protocole Modbus série de type RTU, dont les paramètres ne sont pas précisés mais dans un paragraphe de leur manuel d'utilisation, ils montrent une fenêtre standard du gestionnaire de périphériques :
bit per sec (baud) : 9600
data bits : 8
parity : none
stop bits : 1
flow control : none
La liaison s'effectue par un câble USB A vers B mais peut également être faite par un câble RS 232 vers usb B (en soudant le RS 232 sur des pins prévus à l'intérieur du banc). Je n'ai pas d'information concernant la longueur des trames transférées, le pdf joint à ma réponse est le seul document que j'ai reçu.
Sinon, j'utilise un ordinateur fonctionnant sous Windows XP 64 bits pour communiquer avec le superflow, ma version de labview est la 2012 SP1 et j'ai installé plusisurs librairies dont la plus courante ( http://www.ni.com/example/29756/en/ ) , ainsi que deux autres autres, NI Modbus Library 1.1.3.32 et Plasmionique Modbus Master 1.0.1.1, qu'on installe via VIPM.
J'ai déjà regardé ces topics, qui m'ont d'ailleurs été très instructif, sachant que c'est la première fois que j'ai affaire au protocole modbus.
Par ailleurs, on m'a conseillé sur LAVAG d'utiliser un "serial sniffer" pendant que j'utilise le logiciel OEM afin de me faire une meilleur idée de l'état de la communication
04-12-2016 04:53 PM - modifié 04-12-2016 04:53 PM
qsub-D a écrit :Bonjour,
Il s'agit d'un protocole Modbus série de type RTU, dont les paramètres ne sont pas précisés mais dans un paragraphe de leur manuel d'utilisation, ils montrent une fenêtre standard du gestionnaire de périphériques :
bit per sec (baud) : 9600
salut, la documentation note : Baud Rate 9600 and 19200
tu as donc 1 chance sur 2.... tu devrais tenter avec 19200 (?) ou regarder la documentation pour comprendre comment fixer le baud rate
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
le 04-12-2016 05:12 PM
sinon je vois The FlowCom unit has an RS-232 serial port and a USB connection that emulates an RS-232 serial port. To connect to a Modbus bus, you may need an adapter from either of these interfaces to your particular network.
tu as tenté avec un port RS232 "natif"? sans le convertisseur USB (emulation port série)
en effet je viens de revoir ton code d'erreur Error -1073807298
par exemple : When Using a Third-Party USB-Serial Adapter
http://digital.ni.com/public.nsf/allkb/0c2aba463217342686256e2e006df187
l'erreur et sur le fonction Init VISA ? ou uniquement sur la fonction modbus read register (sur le write ou read?)
As-tu une copie du texte de l'erreur LabVIEW?
A+
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
le 04-12-2016 05:20 PM
bonsoir Luc,
Je viens de poster ... et tu as posté "derrière" moi ... à 00:16hr
toujours à fond notre Luc .... kudo.
le 04-13-2016 10:37 AM
Tout d'abord, j'ai bien testé avec les deux baud rate différents et sans plus de succès.
Je ne peux pas tester avec un RS 232 complet car je n'ai pas de port disponible sur le pc de contrôle. J'utilisais jusqu'ici un câble USB A vers B du fournisseur avec les drivers correspondants.
En revanche, je vais tenter d'utiliser le câble suivant (http://uk.rs-online.com/web/p/kvm-mixed-cable-assemblies/6877819/) pour effectuer la liaison, dès que le contact OEM m'aura fournis le pinout du port série (le port du série du banc n'est en fait que 6 pins dont li pinout n'est pas précisé)
Pour ce qui est du code d'erreur, j'ai joint une première image d'un comTester où on peut voir que la communication est, selon le VI, bien établie, et qui illustre le code d'erreur 7298. Cette erreur arrivait généralement au premier VISA read ou write utilisé.
En revanche, un code qu'on m'a fournis (et dont j'ai joint un impr-écran) m'a permis de constater que cette erreur n'est pas insolvable 🙂
Par ailleurs, j'ai essayé de tester la communication avec le soft OEM et elle ne fonctionne pas (j'ai testé le soft sur 2 pcs différents pour être sûr), alors que cela marchait il y a 2 ans, peut-être le câble est -il endommagé et c'est la raison pour laquelle je vais tester la communication avec le RS232.
N'hésitez pas à me reprendre si j'ai dit une bêtise ou si j'ai manqué quelque chose.
le 04-14-2016 03:58 AM
ouadji a écrit :bonsoir Luc,
Je viens de poster ... et tu as posté "derrière" moi ... à 00:16hr
toujours à fond notre Luc
.... kudo.
salut ouadji, j'ai "un peu de travail..."
J’espère que tu vas bien, et même si je n’écris pas beaucoup sur le forum, je passe toujours régulièrement pour lire tes incroyables posts ! bonne et très belle journée, avec lebeau temps. A+ luc
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group