Moin, ich hab mal ein Projekt aufgesetzt um ein billige Autorange-Multimeter vom Discounter aufgesetzt. Dieser Thread führt damit den Hinweis-Thread aus dem 'Markt-Bereich' fort: Beitrag "(Tipp) Günstiges 13Euro Autorange Multimeter derzeit beim Lidl" . Der Wiki-Artikel zum Projekt ist dort: Multimeter PDM-300-C2 Analyse. Als nächste lade ich mal ein paar Detail-Fotos vom Display und Schnittstellen hoch und schau was man an der unbestücken LED (?optischen Schnittstelle?) oben links machen könnte. Sinnvoll scheint mir auch eine Signalaufzeichnung an TX zu etablieren, ich dachte da an einen RaPi mit Sigrok per Kabel durch Batteriefach. Let's do it!
Spannendes Projekt! Hast du die Möglichkeit die Genauigkeit zu überprüfen? Muss ja nicht aufwendig sein: - <0,1% Widerstände falls du welche hast - genaueres Multimeter zum Vergleich - Referenzspannungsquelle - etc.
Baendiger schrieb: > Hast du die Möglichkeit die Genauigkeit zu überprüfen? Muss ja nicht > aufwendig sein: > - <0,1% Widerstände falls du welche hast > - genaueres Multimeter zum Vergleich Ich hab hier ein paar 0,1% 1K, 2k,... Widerstände von einem R2R-projekt und ein 4.5 stelliges Tischmultimeter (ca. 40 Jahre alt, unkalibriert). Die Widerstände kann ich mal bei Gelegenheit dranhalten, für genauere Vergleichsmessungen müsste ich bis zum Ende der Ausgangssperre warten um in der Vereinswerkstatt mal nach Messequipment zu schauen. Vielleicht kommt da ja ein anderer eher an Vergleichsequipment.
Volker U. schrieb: > Als nächste lade ich mal ein paar Detail-Fotos vom Display und > Schnittstellen hoch und schau was man an der unbestücken LED (?optischen > Schnittstelle?) oben links machen könnte. >Betrifft: unbestückte Optische Schnittstelle BL1 Hallo tolle Beiträge um das Lidl - DMM! Meine Vermutung wäre, dass es sich hier nicht um eine Schnittstelle handelt, sondern sich ehr vielleicht um die "eingesparte" Display-Beleuchtung handelt. Die nähe am Display und die vorhandenen Bohrlöcher für 2 Kabel könnten dies vermuten lassen. Möglicherweise könnte man diese zum Leben erwecken.(Wenn ein "Schalt" - Signal vorhanden ist) Es wäre eigentlich nur ein Treibertransistor, Vorwiderstand R10 und ein Widerstand R11 an Diode notwendig.
Die Billigheimer sind nicht schlecht. Die hat man vielleicht nicht so lange wie ein Fluke, kostet aber auch nur Bruchteil. Wer keines mehr bei Lidl bekommen hat, alternativ gibt es günstige Uni-t. https://www.youtube.com/watch?v=vgri9ETWaSY
DCF 7. schrieb: > Die hat man vielleicht nicht so lange wie ein Fluke, Vielleicht bei dir nicht. Mein Multiprüfer-II hat 55 Jahre auf dem Buckel, das M3800 30 Jahre, ein Fluke 20 Jahre usw. Auch das UNIVO hat mich 50 Jahre begleitet. https://www.radiomuseum.org/r/eka_multimeter_univo.html Ich benutze es noch sehr oft, vor allem wenn dig. Anzeigen spinnen. Man muß nur pfleglich damit umgehen.
Status: An der Diodenschnittstelle habe ich beim Ersten Durchprobbiern kein Signal gefunden. Am TX kommen einzelne nichtidentische Datenpakete, die ich mal per Videokamera am Scope mitgeschnitten habe. Allerdings ist der Mitschnitt weder klein (25MB) noch sonderlich schön, als das ich ihn an diese Posts anhänge oder als Download auf dieses Forum bereitstellen kann. Dafür gibt es drei einzelne Frames neu im Artikel: Multimeter PDM-300-C2 Analyse: Signale Als nächste bekommt TX ein Drähtchen angelötet, damit man auch die Anzeige beobachten kann. Und das Terminal f. 300 Baud o.ä. wie vorgeschlagen wird drangehangen.
Volker U. schrieb: > Multimeter PDM-300-C2 Analyse: Signale Sieht doch gut aus! Bedenke beim dekodieren das es teilweise üblich ist die LCD-Bitmap zu senden und nicht BCDs..
Insgesamt sind es ja 42 Segmente. Es müssten also 5 1/4 Bytes an Nutzdaten gesendet werden (wenn alle Segmente übertragen werden). Ich gehe auch sehr davon aus, dass ein Bitmap der Segmentzustände übertragen wird.
Ich habe dank NormalZeit, heute einige Multimeter erhalten :-) Bei dem Serialport habe ich ein gutes Gefühl. Die Daten werden mit 2400 8N1 gesendet (siehe Signal 1+2). Ich habe den Bildschirm, sowie die Welle und den Decode bei zwei unterschiedlichen Displayinhalten angehängt und die Daten ändern sich, bleiben aber bei gleichen Displayinhalt gleich. Cheers, Benedikt
Anbei noch einige CSVs der seriellen Daten.
So, ich habe jetzt schnell eine PC-Software gebastelt, die die Multimeterdaten in Echtzeit abfragt und etwas visueller aufbereitet. Es muss lediglich ein USB-Seriell-Wandler (ich verwende den FT2232H von Reusch) im 3.3V-Modus verwendet werden. Die Signale sind zwar ~3V, aber das liegt weit über dem positiven 3.3V CMOS-Schwellwert. Die Software konfiguriert den Port dann korrekt und stellt die übertragenen Daten dar. Update: Ich habe die Software unter Ubuntu getestet und sie funktioniert mit Mono dort auch.
:
Bearbeitet durch User
Ich habe die Spannung von 5.00VDC bis 5.09VDC schrittweise erhöht. Die angehängten Ergebnisse sprechen nicht für ein Siebensegment-Bitmap, sondern eher für BCD-kodierte Informationen.
Hier der Vergleich von 5.00V AC und 5.00V DC. Die Zahlen bleiben gleich, es ändern sich aber 5 Bits in anderen Positionen. Bei diesen handelt es sich also höchstwahrscheinlich um die Modus-Felder. Update: Einige Bytes verändern sich jeweils nur bei einem Moduswechsel oder einer Änderung des Wertes. Daher gehe ich aktuell von diesem Format aus: 0b11011100 Präambel? 0b10111010 Präambel? 0b00000001 Präambel? 0b00010110 Modus/Range 0b00000100 Modus/Range 0b00000000 Immer Null? 0b00000000 Wert 0b00000000 Wert 0b00000000 Wert 0b00011011 Wert
:
Bearbeitet durch User
Benedikt M. schrieb: > Hier der Vergleich von 5.00V AC und 5.00V DC. Super, ich schubs das in den Wiki-artikel. An 'meinem' Multimeter bin ich noch nicht weitergekommen. >Update: Ich habe die Software unter Ubuntu getestet und sie funktioniert >mit Mono dort auch. Persönlich hab ich als Platform für das Multimeter nen RasPi vorgesehen, wegen Allgemeintauglichkeit einige von den GPIO-Pins. Dann müsste m.E. eine Consolen-software, also was in jeder shell läuft , brauchbar sein. >ich verwende den FT2232H von Reusch) Stabile Kiste, ich hab da was kleineres angedacht: https://www.reichelt.de/usb-2-0-konverter-seriell-ttl-pinheader-einzeln-1-8-m-3-3-v-delock-83787-p163095.html?&trstct=pol_17&nbc=1 Ist nur leider grad schwer auffindbar :-(
Ist der chip CoB/TQFT42 mit TX an Pin 16 wirklich neu und unerforscht? Vielleicht reicht es sich hier etwas um zuschauen?: https://github.com/sigrokproject/libsigrok/tree/master/src
Ich habe das Format geknackt :-) 0: 0b11011100 Präambel 1: 0b10111010 Präambel 2: 0b00000001 Präambel 3: 0b00010110 Modus & Range 4: 0b00000100 Exponent 5: 0b00000000 Wert (High Byte) 6: 0b00000000 Wert (Middle Byte) 7: 0b00000000 Wert (Low Byte) 8: 0b00000000 Unbekannt 9: 0b00011011 Unbekannt Exponenten (noch nicht ganz fertig):
1 | Bitmuster (b[4]) Format Multiplikator |
2 | 0000 0001 0.000 TODO (nur ACA?) |
3 | 0000 0010 000.0 10-1 |
4 | 0000 0100 0.000 10-3 |
5 | 0000 1000 0.00 10-2 |
6 | 0010 0000 0.000 TODO |
7 | 0100 0000 0.00 10-2 (nur DCA?) |
Modi: 0001 0110 DC V 0001 0101 AC V 0001 1010 uA (Gleich wie AC uA) 0001 1001 mA (Gleich wie AC mA) 0001 1000 A (Gleich wie AC A) 0001 1100 Diode 0001 1011 Continuity 0000 0011 Squarewave 0001 1101 Resistance
Volker U. schrieb: > Persönlich hab ich als Platform für das Multimeter nen RasPi vorgesehen, > wegen Allgemeintauglichkeit einige von den GPIO-Pins. Dann müsste m.E. > eine Consolen-software, also was in jeder shell läuft , brauchbar sein. IIRC hat der Raspberry Pi doch nur einen Serial Port, der mit der Boot-Console belegt ist. Da wäre es vermutlich geschickter, einen USB-Seriell-Adapter einzusetzen. Die Software läuft mit Mono übrigens auch auf dem Pi. Ich bin gerade dabei, diese neu zu schreiben. Gut vorstellen könnte ich mir hier auch eine kleine Platine mit ESP8266, die den Multimeter über WiFi erreichbar macht und z.B. Datenlogging direkt auf dem Chip betreibt. Volt Nuß schrieb: > Ist der chip CoB/TQFT42 mit TX an Pin 16 wirklich neu und unerforscht? Meines Wissens nach schon. In der Repo gibt es keinen Chip, der sich mit dem Protokoll auch nur zum Teil deckt. Zudem, wo wäre dann der Spaß? Benedikt M. schrieb: > 5: 0b00000000 Wert (High Byte) Ich bin noch am Überlegen, was es mit diesem Byte auf sich hat. Erst dachte ich, dass es sich um ein High-Byte eines 24-Bit Wertes handelt, da es bei negativen Zahlen von 00 auf FF umschlägt. Jedoch scheint es, wenn OL angezeight wird, anders verwendet zu werden. Und, 16 Bit sollten zur Darstellung aller Werte reichen.
:
Bearbeitet durch User
Ich bin gerade dabei, ein neues, grafisches Crossplatform-Tool für die Multimeterschnittstelle zu schreiben. Dieses soll auf Windows, Linux und OS X lauffähig sein.
Benedikt M. schrieb: > Dieses soll auf Windows, Linux und > OS X lauffähig sein. Vielen danke für deine Mühen Benedikt! IMHO würde sich der durchschnittliche Unix Nutzer vermutlich sehr vielmehr freuen, wenn der Support in die bereits existierenden tools/libs eingebaut würde. BTW, meldet sich der Chip eigentlich beim Einschalten mit einer abweichenden Byte folge?
Wagt sich jemand ran, Spannungen > 200V AC/DC an den DMM anzuschließen und den Datenstrom zu erfassen? Diese Messungen fehlen mir aktuell noch, da mein Serial-Opto nur bis 100V Isolationsspannung spezifiziert ist. Selbst mit Isolationstrafo möchte ich das eigentlich nicht machen. Ich frage jetzt mal blöd, aber ist es überhaupt eine gute Idee, Spannungen über 200V in der Software zu unterstützen? Einkaufswagendesinfektor #42 schrieb: > Vielen danke für deine Mühen Benedikt! Es freut mich, dass es Dir gefällt :-) > BTW, > meldet sich der Chip eigentlich beim Einschalten mit einer abweichenden > Byte folge? Ich schaue später Mal nach. > IMHO würde sich der durchschnittliche Unix Nutzer vermutlich sehr > vielmehr freuen, wenn der Support in die bereits existierenden > tools/libs eingebaut würde. Jeder hat seine Vorlieben, was Software angeht. Ich benutze z.B. Sigrok nicht. Daher schreibe ich jetzt einfach eine Referenzimplementierung und veröffentliche den Code. Ich kann dich gut verstehen, dass es schön wäre, den Code in andere Projekte einzupflegen, aber so viel Zeit habe ich dann leider nicht. Wenn jemand sein Lieblingstool unterstützen möchte, kann er das gerne anhand der entstehenden Dokumentation tun ;-)
:
Bearbeitet durch User
Mich hat es jetzt doch interessiert, 200+ V AC mit der Software messen zu können. Daher habe ich einen ESP8266 mit Serial->Telnet Firmware geflasht und ihn an eine Powerbank gehängt und die Multimeterdaten im Rohformat auf den PC übertragen. Das Exponentenbyte für den 200-300V AC-Bereich lautet 0x20. Jetzt fehlt noch immer der 200-300V DC-Bereich. Hat jemand Lust eine DC Spannung über 200V zu erzeugen und die Daten zu erfassen?
Droggelbecher schrieb: > Keine Diode(n) z.B. 1n4004..7 zur Hand? Doch, das schon. Ich hatte auch schon über einfaches Gleichrichten nachgedacht. Ich war mir zuerst nicht sicher, ob der Multimeter die Spitzen von ~350V (Amplitude) im DC-Modus überlebt. Aber in der Anleitung steht, dass der Überlastungsschutz 300VAC RMS im AC und im DC-Modus ist. Das sollte also gut funktionieren mit dem Gleichrichten. Ich bin bisher noch nicht dazu gekommen, das aufzubauen und hatte daher mal nachgefragt, ob Jemand Lust hat, sich dranzusetzen, zumal die Geschichte mit dem ESP8266 mehr schlecht als recht funktioniert, da die WiFi-Verbindung andauernd abreißt. Grüße, Benedikt
:
Bearbeitet durch User
Mir fehlt es leider am Multimeter.... Trotzdem viel Erfolg!
Ich hab mir beim letzten mal Milch kaufen auch so ein Ding mitgenommen. Bin schon gespannt wie es weitergeht. walta
Schön, dass es Euch gefällt :-) Ich habe nun den zweitletzten Modus gemessen. Diesmal handelte es sich um den 200V-300VDC Modus. Zuerst habe ich es mit einem einfachen Brückengleichrichter versucht, doch das hat den Multimeter überlastet. Zusammen mit einem einfachen Spannungsteiler der Werte 100kOhm und 330kOhm ist es mir dann gelungen 258V DC am Multimeter zu messen und das Paket zu erfassen. Hier der empfangene Paketinhalt: dc (Präambel) ba (Präambel) 01 (Präambel) 16 (DC V) 20 (200-300V Range) 00 01 (Wert High-Byte) 02 (Wert Low-Byte, 258V) 00 3a Update: Und der letzte Modus (20V-199VAC): dc (Präambel) ba (Präambel) 01 (Präambel) 15 (AC V) 10 (20-200V Range) 00 02 (Wert High-Byte) 48 (Wert Low-Byte, 58.4V) 00 70
:
Bearbeitet durch User
Hallo zusammen! Es ist endlich soweit. Hiermit veröffentliche ich ParksideView 1.1 zum ersten Mal in der GUI-Version! Das Programm unterstützt alle Modi des Multimeters, synchronisiert sich mit dem Datenstrom. Es verkraftet Übertragungsfehler, das Trennen, sowie das Ausschalten des Multimeters. Die Verbindung wird nach Auswählen des Anschlusses automatisch korrekt konfiguriert. Es können automatisch, tagelange Aufzeichnungen der Multimeterwerte mit verschiedenen Aufzeichnungsraten erstellt und als CSV mit Zeitstempel, Wert und Einheit gespeichert werden. Das Programm ist vollständig in Deutsch gehalten. Als CSV-Format ist jedoch auch der US-Standard wählbar. Lauffähig ist das Programm unter Windows XP, 7, 8 und 10, sowie auf Linux (x86 und ARM). Den Quellcode werde ich in den nächsten Tagen unter der GPL v3 Lizenz veröffentlichen. Hardwareseitig muss lediglich ein USB-Serial-Wandler an den Multimeter angeschlossen werden. Ein optoisolierter Wandler ist hier praktisch Pflicht, da der Multimeter über den Ground-Pfad des Serialports mit dem Ground des Computers und damit mit PE verbunden wird. Es besteht eine hochimpedante Verbindung zwischen dem Digitalground des Multimeters und den Eingangsbuchsen! Der Testpunkt, der mit TX markiert ist, muss mit dem RX-Anschluss des Serial-Wandlers verbunden werden. Als Ground kann eine Verbindung zum GND-Testpunkt in der rechten oberen Ecke (am Programmierstecker) gewählt werden. Viel Spaß damit! Lasst mich wissen, ob es bei Euch funktioniert ;-) Grüße, Benedikt
Droggelbecher schrieb: > Sehr hübsch - Source? Danke! Den Quellcode gibt's ab jetzt hier: https://github.com/benedikts-workshop/ParksideView
:
Bearbeitet durch User
Vielen Dank!! (Hole ich mir doch noch so ein Ding??)
Droggelbecher schrieb: > Hole ich mir doch noch so ein Ding?? Warum auch nicht ;-) Ich spiele aktuell mit dem Gedanken, eine kleine Opto-Isolationsplatine zu entwerfen, um das Ganze etwas einfacher zu gestalten. Wenn jemand Interesse hat, kann ich auch ein paar mehr machen. Vielleicht integriere ich auch gleich einen USB-Seriell-Wandler auf die PCB.
:
Bearbeitet durch User
Ist ja Klasse. Vielen Dank Benedikt. An solchen Opto-Isolationsplatinen wäre ich interessiert. Im Gehäuse ist ja noch genügend Platz um sowas unterbringen zu können. Da ich heute außer der Reihe vom Home-Office doch nochmal in die Firma musste, werde ich am Heimweg schauen, was es im Lidl noch an Restbeständen gibt.
Bearbeitung meines Beitrags war nicht mehr möglich. Daher Update: Bei (meinem) Lidl gibt es keine Multimeter mehr.
Hmm, da sind keine Potis und keine EEPROM zu sehen - aber ein VPP Pin. Also ist das EEPROM für die Kalibrationsdaten im Chip aber die Ladungspumpe fehlt?
wvmmm schrieb: > Also ist das EEPROM für die Kalibrationsdaten im Chip aber die > Ladungspumpe fehlt? Das ist mit 99,9%iger Wahrscheinlichkeit die (OTP)-Programmierschnittstelle für den COB-uC. Eventuell verfügt dieser auch über einen integrierten EEPROM für Kalibrationsdaten. Diese müssten aber (wie beim AVR auch) auch über die Programmierschnittstelle laufen.
:
Bearbeitet durch User
Ich habe die GitHub-Repo jetzt noch etwas überarbeitet und Dokumentation ergänzt. Hier einen Teil der README und die neuen Anweisungen zur Hardwaremodifikation: - Liste der Funktionen - * Große Echtzeitanzeige des aktuell auf dem Multimeter angezeigten Wertes * Bargraph-Anzeige in allen unterstützten Modi * Aufzeichnen der Messdaten in eine CSV-formatierte Datei * Einstellbare Aufzeichnungsgeschwindigkeiten * Ausführbar auf Windows 7, 8, 10 (nicht getestet) und Linux (via Mono: https://www.mono-project.com/) * CSV Format zwischen Deutsch und and US/International wählbar * Automatische Konfiguration der seriellen Schnittstelle * Synchronisierung zum Datenstrom, guter Umgang mit Fehlern, Ausblenden des Displays bei keinen/ungültigen Daten * Datenerfassung kann jederzeit angehalten werden (im Normalbetrieb und während einer Aufnahme) * Der aktuelle Modus wird immer mitaufgezeichnet und kann während einer Aufnahme geändert werden * Ein Klick auf den aktuellen Wert, kopiert diesen in die Zwischenablage * Das Fenster kann auf Knopfdruck über allen anderen Fenstern fixiert werden * Mehrere Instanzen des Programms können gleichzeitig verwendet werden, um mehrere Multimeter abzufragen - Hardware - Um die Software nutzen zu können, muss ein kleiner, einfacher Hardwareeingriff am Multimeter durchgeführt werden. Zwei Litzen müssen an Testpunkten der Multimeterplatine angelötet und nach außen geführt werden. Diese Litzen können dann z.B. über ein kleines Loch auf der Rückseite des Gehäuses nach draußen geführt werden. - Vorraussetzungen - * Lötkolben und Lötzinn * Zange zum Abisolieren und Schneiden * 28+ AWG / < 0,08mm² Litze (~ 1m) * USB-Seriell-Wandler (5V mit dem empfohlenen Optokoppler / 3.3V direkt - nicht empfohlen!) * Optokoppler (https://www.sparkfun.com/products/9118 - NICHT für Spannungen > 60V verwenden!) - Testpunkte - Im folgenden Bild sind die zwei Testpunkte auf der Multimeterplatine erkennbar, mit denen der Optokoppler verbunden wird: https://www.mikrocontroller.net/attachment/450706/Verbindungen.jpg - Löten - Um den Multimeter mit dem PC zu verbinden, muss eine Litze vom TX-Testpunkt des Multimters zum IN1-Pad des Optokopplers verbunden werden. Dann muss eine weitere Litze vom GND-Testpunkt des Multimeters zum GND-Pad des Optokopplers geführt werden. Eine weitere Verbindung führt vom HV-Pad des Optokopplers zum 5V Kontakt des USB-Seriell-Wandlers. Ebenso muss eine Verbindung vom HVG-Pad des Optokopplers zum GND-Pad des USB-Seriell-Wandlers geführt werden. Letztlich muss das OUT1-Pad des Optokopplers mit dem *RX*-Pad (nicht TX!) des USB-Seriell-Wandlers verbunden werden. - Verwendung des Multimeters - Nach den Hardware-Modifikationen lässt sich der Multimeter weiterhin normal und ohne PC verwenden. Jedoch darf der Multimeter nicht mehr zum Messen von Spannungen über 60V über PE verwendet werden. Um den Multimeter am PC zu verwenden, muss nur der USB-Seriell-Wandler eingesteckt werden. Im Geräte-Manager unter Windows, oder mittels dmesg auf Linux kann der korrekte Port ermittelt werden. Auf Linux lautet dieser meist /dev/ttyUSB0. Viel Spaß!
Da der Multimeter ja international verkauft wurde, habe ich ParksideView nun in's Englische übersetzt. Zudem gibt es auf GitHub nun auch eine englischsprachige Dokumentation.
Einkaufswagendesinfektor #42 schrieb: > BTW, > meldet sich der Chip eigentlich beim Einschalten mit einer abweichenden > Byte folge? Sorry, dass ich nicht früher dazu gekommen bin, das Oszilloskop wieder auszupacken. Ja, tatsächlich gibt es beim Einschalten eine leicht abweichende Bytefolge. Ich habe Dir ein paar Bilder angehängt. Augenscheinlich liegen die beiden Telegramme inhaltlich weiter auseinander, als der Decode zeigt. Scheinbar handelt es sich dabei hauptsächlich um unterschiedlich lange Idle-Perioden. Update: Ich habe noch zwei hexadezimale Ansichten ergänzt.
:
Bearbeitet durch User
Gibts auch eine Möglichkeit die Software auf einem Apple Computer laufen zu lassen? danke walta
Walta S. schrieb: > Gibts auch eine Möglichkeit die Software auf einem Apple Computer laufen > zu lassen? > > danke > walta Hallo Walta, das ist leider nicht möglich, da Mono auf OSX keine GUI-Anwendungen über WinForms unterstützt. Ich habe es selbst ohne Erfolg auf meinem Mac getestet. Theoretisch könnte man die Software auf GTK# portieren. Dann wäre die Ausführung auf Macs möglich. Update: Ich habe mich entschieden, einen Port zu beginnen. Das sollte auch das Design auf Linux-Platformen verbessern. Grüße, Benedikt
:
Bearbeitet durch User
Hier mein aktuelles Verständnis des Formates (als Update zum letzten Stand): 0: 0b11011100 Präambel 1: 0b10111010 Präambel 2: 0b00000001 Immer 1, aber Teil der Nutzdaten 3: 0b00010110 Modus 4: 0b00000100 Exponent 5: 0b00000000 Unbekannt (High Byte?) 6: 0b00000000 Wert (in Counts) (High/Middle? Byte) 7: 0b00000000 Wert (in Counts) (Low Byte) 8: 0b00000000 Prüfsumme 2 bis 7 (High Byte) 9: 0b00011011 Prüfsumme 2 bis 7 (Low Byte)
Die vollständige Hardwaremodifikation sieht bei mir so aus (siehe Bilder im Anhang). Generell bin ich aber weiterhin an einer Funk-Lösung über Bluetooth oder WiFi interessiert. Eine eigene Optokopplerplatine ist für viele Zwecke nicht notwendig, da die in der Anleitung beschriebene Platine von Sparkfun die Anforderungen weitgehend erfüllt und mit etwa 6 Euro nicht besonders teuer ist. Ebenfalls ist die Verfügbarkeit um ein vielfaches besser, als wenn ich Euch Platinen verkaufe, oder Gerber bereitstelle. Jedoch besteht bei der Isolationsspannung noch deutliches Verbesserungspotenzial (sprichwörtlich). Ein geeigneter Optokoppler sollte meines Erachtens nach über mindestens 50 kHz (besser 100+ kHz) Bandbreite verfügen, um auf der sicheren Seite zu sein.
Benedikt M. schrieb: > Walta S. schrieb: >> Gibts auch eine Möglichkeit die Software auf einem Apple Computer laufen >> zu lassen? >> >> danke >> walta > > Hallo Walta, > > das ist leider nicht möglich, da Mono auf OSX keine GUI-Anwendungen über > WinForms unterstützt. Ich habe es selbst ohne Erfolg auf meinem Mac > getestet. > Theoretisch könnte man die Software auf GTK# portieren. Dann wäre die > Ausführung auf Macs möglich. > > Update: Ich habe mich entschieden, einen Port zu beginnen. Das sollte > auch das Design auf Linux-Platformen verbessern. > > > Grüße, > Benedikt Dankeschön - ich werde die Entwicklung auf alle Fälle weiterverfolgen walta
Eventuell könnte es sich lohnen, einen optoisolierten Konverter zu entwickeln, der das Format des Multimeters zu SCPI über USB wandelt. So könnte sich der Multimeter leicht in bestehende Software integrieren lassen. Was meint ihr dazu?
:
Bearbeitet durch User
>Eventuell könnte es sich lohnen, einen optoisolierten Konverter zu >entwickeln, der das Format des Multimeters zu SCPI über USB wandelt. Ich hab bei mir ein Mega328P und ein Bluetooth Modul drin. Passt gerade noch hinein ohne das Gehäuse zu bearbeiten. Der Prozessor musste sein weil die Bluetooth Module bei 2400 Baud sehr oft fasche Daten senden. Die Firmware für den Atmega ist mit Atmel Studio 7 in C geschrieben. Das PC Programm habe ich mit PureBasic erstellt da der Compiler für Windows, Linux und Mac verfügbar und das Projekt ja nicht sehr umfangreich ist. Nach der Vorarbeit der Datenanalyse ist das ja schnell gemacht. Ich werde das Bluetooth Modul noch von dem Breakout Board runterholen und mit dem Prozessor zusammen auf eine eigene Platine verfrachten. Der "Aufbau" ist so nur für Testzwecke. Gruß
:
Bearbeitet durch User
Top S. schrieb: > Ich hab bei mir ein Mega328P und ein Bluetooth Modul drin. Ist wirklich gut geworden! Schön, eine weitere Version des Mods zu sehen :-) Bluetooth hatte ich mir auch überlegt, jedoch wollte ich auch keines der AT-Modems direkt verwenden, da es nicht auszuschließen ist, dass einmal zufällig der String "AT" übertragen wird (wobei die Effekte bei einem gut implementierten Parser vermutlich zu verkraften sind). Zur Implementierung des Bargraphen und des Paket-Decoders empfehle ich die Datei Multimeter.cs aus meinem Projekt (unter der GPL frei verwendbar): https://github.com/benedikts-workshop/ParksideView/blob/master/ParksideView/Multimeter.cs Diese enthält auch die unterschiedlichen Limits der Ranges, sowie die Divisoren der rohen Werte. Ich habe inzwischen den GTK-Port abgeschlossen. Damit ist meine Software nun auch für alle drei Platformen verfügbar. Nach einigen Tests werde ich diese dann bald veröffentlichen. Benedikt M. schrieb: > Eventuell könnte es sich lohnen, einen optoisolierten Konverter zu > entwickeln, der das Format des Multimeters zu SCPI über USB wandelt. Das würde mich weiterhin interessieren. Einen SCPI Parser (auf Geräteseite) hatte ich bisher zwar nicht implementiert, doch gehe ich davon aus, dass es nicht sehr aufwendig ist, nur die erforderlichen Kommandos zu implementieren (IDN, MEAS1, RANGE1, ...).
:
Bearbeitet durch User
>Bluetooth hatte ich mir auch überlegt, jedoch wollte ich auch keines der >AT-Modems direkt verwenden, da es nicht auszuschließen ist, dass einmal >zufällig der String "AT" übertragen wird (wobei die Effekte bei einem >gut implementierten Parser vermutlich zu verkraften sind). Das ist den Modulen egal. Wenn eine Bluetooth Verbindung besteht werden alle Daten durchgereicht. >Zur Implementierung des Bargraphen und des Paket-Decoders empfehle ich >die Datei Multimeter.cs aus meinem Projekt Hab ich schon fertig. Format ist ja von dir klar dargelegt worden. Parser ist bei mir ein Zustandsautomat.
1 | Enumeration STATES |
2 | #WAIT_FIRST_START_BYTE
|
3 | #WAIT_SECOND_START_BYTE
|
4 | #WAIT_THIRD_START_BYTE
|
5 | #WAIT_MODE_BYTE
|
6 | #WAIT_EXPONENT_BYTE
|
7 | #WAIT_HIGH_VALUE_BYTE
|
8 | #WAIT_MIDDLE_VALUE_BYTE
|
9 | #WAIT_LOW_VALUE_BYTE
|
10 | #WAIT_HIGH_CS_BYTE
|
11 | #WAIT_LOW_CS_BYTE
|
12 | #MAKE_DATA_ANALYSIS
|
13 | EndEnumeration
|
14 | |
15 | Procedure receive_thread(dummy.i) |
16 | If hCom |
17 | Protected state.i = #WAIT_FIRST_START_BYTE |
18 | Protected inbyte.a, mode.a, exponent.a, value.i, cs.i, bcs.i, a.i |
19 | Protected Dim buffer.a(9) |
20 | Repeat
|
21 | If AvailableSerialPortInput(hCom) |
22 | If ReadSerialPortData(hCom, @inbyte, 1) <> 1 |
23 | state = #WAIT_FIRST_START_BYTE |
24 | Else
|
25 | Debug Hex(inbyte) |
26 | If state = #WAIT_FIRST_START_BYTE And inbyte = $DC |
27 | buffer(0) = inbyte |
28 | state = #WAIT_SECOND_START_BYTE |
29 | ElseIf state = #WAIT_SECOND_START_BYTE And inbyte = $BA |
30 | buffer(1) = inbyte |
31 | state = #WAIT_THIRD_START_BYTE |
32 | ElseIf state = #WAIT_THIRD_START_BYTE And inbyte = $01 |
33 | buffer(2) = inbyte |
34 | cs = inbyte |
35 | state = #WAIT_MODE_BYTE |
36 | ElseIf state = #WAIT_MODE_BYTE |
37 | buffer(3) = inbyte |
38 | mode = inbyte |
39 | cs = (cs + inbyte) & $FFFF |
40 | state = #WAIT_EXPONENT_BYTE |
41 | ElseIf state = #WAIT_EXPONENT_BYTE |
42 | buffer(4) = inbyte |
43 | exponent = inbyte |
44 | cs = (cs + inbyte) & $FFFF |
45 | state = #WAIT_HIGH_VALUE_BYTE |
46 | ElseIf state = #WAIT_HIGH_VALUE_BYTE |
47 | buffer(5) = inbyte |
48 | ;value = inbyte * $10000 ; eher nicht |
49 | cs = (cs + inbyte) & $FFFF |
50 | state = #WAIT_MIDDLE_VALUE_BYTE |
51 | ElseIf state = #WAIT_MIDDLE_VALUE_BYTE |
52 | buffer(6) = inbyte |
53 | value = (inbyte * $100) |
54 | cs = (cs + inbyte) & $FFFF |
55 | state = #WAIT_LOW_VALUE_BYTE |
56 | ElseIf state = #WAIT_LOW_VALUE_BYTE |
57 | buffer(7) = inbyte |
58 | value + inbyte |
59 | cs = (cs + inbyte) & $FFFF |
60 | state = #WAIT_HIGH_CS_BYTE |
61 | ElseIf state = #WAIT_HIGH_CS_BYTE |
62 | buffer(8) = inbyte |
63 | bcs = inbyte * $100 |
64 | state = #WAIT_LOW_CS_BYTE |
65 | ElseIf state = #WAIT_LOW_CS_BYTE |
66 | buffer(9) = inbyte |
67 | bcs + inbyte |
68 | state = #MAKE_DATA_ANALYSIS |
69 | Else
|
70 | state = #WAIT_FIRST_START_BYTE |
71 | EndIf
|
72 | EndIf
|
73 | If state = #MAKE_DATA_ANALYSIS |
74 | If bcs = cs |
75 | LockMutex(receive_thread_sync) |
76 | record\is_new = #True |
77 | record\timestamp = time |
78 | For a = 0 To 9 : record\bytebuffer[a] = buffer(a) : Next a |
79 | record\mode = mode |
80 | record\exponent = exponent |
81 | record\value = value |
82 | record\cs = cs |
83 | record\min = range_min(mode, exponent) |
84 | record\max = range_max(mode, exponent) |
85 | If is_overloaded(mode, value, record\min, record\max) |
86 | record\dvalue = 9999 |
87 | record\unit = "" |
88 | ElseIf mode = #VOLT_DC |
89 | If exponent = #RANGE_B |
90 | record\precision = 1 |
91 | record\divider = 10 |
92 | record\unit = "mV DC" |
93 | ElseIf exponent = #RANGE_C |
94 | record\precision = 3 |
95 | record\divider = 1000 |
96 | record\unit = "V DC" |
97 | ElseIf exponent = #RANGE_D |
98 | record\precision = 2 |
99 | record\divider = 100 |
100 | record\unit = "V DC" |
101 | ElseIf exponent = #RANGE_E |
102 | record\precision = 1 |
103 | record\divider = 10 |
104 | record\unit = "V DC" |
105 | ElseIf exponent = #RANGE_F |
106 | record\precision = 0 |
107 | record\divider = 1 |
108 | record\unit = "V DC" |
109 | EndIf
|
110 | record\dvalue = value / record\divider |
111 | ElseIf mode = #VOLT_AC |
112 | If exponent = #RANGE_C |
113 | record\precision = 3 |
114 | record\divider = 1000 |
115 | record\unit = "V AC" |
116 | ElseIf exponent = #RANGE_D |
117 | record\precision = 2 |
118 | record\divider = 100 |
119 | record\unit = "V AC" |
120 | ElseIf exponent = #RANGE_E |
121 | record\precision = 1 |
122 | record\divider = 10 |
123 | record\unit = "V AC" |
124 | ElseIf exponent = #RANGE_F |
125 | record\precision = 0 |
126 | record\divider = 1 |
127 | record\unit = "V AC" |
128 | EndIf
|
129 | record\dvalue = value / record\divider |
130 | ElseIf mode = #AMPER |
131 | If exponent = #RANGE_F |
132 | record\precision = 3 |
133 | record\divider = 1000 |
134 | record\unit = "A" |
135 | ElseIf exponent = #RANGE_G |
136 | record\precision = 2 |
137 | record\divider = 100 |
138 | record\unit = "A" |
139 | EndIf
|
140 | record\dvalue = value / record\divider |
141 | ElseIf mode = #AMPER_MILLI |
142 | If exponent = #RANGE_D |
143 | record\precision = 2 |
144 | record\divider = 100 |
145 | record\unit = "mA" |
146 | ElseIf exponent = #RANGE_E |
147 | record\precision = 1 |
148 | record\divider = 10 |
149 | record\unit = "mA" |
150 | ElseIf exponent = #RANGE_F |
151 | record\precision = 3 |
152 | record\divider = 1000 |
153 | record\unit = "mA" |
154 | EndIf
|
155 | record\dvalue = value / record\divider |
156 | ElseIf mode = #AMPER_MICRO |
157 | If exponent = #RANGE_A |
158 | record\unit = "µA" |
159 | ElseIf exponent = #RANGE_B |
160 | record\precision = 1 |
161 | record\divider = 10 |
162 | record\unit = "µA" |
163 | ElseIf exponent = #RANGE_C |
164 | record\precision = 0 |
165 | record\divider = 1 |
166 | record\unit = "µA" |
167 | EndIf
|
168 | record\dvalue = value / record\divider |
169 | ElseIf mode = #RESISTANCE_OHM |
170 | If exponent = #RANGE_A |
171 | record\precision = 1 |
172 | record\divider = 10 |
173 | record\unit = "Ohm" |
174 | ElseIf exponent = #RANGE_B |
175 | record\precision = 3 |
176 | record\divider = 1000 |
177 | record\unit = "kOhm" |
178 | ElseIf exponent = #RANGE_C |
179 | record\precision = 2 |
180 | record\divider = 100 |
181 | record\unit = "kOhm" |
182 | ElseIf exponent = #RANGE_D |
183 | record\precision = 1 |
184 | record\divider = 10 |
185 | record\unit = "kOhm" |
186 | ElseIf exponent = #RANGE_E |
187 | record\precision = 3 |
188 | record\divider = 1000 |
189 | record\unit = "MOhm" |
190 | ElseIf exponent = #RANGE_F |
191 | record\precision = 2 |
192 | record\divider = 100 |
193 | record\unit = "MOhm" |
194 | EndIf
|
195 | record\dvalue = value / record\divider |
196 | ElseIf mode = #CONTINUITY_OHM |
197 | If exponent = #RANGE_A |
198 | record\precision = 1 |
199 | record\divider = 10 |
200 | record\unit = "Ohm" |
201 | record\dvalue = value / record\divider |
202 | EndIf
|
203 | ElseIf mode = #DIODE_VOLT |
204 | If exponent = #RANGE_C |
205 | record\precision = 3 |
206 | record\divider = 1000 |
207 | record\unit = "V" |
208 | EndIf
|
209 | record\dvalue = value / record\divider |
210 | ElseIf mode = #SQUAREWAVE |
211 | record\unit = "" |
212 | EndIf
|
213 | UnlockMutex(receive_thread_sync) |
214 | EndIf
|
215 | state = #WAIT_FIRST_START_BYTE |
216 | EndIf
|
217 | Else
|
218 | Delay(50) |
219 | EndIf
|
220 | Until receive_thread_abort <> #False |
221 | EndIf
|
222 | EndProcedure
|
>Das würde mich weiterhin interessieren. Einen SCPI Parser (auf >Geräteseite) hatte ich bisher zwar nicht implementiert, doch gehe ich >davon aus, dass es nicht sehr aufwendig ist, nur die erforderlichen >Kommandos zu implementieren (IDN, MEAS1, RANGE1, ...). Muss ich mir bei Gelegenheit mal anschauen. Mir ist noch nicht klar wozu man das nutzt. Gruß
:
Bearbeitet durch User
Wäre wahrscheinlich auch ganz gut in der Rubrik „Quick and Dirty“ aufgehoben ... so wie ich das hineingebastelt habe. Ein FTI-232 USB-Seriell Breakout-Board und einen zusätzlichen Optokoppler mit Zweikomponentenkleber in das Messgerät verfrachtet und seitlich ein Loch für die Mini-USB Buchse mit dem Dremel reingefräst. Das Breakoutboard habe ich seiner Stiftleisten beraubt und den Jumper für Vcc auf 3,3 V durch eine Drahtbrücke ersetzt. Der „Fatal Error“ stellte sich beim finalen Zusammenbauen heraus: meine Lochrasterplatine mit dem Optokoppler geht zu weit nach rechts und baut zu hoch, so dass der Buzzer auf der Messgeräte-Platine anstösst. Der Kleber war natürlich schon ausgehärtet, so musste ich den Buzzer köpfen und ihm seine Haube rauben. Positiver Nebeneffekt: Das Piepsen ist jetzt viel leiser. Nicht schön, aber funktioniert einwandfrei. Danke an Benedikt für die Software.
Hallo, ich bin heute endlich dazu gekommen meine Multimeter fertig umzubauen. Ich habe eine Platine erstellt und fertigen lassen. Die Bauteile sind bis auf das Bluetooth Modul von Reichelt. Verbaut wurde ein HC-05 aus Ebay. Zu erst habe ich gedacht ich schließe einfach das Bluetooth Modul an und konfiguriere es auf 2400 Baud. Das lief bei mir aber überhaupt nicht. Alle Baudraten unter 9600 brachten heftige Übertragungsfehler. Also habe ich einen Mega328PB beauftragt die 2400 Baud aus dem Multimeter mit 38400 Baud an das Bluetooth Modul weiter zu reichen. Und ja, ich weiß das man das auch in einen Tiny25 mit SoftUart reinbekommen hätte. Aber ich bin Faul und ein 328PB war hier vorhanden. Die Software ist mit PureBasic geschrieben und alles andere als fertig. P.S. Platinen sind noch reichlich da. ;-) topsoft_at_gmx_dot_net Gruß Topsoft
:
Bearbeitet durch User
Top S. schrieb: > Ich habe eine Platine erstellt und fertigen lassen. Die Platine ist schön geworden. Ich ergänze bei meiner Software noch einen 9600 Baud Modus, bei der Verwendung Deines Moduls. Eine Kleinigkeit zum Schaltplan: Vielleicht hätte es auch Sinn gemacht, da du sowieso einen uC benutzt, PIO9 (Verbindungsstatus) und PIO11 (Data/Command) zum ATmega328 zu routen, um den aktuellen Status des Moduls zu überwachen und festzulegen.
> Die Platine ist schön geworden. Danke > Ich ergänze bei meiner Software noch einen 9600 Baud Modus, bei der Es sind 38400 Baud. Aber die Firmware ist ja im Archiv. >Vielleicht hätte es auch Sinn gemacht, da du sowieso einen uC benutzt, >PIO9 (Verbindungsstatus) und PIO11 (Data/Command) zum ATmega328 zu >routen, um den aktuellen Status des Moduls zu überwachen und >festzulegen. Jetzt wo du es sagst. :-) Na ja egal. Ich hab nur 2 Multimeter und noch 58 Platinen. Also werde ich das nicht mehr ändern. Danke noch mal für deine Vorarbeit. Gruß
Top S. schrieb: > Jetzt wo du es sagst. :-) Na ja egal. Ich hab nur 2 Multimeter und noch > 58 Platinen. Also werde ich das nicht mehr ändern. Mit der Menge hatte ich nicht gerechnet. Damit hast Du gut für die Zukunft vorgesorgt ;-) > Es sind 38400 Baud. Aber die Firmware ist ja im Archiv. > Alle Baudraten unter 9600 brachten heftige Übertragungsfehler. Stimmt, das habe ich wohl beim Schreiben der Antwort verdreht. > Danke noch mal für deine Vorarbeit. Gerne. War aber nicht ganz uneigennützig, Spaß gemacht (und Zeit zu Hause vertrieben) hat's ja auch ;-) Grüße, Benedikt
:
Bearbeitet durch User
Normal Z. schrieb: > Wäre wahrscheinlich auch ganz gut in der Rubrik „Quick and Dirty“ > aufgehoben ... so wie ich das hineingebastelt habe. "Quick" schon, "Dirty" nicht. > Der „Fatal Error“ stellte sich beim finalen Zusammenbauen heraus: > Der Kleber war natürlich schon ausgehärtet, Mancmal ist es besser, Kleber zu nehmen, der nicht so gut klebt. Z.B. einfachen Alleskleber oder Doppelklebeband.
Bei Asser's Lab gibt es ein Video zum Multimeter: https://www.youtube.com/watch?v=2YlhSKf9n0c Mit dem Quelltext von ParksideView und den Informationen aus dem Wiki hat er eine Python-Implementation für Raspberry Pi geschrieben.
:
Bearbeitet durch User
Hiermit veröffentliche ich ParksideView 1.4 mit Min/Max Statistik. Darüber hinaus ist die Portliste unter Linux nun etwas übersichtlicher. Hinter der ParksideViewGTK versteckt sich eine primär für Linux/Mac entwickelte Version von ParksideView mit GTK# GUI. An dieser hatte ich im April gearbeitet, war jedoch bisher noch nicht dazu gekommen, diese zu veröffentlichen. Mangels Zeit könnte diese noch an einigen Stellen etwas "Politur" vertragen. Den Quellcode für die Linux/Mac-Version gibt es hier: https://github.com/benedikts-workshop/ParksideViewGTK Grüße, Benedikt
:
Bearbeitet durch User
So, nachdem ich heute Version 1.4 veröffentlicht habe, die schon eine Weile lang in der Pipeline gesessen hatte, veröffentliche ich jetzt gleich noch die heute Abend entstandene 1.5. Hiermit habe ich nun alle bekannten Bugs beseitigt - der Issue-Tracker ist somit leer :-) Viel Freude damit! Grüße, Benedikt
Benedikt M. schrieb: > Ich ergänze bei meiner Software noch einen 38400 Baud Modus, bei der > Verwendung Deines Moduls. Erledigt. Die Versionen mit BT sollten mit topsoft's Bluetooth-Adapter kompatibel sein. Weiter wurde ein Anzeigefehler bei der Datenerfassung behoben. Damit schließe ich die Entwicklung von ParksideView für's Erste ab. Sollte es weitere Feature-Requests oder Bug-Reports geben, werde ich diese weiterhin, soweit es mir zeitlich möglich ist, bearbeiten.
:
Bearbeitet durch User
DCF 7. schrieb: > Wer keines mehr bei Lidl bekommen hat Ab dem 11.03. gibts die Teile wieder: https://www.lidl.de/de/parkside-autorange-multimeter-pdm-300-c2-digital/p369711
Thomas schrieb: > Ab dem 11.03. gibts die Teile wieder: Na hoffentlich mit der selben Firmware (mit funktionierenden TX)! BTW, braucht das Teil wirklich ~9V, oder ist es auch mit 5V zufrieden?
Gruss Das Multimeter, das es ab Donnerstag wieder bei Lidl gibt, hat ja bei Gleichspannungsmessung einen Messbereich von 0.1mV. Ist der etwas? Denke, wenn brauchbar, zum paaren und selektieren von BJT anwendbar, oder ? Nah ja wenn anwendbar, würde das bei mir eine entsprechende Messschaltung der Einfachheit halber ersparen. Dirk St
dirk schrieb: > hat ja bei Gleichspannungsmessung > einen Messbereich von 0.1mV Nein. Die geringste/höchste Auflösung beträgt 0.1mV. Wie bei jedem 2.95 EUR ICL7106 basierten Messinstrument mit 200mV Messbeteich seit 1978 üblich.
Danke für die Antwort Ich Subtrahiere dann Analog, ist dabei schon in Relation. Schönen Abend Dirk St
Top S. schrieb: > Jetzt wo du es sagst. :-) Na ja egal. Ich hab nur 2 Multimeter und noch > 58 Platinen. Also werde ich das nicht mehr ändern. Dann hast Du sicher noch 2 Platinchen übrig? Ich habe vor ein paar Tagen auch zwei von den Multimetern bei Lidl bestellt und würde mich über eine Bluetooth-Anbindung freuen.
Frank M. schrieb: > Ich habe vor ein paar Tagen > auch zwei von den Multimetern bei Lidl bestellt und würde mich über eine > Bluetooth-Anbindung freuen. Frank, falls die Multimeter heute oder morgen ankommen, wäre es gut mal kurz zu schauen ob der CoB auf Pad 16 immer noch so auskunftsfreudig ist. Danke!
Hallo, ich meine ich habe noch welche. Schaue nach und melde mich. Gruß
Benzinsparer schrieb: > wäre es gut mal kurz zu schauen ob der CoB auf Pad 16 immer noch so auskunftsfreudig ist. Ich würde davon ausgehen, dass sich hier nichts geändert hat. Vermutlich dient die Funktion dem automatischen Testen in der Fabrik, oder wird bei einem anderen Produkt mit gleichem COB zusammen mit einer IR-LED verwendet.
Benzinsparer schrieb: > Frank, > falls die Multimeter heute oder morgen ankommen, wäre es gut mal kurz zu > schauen ob der CoB auf Pad 16 immer noch so auskunftsfreudig ist. Die beiden Multimeter sind heute angekommen. Nicht nur eine Batterie, sondern sogar ein Schraubendreher war bei jedem Multimeter dabei :-) Direkt mal aufgeschraubt... die Platine sieht exakt so aus wie hier auf den Fotos. TX ist auch an der alten Stelle. Ich suche gleich mal einen USB-Seriell-Wandler raus und teste. Ich melde mich später noch einmal.
So, ich habe den USB-Adapter (3,3V Pegel) angeschlossen, ParksideView V16 unter Win10 gestartet, die COM-Schnittstelle aus dem Geräte-Manager im ParksideView eingestellt und dann auf "Start" gedrückt. Status: Verbunden (ich nehme aber mal an, dass damit nur der Adapter gemeint ist) Leider erscheint keine Anzeige. EDIT: Es geht! Ich musste den Pin am USB-Adapter nehmen, der mit TXD beschriftet ist. Offenbar meinten die Chinesen, hier die Bezeichnung des Zielgerät-Pins angeben zu müssen. @Benedikt: Klasse Programm! Fazit: Auch das aktuelle Multimeter von Lidl spuckt die Daten aus :-)
:
Bearbeitet durch Moderator
Frank M. schrieb: > Es geht! Vielen Dank für das zeitnahe Testen! > Ich musste den Pin am USB-Adapter nehmen, der mit TXD > beschriftet ist. Kommt mir irgendwie bekannt vor :)
Frank M. schrieb: > Status: Verbunden (ich nehme aber mal an, dass damit nur der Adapter > gemeint ist) > > Leider erscheint keine Anzeige. Genau, verbunden bedeutet in diesem Fall nur, dass die Verbindung zum Adapter funktioniert. Im unteren Teil der Anwendung, in der Datenlogger-Gruppe, findet sich ein weiterer Status-Text, der anzeigt, ob Daten (mit gültiger Prüfsumme) vom Multimeter empfangen werden (siehe Screenshot, 'Stumm' ggü. 'Laufend'). > Es geht! Ich musste den Pin am USB-Adapter nehmen, der mit TXD > beschriftet ist. Offenbar meinten die Chinesen, hier die Bezeichnung des > Zielgerät-Pins angeben zu müssen. > > @Benedikt: Klasse Programm! > > Fazit: Auch das aktuelle Multimeter von Lidl spuckt die Daten aus :-) Glückwunsch, es freut mich, dass es bei dir auch gut funktioniert :-)
>ich meine ich habe noch welche. Schaue nach und melde mich.
Hallo,
ja es sind noch Platinen da. Wer möchte bitte unter topsoft at gmx dot
net
melden.
Mfg
Benedikt M. schrieb: > * Optokoppler (https://www.sparkfun.com/products/9118 - NICHT für > Spannungen > 60V verwenden!) Was ist da eigentlich der Grund dafür? Ist die Platine von SparkFun so schlecht isoliert? Der Koppler ansich kann ja bis 4kV isolieren.
Björn W. schrieb: > Ist die Platine von SparkFun so schlecht isoliert? > Der Koppler ansich kann ja bis 4kV isolieren. Sparkfun selbst gibt keine garantierte Isolationsspannung an und vermarktet das Modul eher zur Entkopplung von MIDI. Wenn jemand diese Anleitung im Netz entdeckt und ihr einfach folgt, ohne zu wissen, was er tut, möchte ich mit der Isolationsspannung lieber etwas pessimistischer und vorsichtiger sein. Zumal Spannungen bis 60V über PE insgesamt noch recht ungefährlich sind und ich generell einfach ein schlechtes Gefühl bei dem Gedanken habe, dass jemand damit z.B. 230V an seinem Computer messen möchte (zu geringe interne Abstände beim Modifizieren des Multimeters, Fehler bei der Verdrahtung, etc.). Wenn man weiß, was man tut, kann man die Warnung ja auch gerne ignorieren ;-)
Benedikt M. schrieb: > Damit schließe ich die Entwicklung von ParksideView für's Erste ab. > Sollte es weitere Feature-Requests oder Bug-Reports geben, werde ich > diese weiterhin, soweit es mir zeitlich möglich ist, bearbeiten. Erstmal Danke für die tolle Software. Funktioniert hier ganz prima. Was mich freuen würde, wäre wenn das Aufzeichnungsintervall etwas genauer ist. Wenn ich z.B. 500ms * 2 einstelle dann hätte ich erwartet das jede sek. ein Eintrag in der Aufzeichnung erzeugt wird. Aber es sind real schwankend 1,05 bis 1,07 sek Intervall. Über Langzeitmessungen summiert sich das natürlich.
Björn W. schrieb: > Wenn ich z.B. 500ms * 2 einstelle dann hätte ich erwartet das jede sek. > ein Eintrag in der Aufzeichnung erzeugt wird. Aber es sind real > schwankend 1,05 bis 1,07 sek Intervall. Über Langzeitmessungen summiert > sich das natürlich. Danke für die Information. Ich werde mir das mal genauer anschauen. Die erfassten Zeitstempel werden beim Parsen des empfangenen Pakets (das durch einen Pufferspeicher läuft) erfasst und enthalten den Jitter und die Latenz der Software, der seriellen Verbindung und wenn vorhanden, dem USB-Serial-Adapter. Die Aktualisierungsrate selbst wird vom Multimeter vorgegeben; ist eine höhere Zahl eingestellt, werden das angezeigte Sample länger gehalten und die dazwischen liegenden Samples verworfen. Ich könnte die Funktion der Software noch optimieren in dem ich die Daten schneller verarbeite, dafür müsste ich die Architektur anpassen. Den Punkt setze ich auf die TODO-Liste und werde sie bei Gelegenheit umsetzen.
:
Bearbeitet durch User
Ich hab mir das mal auf dem LA angesehen und Ja, das jittert ja reichlich. die Frames haben teilweise Pausen von über 10ms drin und die Abstände zwischen den Frames variiert auch um etwas mehr als 10ms. In den Letzten beiden Frames sieht man z.B. die Pausen.
:
Bearbeitet durch User
Vielen Dank. Hier mein Beitrag. Anbindung über BLE mit jdy-10. Geschätzt 9 mA Verbrauch. Ein Step-Down mit niedriger Ruhestromaufnahme wäre schön. Mein kleiner China-Step-Down hat bereits 5 mA Ruhestromaufnahme. Da gewinnt man fast nichts. Kommandos zum Konfigurieren eines Adapters (jdy-10) fuer Digitales Multimeter PDM 300 C2 PIN 13 braucht man nur, wenn sich der Adapter bereits irgendwo verbunden hat. Dann ist jeweils Wechsel nach GND notwendig, um in den Konfigurationsmodus zu kommen. PIN 13 statisch auf GND zu legen, funktioniert nicht. Anschluss des jdy-10 an einen seriellen Anschluss. TxD nach RxD, RxD nach TxD (3,3 Volt beachten, gegebenenfalls Spannungsteiler im kOhm Bereich vorsehen), VCC nach 3,3 Volt, GND nach GND. Terminalprogramm mit 115000 Baud 8-N-1 einstellen. CR/LF muss nach jeden Kommando vom Terminalprogramm gesendet werden. Char delay=0ms # Adapter meldet sich nach hochfahren mit Star...\r\n im Terminalprogramm # Ueberpruefung auf Kommunikation AT+VER # Ergebnis: +JDY-10-V2.5\r\n # Name des Adapters aendern AT+NAMEPDM-300-C2-01 # Richtigen Modus waehlen, CLSSA0 ist aber factory default AT+CLSSA0 # Sendeleistung einstellen. Default ist minimale Sendeleistung eingestellt. # Kommando ist von jdy-40 abgeleitet # Im Datenblatt jdy-10 nicht dokumentiert # Im Datenblatt jdy-40 wird POWE0 mit -25 db angegeben # POWE0 ist default. POWE[0,9] moeglich AT+POWE0 # Abschliessend die Geschwindigkeit konfigurieren. BAUD7 = 2400 ist undokumentiert AT+BAUD7 #Terminalprogramm auf 2400 8-N-1 umkonfigurieren. # Zur Probe nochmal Version abfragen AT+VER # Adapter verkabeln. # Mit BLE-Terminalprogramm verbinden. Android Smartphone funktioniert bereits. Bei Linux brauche ich noch ein Block-Device, dass BLE kann bzw. bluez mit gatttool.
Thomas schrieb: > Ab dem 11.03. gibts die Teile wieder: > https://www.lidl.de/de/parkside-autorange-multimeter-pdm-300-c2-digital/p369711 Ist jetzt online für 15€ erhältlich (+15% Inflation!)
Gibt es noch eine gute Quelle für den Optokoppler? Hat jemand welche auf Lager und möchte Sie mir weiterverkaufen?
Serge B. schrieb: > Gibt es noch eine gute Quelle für den Optokoppler? Hat jemand welche auf > Lager und möchte Sie mir weiterverkaufen? Das Original kannst man hier kaufen: https://eckstein-shop.de/SparkFun-Opto-isolator-Breakout Versand ist auch als DP Brief möglich, also keine 5-6€.
Gibt es eigentlich ein Zangen-Multimeter in ähnlicher Preisklasse, welches sich auslesen lässt?
Letztes jahr gabs ein paar Wochen nach dem normalen ein ZangenMM. Vermutlich stammt das vom selben Hersteller und ebenso vermutlich wird der in alle seine Geräte weitgehend gleiche Bauteile einbauen. Auch wenns da prinzipiell um mehrere 10.000 Geräte geht, die Bauteile werden da sicher billiger, wenn statt 50.000,100.000Stück gekauft werden.
Uli S. schrieb: > Letztes jahr gabs ein paar Wochen nach dem normalen ein ZangenMM. > Vermutlich > stammt das vom selben Hersteller und ebenso vermutlich wird der in alle > seine > Geräte weitgehend gleiche Bauteile einbauen. Auch wenns da prinzipiell > um mehrere 10.000 Geräte geht, die Bauteile werden da sicher billiger, > wenn statt 50.000,100.000Stück gekauft werden. Der Parkside Zangenmultimeter ist - soweit ich mich erinnere - leider nicht auslesefähig. Ich hatte mir einen zum Testen bestellt.
Ich habe ein Programm für ES8266 geschrieben, welches die Werte liest und per MQTT rausgibt. Funktioniert auch soweit bis auf negative Werte. Wie kann ich den 16bit signed wert in int umwandeln? Für positive Werte klappt folgendes:
1 | measurement_raw = (RFin_bytes[6] << 8) | RFin_bytes[7] ; |
Hello. I found this topic by searching on google. Lidl in my country (Portugal) is selling a "newer" version of this multimeter (PDM-300-C3) but the board is the same and everything works. I only have one question. After logging a test .CSV file, I noticed the times of the measurements are not in day-month-year hour-minute time. Is there a possibility to add this to the program? Danke. Marcos.
Serge B. schrieb: > Ich habe ein Programm für ES8266 geschrieben, welches die Werte liest > und per MQTT rausgibt. Funktioniert auch soweit bis auf negative Werte. > Wie kann ich den 16bit signed wert in int umwandeln? > > Für positive Werte klappt folgendes: >
1 | > measurement_raw = (RFin_bytes[6] << 8) | RFin_bytes[7] ; |
2 | >
|
Das Vorzeichen erweitern, wenn das höchste Bit 1 ist.
1 | if (measurement_raw & (1 << 15)) |
2 | measurement_raw |= 0xffff0000; |
Marcos Alves schrieb: > Hello. > I found this topic by searching on google. > Lidl in my country (Portugal) is selling a "newer" version of this > multimeter (PDM-300-C3) but the board is the same and everything works. > I only have one question. After logging a test .CSV file, I noticed the > times of the measurements are not in day-month-year hour-minute time. > Is there a possibility to add this to the program? > Danke. > Marcos. I’ve changed the CSV format to include date and time and released version 1.7 for testing. Changes are in the datetime branch. I can’t test right now so feedback from you is required prior to me releasing it as stable.
Ich habe soeben Version 1.8 von ParksideView veröffentlicht. In dieser Version wurden Bugs mit dem CSV-Output und den Continuity-Pakten behoben. Die Software ist mit dem PDM-300-C2 und dem PDM-300-C3 kompatibel. Viel Spaß!
Michael M. schrieb: > Lidl hat die wieder im Angebot. Danke, ich finde aber nur das hier: https://www.lidl.de/p/parkside-zangenampermeter-stift-multimeter-pzm-2-a2-lcd-display/p100344274002 Das ist aber ein anderes.
Serge B. schrieb: > Danke, ich finde aber nur das hier: > https://www.lidl.de/p/parkside-zangenampermeter-stift-multimeter-pzm-2-a2-lcd-display/p100344274002 Momentan gibt's die nur bei Lidl vor Ort. Bis vor ein paar Tagen auch online: https://www.lidl.de/p/parkside-autorange-multimeter-digital-pdm-300-c3-lc-display/p100344294
Ich hätte noch eins aus der letzten Aktion. Neu, OVP und ungeöffnet. Bin aus Zeitgründen nicht zum Umbau gekommen. Würde es gerne gegen das Stiftmultimeter tauschen. Spricht mich etwas mehr an :) Bei Interresse einfach melden.
Wie man sich mit dem Parkside umbringt: Parkside multimeter zeigt bei gefährlicher Spannung 0 Volt: https://www.youtube.com/watch?v=QxPIRtZb8Ck
foo schrieb: > Wie man sich mit dem Parkside umbringt Umgebaut sollte man sowieso nicht mehr als 60V messen, da ist der Fehler nicht besonders gefährlich. Es ist aber gut zu wissen, dass man ihn nicht zur Verifizierung von Spannungslosigkeit verwenden kann.
foo schrieb: > Wie man sich mit dem Parkside umbringt: > Parkside multimeter zeigt bei gefährlicher Spannung 0 Volt: Du bist doch auch nur ein Troll, hier Dein Fisch: Das PDM-300-C3 ist ein CAT-III-Gerät! Wer denkt, das eben an mehr als 300V betreiben und etwas messen zu müssen (500/1000V), dem ist sowieso nicht mehr zu helfen. Aus der Bedienungsanleitung: > CAT III 300 V (Digitalmultimeter und Messkabel) Für Dich Troll aber auch noch einen extra Fisch: Es steht sogar auf dem Gerät, einfach lesen und verstehen bildet da durchaus.
Ist schon lange her, aber mega geiles Projekt ! Besteht die Möglichkeit, dass Programm für ein kleinen Obolus abzuspecken ? Ich würde gerne für den Streaming Bereich nur das " Display" einblenden, also wirklich nur die Zahlen und welcher Modus aktuell aktiv ist. Wäre super wenn du dich mir annehmen könntest :) LG
Florian schrieb: > Ist schon lange her, aber mega geiles Projekt ! > Besteht die Möglichkeit, dass Programm für ein kleinen Obolus > abzuspecken ? > > Ich würde gerne für den Streaming Bereich nur das " Display" einblenden, > also wirklich nur die Zahlen und welcher Modus aktuell aktiv ist. > > Wäre super wenn du dich mir annehmen könntest :) > LG Das lässt sich umsetzen. Schreib mir gerne eine PM. Viele Grüße, Benedikt
Ich möchte euch ParksideWeb, die neue Alternative zu ParksideView vorstellen. ParksideWeb ist, wie der Name schon andeutet eine Webversion von ParksideView, die im Browser (oder z.B. in OBS zum Aufnehmen/Streamen) läuft und damit auch endlich auf allen Platformen (insbesondere Linux und Mac) produktiv einsetzbar ist. Es ist zu ParksideView funktionskomplett (abgesehen von Min/Max und CSV mit Semikolon). Der Code und weitere Dokumentation sind wie immer verfügbar und PRs gerne willkommen: https://github.com/bmuessig/ParksideWeb Um direkt loszulegen, kann man das Programm z.B. wie folgt starten: ParksideWeb.exe -p COM1 -o -c > data.csv Zwar bin ich normalerweise dem Ersetzen nativer GUIs durch Webversionen eher kritisch eingestellt, doch bin ich der Ansicht hier einen guten Kompromiss eingegangen zu sein. Die Anwendung lässt sich komplett offline verwenden, bringt alle Ressourcen eingebettet mit und sollte auch mit älteren Browsern kompatibel sein. Lässt man die Anwendung auf einem Computer im selben Netzwerk laufen, so kann man auch einen oder mehrere Mobilgeräte als externe, kabellose Displays nutzen. Auch ist eine exklusive Nutzung auf der Kommandozeile möglich (-n -c streamt direkt CSV auf die Standardausgabe - ohne Server), aber auch die Integration in eigene Software (z.B. über die /config.json und /data.json Endpunkte). Anbei gibt es Builds für die beliebtesten Platformen. Auf GitHub finden sich auch entsprechende Versionen für ARM. Viel Spaß!
:
Bearbeitet durch User
Ich habe diese Woche den neusten LIDL/Parkside-Multimeter gekauft, um dessen Modifizierbarkeit zu testen. Der PDAM 300-A1 besitzt leider keine serielle Schnittstelle mehr. Das Display ist zwar dasselbe, aber das Chipset anscheinend nicht. Es verwendet einen externen I2C EEPROM für die Kalibrierung, der beim Starten abgefragt wird. Ich konnte die wichtigsten Signale an den inzwischen unbeschrifteten Testpunkten reverse-engineeren, habe aber auch durch festverdrahten einiger Signale beim Start keinen Output entdecken können. https://www.lidl.de/p/parkside-digitales-autorange-multimeter-pdam-300-a1/p100371622
Und schon wieder hat LIDL ein neues Autorange-Multimeter herausgebracht, welches den PDM 300-C3 und scheinbar auch das PDAM 300-A1 ersetzt. Dieses Mal hat er keine Modellnummer mehr und kommt mit einem Temperatur- und NCV-Modus statt eines Diodenmodus. https://www.lidl.de/p/parkside-digital-multimeter-mit-automatischer-messbereichswahl/p100377731 Ich habe mal ein Gerät bestellt - mal sehen, ob dieses wieder mit einem kompatiblen Chipsatz ausgestattet ist.
:
Bearbeitet durch User
Es wäre interessant, wenn das Mutimeter die Datenübertragung erlauben würde. Vielleicht kann mal jemand diese Python-Script testen: Beitrag "Re: Multimeter PDM-300-C2 Simulator"
Würde mich nicht wundern, wenn das von Benning hergestellt wird. Die haben auch die kontaktlose Spannungsprüfung in mindestens einem ihrer Geräte.
Benning verkauft bei Lidl? Sakrileg!!! (Und ich glaube nicht dran...) Klaus.
Arno H. schrieb: > Ich vermisse Strommessungen. Ist mir leider erst später aufgefallen. Wirklich schade. Vielleicht denkt LIDL, dass der Normalverbraucher keinen Strom messen sollte/will.
Benedikt M. schrieb: > dass der Normalverbraucher keinen Strom messen sollte/will. Pass mal auf, in ein paar Jahren sind nicht einmal mehr Buchsen für die Leitungen vorhanden, weil das alles zu gefährlich sein könnte.
>Ist mir leider erst später aufgefallen. Wirklich schade. Vielleicht >denkt LIDL, dass der Normalverbraucher keinen Strom messen sollte/will. Das Fluke 101 hat auch keine Strommessung. Konnte schon jemand herausfinden, ob die Datenübertragung mit dem C3 funktioniert?
Der Multimeter ist inzwischen bei mir angekommen und es gibt Neuigkeiten: Es gibt wieder eine serielle Schnittstelle! Nur dieses Mal wieder mit anderem Protokoll und es werden nur Daten ausgegeben, wenn man den Modus am Modusrad ändert (siehe Bilder im Anhang). Die Bitrate ist in den Screenshots falsch eingestellt, daher die dekodierten Werte bitte ignorieren. Als nächstes schaue ich mal, ob sich irgendwie konstant Daten triggern lassen.
Da habe ich mich wohl zu früh gefreut. Leider handelt es sich bei dem seriellen Datenstrom nicht um UART, sondern nur um die SDA-Leitung zum Kalibrierungs-EEPROM. Bei jedem Moduswechsel und Tastendruck kommuniziert der Multimeter mit diesem. Da keine weiteren Testpunkte übrig bleiben, sieht es tatsächlich so aus, als hätte LIDL seit zwei Multimeter-Generationen keinen UART-Output mehr auf der Platine belassen. Vielleicht wird das Signal weiterhin erzeugt, aber nicht mehr als Testpunkt vom Chip-on-board herausgeführt. Schade! Der Multimeter ist aber generell eher eine Enttäuschung als eine Weiterentwicklung... Christoph M. schrieb: > Konnte schon jemand herausfinden, ob die Datenübertragung mit dem C3 > funktioniert? Ja, die Datenübertragung funktioniert beim C2 und C3 exakt gleich.
>Ja, die Datenübertragung funktioniert beim C2 und C3 exakt gleich.
Jetzt bin ich verwirrt. Du hast doch oben geschrieben, das C3 hat nur
I2C zum EEPROM und keine UART.
Christoph M. schrieb: >>Ja, die Datenübertragung funktioniert beim C2 und C3 exakt > gleich. > Jetzt bin ich verwirrt. Du hast doch oben geschrieben, das C3 hat nur > I2C zum EEPROM und keine UART. Das war zum PDAM, der den C3 ersetzt hatte
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.