| |
|
Wichtiger Hinweis!

|
|
Dies sind kostenlose Tipps vom Programmierer
der Software Digiscop. Anstatt mit diesem Wissen möglichst
viel Geld verdienen zu wollen, werden hier Erfahrungen gratis
zur Verfügung gestellt.
Bitte lesen Sie diese Tipps sorgfältig
und aufmerksam. Das erspart Ihnen unnötiges Nachfragen und
mir, dem Programmierer, eine Menge zusätzlicher Arbeit,
die ich als Privatperson so wie Sie auch, ehrenamtlich und am
Wochenende erledige.
|
| |
Um Ihnen die Orientierung zu erleichtern, zunächst eine
Übersicht.
Inhaltsverzeichnis:
Grundlagen
Schnittstelle V.24 / RS232
Anschlußkabel
Zustand der
Handshake-Leitungen
Welche Baudrate
Welche Einstellung
von Parity
Wie viele Datenbits
Wie viele Stoppbits
Demo-Programm
in GW-Basic
Demo-Programm
in VisualBasic 6.0
Download von
Demo-Programmen
Wie schnell
antwortet das Meßgerät
Schaltplan
der Meßgeräte
Informationen zum
VC 350 E
Wo bekomme ich Hilfe
|
Grundlagen
Schnittstelle
V.24 / RS232 |
|
Um Ihnen den Einstieg in die serielle Datenübertragung
zu erleichtern, hier einige grundlegende Informationen zum Thema V.24 / RS232
|
Ausnahmen
 VC
630
VC 650
VC 670
|
|
Bitte beachten Sie, das trotz gleichem Aussehen der Anschlußkabel
nicht immer gleiche Funktionalität und Steckerbelegung vorliegt.
Anschlußkabel der Serie VC 630, VC 650 und VC 670 sind
für andere Geräte trotz gleichem Steckersystem nicht
verwendbar. Umgekehrt funktionieren die Kabel der anderen Geräte
mit gleichem Aussehen an den Geräten der Serie VC 630, VC
650 und VC 670 auch nicht.
|
|
Ausnahmen
 GDM
703
GDM 704
GDM 705
|
|
Alle Digitalmultimeter haben eine galvanische Trennung per
Optokoppler zur Schnittstelle RS 232. Die elektrische Spannungsversorgung
der Optokoppler wird aus den Handshake-Leitungen des Computers
ausgekoppelt. Hierzu ist die Leitung DTR auf +12 Volt zu
legen, die Leitung RTS muß mit -12 Volt belegt werden.
Die Handshake-Leitungen dienen also nicht zur Synchronisierung
der Datenübertragung sondern allein zur Stromversorgung
der galvanischen Trennung per Optokoppler.
Achtung beim Betrieb mit einem Laptop!
Laptops der neuen Gerneration arbeiten vermehrt mit einer
Spannungsversorgung von nur noch 3,3 Volt. Dabei wird auch die
RS 232 nur noch mit einem Spannungspegel von unter 6 Volt versorgt.
Dies kann dazu führen, daß die Spannungswerte für
eine einwandfreie Kommunikation mit dem Multimeter nicht mehr
ausreichen. Ein zusätzlicher HUB, Verstärker oder galvanischer
Trennverstärker in die Zuleitung eingeschleift, kann die
Signale wieder auf die Sollpegel von +12 Volt und -12 Volt anheben.
Als Ausnahme hierzu wird bei den Geräten GDM 703, 704 und GDM 705 die
Handshake-Leitung RTS auf +12 Volt gesetzt. Dadurch bedingt kann
die Sendeleitung TxD allerdings nur bis GND abgesenkt werden,
was in Regel zwar keine Probleme verursacht, eigentlich aber
im "verbotenen Bereich" liegt.
|
Ausnahmen

