Forum: Mikrocontroller und Digitale Elektronik Interface für Parkside PDM-300 Multimeter


von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute!

Habe endlich mein Parkside-Multimeter umgebaut, um es in Verbindung mit 
einem PC als Datenlogger (unter Linux) nutzen zu können. Nach den guten 
Vorarbeiten von Benedikt M. ist das keine grosse Sache.
https://www.mikrocontroller.net/articles/Multimeter_PDM-300-C2_Analyse

Als Serial/USB-Wandler verwende ich einen ATTiny2313 mit 20MHz Takt und 
VUSB als Firmware. http://www.recursion.jp/avrcdc/
Habe die 20MHz Version ungeändert in den 2313 geflasht und der CDC hat 
auf Anhieb funktioniert.

Als Ergänzung spendierte ich dem Interface noch einen isolierten 
DC/DC-Wandler der die Batterie/Akku des Multimeter unterstützt, damit 
diese nicht während einer Messreihe versagt. Die Schaltung ist in:
https://www.transkommunikation.ch/dateien/schaltungen/diverse_schaltungen/power_supplys_circuits/DC-DC%20Konverter.pdf
zu finden und leicht an 9V anzupassen.

Die Bilder zeigen das Multimeter mit Interface und die vom PC 
empfangenen Daten in einem Terminal. Im 7. und 8. Byte ist der Messwert 
(8,69V) als 365-Hex schön zu erkennen.

Im Multimeter sind nur die Anschlusspunkte auf einen Stecker geführt, 
alle Elektronik befindet sich auf der externen Platine.

Gruss. Tom

von Marc X. (marc_x)


Lesenswert?

Ok und wofür jetzt der Thread?

von STK500-Besitzer (Gast)


Lesenswert?

Marc X. schrieb:
> Ok und wofür jetzt der Thread?

Der gehört wohl eher in "Projekte & Code".

von MaWin (Gast)


Lesenswert?

Marc X. schrieb:
> Ok und wofür jetzt der Thread?

Zur Vorstellung des Projekts ?

Im Gegensatz zu dir erschafft TomA auch was.

Allerdings fehlt der von ihm verwendete Schaltplan und überarbeitete 
Quellcode, so dass die Quellenangaben das einzig nützliche sind.

von TomA (Gast)


Lesenswert?

Hallo MaWin.

Die Schaltpläne und der Quellcode befinden sich in den Links. Am 
Quellcode des 2313 war nichts zu ändern, der wurde geflasht wie 
heruntergeladen.
Der Schaltplan des DC/DC-Wandlers ist der im angegebenen Link (letzter) 
er wurde nur an den von mir verwendeten Übertrager angepasst. Dieser 
Übertrager stammt aus Restposten, den hat ausser mir niemand und so 
braucht auch niemand die Änderungen. Aber ein kleiner 1:1 Übertrager, 
wie im Link, ist schnell gewickelt.

Es ist so dass tatsächlich die Schaltungen aus den Links benutzt werden 
können, also wozu nochmal veröffentlichen? Letztlich braucht man irgend 
einen funktionierenden serial/USB-Wandler und falls gewünscht irgend 
einen isolierten 9V DC/DC-Wandler.

Gruss. Tom

von MaWin (Gast)


Lesenswert?

TomA schrieb:
> Die Schaltpläne und der Quellcode befinden sich in den Links.

Oh, ich hatte statt

TomA schrieb:
> ungeändert

umgeändert

für ATTiny2313 mit 20MHz gelesen.

von TomA (Gast)


Lesenswert?

Noch ein Wort zum DC/DC-Wandler. Im Link wird für die 12V 
Ausgangsspannung eine 13V Zenerdiode verwendet. Für 9V Ausgangsspannung 
wäre eine 10V Zenerdiode richtig (oder 9,1V Zener + 0,7V 1N4148 in 
Serie). Multimeter sind in ihrer Versorgungsspannung nicht so 
anspruchsvoll, sie kommen sogar mit 9V-Blockbatterien/akkus (8-11V) 
zurecht :)

Gruss. Tom

von Marc X. (marc_x)


Lesenswert?

MaWin schrieb:
> Im Gegensatz zu dir erschafft TomA auch was.

Ich habe schon genügend (Software-)Projekte unter verschiedenen 
Pseudonymen veröffentlicht*, das witzige ist aber dass das ausgerechnet 
die Person sagt, welche sich auf seine Arbeiten wie dem GALBlast von vor 
20 Jahren ausruht und meint von allen Fachgebieten im Elektrobereich die 
Weisheit mit Löffeln gefressen zu haben.

Für mich ist der Thread hier eher das Zeigen eines erfolgreichen 
(angepassten) Nachbaus und gehört eher als Beitrag in den Hauptthread, 
statt in einem eigenen.

von TomA (Gast)


Lesenswert?

Ja ist denn schon wieder Sommer? Die Frösche quacken so laut!

von TomA (Gast)


Lesenswert?

Doch noch ein paar Worte zum Stecker zwischen Multimeter und Interface. 
Die Belegung ist nicht willkürlich gewählt, sondern gewährleistet einen 
Verpolungsschutz, damit bei falsch angeschlossenem Stecker nichts 
passiert.

Es ist im Multimeter eine einreihige 4polige Stiftleiste und am Kabel 
als Gegenstück eine 4polige Buchse.

Pin  Multimeter                  Interface

 1   + Batterie                  + DC/DC
 2   - Batterie / Signalground   - DC/DC / Signalground
 3   TX des Multimeter           Signaleingang des Optokoppler
 4   Nicht belegt                Nicht belegt

