LabVIEWForum.de
Modbus-Problem - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenkommunikation (/Forum-Datenkommunikation)
+---- Thema: Modbus-Problem (/Thread-Modbus-Problem)



Modbus-Problem - knuemm - 16.05.2019 07:55

Hallo,

ich habe einen Rechner, auf dem 3 VIs als Runtime-EXE parallel laufen. Diese VIs kommunizieren über ein viertes VI, welches die Signale über Globale Variablen einsammelt und über Modbus an die SPS der zugehörigen Maschine übergibt. Dies habe ich so gemacht, da es Probleme gegeben hat, wenn alle 3 VIs eigenständig über Modbus mit der SPS kommunizieren.

In der Regel klappt es auch, aber manchmal gehen halt Signale verloren.

Wie löst Ihr sowas?

Gruß,

Klaus


RE: Modbus-Problem - GerdW - 16.05.2019 08:42

Hallo Klaus,

Zitat:In der Regel klappt es auch, aber manchmal gehen halt Signale verloren. Wie löst Ihr sowas?
Ich würde mit Debuggen anfangen: wann gehen Signale "verloren", wo gehen sie verloren, wie oft, irgendein Muster, …

Bitte Profil_ergaenzen


RE: Modbus-Problem - MaxP - 16.05.2019 11:49

Hey,

schau dir mal den DQMH an.
https://delacor.com/documentation/dqmh-html/GettingStarted.html
So kämst du von den globalen Variablen weg und hättest bei "request and wait for reply" auch die Gewissheit, das es ausgeführt wurde. Zusätlich kannst du mit dem Tester und Broadcast Event noch schauen was gerade genau in deinem Programm passiert.
Bei globalen Variablen, weißt du ja nie, ob am anderen Ende wirklich jemand mit liest.

Ich habe so den Zugriff auf den CAN-Bus umgesetzt.

Gruß Max


RE: Modbus-Problem - knuemm - 16.05.2019 13:11

Vielen Dank. Ich muss mein Problem, glaube ich, spezifischer schildern.


Die drei genannten VIs und das Modbus-Kommunikations-VI laufen jeweils als separate EXE-Datei auf LabView Runtime. So wie ich es verstehe, können mit dem DQMH nur verschiedene Schleifen innerhalb eines VIs miteinander kommunizieren. Oder vertu ich mich da?

Gruß,

Klaus


RE: Modbus-Problem - GerdW - 16.05.2019 13:34

Hallo Klaus,

Zitat:Die drei genannten VIs und das Modbus-Kommunikations-VI laufen jeweils als separate EXE-Datei auf LabView Runtime.
Und wie kommunizieren diese 4 EXEs miteinander?

Zitat:Diese VIs kommunizieren über ein viertes VI, welches die Signale über Globale Variablen einsammelt…
Globale Variablen funktionieren nur innerhalb einer EXE, aber nicht zwischen verschiedenen EXEs…

Zitat:Ich muss mein Problem, glaube ich, spezifischer schildern.
Ja, auf alle Fälle…


RE: Modbus-Problem - MaxP - 17.05.2019 07:01

(16.05.2019 13:11 )knuemm schrieb:  So wie ich es verstehe, können mit dem DQMH nur verschiedene Schleifen innerhalb eines VIs miteinander kommunizieren. Oder vertu ich mich da?

Sehr stark sogar! Beim DQMH gibt es die Public API des Moduls, mit dem du diesem Befehle zukommen lassen kannst und auch antworten erhältst. In dem Getting Started Video sieht man dies z.B. an dieser Stelle ganz gut: https://youtu.be/M75PAwjTg1c?t=1030
Die im Video verwendeten VIs stammen aus der public API des Moduls und kommunizieren mit diesem.

Der Einstieg in DQMH ist am Anfang nicht sehr einfach, weil es doch schon umfangreich ist. Ich finde, es lohnt sich, aber da die Programme später viel Modularer sind und die Fehlersuche mit einem gepflegten Tester viel viel einfach ist als bei einer QMH oder anderen Programmen.
Schau dir einfach mal das "Getting Started" Video komplett an, damit solltest du schnell den Workflow und die Vorteile des DQMH sehen.

Gruß Max


RE: Modbus-Problem - knuemm - 17.05.2019 10:05

Zitat:Globale Variablen funktionieren nur innerhalb einer EXE, aber nicht zwischen verschiedenen EXEs…

Sorry, ich meinte natürlich Umgebungsvariablen. Dann werde ich mich wohl mal in DQMH einarbeiten müssen.....

Vielen Dank!