|
|
Mit wenigen Ausnahmen wird die Baudrate auf 1200 Baud eingestellt.
Folgende Geräte arbeiten mit abweichenden
Einstellungen:
M-3860 M, M-4660 A, M-4660 M und MXD-4660 A erfordern
9600 Baud
GDM
703, 704 und 705 funktionieren ebenfalls
mit 9600
Baud
VC
630, VC 650 und VC 670 laufen auf
4800 Baud
ME-22 RSM, VC
635, VC 655 , ESCORT 97 und VC 820, VC 840 laufen mit 2400 Baud
ME-32 und ME-42 arbeitet mit 600 Baud
Hinweis! Beim Druck der Bedienungsanleitungen
zu den Meßgeräten haben sich teilweise Fehler eingeschlichen.
Hier sind die korrekten Angaben.
In manchen Bedienungsanleitungen werden Sie aufgefordert,
beim Anschluß des Multimeters an einen Computer das Meßgerät
in den COM-Modus zu schalten. Diese Angabe ist nur bei VC 506,
VC
630, VC 650, VC 670 , VC 635, VC 655 und ESCORT 97
richtig. Alle anderen Geräte sind nach dem Einschalten sofort
betriebsbereit.
Die Aktivierung des COM-Mode am DMM
führt in Verbindung mit den Beispielen zu fehlerhaften Datenübertragungen.
|
|
|
Die Parityangaben sind auf NONE einzustellen.
|
Ausnahmen

|
|
Es werden 7 Datenbits
übertragen.
Als Ausnahme ist hier das ESCORT 97 mit nur 6
Datenbits und die Messgerätefamilie VC 635, VC 655 und VC820, VC840 mit 8
Datenbits zu nennen.
|
Ausnahmen

