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!
Hallo!
Könnte mir irgendjemand ein Beispielprogramm zur Verfügung stellen, in welchem eine UDP Verbindung zwischen mehreren PCs aufgebaut wird?
Ich bekomm das irgendwie nicht richtig hin...
Also für meine Anwendung schicke ich Daten dauerhaft von 2 PCs an einen Master PC, welcher die Daten auswertet!
Ich danke im Voraus für eure Hilfe!
mfg Michael_
12.03.2010, 10:23 (Dieser Beitrag wurde zuletzt bearbeitet: 12.03.2010 10:26 von Y-P.)
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
UDP Verbindung zwischen mehreren PCs
Hallo,
hast Du schon mal im LabVIEW-Example-Finder die Bsp. "UDP Multicast Sender.vi" und "UDP Multicast Receiver.vi" angeschaut?
Im Prinzip brauchst Du da nur eine Multicastadresse (vgl. auch hier) angeben, an die Deine Daten geschickt werden.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Habe mir das Beispiel im Example Finder nun angesehen!
Mir bleibt die aber Frage, wie ich die Daten nun einem bestimmten PC zuordne!
Geht das hier irgendwie? Denn nach der Netzwerkadresse des PCs, welcher die Daten schickt, kann ich ja nicht selektieren!
Bitte um Hilfe!!
mfg
ja werd ich machen, aber dazu muss ich sie noch etwas umschreiben, da die Datenkommunikation in ein komplexes VI eingebettet ist.
Ich erkläre hier nochmal meine Anwendung:
Also 2 PCs senden dauerhaft Daten an einen Master PC! Dieser PC wertet dann aus, welche Daten brauchbar sind und welche nich zu verwenden sind. Dazu ist es nötig die Herkunft der Daten zu wissen, zu jedem Zeitpunkt.
Wenn ich das jetzt richtig verstanden habe, dann würde sich die IP Adresse beim lesen des Multicasts ändern, oder wie reagiert das Lesen dann auf mehrere Daten, welche gleichzeitig ankommen??
mfg
Ich weiß nicht, ob der Hinweis mit Multicast überhaupt für dich richtig ist.
Ich schlage dir folgenden Aufbau vor:
Bei deinen beiden Slaves gibt es jeweils eine UDP-Sender Schleife. Die jagen die Daten an die IP-Adresse des Master an einen bestimmten Port (oder als Broadcast an 255.255.255.255, dann kriegt es jeder im Netzwerk mit).
Dann dein Master:
Dort läuft eine UDP-Read Schleife, die sich dauernd ankommende UDP-Pakete vom vorab spezifizierten Port holt. Um jetzt festzustellen, von welchem Slave ein Paket ist, wertest du den Ausgang IP-address des UDP-Read-VI aus.
Fertig.
Gruß, Jens
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!
Also im Moment habe ich es so gelöst, dass ich 2 UDP Verbindungen am Master öffne, eben für jeden PC eine. (Könnte das ein Problem sein?)
Über die VerbindungsID lese ich dann die verscheidenen Daten aus und verarbeite sie anschließend. Jedoch kommen die Daten erstens extrem Zeitverzögert an (1-2min maximal) und zweitens immer nur die Daten eines PCs, nie beide gleichzeitig!
Naja die Verbindung ist 1GBit! also dürfte es da kein Problem geben!
Habe auch schon den Datenverkehr über Wireshark überprüft!
die Daten kommen sofort an, werden jedoch von LabVIEW erst verzögert verarbeitet!
Das Problem hatte ich schon vorher einmal, hat sich aber aus unerklärlichen Gründen dann gelöst!
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
UDP Verbindung zwischen mehreren PCs
Wie viele Netzwerkkarten hast Du in Deinem Rechner, bei dem die Daten so verzögert ankommen?
Das gleiche Problem hatte ich nämlich schon mal mit Shared Variables (die kommunizieren ja auch über LAN), als ich 2 Netzwerkkarten aktiv hatte. Als ich dann eine deaktiviert hatte, hat es gepasst.
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------