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:

RS232 Multimeter



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.06.2011, 16:05
Beitrag #1

HSK-Michael Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: May 2011

2010
2011
DE



RS232 Multimeter
Hallo Forum, ich versuch ein Multimeter Peaktech 3315 über die RS232 anzusprechen. Mein Programm funktioniert leider nur teilweise. Das Mulitmeter ist an COM1 angeschlossen und meine Daten bezüglich Baudrate usw. müssten eigentlich richtig sein.

Mein Programm bricht nach einer LoopSchleif mit der Meldung "Fehler -1073807253 ist bei VISA: Lesen" ab. Zuvor hat mir das Programm den DatenStrom einer Übetragung noch angezeigt. Und die Werte sind auch korrekt - stimmen mit der Mulitmeteranzeige überein (1.Zeichen=Range 2-5.Zeichen Messwert, usw.). Mir ist nicht ganz klar was der Eigenschaftskonoten Bytes at Serail Prot macht, der mit dem Visa Lesen verbunden ist?

Vieleicht hat jemand eine Idee, weiß leider nicht weiter und ich denke, dass das Progrämchen kurz vor dem durchbruch steht.

Ich hab als Beispiel das ganze nach diesem http://www.labviewforum.de/Thread-Metex-...-abfragen Beitrag aufgebaut.


Angehängte Datei(en)
2010 .vi  Multimeter.vi (Größe: 15,61 KB / Downloads: 402)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
07.06.2011, 16:54
Beitrag #2

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
RE: RS232 Multimeter
Hab grade leider kein Lv10 zur Hand, aber trotzdem mal ein paar Worte von mir:

1. BytesAtPort schaut, wie viele Daten am Port anliegen. Das kann man verwenden, wenn man variable Nachrichtenlängen hat. Ansonsten kann man es auch durch eine Konstante ersetzen. Ich verwende es immer, weil bei mir nix sooo zeitkritisch ist, dass ich mir die Abfrage nicht leisten könnte.

2. Hast du eine kleine Wartezeit zwischen Lesebefehl senden und Antwort auslesen eingebaut? Ca. 50 ms sollten reichen. Ansonsten einfach mal rumspielen.

3. Das VI mal im DebugModus ausführen (die kleine Glühbirne neben den Startschaltflächen auf gelb schalten) und beobachten, wo der Fehler genau auftritt.

Grüße,
Totti

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.06.2011, 17:45 (Dieser Beitrag wurde zuletzt bearbeitet: 07.06.2011 18:50 von Lucki.)
Beitrag #3

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: RS232 Multimeter

Akzeptierte Lösung

Sowie du das selbst programmierst und nicht die vom Hersteller mitgelieferte Software verwendest, brauchst Du das Schnittstellenprotokoll. Und wir brauchen das auch, um Dir zu helfen. Wenn drüber weder auf der mitgeleiferten CD noch auf der Homepage des Herstellers etwas zu finden ist, heißt das nicht, dass es geheim ist. Rufe beim Hersteller an und lass Dir die Info per Email schicken. Das Weitere ist dann nur noch ein Clacks.

Edit: Wenn dieses Protokoll gilt, dann könnte es z.B. so funktionieren:
   

2010 .vi  Multimeter-1.vi (Größe: 15,38 KB / Downloads: 444)

NB1: Man kann natürlich auch alle 9 Byte auf einmal lesen und dann den String zerlegen. Aber warum sich das antun?
NB2: Den Start/Stop darfst Du so nicht machen. Bei Stop wird nicht mehr gelesen, aber die Datenerfassung läuft weiter, bis der Empfangspuffer überläuft.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.06.2011, 10:22 (Dieser Beitrag wurde zuletzt bearbeitet: 08.06.2011 10:29 von HSK-Michael.)
Beitrag #4

HSK-Michael Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: May 2011

2010
2011
DE



RE: RS232 Multimeter
Spitzenmäßig, genau so klappt es, ich mußte nur noch DTR und RTS einfügen - wenn ich das richtig verstanden habe wird meine Infrarotschnittstelle über diese Einstellung mit Spannung versorgt. Hab das Vi nocheinmal angefügt.
Vielen Dank!

Vielleicht hat noch jemand die gedult ein paar Fragen zu erklären?

Dieses VI - Multimeter überträgt (BaudRate) 2400 Symbole pro Sekunde?