|
|
Es werden 2 Stoppbits
übertragen.
Hier ist das ESCORT 97 und die Geräte
VC
635, VC 655 und VC820, VC840 mit nur 1
Stoppbit vertreten.
|
Demo-Programm
als
GW-Basic-Code |
|
10 OPEN "COM1:1200,N,7,2,RS,CS,DS,CD"
AS #1
20 PRINT #1, "D";
30 IN$=INPUT$(14,#1)
40 PRINT IN$
50 CLOSE #1
60 END
Dieser Programmcode ist sowohl unter dem inzwischen antiquierten
GW-BASIC als auch unter QBasic oder QuickBASIC lauffähig.
Für andere Programmiersprachen kann ausgehend von diesem
Quellcode eine 1:1-Übersetzung gemacht werden.
|
Erläuterungen
zum
Quellcode |
|
In Zeile 10 wird die Schnittstelle mit den vorher erläuterten
Parametern geöffnet. Mit den Angaben RS,CS,DS,CD
werden die Zustände der Handshake-Leitungen wie oben beschrieben
konfiguriert und die Timeout-Zeiten der Handshakeleitungen ignoriert,
da das Meßgerät kein aktives Handshaking unterstützt.
In Zeile 20 wird ein großes "D" an das Meßgerät
geschickt. Dieser Befehl löst eine Datenübertragung
im Meßgerät aus.
Grundsätzlich löst jedes an das Meßgerät
übertragene Zeichen eine Datenabfrage aus. Bei der Übertagung
des Buchstaben "D" wird jedoch die Funktion "Auto-Sleep"
zurückgesetzt. Das Meßgerät schaltet sich folglich
bei aufeinanderfolgenden gleichbleibenden Meßwerten
nicht automatisch ab.
Meßgeräte, bei denen keine Meßwertanforderung
geschickt werden muß wie z.B. VC 630, VC 650 und VC 670 , VC
635, VC 655 oder GDM 703, 704 und 705 können
folglich durch die Software am Abschalten in den "Auto-Sleep-Mode"
nicht gehindert werden.
In Zeile 30 wird die Meldung des Meßgerätes ausgewertet.
Normalerweise werden 14 Zeichen vom Meßgerät gesendet.
Byte 1 2
3 4 5 6 7 8 9 10 11 12 13 14
Bsp. 1 D C
- 3 , 9 9 9 V
CR
Bsp. 2 O H M
3 , 9 9 9 M o h m CR
Jede Datenübertragung endet mit CR (Carrige Return).
Die eingegangene Nachricht wird in Zeile 40 auf den Bildschirm
übertragen.
In Zeile 50 wird die Schnittstelle COM1: geschlossen.
In Zeile 60 endet das Programm.
|
Demo-Programm
als
Visual-Basic-Code
Ver. 6.0
für Windows |
|
Die Programmierung unter Windows ist leider etwas komplizierter.
Deshalb habe ich die Files zusammengefasst und zum Download bereitgestellt.
Grundsätzlich wird hier vieles genauso gehandhabt wie
auch unter DOS, jedoch ereignisgesteuert. Um die serielle Schnittstelle
zu handhaben, wird das Active-X-Element MSComm32.OCX verwendet.
In den Eigenschaften können die Parameter für die Schnittstelle
bereits vorkonfiguriert werden. Im Beispiel wurden die Parameter
jedoch beim Öffnen des Programmes in Sub Form1.Load eingestellt.
Durch Betätigen des Button Command1 wird ein Messwert vom
DMM abgerufen und anschließend das Sub Empfangen aufgerufen.
Die Antwort vom Messgerät wird im Textfeld Text1 ausgegeben.
Bei Bedarf muß man auch bei diesem Beispiel die Baudrate,
die Anzahl der Datenbits und Stoppbits anpassen. Wenn man sich
den Quellcode ansieht, wird man jedoch schnell fündig, wo
die Änderungen eingebracht werden müssen.
VB6_Beispiel_Comm.ZIP
downloaden.
|
Ausnahmen

Baudrate
|
|
M-3860 M, M-4660 A, M-4660 M und MXD-4660 A erfordern
9600 Baud
GDM
703, 704 und 705 haben ebenfalls 9600 Baud
VC
630, VC 650 und VC 670 laufen auf
4800 Baud
ME-22 RSM und VC
635, VC 655 laufen mit 2400 Baud
ME-32 und ME-42 arbeitet mit 600 Baud
|
Ausnahmen

M-3860 M
M-4660 A
M-4660 M
MXD-4660 A
GDM 703
GDM 705
VC 820
VC 840
|
|
Bei den Meßgeräten M-3860 M, M-4660 A, M-4660 M
und MXD-4660 A werden die Inhalte von insgesamt 4 Displays übertragen.
Zuerst der aktuelle Meßwert, dann die 3 kleinen Anzeigen
an der Unterkante des LCD-Schirmes. Deshalb werden bei einer
Meßwertanforderung insgesamt 56 Zeichen gesendet.
Bei den Geräten GDM 703, 704 und 705 werden je
nach Einstellung ebenfalls die Inhalte von 2 Meßbereichen
ausgegeben. Weiterhin besteht die Möglichkeit den Inhalt
des vollständigen Grafikdisplays mit 128 x 64 Pixel zu übertragen.
Bei der Gerätefamilie VC820, VC840 ist dann wieder
alles anders. Hier werden die einzelnen Displaysegmente des LCDs
am Gerät binär codiert und in einem Datenpaket von
14 Byte übertragen. Anschließend muß man mühselig
die einzeln Bits wieder zu brauchbaren Informationen zusammensuchen.
|
Ausnahmen

VC 506
|
|
VC 506 muß durch eine Tastenkombination vorher
aktiviert werden. Bei dem Meßgerät VC 506 werden abhängig
vom Meßbereich unterschiedlich lange Zeichenketten gesendet.
Am Ende einer Datenübertagung wird hier jedoch grundsätzlich
CR gesendet.
|
Ausnahmen

VC 630
VC 650
VC 670
VC 635
VC 655
VC 675
|
|
Bei diesen Geräten muß Zeile 20 im Basic-Code gelöscht
werden.
Die Geräte VC 630, VC 650 und VC 670 senden
automatisch ohne Aufforderung 2 Meßwerte pro Sek, sobald
sie durch die Taste HOLD (ca. 2 Sek. lang drücken) für
die Datenübertragung aktiviert wurden.
Bei den Geräten VC 635, VC 655 muß
ebenfalls vorher eine Taste gedrückt werden, um die Übertragung
zu aktivieren. Am Ende der Datenübertragung wird hier CR
und LF gesendet.
|
Ausnahmen

ESCORT 97
|
|
Bei diesem Gerät ist eigentlich alles ganz anders. Das
oben angeführte Demo-Programm kann deshalb unter keinen
Umständen verwendet werdet.
Dieses Gerät überträgt einen Datensatz mit
21 Byte, der jedoch immer nur 6 Datenbits pro Byte beinhaltet.
Von diesen 6 Datenbits werden dann tatsächlich nur noch
4 Bits pro Byte genutzt. Mit diesen Daten kann man folglich keine
Standard-ASCII-Buchstaben übertragen. Entsprechend werden
alle Informationen codiert übertragen. Die Ziffern werden
in umgekehrter Reihenfolge ohne Kommastelle übergeben. An
Hand von Einzelbit-Informationen muß man mühsam herausfinden,
welcher Meßbereich gerade eingestellt ist, wo man das Komma
setzen muß und welche Einheit gerade angezeigt wird.
Mein Tipp: Anfänger im Programmieren lassen tunlichst
die Finger davon.
|
|
Mit den beiden zum Download angebotenen Beispielprogrammen
im Basic-Quellcode können Sie unter QBasic oder QuickBASIC
die Funktion der Datenübertragung selbst ausprobieren. Gegebenenfalls
müssen Sie die voreingestellte Baudrate und den COM-Port
an Ihr Meßgerät und an Ihren PC anpassen. Beachten
Sie bitte die Kommentare im Quellcode.
LISTING1.BAS
fordert beim Programmstart einmalig eine Meßwertabfrage
vom Digitalmultimeter ab und schreibt das Ergebnis auf den Bildschirm.
LISTING2.BAS
wiederholt die Meßwertabfrage ständig, bis ESC gedrückt
wird. Auch hier werden die übertragenen Werte auf dem Bildschirm
ausgegeben. Die Wartezeit zwischen zwei Meßwertabfragen
können Sie über eine Warteschleife an Ihren PC anpassen.
Beachten Sie hierzu bitte den Abschnitt "Geschwindigkeit"
weiter oben.
|
Ausnahmen

GDM 703
GDM 705
ESCORT 97
|
|
Die obigen Beispielprogramme sind nicht für alle Geräte
verwendbar.
Hier die Ausnahmen mit eigenen Beispielprogrammen:
GDM
703, 704 und 705
Für das ESCORT
97 wird hier nur ein eingeschränktes Beispielprogramm
angeboten. Gezeigt wird lediglich, wie man aus den vom Messgerät
selbstständig und ohne Aufforderung gesendeten Daten die
21 Byte korrekt formatiert ausliest und in einen verwertbaren
Datensatz überträgt. Die Auswertung dieser 21 Byte
in einen aktuellen Messwert würde für ein Beispielprogramm
zu weit führen. Das ist bei diesem Gerät einfach zu
umfangreich. Sie können aber zusätzlich zu diesem Demo-Programm
die Original-Definitionsliste
des Herstellers mit der Beschreibung der codiert übergebenen
Daten downloaden, um dann selbst mal auszuprobieren wie das geht. Für
Programmierfreaks sicherlich eine Herausforderung. Für Anfänger
schlichtweg ungeeignet.
|
|
Die Meßgeräte lassen je nach Meßbereich maximale
Abfragezyklenzeiten von 1 - 3 Meßwerten pro Sekunde zu.
Schnellere Abfragezyklen werden mit falschen Meßwerten
und/oder ungültigen ASCII-Zeichen quittiert. Es hat also
keinen Sinn, in schnellerer Folge abzufragen. Insbesondere die
Frequenzmessung, Kapazität und Induktivität sind ausgesprochen
langsame Bereiche, die oft nur eine Abfage pro Sekunde zulassen.
Hier muß man sich in Geduld üben.
Besonders kritisch ist es, wenn sofort nach einer erfolgten Datenübertragung
erneut eine Anfrage an das Meßgerät gestartet wird.
Man muß folglich nach jeder Datenübertragung vom Meßgerät
einen Moment warten, bevor man eine erneute Anfrage starten kann.
|
|

|
Beschreibung
des
Schaltplans |
|
Sendet der PC eine Datenanforderung an das Meßgerät,
so wird der Ausgang TXD am Stecker kurzzeitig auf +12 Volt angehoben.
Dabei beleuchtet die LED im Optokoppler den zugehörigen
Fototransistor im Bild unten, der dann leitend wird und die Meldung
an das Meßgerät weitergibt.
Das Meßgerät antwortet mit einer Serie von Impulse
auf die LED im Optokoppler im Bild oben. Der zugehörige
Fototransistor wird leitend und schaltet die +12 Volt vom Pin
DTR an den Pin RXD durch, der nun ebenfalls +12 Volt wird. Im
Ruhezustand wird die Spannung von -12 Volt von Pin RTS über
den Widerstand an Pin RXD weitergeleitet.
|
Ausnahmen

Schaltplan
Meßgeräte
VC 630
VC 650
VC 670
VC 635
VC 655
VC 675
GDM 703
GDM 704
GDM 705
VC 820
VC 840
ESCORT 97
|
|
In den Geräten der Serie VC 630, VC 650, VC670 , VC 635 und VC 655 , VC820,
VC840 entfällt der Optokoppler für die Leitung
TXD, da diese Geräte ständig und ohne Aufforderung
von sich aus Daten senden.
In den Geräten GDM 703, 704 und 705 ist an der
TXD-Leitung ebenfalls kein Optokoppler vorhanden. Weiterhin weicht
die Beschaltung von der obigen Zeichnung ab.
Für diese Geräte ist ein gesonderter Schaltplan über
den jeweiligen Link verfügbar.
Für das ESCORT 97 liegt mir momentan
kein Schaltplan vor. Dieses Gerät verfügt nur über
eine exterene optische Schnittstelle, die im Anschlußkabel
untergebracht ist, aber nur unidirektional genutzt wird. Das
Gerät sendet von sich aus, kann aber keine Nachrichten vom
PC empfangen. Funktionell ist die Schaltung mit dem oben
abgebildeten Schaltplan identisch. Der Anschluß am
Messgerät ist aber nicht verdrehsicher. Sollten Sie mit
einem Programm keine Datenverbindung zum Messgerät bekommen,
können Sie probeweise den Anschluß einfach mal umdrehen.
|
Informationen
zum
VC 350 E |
|
Seit einiger Zeit wird von Conrad das Digitalmultimeter VC
350 E im Katalog angeboten, dass allerdings in meiner Software
nirgends auftaucht.
Warum?
Auch ich habe versucht, entsprechend der Befehlscodeliste
des Herstellers das Gerät über die serielle Schnittstelle
anzusprechen und die vom Messgerät übergebenen Zeichen
zu decodieren. Mit zweifelhaftem Erfolg. Das Gerät läßt
sich zwar ansprechen und sendet anschließend auch eine
Antwort - nur die Qualität der Antwort ist von Aufruf zu
Aufruf stark unterschiedlich. Das Gerät scheint wohl irgendwelche
Schwierigkeiten zu haben, seine Antwort mit der Befehlscodeliste
abstimmen zu können. Manchmal ist die Antwort korrekt, manchmal
fehlen einige Zeichen, manchmal werden offensichtlich falsche
Zeichen gesendet. Ein Glücksspiel also. Professionell ist
das auf jeden Fall nicht. Da diese Erscheinung nicht nur bei
einem Einzelexemplar sondern bei allen mir zugänglichen
Messgeräten aufgetreten ist - aus meiner regen E-Mail-Korrospondenz
werde ich ebenfalls fast täglich mit diesen Klagen konfrontiert,
habe ich mich entschlossen, zum Wohle von Digiscop dieses Messgerät
nicht in meiner Software zu implementieren.
Es kann schon sein, dass inzwischen Messgeräte im Handel
angeboten werden, die diese Störungen nicht mehr aufweisen.
Wenn Sie sich mit der Selbstprogrammierung mit diesem Gerät
befassen möchten, sollten Sie sich auf jeden Fall die Befehlscodeliste
als gezippte Word-Datei downloaden. Dieses Original-Dokument
des Herstellers wurde mir von Conrad Electronic für die
Programmierarbeiten zur Verfügung gestellt. Es handelt sich
also um Informationen direkt aus erster Hand. Wenn es damit nicht
klappt, an was sollte man sich denn sonst orientieren?
|
| |
Sollten über diese Informationen hinaus noch weitere
Fragen bestehen, wenden Sie sich zunächst bitte an den Lieferanten
des Meßgerätes. Die Hotline der Firma Conrad Electronic
steht Ihnen in der Zeit von Montags bis Freitags in der Zeit
von 8.00 bis 18.00 Uhr unter der Telefonnummer 0180/5312116 mit
kompetenten Mitarbeitern gerne zur Verfügung.
Sie können die Hotline auch bequem per E-mail unter der
Adresse tkb@conrad.de
erreichen.
|

Wichtiger Hinweis!
|
|
Nur in Ausnahmefällen
können Sie sich auch an mich, den Programmierer der Software
Digiscop wenden.
Ich bin allerdings nur in den Abendstunden nach 19.00 Uhr erreichbar.
Die Kontaktaufnahme per E-mail ist mir aber lieber.
Bitte haben Sie Verständnis dafür,
das ich nicht den Support für andere Softwareprodukte übernehmen
kann, an die die beschriebenen Meßgeräte ebenfalls
angeschlossen werden können. Hierfür sind jeweils die
Vertreiber der Software selbst zuständig und haben im Kaufpreis
der Software auch schon ihre Dienstleistung für den Support
bezahlt bekommen.
|
| |
Bernd Kunze
Welzheimer Str. 41
D-73635 Rudersberg
Telefon: 07183-305497
E-mail:

|
| |
|
| |
|
| |
|