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!
Ich habe das folgende Problem: Eine Kamera liefert Daten die von einem PC ausgewertet werden (die Software für die Auswertung wird in C++ geschrieben). Dieser PC soll dann die Ausgabe der Auswertung an einen anderen PC im selben LAN schicken. Die Daten auf diesem PC sollen von LabVIEW erfasst werden. Wie mache ich am einfachsten die Verbindung zwischen den beiden PC's (über LAN via UDP z.B)? Ich kenne mich mit LabVIEW nicht aus, daher wollte ich mal fragen, was ihr mir empfehlen würdet (dann kann ich mich in diesem Gebiet mal einlesen).
Folgende weitere Informtation könnten nützlich sein:
- LabVIEW und die Kameraauswertung können nicht auf dem selben PC ausgeführt werden, d.h das Einbinden von DLL's in LabVIEW ist leider keine Lösung
- Pro Sekunde werden 90 Frames ausgewertet und pro frame sollen lediglich einige Bytes an den "LabVIEW PC" geschickt werden, das heisst die Übertragung ist nicht allzu gross...
Vielen Dank schonmal für eure Hilfe.
finalcu
05.03.2009, 13:22 (Dieser Beitrag wurde zuletzt bearbeitet: 05.03.2009 13:23 von htw10870.)
6.1, 8.00, 8.2, 8.2.1, 8.5, 8.5.1, 8.6, 2010
2004
de
01468
Deutschland
Datenaustausch zwischen 2 PCs
Hallo,
bei den LV Examples gibts bei Networking "Multiple Connections - Server.vi" und "Multiple Connections - Client 1.vi" - das entsprechend zurechtgestrickt funktioniert hervorragend.
Grüße
05.03.2009, 13:29 (Dieser Beitrag wurde zuletzt bearbeitet: 18.06.2009 14:26 von eg.)
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Datenaustausch zwischen 2 PCs
Ich mach' das immer mit "Shared Variables".
Funktioniert super und ist ziemlich einfach.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
' schrieb:Ich mach' das immer mit "Shared Variables".
Funktioniert super und ist ziemlich einfach.
Gruß Markus
Herzlichen Dank für die rasche Antworten. Funktioniert das mit shared variables auch übers LAN? Ich schaue mir mal die anderen Vorschläge an und melde mich wieder wenn es Probleme gibt
lg
finalcu
06.03.2009, 08:42 (Dieser Beitrag wurde zuletzt bearbeitet: 06.03.2009 08:43 von rolfk.)
' schrieb:Herzlichen Dank für die rasche Antworten. Funktioniert das mit shared variables auch übers LAN? Ich schaue mir mal die anderen Vorschläge an und melde mich wieder wenn es Probleme gibt
lg
finalcu
Funktioniert schon, aber Du musst dann die Shared Variable Engine natürlich auf beiden PCs deployen. Auch ist der Zugriff auf Shared Variablen von nicht NI Umgebungen ziemlich kompliziert. Mit dem TCP/IP Example das auch schon erwähnt wurde hast Du eigentlich alles was Du brauchst. Das in eine Applikation einzubauen ist nicht aufwendiger als eine Shared Variable hineinzupropfen, aber beim Deployen der Applikation auf andere Rechner wirst Du die Einfachheit der Konfiguration zu schätzen wissen. Einfach irgendwo die IP Adresse und Portnummer des Servers konfigurierbar machen und alles andere geht von selber.
Das kann man mit Shared Variablen so einfach nicht machen wenn es auf mehreren Computern muss. Sag mal nur Installation der entsprechenden Runtimekomponenten und dann auch noch deployen der Shared Variablendefinitionen (und bei Änderungen jeweils re-deployen).
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
Datenaustausch zwischen 2 PCs
Wenn die Anwendung nachher als Exe läuft, muss man nur auf dem Server (programmatisch) deployen (Bsp. hier im Forum). Dabei muss die "Shared Variables Library" dynamisch in die Exe mit eingebunden werden.
Auf dem Client muss nur im Aliases-File die IP-Adresse des Servers eingegeben werden.
In der Entwicklungsumgebung funktioniert es (wenn man gleich übers Netzwerk arbeiten will) etwas anders (Rechner mit Bind-to-Source,... einbinden). Ist aber auch kein Problem.
Ich mache es immer so:
Ich entwickle auf einem Rechner. Dann muss ich nichts umstellen und am Schluss wird es wie anfangs beschrieben auf meine Rechner verteilt.
Gruß Markus
-------------------------------------------------------------------------- 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
Datenaustausch zwischen 2 PCs
Achso.... Das könnte auch irgendwie klappen, zur Not wenn er die C-Daten in einem kleinen LabVIEW-Programm verschickt. Würde mich aber auch mal interessieren, ob es komplett ohne LabVIEW geht. Die SVE muss aber wohl laufen.
Gruß Markus
' schrieb:@Y-P: Aber funktioniert das auch, wenn das andere Programm kein LV-Programm ist? Wenn ich richtig verstanden habe, ist der "Sender" ein C++ Programm.
Gruß, Jens
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
' schrieb:Achso.... Das könnte auch irgendwie klappen, zur Not wenn er die C-Daten in einem kleinen LabVIEW-Programm verschickt. Würde mich aber auch mal interessieren, ob es komplett ohne LabVIEW geht. Die SVE muss aber wohl laufen.
Gruß Markus
Hallo,
mal abgesehen von der eigentlichen Frage, mich haben die shared variable ganz schön fertig gemacht. Vielleicht weil ich diese Variablen eigentlich im Zusammenhang mit einem OPC-Server verwendet hatte. Ab Version 8.6 ging es einigermassen besser und vor allem schneller(!!). Aber als ich mir die Lösungen von eg angeschaut hatte stand für mich eines fest: nie mehr SV für die Kommunikation zwischen mehreren PC's. Hier funktioniert nur TCP/IP einwandfrei. Das nur nebenbei..
Grüsse
montanaro