LabVIEWForum.de
Kabellose Datenübertragung mit Xbee Funkmodul (Arduino) mit Visa über USB Eingang für MAC und WIN - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Instrument IO & VISA (/Forum-Instrument-IO-VISA)
+---- Thema: Kabellose Datenübertragung mit Xbee Funkmodul (Arduino) mit Visa über USB Eingang für MAC und WIN (/Thread-Kabellose-Datenuebertragung-mit-Xbee-Funkmodul-Arduino-mit-Visa-ueber-USB-Eingang-fuer-MAC-und-WIN)

Seiten: 1 2


RE: Xbee Übertragung mit Visa - GerdW - 08.01.2015 11:25

Hallo Marlon,

Zitat:Mein Daten die vom Arduino Uno mit Xbee in LabVIEW übergehen lauten wie folgt: "420D 0A39 3B31 4242 0D0A…
Wenn du dies als Binär-Werte empfängst, dann entspricht das in ASCII diesem hier:
Code:
B
9;1BB
A;1BB
B;1BB
1. Du kannst dein TermChar aktivieren, solltest aber 0Ah = 10d = LF als TermChar einstellen!
2. Welche Werte enthält eine Botschaft? Was bedeutet das erste Zeichen, und was die 1BB nach dem Semikolon?


RE: Xbee Übertragung mit Visa - Marlon - 12.01.2015 14:10

Hallo GerdW,

der String setzt sich wie folgt zusammen:

A;1BB bedeutet A= 8Bit Packerzähler, 1BB= AD- Wert 10 Bit Wert in Hexadezimal Zähler.

1. Form 1 Spalte Darstellung 0...255 Dezimal bzw. 0..FF Hexadezimal und läuft wieder zu 0 über in Form von einem Packerzähler

2. 10 Bit AD- Wert 0...1023 Dezimal 0...3FF Hexadezimal, führende Nullen werden unterdrückt.

Meine weitere Frage lautet wie kann ich dann ein Array erzeugen welches mir später alle 3 Spalten und Zeilenlänge anzeigt, weil die Springlänge variiert. Das heißt ich kann nicht eine feste Zeilenlänge wählen sondern das Array soll dies erkennen und selber die entsprechende Zeilenlänge wählen. Wie würde dies funktionieren?

LG Marlon


RE: Xbee Übertragung mit Visa - GerdW - 12.01.2015 15:22

Hallo Marlon,

Zitat:wie kann ich dann ein Array erzeugen welches mir später alle 3 Spalten und Zeilenlänge anzeigt, weil die Springlänge variiert.
- Welche 3 Spalten? Du hast doch nur 2…
- Wozu die Stringlänge? Wenn du als TermChar das LF nimmst, bekommst du mit jedem VISARead genau eine Zeile geliefert…

Diese Zeile dann mit dem Formatstring "%x;%x" und der Funktion ScanFromString auswerten!


RE: Xbee Übertragung mit Visa - Marlon - 12.01.2015 16:58

Ja stimmt es sind 2 Spalten. Big Grin Ich probiere es erstmal aus mit dem Formatstring "%x;%x" und der Funktion ScanFromString GerdW. Danke dir erstmal bis dahin. Ich werde dann berichten.


RE: Xbee Übertragung mit Visa - Marlon - 13.01.2015 15:29

Guten Tag GerdW,

wo genau kann ich den Wert 0Ah = 10d = LF im TermChar einstellen, wenn ich creat constant oder control anwende kann ich nicht dies einstellen bzw. eingeben!? LG


RE: Xbee Übertragung mit Visa - GerdW - 13.01.2015 15:32

Hallo Marlon,

entweder wie im Bild Konstanten anschließen - oder einfach die Konstante da weglassen, da ein TermChar "LF" schon der voreingestellte Wert ist, wie die (Kontext-)Hilfe verrät:
[attachment=51788]


RE: Xbee Übertragung mit Visa - jg - 13.01.2015 15:32

Und lass dir mal die Darstellung anzeigen:
[attachment=51789]
Gruß, Jens


RE: Xbee Übertragung mit Visa - Marlon - 15.01.2015 23:14

So danke GerdW und jg für eure Hilfestellung, es funktioniert jetzt alles wie ich es mir vorgestellt habe. Mein letztes Blockdiagramm sieht wie folg aus siehe Anhang! Alle drei Werte werden über den Microkontroller (Arduino Uno) Zeilenweise (Stringlänge als Hexadezimalwerte) ausgegeben und in Labview über die Funktion "Visa read" ausgelesen. Vielleicht hilft es ja den ein und anderem mal später.

Grüße Marlon