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

LabVIEWForum.de

Normale Version: Kabellose Datenübertragung mit Xbee Funkmodul (Arduino) mit Visa über USB Eingang für MAC und WIN
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallihallo, mein Problem besteht darin, dass die Standartsignale (Hexadezimalwerte) vom Xbee in meinem LabVIEW Programm (siehe Datei) nicht regelmäßig angezeigt werden. Das heißt mein Signalfluss im Programm ist sporadisch. Außerdem bin ich mit dem Resultat der "Hexadecimal String To Number Function" nicht zufrieden. Ich möchte Int- Werte. Könnte mir jemand helfen? Ich bedanke mich im Voraus für eure Hilfe.
Hallo Marlon,

wenn du ein TermChar einstellst, solltest du nicht mit BytesAtPort arbeiten! Und eine Wait-Funktion brauchst du dann auch nicht…

Zitat:Außerdem bin ich mit dem Resultat der "Hexadecimal String To Number Function" nicht zufrieden. Ich möchte Int- Werte.
Inwiefern bist du unzufrieden? Die Funktion gibt dir doch Int-Werte - bei dir vom Typ U32! Hmm

Könnte es daran liegen, dass du eigentlich Binärwerte lesen sollst und kein ASCII-Text? Zumindest legt das dein auf Hexadezimalanzeige eingestellter String-Indicator nahe…
Vielleicht solltest du statt dieser Funktion ein einfaches StringToU8Array verwenden?
Danke GerdW für deine schnelle Antwort, du hast recht es sind Int Werte, jedoch muss ich sagen wenn ich die Funktion "String to U8" anstelle des Hexastrings einfüge, zeigt er mir im Display keine Funktionswerte mehr an!? Huh

Ja ich möchte mir die Binärwerte anzeigen lassen anstelle der Hexadezimalwerte vom Xbee.

Was ich als LabVIEW- Neuling nicht verstehe, Zitat: "wenn du ein TermChar einstellst, solltest du nicht mit BytesAtPort arbeiten!"? LG
Hallo Marlon,

du hast beim VISAConfigureSerialPort ein TermChar "255" eingestellt und den Eingang "TermChar aktiv" auf TRUE (Voreinstellung) belassen.

Damit liest VISARead solange, bis:
- die gewünschte Anzahl Bytes gelesen wurde
- bis das TermChar in den gelesenen Bytes auftaucht
- bis ein TimeOut oder anderer Fehler auftritt

Du kannst also schon Botschaftsweise lesen - unter der Voraussetzung, dass deine XBee-Botschaften immer mit dem Zeichen FFh terminiert werden…

Zitat:wenn ich die Funktion "String to U8" anstelle des Hexastrings einfüge, zeigt er mir im Display keine Funktionswerte mehr an!?
Warum nicht?
Er gibt hinter "StringU8" in der Fehlerdiagnose ein #0 aus. Huh
Hallo Marlon,

was ist eine Fehlerdiagnose? Wo wird "#0" ausgegeben/angezeigt?
Ich meine mit "Fehlerdiagnose" = die Highlight Funktion oben links unter Ansicht im back panel oder Blockdiagramm. LabVIEW schreibt mir dann direkt hinter String to Byte Array (U8) diese Antwort: "#0".
GerdW, ich schicke dir hier in ein paar Stunden mal die Werte vom Xbee Modul, damit du dir vorstellen kannst welche Daten in LabVIEW übertragen werden. Tippen
Hallo Marlon,

aha, also die Highlight-Funktion…

Zitat:LabVIEW schreibt mir dann direkt hinter String to Byte Array (U8) diese Antwort: "#0".
Das bedeutet, dass das Array, welches von dieser Funktion geliefert wird, leer ist.
Und das wiederum bedeutet, dass der String, den du gelesen hast und nun umwandeln willst, leer ist.
Und das wiederum bedeutet, dass du Probleme beim VISARead hast…

Stimmt diese Verkettung? Wie sieht der String aus, den du da umwandeln willst?
Juhu es klappt! Wie du gesagt hattest es lag am Terminator des Visa Configure Serial Port. Der steht jetzt auf false und schon zeigt er mir Datenwerte. Mein Daten die vom Arduino Uno mit Xbee in LabVIEW übergehen lauten wie folgt: "420D 0A39 3B31 4242 0D0A 413B 3142 420D 0A42 3B31 4242 0D0A 433B 3142 420D 0A44 3B31 4243 0D0A 453B 3142 420D 0A46 3B31 4242 0D0A... " nur damit du ungefähr weißt was am Eingang passiert. Dies ist nur zu testzwecken später soll darüber ein EKG- Signal laufen.

Was mich jedoch noch stört der Signalfluss ist noch nicht flüssig. Er stockt ab und zu. Ich melde mich später nochmal.
Seiten: 1 2
Referenz-URLs