INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Dieses Thema hat akzeptierte Lösungen:

Befehle einzeln Senden/Empfangen TCP/IP



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!

07.11.2014, 10:36 (Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2014 11:19 von DeBa.)
Beitrag #1

DeBa Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2014

2013/2014
2014
kA



Befehle einzeln Senden/Empfangen TCP/IP
Hallo,

und zwar habe ich ein Programm erstellt, das von einem Rechner Befehle über TCP/IP an ein Laser sendet, dieses Lasermodul verarbeitet (liest) diesen Wert aus einer Einheit (zum Beispiel die Temperatur) und gibt diesen Wert wieder zurück. Das funktioniert schon einmal. Aber leider lassen sich Befehle nicht einzeln senden. Bei jedem Sende und Empfang Vorgang muss der Befehl zum Login noch im Eingabefeld stehen. Ich würde aber gerne Befehle durch einzelne Eingabefelder hintereinander senden und die Empfangenen Daten einzeln anzeigen lassen. Ich habe schon ein paar Sachen versucht, aber hab es nicht geschafft es zum laufen zu bringen.

Anbei ist das lauffähige Programm [attachment=51273] und ein Bild, das das Problem zeigt.

Über Lösungen oder Vorschläge zum Lösen meines Problems würde ich mich freuen. Danke.

Gruss


Angehängte Datei(en) Thumbnail(s)
   

11.0 .vi  TCP_Close.vi (Größe: 17,47 KB / Downloads: 395)

11.0 .vi  TCP_Send.vi (Größe: 19,88 KB / Downloads: 411)

11.0 .vi  TCP_Open.vi (Größe: 19,47 KB / Downloads: 416)

11.0 .vi  TCP-Kommunikation.vi (Größe: 12,48 KB / Downloads: 455)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2014, 11:01
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Befehle einzeln Senden/Empfangen TCP/IP
Speichere dein VIs bitte mal in einer niedrigeren LV-Version ( File -> Save for previous ), lv14_img hat noch einen geringen Durchdringungsgrad.

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!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2014, 11:13
Beitrag #3

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Befehle einzeln Senden/Empfangen TCP/IP
Nachtrag: LV2011 wäre schön…

