Welches "Protokoll" wählt man zum Datenaustausch zwischen mehreren PCs...
Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Welches "Protokoll" wählt man zum Datenaustausch zwischen mehreren PCs...
Hallo liebe Community,
Ich habe vor einigen Jahren ein funktionierendes Messprogramm geschrieben, welches als VI auf einem Rechner läuft und von dort diverse Messgeräte ansteuert. Nun wird der Messplatz umgebaut und ich muss einen Teil der Messgeräte in einen anderen Raum stellen.
Nun möchte ich zwei Rechner nutzen, die über das Firmenintranet (separates Messnetz) miteinander verbunden sind und alle Messgeräte steuern.
Mein Problem ist nun die Wahl des "vernünftigsten" Kommunikationsprotokolls. Ich sehe die verschiedenen Möglichkeiten über Shard Variables, DataSocket, TCP-Verbindungen etc. und bekomme auch die Beispiele zum Laufen. Ich habe aber leider kein Gefühl dafür, welches Protokoll für mich am vernünftigsten ist.
Meine Anforderungen:
Da ich nicht allein im Messnetz bin, wäre eine grundlegende Sicherheit wünschenswert. Meine Kollegen wollen mir nichts böses, aber versehentliches "Crosstalk" mit anderen LabView Nutzern wäre blöd.
Die nötige Geschwindigkeit ist ziemlich gering: Ich lese maximal 2 mal pro Sekunde Spannungen aus. Ein "Delay" von einigen hundert Millisekunden stören nicht.
Das ganze sollte einfach umzusetzen sein. Je weniger Zeit ich für die Neuprogrammierung benötige, um so besser. Da die Leseroutinen der Messgeräte bisher als SubVI laufen, wäre es schön, wenn ich diese mit minimalen Modifikationen auf dem Zweitrechner laufen lassen könnte.
RE: Welches "Protokoll" wählt man zum Datenaustausch zwischen mehreren PCs...
Hallo PTB-Mitarbeiter,
ich würde dir hier die SharedVariable empfehlen.
- Die Datenrate ist locker drin.
- "Crosstalk" ist über entsprechend benamte Variablen leicht zu vermeiden.
- Wenn ich mich recht entsinne, kann man den Zugriff auf die Variablen auf IPs etc. begrenzen, auch so kann man "Fremde" aussperren...
RE: Welches "Protokoll" wählt man zum Datenaustausch zwischen mehreren PCs...
Aus dem Bauch heraus:
Mit Shared Variablen bist du am einfachsten und schnellsten am Ziel.
Einfach am "Messplatz-Rechner" den Ist-Wert der Spannung(en) in eine Shared-Variable schreiben. Das kannst du einfach in dein Mess-VI integrieren.
Am zweiten Rechner liest du diese Shared-Variable asynchron wieder aus (da es dir nicht auf genaue Zeit und Delays ankommt).
Bei entsprechender Programmierung kannst du auch das in deine bisherigen Mess-VIs auf einfache Weise integrieren.
Gruß, Jens
EDIT: 2 User, 1 Meinung
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
RE: Welches "Protokoll" wählt man zum Datenaustausch zwischen mehreren PCs...
An einem meiner Prüfstände mache ich es auch mit Shared Variables und der läuft schon seit Jahren (in inzwischen 7-facher Ausführung). So schlecht kann es also mit SV nicht sein.
-> 3 User, 1 Meinung
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
RE: Welches "Protokoll" wählt man zum Datenaustausch zwischen mehreren PCs...
Ich habe sowas (in etwas komplexer schätze ich) über TCP IP gelöst. Ist schon mit einigem Aufwand verbunden, Asynchrones Lesen und Schreiben zu gewährleisten wird eventuell aufwändig etc.
Der Vorteil ist natürlich das du deinen Datenfluss deutlich genauer Steuern kannst, keine Werte verlierst etc. pp.
Da es darauf aber bei dir nicht ankommt würde auch ich dir eher zu Shared Variables raten.
Gruß Kiesch
Zitat:Märchen und Geschichten werden erzählt am Lagerfeuer, technischen Fakten werden mitgeteilt (oder so). (Genauso wie Software nicht auf einem Server "herumliegt", die ist dort installiert.)
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
RE: Welches "Protokoll" wählt man zum Datenaustausch zwischen mehreren PCs...
-> 5 User, 1 Meinung.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------