Wird der Stecker falsch herum gesteckt endet die Multimeterbatterie am 
nicht belegten Interfaceanschluss und der DC/DC+ des Interface am 
nichtbelegten Batterieanschluss des Multimeter. GND und TX liegen in 
Sperrichtung am Signaleingang zum Optokoppler. Da die Spannung hier nur 
3 Volt beträgt hält die Leuchtdiode im Optokoppler dies problemlos aus. 
In dem Fall wird also die Übertragung und Versorgung nicht 
funktionieren, aber es geht nichts kaputt.

Zum DC/DC-Wandler: Hier ist es Vorteilhaft hochohmiger zu arbeiten. Also 
für den Übertrager lieber mehr Windungen dünnen Drahtes als wenig 
Windungen dicken Drahtes zu verwenden. So kann sich der Wandler besser 
an die Multimeterbatterie anpassen. Die vorgeschlagenen 330µH sind schon 
ein guter Kompromiss.

Gruss. Tom

von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Habe noch ein kleines Testprogramm für das Multimeter geschrieben. Es 
zeichnet keine Messwerte auf, sondern dient nur zum testen der 
Übertragung. Ist ein Konsolenprogramm, benötigt kein installiertes 
Framework oder irgendein runtime. Für das Programm muss nichts 
installiert werden/sein, es wird einfach vom Datenträger aufgerufen.

Gestartet wird es in der Konsole vom Verzeichnis in dem es sich befindet 
mit "./PDM300". Dann verbindet es sich, per default, mit dem Device 
"ttyACM0". Ist das Multimeter mit einem anderen Device verbunden, kann 
das beim Aufruf angegeben werden. "./PDM300 ttyUSB0" verbindet mit 
ttyUSB0, "./PDM300 ttyACM1" verbindet mit ttyACM1 .... usw.

Das Programm ist unabhängig vom verwendeten Interface, wird also auch 
mit anderem Interface funktionieren. Nur das Multimeter muß ein PDM300 
Cx sein.

Das Programm zeigt oben das empfangene Telegramm hexadezimal an, In der 
Mitte zeigt es den, aus dem Telegramm interpretierten, Messwert. In der 
untersten Zeile steht die verwendete Schnittstelle. Bei Strömen wird im 
Telegramm nicht zwischen AC und DC unterschieden, so kann auch die 
Anzeige nicht unterscheiden.

Habe noch ein Problem mit dem Interface und Widerstandsmessung. 
Vermutlich bringt der DC/DC-Wandler des Interface die automatische 
Bereichswahl durcheinander. Muss ich mir bei Gelegenheit genauer 
ansehen.

Gruss. Tom

von TomA (Gast)


Lesenswert?

Das Problem mit der Widerstandsmessung scheint gelöst. Ein LC-Filter am 
Ausgang des DC/DC-Wandler bringt nichts. Ein LC-Filter am Eingang des 
DC/DC-Wandlers bringt auch nichts. Lasse ich das C des Eingangsfilters 
weg, funktioniert alles wie gewollt. Habe jetzt nur eine 100µH Drossel 
in der Zuleitung des DC/DC-Wandlers.
Getestet habe ich bis zu einem Widerstand von 9,1MOhm, einen grösseren 
Wert hatte ich nicht zur Hand.

Gruss. Tom

von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Hier die aktuelle Version des Testprogramm. Es zeigt jetzt auch die 
eingestellte Messart (Strom, Spannung, Durchgang, ...) in der Fußzeile.

Das Problem mit den Störungen beim messen hoher Widerstandswerte ist 
tiefgründiger als gedacht. Der DC/DC-Wandler arbeitet nun fast mit Sinus 
statt Rechteck. Dadurch hat sich der Wirkungsgrad verschlechtert. Aber 
bei ca. 5mA Laststrom spielt der Wirkungsgrad nicht die tragende Rolle.

Das Problem tritt trotzdem noch auf, und zwar bei hohen 
Widerstandswerten, Wechselspannung und kleinen Wechselströmen. Aber nur 
wenn die Messleitungen an der Isolierung in der Hand gehalten werden. 
Liegen sie unberührt auf dem Tisch, gibt es keine Probleme. Die 
Störungen kommen demnach als Strahlung, über die Messleitung als 
Antenne, ins Multimeter und müssen durch Abschirmung und geeignete 
Masseführung beseitigt werden.

Alternativ könnte man ein Linearnetzteil oder eine Hilfsbatterie für 
längere Messdauer verwenden.

Gruss. Tom

von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Habe dem Programm jetzt das schreiben beigebracht. Es zeichnet die, vom 
Multimeter, empfangenen Daten in einer Textdatei auf (Bild: 
Messdaten.png).

Die erste Zeile der Textdatei enthält Datum und Uhrzeit des Beginns der 
Aufzeichnung. Die weiteren Zeilen enthalten je einen Zeitstempel und ein 
Telegramm vom Multimeter. Zuerst die Sekunden seit Start als 5stellige 
Hexzahl (00000 - FFFFF), dann die Telegrammdaten als unsigned 64Bit Hex 
in ASCII. Aus Platzgründen fehlen die führenden zwei Byte (DC BA). Da 
diese in jedem Telegramm gleich sind ist das aber unerheblich. Das 
Zeitraster ist eine Sekunde, das Multimeter macht 2-3 Messungen je 
Sekunde. So kann es zu 1 bis 4 Telegrammen mit der gleichen Zeit kommen. 
Wird das Programm beendet und neu gestartet, wird die alte Datei von der 
Neuen überschrieben. Ist bewusst so geschrieben, um nicht bei jedem 
kleinen Test eine neue Datei zu haben. Wer die Aufzeichnung braucht, 
kann die Datei vor einem Neustart umbenennen/kopieren.

Die Datei kann mit einem Texteditor angesehen oder einem Programm 
ausgewertet werden.

Gruss. Tom

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.