LabVIEWForum.de
TCP IP Einführung - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenkommunikation (/Forum-Datenkommunikation)
+---- Thema: TCP IP Einführung (/Thread-TCP-IP-Einfuehrung)

Seiten: 1 2


RE: TCP IP Einführung - jg - 19.08.2013 17:58

Verwende mal das VI hier zur Erstellung und zum Warten des Listeners:
[attachment=45945]
Und vergiss nicht die Beispiele im NI Example Finder.

Gruß, Jens


RE: TCP IP Einführung - Mietzekatze - 20.08.2013 17:29

So habe die beiden Funktionen durch deine oben gezeigt ersetzt. Nun Läuft das Server.vi munter weiter. Beim Starten des Client.vi gibt es jedoch einen Fehler (Anhang). Den konnte ich auch durch die Beispiele im ExmapleFinder nicht lösen.
Es werden zwei Mögliche Fehlerursachen genannt.
Aber da das Server.vi das TCPListen.vi nicht verlässt, werden keine Daten gesendet und es kann somit auch kein Puffer überlaufen. Die zweite Möglichkeit die die Fehlererklärung vorschlägt, wäre das der Server die Netzwerkverbindung verweigert hat. Aus welchen Gründen kann das passieren bzw. was ist hier der Fehler?


RE: TCP IP Einführung - jg - 20.08.2013 17:42

Bei TCP/IP trifft nur die 2. Erklärung zu.
Du hast aber schon zuerst das "Server"-VI gestartet und bei beiden VIs denselben Port verwendet?

Mglw. funkt deine Windows-Firewall dazwischen?!

Gruß, Jens


RE: TCP IP Einführung - Mietzekatze - 25.08.2013 10:20

Okay Labview für die Firewall zugelassen und es klappt. Smile


RE: TCP IP Einführung - Mietzekatze - 26.08.2013 09:58

Nun möchte ich keine Sinus-Daten übertragen sondern ein Array. Hier beispielhaft zum Test ein 100-Elemente langes Array mit 100 gefüllt. Um nach der Übertragung beide VIs gleichzeitig zu beenden ist der erste gesendete Wert die Länge des Array.
Leider tauchen zwei Probleme auf.
1. Die Daten werden nicht korrekt übertragen. Zunächst eine 100 dann zweimal eine Null und dann wieder eine 100 usw.
Warum kommen die Nullen dazwischen?
2. Die beiden VIs beenden nicht gleichzeitig. Das Client VI spukt deshalb eine Fehlermeldung aus.


RE: TCP IP Einführung - jg - 26.08.2013 10:03

Lad mal deine VIs hoch. Ich habe inzwischen keine Lust mehr, immer deine Versuche auf Grund von Screenshots nachzuprogrammieren.

Gruß, Jens


RE: TCP IP Einführung - Mietzekatze - 26.08.2013 10:08

Kein Problem. Hier sind sie.


RE: TCP IP Einführung - jg - 26.08.2013 10:32

Elementares Debugging:
Wenn etwas nicht so funktioniert, wie man erwartet, dann sollte man sich die Rohdaten anschauen.

In deinem Fall bedeutet das, den TCP-Read-String genauer anzuschauen. Jeder 2. String ist nur 2 Byte lang und besteht nur aus <CR><LF>.

Jetzt überleg mal, woher das kommt?! Dazu solltest du dir anschauen, wieviele Bytes du pro Nachricht schreibst.
Erkennst du den Unterschied?

Übrigens, wenn du schon mit <CRLF> als Trennzeichen für eine TCP-Nachricht arbeitest, dann ist es sinnvoll, mit TCP-Read-VI eine große Anzahl an Bytes auf einmal auszulesen. Das VI stoppt automatisch das Lesen, wenn es das Trennzeichen erkennt.

Gruß, Jens


RE: TCP IP Einführung - Mietzekatze - 27.08.2013 11:43

Alles klar. Die Anzahl der geschrieben und gelesenen Bytes habe ich nicht beachtet.