Und auch wichtig: Was sagt das Manual deines Lasers zu diesem Problem? Ohne weitere Informationen aus dieser Quelle kann man kaum Fehlersuche betreiben…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.11.2014, 10:42 (Dieser Beitrag wurde zuletzt bearbeitet: 08.11.2014 10:45 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Befehle einzeln Senden/Empfangen TCP/IP
Hallo DeBa,

Zitat:Bei jedem Sende und Empfang Vorgang muss der Befehl zum Login noch im Eingabefeld stehen.
Du baust eine TCP-Verbindung auf, sendest einen Befehl, liest die Antwort (mit mangelhafter Fehlerverarbeitung) - und dann schließt du die Verbindung wieder.

Und jetzt wunderst du dich, warum du dich bei einem erneuten Kontaktversuch dem Gerät gegenüber mit Passwort ausweisen musst?

Zitat:Ich würde aber gerne Befehle durch einzelne Eingabefelder hintereinander senden und die Empfangenen Daten einzeln anzeigen lassen.
Dann mach das doch einfach. Aber halt ohne ständig die gerade erst aufgebaute Verbindung gleich wieder zu schließen…

Tipp zum String-Handling:
   
Kein Grund, zwei Bytes einzeln in ein Array zu packen und diese dann jeweils in Strings umzuwandeln…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.11.2014, 10:47
Beitrag #5

DeBa Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2014

2013/2014
2014
kA



RE: Befehle einzeln Senden/Empfangen TCP/IP

Akzeptierte Lösung

Hallo,

ich habe den Fehler in meinem Programm gefunden. Bei dem String Handling zum Senden der Befehle habe ich ein String Abschluss durch ein Line Feed ersetzt.
Es lassen sich jetzt Befehle/Antworten nacheinander senden/auslesen.

Danke für eure Hilfe.


Angehängte Datei(en)
11.0 .vi  Kommunikation mehrere Befehle.vi (Größe: 19,03 KB / Downloads: 477)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.11.2014, 17:37
Beitrag #6

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Befehle einzeln Senden/Empfangen TCP/IP
(10.11.2014 10:47 )DeBa schrieb:  ... Bei dem String Handling zum Senden der Befehle habe ich ein String Abschluss durch ein Line Feed ersetzt.

Was ist ein String Abschluss?!
Du hast doch immernoch ein String-Abschluss, nämlich nun dein LineFeed. Im übrigen würde ich dort direkt mit der LV-Konstante für ein LF rangehen - das macht deinen Code lesbarer (man muss jedenfalls nicht den entsprechenden Code für´s LineFeed wissen.

Außerdem öffnet und schließt dein VI immernoch die Schnittstelle, was zu Problemen führen wird, wenn du dieses VI als Sub-VI einsetzen willst.
Auf die Umwege, die deine Drähte machen, will ich mal nicht weiter eingehen.


Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
11.11.2014, 08:55
Beitrag #7

DeBa Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2014

2013/2014
2014
kA



RE: Befehle einzeln Senden/Empfangen TCP/IP
(10.11.2014 17:37 )Trinitatis schrieb:  
(10.11.2014 10:47 )DeBa schrieb:  ... Bei dem String Handling zum Senden der Befehle habe ich ein String Abschluss durch ein Line Feed ersetzt.

Was ist ein String Abschluss?!
Du hast doch immernoch ein String-Abschluss, nämlich nun dein LineFeed. Im übrigen würde ich dort direkt mit der LV-Konstante für ein LF rangehen - das macht deinen Code lesbarer (man muss jedenfalls nicht den entsprechenden Code für´s LineFeed wissen.

Außerdem öffnet und schließt dein VI immernoch die Schnittstelle, was zu Problemen führen wird, wenn du dieses VI als Sub-VI einsetzen willst.
Auf die Umwege, die deine Drähte machen, will ich mal nicht weiter eingehen.


Gruß, Marko

Das Nullzeichen eben, anstatt String Abschluss. Wie genau würde so was aussehen (LV Konstante)?

Bis jetzt ist noch kein Fehler aufgetreten, trotz Sub-VI`s. Vllt. wird dieses noch kommen, da kenne ich mich noch nicht wirklich aus, bin blutiger LabView Anfänger. Die Umwege sind auf Grund dessen, da es sich hierbei nur um die Testversion handelt.

Gruss Dennis
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.11.2014, 10:02
Beitrag #8

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Befehle einzeln Senden/Empfangen TCP/IP
(11.11.2014 08:55 )DeBa schrieb:  Das Nullzeichen eben, anstatt String Abschluss. Wie genau würde so was aussehen (LV Konstante)?

Bis jetzt ist noch kein Fehler aufgetreten, trotz Sub-VI`s. Vllt. wird dieses noch kommen, da kenne ich mich noch nicht wirklich aus, bin blutiger LabView Anfänger. Die Umwege sind auf Grund dessen, da es sich hierbei nur um die Testversion handelt.

Gruss Dennis

Der String-Abschluss ist nach meinem Verständnis das Zeichen bzw. der Trailer, der den zu sendenden String abschließt. Das kann deine "0" sein oder ein LF oder ein CR oder was sonst noch. Wichtig ist, was die Gegenstelle als Abschluss erwartet, um die Befehlseingabe abzuschließen.
Deine Schnittstellenaufzumacherei wird sich später rechen, wenn du dieses VI als SubVI verwendest. (Als Test-VI isses OK) Ansonsten übergibt man dem Sende-VI die geöffnete Schnittstelle und sendet/empfängt eben nur .

Die LF-Konstante ist wie auch die TAB- und CR-Konstante in der Stringpalette zu finden

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.11.2014, 11:35
Beitrag #9

DeBa Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2014

2013/2014
2014
kA



RE: Befehle einzeln Senden/Empfangen TCP/IP
(11.11.2014 10:02 )Trinitatis schrieb:  
(11.11.2014 08:55 )DeBa schrieb:  

Der String-Abschluss ist nach meinem Verständnis das Zeichen bzw. der Trailer, der den zu sendenden String abschließt. Das kann deine "0" sein oder ein LF oder ein CR oder was sonst noch. Wichtig ist, was die Gegenstelle als Abschluss erwartet, um die Befehlseingabe abzuschließen.
Deine Schnittstellenaufzumacherei wird sich später rechen, wenn du dieses VI als SubVI verwendest. (Als Test-VI isses OK) Ansonsten übergibt man dem Sende-VI die geöffnete Schnittstelle und sendet/empfängt eben nur .

Die LF-Konstante ist wie auch die TAB- und CR-Konstante in der Stringpalette zu finden

Gruß, Marko

Alles klar, dann wird ich das so machen. Habe es gefunden. Danke.

Gruss Dennis
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.11.2014, 12:55
Beitrag #10

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
RE: Befehle einzeln Senden/Empfangen TCP/IP
Deine VIs haben schöne Icons. Big Grin

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  CancaseXL mit Labview senden/empfangen 8 byte Botschaft luna 7 6.356 05.07.2021 16:47
Letzter Beitrag: luna
  UDP Daten empfangen - Initialiserung und Beenden der Applikation Tobiii 4 6.152 11.02.2017 17:47
Letzter Beitrag: Tobiii
  CAN Message mittels XNet senden/empfangen Franz94 5 6.815 21.03.2016 19:35
Letzter Beitrag: Franz94
Question Befehle an RS232 mit Buttons Pow 2 4.053 09.10.2014 10:35
Letzter Beitrag: Pow
  TCP IP Daten empfangen und auswerten Galle 1 5.557 22.08.2014 06:43
Letzter Beitrag: rolfk
  Daten schicken/empfangen micki09 1 4.306 10.09.2013 10:21
Letzter Beitrag: jg

Gehe zu: