LabVIEWForum.de
TCP/IP Befehl - Druckversion

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



TCP/IP Befehl - che-salih - 07.10.2013 13:20

Hi Community,

ich möchte ein Host Befehl das genau aus 7 Bytes besteht in Labview programmieren.

Das Befehl ist folgendermaßen aufgebaut:

Byte Contents
1 7
2 Com-Adress
3 [HEX]
4....5 Data Sets
6....7 CRC16

Welche Funktionen sind sinvoll?. Gibt es Beispielcodes? Vielen Dank


RE: TCP/IP Befehl - GerdW - 07.10.2013 13:22

Hallo che,

Zitat:Host Befehl das genau aus 7 Bytes
Du brauchst also ein Array aus 7 Bytes (=U8). Ich würde mal in der Array-Palette nachschauen und irgendwas wie Array-Konstanten, BuildArray oder ReplaceArraySubset verwenden...

Es gibt natürlich auch andere (nicht unbedingt einfacherer) Optionen (Strings, Cluster aus 7 Bytes, Cluster aus verschiedenen Datentypen mit nachfolgendem Typecast, ...)!


RE: TCP/IP Befehl - che-salih - 08.10.2013 09:50

Hallo GerdW,

könnten Sie mir das anhand eines Beispiels erklären?

Mit den Array Tools kam ich leider nicht ganz zu recht. Die Datentypen sind doch unterschiedlich. Also COM-ADR ist ein IP, Command ist HEX und Data-Set ist zB. 10. CRC16 ist die Prüfsumme die auch da reingepackt werden muss. Dazu gibt es auch ein VI von Labview. Tut mir leid. Grundkenntnisse im Labview reichen gerade leider nicht aus. Ich habe das Problem, dass ich all diese Komponennten des Protokol Frames nicht in 7 Byte zusammenfassen kann.

MfG


RE: TCP/IP Befehl - GerdW - 08.10.2013 10:32

Hallo che,

Zitat:Die Datentypen sind doch unterschiedlich. Also COM-ADR ist ein IP, Command ist HEX und Data-Set ist zB. 10. CRC16 ist die Prüfsumme die auch da reingepackt werden muss.
Die Datentypen sind doch identisch: alles Bytes, entweder einzelne oder mehrere pro Wert...

Zitat:Mit den Array Tools kam ich leider nicht ganz zu recht. ... Grundkenntnisse im Labview reichen gerade leider nicht aus.
Dazu gibt es ja Online-Kurse (siehe meine Signatur) und jede Menge mitgelieferte Beispiele...

Zitat:Ich habe das Problem, dass ich all diese Komponennten des Protokol Frames nicht in 7 Byte zusammenfassen kann.
Einzelne Bytes kann man mit BuildArray zu einem Array zusammenfassen...

Zitat:Dazu gibt es auch ein VI von Labview.
Aha. Welches?


RE: TCP/IP Befehl - Trinitatis - 08.10.2013 14:55

Hallo Che,

an deiner Stelle würde ich mir für den Anfang erstmal die verschiedenen Numerics aufs FP legen und diese über ihre Eigenschaft so formatieren, wie du den jeweiligen Wert eingeben möchtest (z.B. hex /dez. ...) Von einem Array würde ich erstmal abraten, da du ja 16bit-Eingaben (CRC) und 8bit-Eingaben hast. Die 16bit-Eingaben musst du dann in lB / HB umwandeln, also 2 8bit-Werte draus machen. Am Ende verknüpfst du alle U8-Werte mit "Build Array" und machst mit "Byte-Array to String" einen über die TCP-Sendefunktion zu versendenden String draus.


Gruß, Marko


RE: TCP/IP Befehl - che-salih - 10.10.2013 14:07

Hallo,

danke nochmal für die Hilfe. Ich lade noch die Lösung hoch, falls mal es jemand braucht.

MfG

Che