LabVIEWForum.de
Befehl and KERN Waage senden. - 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: Befehl and KERN Waage senden. (/Thread-Befehl-and-KERN-Waage-senden)



Befehl and KERN Waage senden. - Heartless - 26.06.2015 19:24

Schönen guten Abend,

Ich habe eine Kern AEJ 200-4CM Waage über USB mit einem PC verbunden
(Anleitung (PDF): Download Anleitung ).

Und möchte über Labview in festen Zeitintervallen (z.B. alle 10 sekunden) die Messwerte erfassen. Da ich keinerlei Erfahrungen in Labview habe, habe ich ersteinmal die hier im Forum von anderen Nutzern geposteten Beispiele probiert (Waage1.vi aus diesem Post ).

Ich hatte das Problem, dass ich einen Timeout error erhalte, meines Erachtens weil Labview auf Ergebnisse wartet (in diesem Fall 14Bit) aber diese nicht erhält, da die Waage ihrerseits keinen Befehl dazu hat.
Wenn ich auf der Waage die PRINT-Taste betätige werden Daten übermittelt, also sollten die Verbindungseinstellungen richtig sein, aber leider ist das ständige Betätigen der Taste keine Option für mich, wenn Versuche über mehrere Stunden (und eventuell über Nacht) laufen sollen Big Grin.
Daher möchte ich einen Fernsteuerbefehl an die Waage senden, laut Seite 95 der Anleitung hieße das z.B. den Befehl "SI" zu senden, und das ganze über "CR LF" beenden.

Habe es dann mal so ähnlich wie in diesem und dem nächsten Beitrag versucht, aber ich scheine da einiges falsch zu machen, da sich nichts ändert.

Da ich nicht sicher bin wo genau ich nach Hilfe suchen sollte, daher hier mein Hilfegesuch.

Anbei noch meine jetzigen VI und Bilder, die die zwei verschiedene Versuche zeigen.

[attachment=53477]
[attachment=53478]
[attachment=53479]
[attachment=53480]


RE: Befehl and KERN Waage senden. - GerdW - 27.06.2015 08:14

Hallo,

CR/LF sind Steuerzeichen, die solltest du dann auch korrekt senden. Und in deinem zweiten Bild geht auch alles durcheinander: erst abfragen, wieviel im Lesebuffer steht, dann den Buffer löschen, dann einen Befehl senden und dann die ursprüngliche Buffergröße lesen wollen...


RE: Befehl and KERN Waage senden. - Heartless - 29.06.2015 12:17

Ersteinmal danke für die Antwort,

leider muss ich sagen, dass mir das nicht wirklich weiterhilft. Das zweite Bild war ein wilder Versuch meinerseits, da der Aufbau des Ersten nicht zum erhofften Erfolg geführt hat. Könntest du (oder ein anderer hilfsbereiter Forumianer) mir sagen, wonach genau ich suchen müsste um herauszufinden wie ich weiterkomme? Wie gesagt weiß ich so ziemlich genau nichts und habe es bis jetzt durch Vorlagen anderer und Reverse-engineering versucht, bin damit aber jetzt an die Grenzen gestoßen.

Habe mal nach "Steuerzeichen" gesucht, finde da aber mehr Verwirrung als Hilfe.


TL,DR: welche Fachbegriffe/Überschriften/Kapitel aus Anleitungen/Hilfe sollte ich mir zu Gemüte führen?

vielen Dank im Voraus


RE: Befehl and KERN Waage senden. - GerdW - 29.06.2015 12:31

Hallo Heartless,

Zitat:Habe mal nach "Steuerzeichen" gesucht, finde da aber mehr Verwirrung als Hilfe.
- Diese Steuerzeichen (wie LF und CR) wurden schon zu ASCII-Zeiten (oder noch vorher) definiert. Schau doch einfach mal bei Wikipedia nach "ASCII"…

Zitat:wonach genau ich suchen müsste um herauszufinden wie ich weiterkomme?
Es gibt hier im Forum so viele Beiträge zum Thema "Kommunikation über RS232", da ist garantiert was sinnvolles dabei…
Und du solltest dir anlesen, warum man bei RS232 so gern mit dem TermChar (termination character) arbeitet.

Anregung:
[attachment=53489]
- serielle Schnittstelle (inkl. TermChar) konfigurieren
- Befehl mit LF/CR erstellen und verschicken
- Antwort darauf lesen (habe eine 999 bei der Anzahl zu lesender Bytes vergessen), die Antwort wird dank TermChar abgewartet


RE: Befehl and KERN Waage senden. - Schwand - 29.06.2015 12:42

Hallo,

ich bin sehr erschrocken, darüber wieviel ich in einem Jahr LV Abstinenz vergessen hab, aber ich probiers mal:

Schau dir doch mal die Beispiele aus dem Beispielfinder (Hilfe>>Beispiele suchen) für die serielle Kommunikation an, vielleicht hilft das ja schon.

Ansonsten:
In Bild 1 schreibst du den Befehl und liest die Antwort quasi gleichzeitig. Es kann also sein, dass du erst liest und dann schreibst, das funktioniert ja meist nicht. Mach doch mit dem Fehlerdraht ne definierte Reihenfolge.

Als Beispiel für einen (hoffentlich) korrekte Befehl:

edit: oh... zu langsam...und auch noch die falsche vi version
Nochmal als 13er