Dann kommt das Datenformat, welches übertragen wird mit Start-, Daten-, Stopbit, usw.?
Durch das Datenformat, wird mir ein Zeichen (Byte) generiert oder?

Jetzt gehe ich in die Schleife und lese das 1te Byte bis zum 7ten aus. Dies sind meine Informationen, die das Peaktech ausgibt?

Was bedeutet die konstante 10 am VisaSerial Eingang (Endzeichen)? Das hier ein Datenpaket endet? Endet es mit 10?

Woher weiß man, dass unter Visa lesen "Rest" die Bytanzahl auf 20 gestellt werden muss? Wie ergibt sich diese Zahl?

Wieviele Symbole werden bei einem Durchgang übertragen, 11?
One data block consists of 11 packets, or 110 bits?

Wie kann ich durch dieses Protokoll darauf zurückschließen wie häufig pro Sekunde der Kanal (ein Messwert) vom Multimeter zum Rechner gesendet wird? BaudRate/Anzahl der Symbole die übertragen werden?


Angehängte Datei(en) Thumbnail(s)
   

2010 .vi  Peaktech_3315.vi (Größe: 16,6 KB / Downloads: 362)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.06.2011, 12:49 (Dieser Beitrag wurde zuletzt bearbeitet: 08.06.2011 12:55 von Lucki.)
Beitrag #5

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: RS232 Multimeter
Hier ein paar Antworten.

1) in Visa Configuratin ist Termination Char defaultmäßig aktiviert, und default ist auch auch LF = 0xA = 10. Es wäre also nicht nötig gewesen, die Konstante überhaupt anzuschließen.

2.) Visa Read funktioniert hier so: Es wartet - und zwar so lange, bis eine der drei Bedingungen erfüllt ist:
a) Die an den Eingang angeglegte Anzahl Byte (oder mehr) befinden sich im Buffer
b) Es wird eion LF empfangen
c) Timeout (10s) ist erreicht.
Die VI Reads funktionieren also so:
Read1: Es wird 1 Byte gelesen, gegebenenfalss wird gewartet, bis das Byte im Buffer ist
Read 2: Es werden 4 bytes gelesen, gegebenenfalls...
Letztes Read: Es wird gewartet, bis LF im Empfangspuffer ist. Dann wird alles bis LF aus dem Puffer gelesen. Damit nicht vorher schon gelesen wird, muß an den Eingang eine höhere Bytezahl angelegt werden, als in Wirklichkeit noch zu erwarten ist.

3.) Das Voltmeter arbeite nicht im Master-Slave Modus. D.h. die Daten kommen nicht auf Kommando, sondern werden ohne Aufforderung kontinuierlich gesendet. Die Update-Frequenz wird allein durch das Multimeter bestimmt.
Ein Wait in die Schleife zu legen wäre ganz schädlich, da das Senden der Daten in unverminderter Häufigkeit weiterginge und der Empfangspuffer überliefe. Wenn man die Anzeige anhalten möchte, damit sie nicht durch neue Daten überschrieben wird, dann so, das die Daten weiter gelesen werden, der Werte aber nicht mehr zur Anzeige gebracht werden.

4.) Im Beispiel-VI werden keine Fehler abgefangen. Es wird fehlerfrei nur funktionieren, wenn erst das VI aufgerufen wird und innerhalb der nächsten 10s das Multimeter eingeschalten wird. Bei umgekehrter Reihenfolge kann es passieren, daß das Lesen mitten in einem Datensatz oder soger mitten in einem Byte beginnt. Das bringt Fehler.
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
Question Spannungsmessung mit Multimeter im ms-Bereich - Probleme Tobolf 40 25.565 07.12.2016 15:51
Letzter Beitrag: Tobolf
  Fehlermeldung bei Hameg Multimeter NI_emand 1 4.355 16.05.2013 12:04
Letzter Beitrag: NI_emand
  Multimeter-Anzeigen auslesen anass 5 7.807 07.10.2012 10:27
Letzter Beitrag: frehdie
  Daten aus Multimeter (Protek 506) entschlüsseln knuppel 16 13.520 27.03.2012 16:46
Letzter Beitrag: Lucki
  Daten vom Multimeter Voltcraft M4660-A maxlaw1987 7 12.175 25.10.2011 22:04
Letzter Beitrag: jg
  Ansteuerung Multimeter über RS 232 BMTstudent 8 12.737 06.10.2011 13:39
Letzter Beitrag: BMTstudent

Gehe zu: