Forum: Mikrocontroller und Digitale Elektronik Hameg HMC8012, Messwerte mit PC auslesen für Trendchart


von Stefan D. (mackie05)


Lesenswert?

Hallo, ich möchte gern die Messwerte eines Hameg HMC8012 DMM per 
PC(Win7) über USB oder Ethernet auslesen und live als Trendchart 
darstellen. Mittels SPCI Befehlen sollte das ja machbar sein. Hat jemand 
das schonmal gemacht und kann mir sagen on ich die maximalen 200 
Readings/sec auch über den PC auslesen kann, oder ob hier die 
Geschwindigkeit begrenzt ist?

Danke und Gruß

von dunno.. (Gast)


Lesenswert?

Also, wenn das DMM wirklich 200Werte / sec erfasst (Wahrscheinlich nur 
bei reduzierter auflösung, ohne filterung, und mit ein paar hacks)

- dann hast du 1/200 = 5ms Zeit.

Auf nem Windows-PC leider unrealistisch. Du wirst eher so bei 20ms 
herauskommen, wenn du dein Programm vernünftig schreibst, und der PC 
grad nix anderes tut..

Und das auch nicht immer, sondern nur oft.

Was hast du denn vor?

von Stefan D. (mackie05)


Lesenswert?

Genau die 200 sind dann mit 4,5 Stellen Auflösung. Ich möchte gern das 
Multimeter um eine Trendchartfunkionalität erweitern. Die Agilent 
Modelle ab 34461a haben das. Für mich ganz praktisch um den 
Spannungsverhältnis über die Zeit gleich zu sehen und nicht erst die 
Logfiles auswerten zu müssen.
Da hast Du Recht, da werde ich mit Win7 nicht unter die 15,6 ms kommen. 
Kannst Du Dir sowas mit Linux auf nem RPi vorstellen?

von dunno.. (Gast)


Lesenswert?

Klar, SCPI über Ethernet kann jeder. Schickst ein Read\r\n oder 
Aquire\r\n oder sowas und kriegst Daten. Kann man mit jedem beliebigen 
Telnetclient aka putty machen.

aber auch linux ist kein echtzeitsystem. wie die realen werte da so 
sind, keine ahnung. wenns dir nicht drauf ankommt, dass die werte 
deterministisch und zu exakten zeitpunkten geholt werden, kannst du das 
ja durchaus machen, dann aber lieber direkt aufm pc, da ists mit der 
weiterverarbeitung einfacher, und der hat einfach mehr bumms...

von Didi S. (kokisan2000)


Lesenswert?

Sagt mal fühlt Ihr die Antworten oder gibt es da auch belastbare 
Aussagen oder vielleicht sogar Kenntnisse?

1) Das Hameg HMC8012 hat mit USB TMC, Ethernet/LXI 100Mbps und sogar per 
IEEE488.2 ausreichend schnelle Schnittstellen, um die 200 Messwerte/s zu 
übertragen. Nur der optionale IEEE Bus mit 1 MByte/s kommt aufgrund der 
intensiven Header vermutlich in straucheln, aber die meisten modernen 
Karten und Geräte unterstützen HS-488 mit 8 MByte/s (müsste man bei 
Hameg anfragen).
2)"... 5ms Zeit. Auf nem Windows-PC leider unrealistisch."
Was habt denn Ihr für Hardware daheim stehen!? Die aktuelle Gigahertz 
Klasse mit USB2.0/3.0, voller DMA Unterstützung soll keine 200 
Messwerte/s empfangen und verarbeiten können? Jeder streamt heute Videos 
mit erheblich höheren Datenraten aber messtechnisch soll Windows am Ende 
sein. Das ist ein kleines bisschen naiv.
3) "Echtzeit" - ein schwer geschundenes Wort, besagt es doch eigentlich 
nur, dass Daten in der Geschwindigkeit verarbeitet und bereit gestellt 
werden, in der man sie benötigt. Es steht nicht für "kaum vorstellbar 
wahnsinnig schnell". In dieser Anwendung müssen 200 Messwerte empfangen, 
verarbeitet und dargestellt werden und das alles verzögerungsarm. Wenn 
das System es schafft, dann ist es quasi ein Echtzeitsystem für diese 
Aufgabe.
4) Windows arbeitet oft für sich selber. Stimmt, ist aber meist nicht 
dramatisch und ausserdem gibt es mittels Multicore Programmiertechniken, 
die solche Probleme umschiffen. Diese sind aber sicherlich noch nicht 
bei zu erwartenden 200 Messwerte/s relevant.

Gruß
kokisan

von Guido G. (Gast)


Lesenswert?

Moin!

Ich würde mir mal die Logs mit Zeitstempel ansehen.

Man wird feststellen, dass die Einträge nicht in exakten
Zeitabständen erfolgen.

Ich postuliere:
wenn das schon bei der internen Aufzeichnung so ist, wird es extern
nicht besser werden.
Besonders wenn der Auslöser für die Messung ebenfalls von Außen kommt.

Evtl. für sowas doch auf Oszi-Dings ausweichen (Stichwort Roll-Mode).

Grüße

von Stefan D. (mackie05)


Lesenswert?

Kokisan: Das Problem sind die Timerinterrupts des Windowssystems alle 
15,6 ms. Würde das DMM die Werte einfach kontinuierlich schicken, wäre 
das wohl kein Problem, jedoch muss ich hier für jeden Messwert ein SPCI 
Request schicken.

Guido: Wenn die Zeitstempel nicht ganz genau stimmen ist das nicht 
tragisch. Ich möchte halt live Tendenzen sehen, bspw. geringe 
Spannungsabweichungen durch eigenerwärmung. Mit dem Oszi, oder zumindest 
meinem Oszi kann ich keine Änderungen im mV-Bereich bei 2V/Div sichtbar 
machen. Schön wäre natürlich auch für Strommessungen Peaks 
mitzubekommen, daher die hohe Abtastrate.

von Didi S. (kokisan2000)


Lesenswert?

Hallo Stefan,

der fixe Timerinterrupt ist aus alter Zeit. Schon seit Jahren können die 
Systeme den Timer über die Win32-API auf minimale 1ms setzen. Über 
interne APIs lassen sich noch geringere Zeiten programmieren.

Gruß

von Stefan D. (mackie05)


Lesenswert?

Guter Hinweis, da muss ich mich nochmal einlesen. Danke dafür.

von dunno.. (Gast)


Lesenswert?

Didi S. schrieb:
> Hallo Stefan,
>
> der fixe Timerinterrupt ist aus alter Zeit. Schon seit Jahren können die
> Systeme den Timer über die Win32-API auf minimale 1ms setzen. Über
> interne APIs lassen sich noch geringere Zeiten programmieren.
>
> Gruß

Dann zeig mal wie man das macht, dass man in Windows deterministisch zu 
äquidistanten Zeitpunkten dinge tut.
Und zwar, weils hier grad so schön passt, im 5ms Raster. Frage - 
Verarbeitung- Antwort. Mit nem externen Gerät, über ne Schnittstelle.

Ich weiß nämlich wirklich nicht wie das geht, und, da ich nichts kenne 
was ernsthaft sowas auf Windows macht, sondern im gegenteil selbst 
embedded dinge bau, damit ich sowas machen kann..

du hast hier wohl "auch belastbare
Aussagen oder vielleicht sogar Kenntnisse?"

dann mal her damit.

von Mal eben schnell probiert (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe ein kleines Programm geschrieben um die Geschwindigkeit der 
Schnittstelle zu testen.
Damit komme ich im Schnitt auf 200 Messwerte/s. Kann natürlich sein, 
dass da einige Werte doppelt sind weil ich mit Fetch auslese.
Meine Parameter:
USB - VCP (Port66)
DCV (Ohne zweiten Messwert)
Messrate: Fast

von dunno.. (Gast)


Lesenswert?

Dann miss mal bitte, wie lange du brauchst, für dein Thread.Sleep(1).
1
 long gesamtzeit = 0;
2
3
            Stopwatch gesamtzeitmessung = new Stopwatch();
4
            gesamtzeitmessung.Start();
5
            for (int i = 0; i < 1000; i++)
6
            {
7
                Stopwatch einzelzeitmessung = new Stopwatch();
8
                einzelzeitmessung.Start();
9
                System.Threading.Thread.Sleep(1);
10
                einzelzeitmessung.Stop();
11
                gesamtzeit += einzelzeitmessung.ElapsedMilliseconds;
12
            }
13
            gesamtzeitmessung.Stop();
14
            long durchschnitt = gesamtzeit / 1000;

Mit diesem Code komme ich auf meinem Rechner auf 9ms.

von Stefan D. (mackie05)


Lesenswert?

Da bin ich ja doch beeindruckt, wie schnell Du das mal eben getestet 
hast. Die doppelten Werte stören auch vorerst nicht, da es ja wie gesagt 
mir eine Tendenz zeigen soll. Durch Deinen Test weiß ich, dass es sich 
lohnt da doch mehr Zeit reinzustecken und etwas mit grafischer 
Darstellung umzusetzen. Wird bei mir allerdings deutlich länger dauern, 
da ich nicht so versiert im Programmieren bin - ist ja aber eine schöne 
Übung :-)

Kann das Tool leider erst am Montag testen, da ich übers Wochenende 
unterwegs bin.

Vielen Dank für Deine Hilfe/Info!

von Stefan D. (mackie05)


Lesenswert?

Hallo Dunno, werd ich dann auch mal testen, wären ja fürs erste schonmal 
gute 100 Readings / sek.

von Erstaunter (Gast)


Lesenswert?

Das ist schade, dass das HMC8012 nicht in ein Buffer schreiben kann, wie 
Agilent, Fluke oder Keysight. Dort kann man die Daten völlig entspannt 
aus dem Buffer, als FIFO benutzt, regelmäßig abholen, ohne dass eine 
Messung verloren geht oder doppelt gelesen wird, auch wenn der PC mal 
einige Zeit was anderes macht.

Erstaunlich dass das Hameg nicht kann. Hätte ich nicht erwartet. Wollte 
mir das HMC als 3.-Gerät holen. Ist aber nun definitiv gestorben. Danke 
für den Thread!

von Ralph B. (rberres)


Lesenswert?

Didi S. schrieb:
> Nur der optionale IEEE Bus mit 1 MByte/s kommt aufgrund der
> intensiven Header vermutlich in straucheln, aber die meisten modernen
> Karten und Geräte unterstützen HS-488 mit 8 MByte/s (müsste man bei
> Hameg anfragen).

Also ich habe nur eine HP82341C IEEE488 Karte unter Win2000 im Einsatz.

Der schafft es locker 1000 Werte/Sek aus dem HP34401 auszulesen.
Allerdings nur bei abgeschalteten Display und DC 4,5 Stellen.

Ein Bildschirminhalt eines Oszillografen auszulesen ( 1024*256 ) dauert 
etwa 1 Sekunde ebenfalls über IEC-Bus.

Es braucht dazu kein HS-488 mit 8Mbyte/sek dazu. dafür reichen auch die 
üblichen 350Kbyte/sek älterer Karten.

Ralph Berres

von Didi S. (kokisan2000)


Lesenswert?

Hallo Ralph,

ich stimme Dir und Deinen Erfahungen voll zu. Die HP82341C war 
ihrerseits eine der robustesten und schnellsten Karten auf dem Markt und 
schaffte mehr als die anfänglichen spezifizierten 1 MByte/s. Auch die 
alten CEC-Karten (später Keithley) und die NI Karten waren flott. Einzig 
die Hameg-Karten (gibt es schon lange nicht mehr) dümpelten vor sich 
hin. Karten anderer Hersteller hatte ich nicht im Einsatz. Für die 
gewünschten 200 Werte/s reicht dieser Bus prinzipiell locker aus.

HS488 hat sich meiner Erfahrung nie durchgesetzt. Ich kennen nur ganz 
wenige Messgeräte, die dieses unterstützen. Und wenn ich mich erinnere, 
dann gab das langsamste Gerät am Bus die maximale 
Übertragungsgeschwindigkeit vor. Also war es durchaus sinnvoll zwei 
IEEE488-Karten für den Betrieb von zwei Bussen vorzusehen und HS488 
Geräte auf dem Bus zu separieren. Aber alles Historie ...

Aber das Problem mit dem HMC8012 scheint ja wirklich an anderer Stelle 
zu liegen. Ein heutiges Gerät dieser Preisklasse ohne Buffer und damit 
der Möglichkeit der blockweisen Abholung von Daten ist nicht ganz 
zeitgemäß.

Gruß Didi

von Ralph B. (rberres)


Lesenswert?

Didi S. schrieb:
> Und wenn ich mich erinnere,
> dann gab das langsamste Gerät am Bus die maximale
> Übertragungsgeschwindigkeit vor.

Aber nur wenn das langsamste Gerät adressiert wird. Ansonsten hält er 
sich weitgehend raus und bremst auch unwesentlich aus.

Ralph

von Stefan D. (mackie05)


Lesenswert?

Meint Ihr, diese Buffergeschichte ist ein reines Firmware Thema oder 
müsste Hameg hier etwas an der Hardware anpassen?

von Ralph B. (rberres)


Lesenswert?

Stefan D. schrieb:
> Meint Ihr, diese Buffergeschichte ist ein reines Firmware Thema oder
> müsste Hameg hier etwas an der Hardware anpassen?

Das müsstest du Hameg fragen.

Selbst wenn bereits ausreichend Ram vorhanden ist, und nur eine 
Softwareänderung notwendig ist, kann ich mir kaum vorstellen, das Hameg 
solch ein Update vornimmt.

Also ist das mehr eine rhetorische Frage.

Hameg schreibt in den technischen Daten , das er 200 Messungen/Sek bei 
4,75 Stellen macht. Also kann er dies auch auf den Bus schreiben.

Und das ohne zusätzliche Einschränkungen.

Ralph Berres

: Bearbeitet durch User
von Stefan D. (mackie05)


Lesenswert?

Wenn es für Nutzer wie den Erstaunten ein Kriterium ist das Gerät nicht 
zu kaufen und sich der Programmieraufwand in Grenzen hält könnte Hameg 
ja schon darüber nachdenken. Wenn ich mir anschaue, wie umtriebig 
Keysight mit ihren FW-Updates ist muss das sich das ja wohl auszahlen. 
Und vielleicht liest Hameg hier ja mit :-)

von Uwe B. (uwe_beis)


Lesenswert?

Ich lese mit Interesse über die Erfahrungen mit dem HMC8012. 3 Fragen, 
deren Antworten ich aus dem Manual nicht (oder nicht sicher) erkennen 
kann, hätte ich an Besitzer:

1. Zur Erklärung: (M)ein HM8112, also ein uralter Vorgänger, misst im 
AC-Bereich auch den DC-Anteil, nach der Erkenntnis das 1 VDC auch 1 VRMS 
und nicht 0 ist. Das kann man technisch einsehen, ist praktisch 
ungeheuer nervend. Macht das HMC8012 auch so einen Unsinn oder sind 
AC-Messungen auch AC-gekoppelt?

2. Ist das HMC8012 auch über den HMExplorer zu erreichen?

3. Das HMC8012 kann Messwerte intern (50.000 Messpunkte max.) oder auf 
einen USB-Stick loggen. Ist das nicht eine Lösung für das hier 
diskutierte Thema?

Noch zwei kritische Anmerkungen:

Da haben die ein hübsches grafisches TFT-Display und keine Funktion, die 
geloggten Daten grafisch darzustellen. Was für eine Verschwendung von 
Hardware, so eine (bestimmt nicht nur für mich) wichtige Funktion nicht 
vorzusehen. Bei den Oszis eine ähnliche Krankheit: Man hat zwar 
Megasamples als Speicher, aber eine "Ablenkzeit" von weniger als wenige 
10 Minuten lässt sich nicht einstellen. Wie oft will ich Spannungs, 
Strom- oder Temperaturverläufe über längere Zeit, bis zu Tagen 
aufnehmen! Geht nicht, nur weil "sich der Knopf nicht weit genug drehen 
lässt" Grrrrrr....

Das Manual vom HMC8012 sieht hübsch aus, aber zur Kontrolle hat es noch 
keiner gelesen - außer vielleicht Rechtschreibung.

Den Preis des HM in Relation zu dem Preis der hier gelobten 
Wettbewerbsprodukte muss ich mir noch mal ansehen.

von Stefan D. (mackie05)


Lesenswert?

Hallo Uwe, zu Punkt 1. kann ich Dir gerade nichts sagen.

Zu Punkt 2. Ja es ist über den Hameg Explorer erreichbar, jedoch kannst 
Du ausser einen Screenshot vom Displayinhalt und einen rudimentären 
Terminalprogramm über das Du SPCI Befehle schicken kannst nichts weiter 
ausrichten. Auch hier hätte ich mir ein wenig mehr Kontrolle gewünscht. 
Für die HMP-Netzteilserie ist hier auch ein Arbiträrgeneratortool 
verfügbar welches man deutlich benutzerfreundlicher hätte gestalten 
können. Wenn man den HM-Explorer mal mit der Keysight Benchvue Lösung 
vergleicht ist hier noch sehr viel Luft nach oben. Kann jemand sagen, ob 
Benchvue nicht nur schick aussieht sondern auch praxistauglich ist?


Zu Punkt 3. Das ist leider nicht die Lösung, da ich beim Testen nicht 
immer erst die Log-Datei auswerten möchten. Das ginge natürlich auch 
jedoch ist das deutlich umständlicher und vor allem zeitaufwendiger.

Dem Thema mit dem Display stimme ich voll und ganz zu. Hier sehe ich 
auch noch sehr viel Potential für tolle grafische Features.

: Bearbeitet durch User
von Ralph B. (rberres)


Lesenswert?

Uwe B. schrieb:
> 2. Ist das HMC8012 auch über den HMExplorer zu erreichen?

Habe ich nie gebraucht, da ich alle meine Messgeräte über selbst 
geschriebene Basic-Programme auslese und auswerte.

Uwe B. schrieb:
> Da haben die ein hübsches grafisches TFT-Display und keine Funktion, die
> geloggten Daten grafisch darzustellen.

wie schon geschrieben.

Uwe B. schrieb:
> Bei den Oszis eine ähnliche Krankheit: Man hat zwar
> Megasamples als Speicher, aber eine "Ablenkzeit" von weniger als wenige
> 10 Minuten lässt sich nicht einstellen. Wie oft will ich Spannungs,
> Strom- oder Temperaturverläufe über längere Zeit, bis zu Tagen
> aufnehmen! Geht nicht, nur weil "sich der Knopf nicht weit genug drehen
> lässt" Grrrrrr....

Mache ich mit einen HP34401 Multimeter und Benchlink Suite von HP

Das Multimeter hat 1. eine wesentlich höhere Auflösung und die 
Messreihen welche ich mit Benchlink aufnehme können beliebig lang sein.

Dann gibt es ja noch die Möglichkeit die Messwerte direkt in ein 
Excel-Sheet zu schreiben.

Ralph Berres

von Uwe B. (uwe_beis)


Lesenswert?

Stefan D. schrieb:
> Hallo Uwe, zu Punkt 1. kann ich Dir gerade nichts sagen.
Vielleicht mal später, aber ich halte es für ziemlich sicher, dass 
DC-Werte tatsächlich nicht angezeigt werden, so, wie es sich gehört.

> Zu Punkt 2. Ja es ist über den Hameg Explorer erreichbar, jedoch kannst
> Du ausser einen Screenshot
Screenshots bei Multimetern sind nicht sehr attraktiv oder hilfreich... 
Außer, wenn man Manuals über das Gerät verfasst.

> Zu Punkt 3. Das ist leider nicht die Lösung, da ich beim Testen nicht
> immer erst die Log-Datei auswerten möchten.
Ja, eine Log-Datei ist keine Trendanzeige. Kann man die Log-Datei 1. 
schon auslesen, während noch gemessen. bzw. geloggt wird, ohne das die 
Messungen unterbrochen werden und 2. evtl. sogar erst ab einem 
bestimmten Punkt (z. B. der, dessen Werte neu seit dem letzten Auslesen 
hinzu kamen)?

Ralph B. schrieb:
> selbst geschriebene Basic-Programme
Nanu, gibt es denn noch jemanden außer mir auf der Welt, der Basic 
schreibt? Das gibt ja gleich einen Sympathie-Punkt :)

> Mache ich mit einen HP34401 Multimeter und Benchlink Suite von HP
Irgendwie kriege ich das bei mir ja auch gelöst, wenn ich will. Notfalls 
sogar noch mit einem XYT-Schreiber auf Papier. Aber für deinen Ansatz 
muss man immer einen PC in Reichweite haben, und sich um das ganze 
System aus verschiedener Hardware und Software kümmern. Das nenne ich 
umständlich im Vergleich zu dem, was mit nicht einmal einer einfachen 
Einstellung, sondern lediglich einem erweiterten Einstellbereich am Oszi 
zu erreichen wäre. Die Genauigkeit spielt bei mir in den seltensten 
Fällen eine Rolle (oder sogar noch nie). Da passt der Oszi, zumal er 
vier Kanäle hat.

von Ralph B. (rberres)


Lesenswert?

Uwe B. schrieb:
> Ja, eine Log-Datei ist keine Trendanzeige. Kann man die Log-Datei 1.
> schon auslesen, während noch gemessen. bzw. geloggt wird, ohne das die
> Messungen unterbrochen werden und 2. evtl. sogar erst ab einem
> bestimmten Punkt (z. B. der, dessen Werte neu seit dem letzten Auslesen
> hinzu kamen)?

Ich meine das Benchlink Programm von HP kann auch sowas. Aber das das 
Multimeter das selbst kann ohne PC im Hintergrund? Ich meine das können 
wenn überhaupt nur die aktuellen HP Multimeter in der höheren 
Preisklasse

HP34410 usw.

Uwe B. schrieb:
> Nanu, gibt es denn noch jemanden außer mir auf der Welt, der Basic
> schreibt? Das gibt ja gleich einen Sympathie-Punkt :)

Ja aber nur HP Instrument Basic bei welcher man die IEC-Bus Karte direkt 
ansprechen kann.
Der aktuelle Nachfolger HT-Basic kann das auch.

Mit Visuell-Basic von Mikrosoft komme ich z.B. nicht klar.
Auch nicht mit dem Basic mit welche man Amtel Prozessoren programmiert.

Ralph Berres

von Rudi (Gast)


Angehängte Dateien:

Lesenswert?

Uwe B. schrieb:
> Macht das HMC8012 auch so einen Unsinn oder sind
> AC-Messungen auch AC-gekoppelt?

Das HMC8012 ist bei der AC Messung AC gekoppelt. Wenn man AC+DC messen 
will muss man das einstellen.

Stefan D. schrieb:
> Für die HMP-Netzteilserie ist hier auch ein Arbiträrgeneratortool
> verfügbar welches man deutlich benutzerfreundlicher hätte gestalten
> können.

Welche Version hast du? Das Modul wurde mal komplett ersetzt und 
funktioniert jetzt super. Ich habe mal ein Screenshot angehängt.

von Olaf (Gast)


Lesenswert?

> Das ist schade, dass das HMC8012 nicht in ein Buffer schreiben kann, wie
> Agilent, Fluke oder Keysight.

Also ich kenne den HMC80012 nicht! Aber die aktuellen Oszis von Hameg 
(2024/2022) setzen alles was sie ueber ihre Buskarte (Ethernet oder USB) 
bekommen auf eine interne serielle Schnittstelle mit 115k2 um. Das ist 
dort dann der Engpass. Wenn sie das beim HMC aehnlich geloest habe, zum 
Beispiel weil sie Hardware weiterverwenden, dann wuerde ich mir von der 
Schnittstelle nicht zuviel versprechen.

Olaf

von Uwe B. (uwe_beis)


Lesenswert?

Olaf schrieb:
> setzen alles was sie ueber ihre Buskarte (Ethernet oder USB)
> bekommen auf eine interne serielle Schnittstelle mit 115k2 um

Kann ich bestätigen. Die Oszis melden sich sogar mit FTDI als Vendor-ID. 
Ist mehr ein Zeugnis von "USB kann ich nicht selber, da muss mir jemand 
helfen" :( Nicht mal 'ne eigene VID können sie einsetzen.

115k könnten eigentlich für die 5ms-Messzeit reichen (55 
Zeichen/Messung).

Gibt es eigentlich ein verbindliches Manual zu den SCPI-Kommandos im 
HMC8012? Bislang fand ich nur den lapidaren Satz: "SCPI commands largely 
compatible with Agilent 34410A". Oder muss man sich überraschen lassen, 
wenn ein Kommando mal nicht dabei ist?

@Ralph: VB ist (leider) die einzige Sprache, die ich auf dem PC 
einigermaßen beherrsche. Und auch bloß VB5. Früher auch mal GW-Basic und 
QB. Ja, und davor noch das auf dem PET2000...

von Ralph B. (rberres)


Lesenswert?

Unter
http://www.hameg.com/470.0.html?L=1&tx_hmdownloads_pi1[product]=HMC8012&tx_hmdownloads_pi1[product2]=HMC8012-G&tx_hmdownloads_pi1[product]=HMC8012&tx_hmdownloads_pi1[product2]=HMC8012-G
findest du die Programmieranleitung zu dem Gerät.

Es beinhaltet u.A. sämtliche SCPI Befehle.

Was den Unsinn betrifft eine IECbus Schnittstelle an einen RS232 Port zu 
hängen wie Hameg es macht, sage ich lieber nichts.

Aber ich glaube das macht jetzt auch bei Keysight Mode , die auch immer 
mehr die IEC-Busschnittstelle als Option anbieten.



Ralph Berres

von Rudi (Gast)


Lesenswert?

Die Aussage mit den 115k stimmt nur für die älteren Geräte mit 
austauschbarer Schnittstelle. Die Geräte mit integrierter Schnittstelle 
arbeiten intern deutlich schneller. Wurde mir so auf einer Messe 
erklärt. Die HMC Geräte haben ja auch kein FTDI mehr verbaut, es scheint 
da also wirklich Änderungen gegeben zu haben.

von Uwe B. (uwe_beis)


Lesenswert?

Rudi schrieb:
> Die Aussage mit den 115k stimmt nur für die älteren Geräte mit
> austauschbarer Schnittstelle.
Im HMO20xx ist eine austauschbare Schnittstelle HO720, USB & RS-232. Die 
wird, wie ich schon schrieb, als FTDI in USBView gemeldet. Die FTDIs 
können ja auch mehr als 115k.

Ich habe Geschwindigkeitsversuche gemacht: Ein Screenshot als GIF geht 
erheblich schneller als als BMP (PNG eher noch schneller bei weniger 
Daten). Also wird im Oszi komprimiert.

GIF dauert mit Verbindungsaufbau etwas über 1 Sekunde bei 20 kB Daten.
BMP dauert mit Verbindungsaufbau recht genau 5 Sekunden bei 327 kB 
Daten.

Der Verbindungsaufbau dauert offensichtlich ca. 1 s, allerdings spielt 
da vielleicht auch eine Zeit, die der Oszi zur Kompression braucht, eine 
Rolle.
Die reine Datenübertragungsrate muss also über 523 kb/s liegen. 
Wenigstens das, aber immer noch weit USB Full Speed entfernt.

von Stefan D. (mackie05)


Lesenswert?

Rudi: Stimmt, die neue Version sieht deutlich besser aus,  wenn man 
jetzt noch Kurven bspw. aus Excel importieren könnte wäre das ja 
fabelhaft.


Werde mal versuchen die Daten mit 200 Readings/sec über nen Atmega vom 
HMC zu ziehen und an den PC weiterzugeben. Dann sollten ja die 15,6 ms 
Windows Timer Interrupt egal sein.

: Bearbeitet durch User
von Rudi (Gast)


Lesenswert?

Uwe B. schrieb:
> Im HMO20xx ...

Richtig, das gehört zu den älteren Geräten. Hier geht es um den HMC8012.

von Rudi (Gast)


Angehängte Dateien:

Lesenswert?

Stefan D. schrieb:
> Stimmt, die neue Version sieht deutlich besser aus,  wenn man
> jetzt noch Kurven bspw. aus Excel importieren könnte wäre das ja
> fabelhaft.

CSV-Import geht super. Es wird nichtmal ein vordefiniertes Format 
erwartet. Man kann eine beliebige CSV laden und bekommt dann alle 
nötigen Einstellmöglichkeiten, dass es richtig interpretiert wird. Ist 
hübsch gemacht.

von Stefan D. (mackie05)


Lesenswert?

Hallo Rudi, hab es mal ausprobiert, ist jetzt wirklich komfortabeler.

von Stefan D. (mackie05)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mal meinen Wunsch nach dem HMC8012 Trendchart zum Anlass 
genommen um mich erstmalig mit C#(Visual Studio 2015 Express) 
auseinanderzusetzen.
Diese ersten Gehversuche möchte ich gern mit Euch teilen und daher hier 
meine aktuellen Resultate vorstellen.

Bis jetzt ist ein Programm entstanden, das in der Lage ist über die VCP 
USB auf das HMC8012 DMM zuzugreifen, Messwerte über "FETCh" auszulesen 
und diese grafisch darzustellen.
Allerdings gibt es noch viele größere und kleinere Dinge, die ich noch 
tun muss.

1. Im Auslesebereich unterhalb von 100 ms stürtzt das Ganze sporadisch 
ohne Exception ab (noch keine Ahnung woran das liegt)
2. Nach dem Ausschalten des Multimeters während des Auslesens kann nicht 
wieder neu verbunden werden
3. Die Timestamp beruht derzeit noch auf dem Standard Windows Timer, 
wodurch die Werte gerne mal um bis zu 15.6ms streuen. - Hier soll ein 
Multimedia Timer weiterhelfen
4. Die TMC Klasse soll noch implementiert werden, da ich mir davon eine 
höhere Auslesegeschwindigkeit erhoffe
5. Irgendwann soll es auch noch ein CSV Export geben, aber vorher sollte 
es stabil laufen.
6. Verbessern der gesamten Programmstruktur - es gibt mit Sicherheit 
einige Dinge, die ich recht umständlich gelöst habe.

Wenn Ihr hier gute Tips für mich bezüglich Programmstabilität und 
Auslesegeschwindigkeit habt gerne immer her damit - aber seht es mir 
nach, mein Verständnis zur Programmierung in C# ist noch sehr begrenzt 
:-)

Gruß Stefan

von Stefan D. (mackie05)


Lesenswert?

Wer mag, kann es natürlich frei nutzen oder verändern - und dann auch 
gern teilen :-)

Bei Interesse werde ich dann meine neueren Stände auch hier zur 
Verfügung stellen.

von Stefan D. (mackie05)


Lesenswert?

Didi S. schrieb:


> der fixe Timerinterrupt ist aus alter Zeit. Schon seit Jahren können die
> Systeme den Timer über die Win32-API auf minimale 1ms setzen. Über
> interne APIs lassen sich noch geringere Zeiten programmieren.

Hallo Didi,

hast Du hier ein Beispiel in C# für das heruntersetzen des 
Timerinterrupts? Hatte es schon mit nem MicroTimer versucht, der setzt 
aber nicht die Interruptzeit herab sondern nutzt lediglich die 
hochauflösende Windows Stop watch.

Gruß und Danke

von hanss (Gast)


Lesenswert?

Ich habe mit EXCEL/VBA über WinSock eine Verbindung zum
HMC8012 hergestellt, die Kommunikation läuft über SCPI
Kommandos.

EXCEL schafft eine Messwertabfrage mit "read?" max. alle 10ms.

Die Messwerte ändern sich jedoch nur ca. alle 80-100ms in
der Einstellung Fast.

von Miwi (Gast)


Lesenswert?

hanss schrieb:
> Ich habe mit EXCEL/VBA über WinSock eine Verbindung zum
> HMC8012 hergestellt, die Kommunikation läuft über SCPI
> Kommandos.
>
> EXCEL schafft eine Messwertabfrage mit "read?" max. alle 10ms.
>
> Die Messwerte ändern sich jedoch nur ca. alle 80-100ms in
> der Einstellung Fast.

Brav, sehr brav. Gut gemacht Hanss

bei dem Inhalt Deiner Nachricht ist das mehr als nur 3 Jahre zu spät.

von hanss (Gast)


Lesenswert?

Dein Post ist nicht zu spät sondern komplett überflüssig.

Ich habe inzwischen eine Verbindung mit der R&S VISA/USB hergestellt.

EXCEL schafft eine Messwertabfrage mit "read?" max. alle 5ms.

Die Messwerte ändern sich jedoch ebenfalls nur ca. alle 80-100ms in
der Einstellung Fast.

Es ist also nicht die Schnittstelle, sondern das HMC8012 liefert
max. alle 100msec. neue Messwerte an den Schnittstellen.

Schade!

Möglicherweise hat ja jemand inzwischen eine schnellere Lösung
gefunden.

Bitte spart Euch ähnlich überflüssige Kommentare wie dieser Miwi.

von Stefan D. (mackie05)


Lesenswert?

Hallo Hanss,

ich bin auch auf keine schnellere Abfragezeit gekommen. Ich vermute das 
die Prozessing Zeit einfach zu groß ist. Beim HMC8012 ist die leider 
nicht angegeben. Beim HMP2020 ist die mit <50ms angegeben.
Ein Ansatz von mir war noch eine Schaltung, die sich dem HMC gegenüber 
als USB-stick ausgibt und die Daten an den PC streamt. Ist aber recht 
aufwendig und leider nichts was ich mal eben so aus dem Ärmel schüttel. 
Vielleicht will sich ja jemand dran versuchen.
Schade das R&S sowas nicht einfach von Haus aus implementiert hat.

von hanss (Gast)


Lesenswert?

Hallo Stefan,

scheint mir auch so, als wenn über ein
USB-Dongle-Interface der einzige Weg wäre.

Auf den Dongle schreibt ja das HMC im 2msec. Takt.

Das wäre ein Projekt für einen ESP8266, der dann
die Daten mittels einem FIFO Puffer über WLAN bereitstellt.

Lohnt sich direkt danach zu suchen, ob da schon jemand
ein FAT32 Filesysem realisiert hat.

Wenn Du da etwas finden solltest, bitte um Nachricht.

von Stefan D. (mackie05)


Lesenswert?

Dazu werde ich demnächst keine Zeit haben.
Ich könnte bei Interesse die aktuellste SW-Version meines Auslesetools 
zur Verfügung stellen. Läuft aber auch nur runter bis ca. 80ms. Ist für 
mich auch nicht dramatisch, da ich es hauptsächlich zum 
Langzeitausmessen von Spannungsreferenzen nutze.

: Bearbeitet durch User
von hanss (Gast)


Lesenswert?

Vielen Dank,
brauche ich nicht; ich habe mit Excel/VBA alles was ich brauche:
Verbindung über LAN, VISA, USB-RAW, Messwerte, Chart und sehr
flexibel.

Nachdem das DMM in das LOG-File Messwerte im 4ms (250 Sampl/sec.) 
Abstand
schreibt, werde ich bei Gelegenheit einmal diese Daten
auslesen. Vielleicht ist das ja mit dem Trigger sowieso
der bessere Weg. Jedenfalls einfacher als mit einem
selbstgestricktem Dongle.

Mit der Verbindung über einen ESP8266 wollte ich eine I2C
Schnittstelle zum HMC8012 realisieren. Ist aktuell nicht
im Focus, vielleicht später einmal.

von hanss (Gast)


Lesenswert?

Hallo Stefan,

gibt es in den SCPI Kommandos einen Status/Flag, das man
abfragen kann, ob ein NEUER Messert mit "READ?" abgefragt
werden kann?

von ehfgvb93573 (Gast)


Lesenswert?

Hameg hat ein Kommando vorgesehen, aber nicht dokumentiert weil es nicht 
SCPI Konform ist.
"Data:Stream 1\n" liefert ungefragt alle Messwerte in voller 
Geschwindigkeit (200/s).
"Data:Stream 0\n" stoppt das ganze wieder.

von Stefan D. (mackie05)


Lesenswert?

Muss ich heute Abend gleich austesten, das wäre ja Spitze!

Danke dafür!

von hanss (Gast)


Lesenswert?

@Stefan:
Also bei meinem HMC8012 kommt bei
"Data:Stream 1\n" nichts.

Wie ist das bei Dir?

von Stefan D. (mackie05)


Lesenswert?

Es sprudelt nur so. Habe es mit HTerm gemacht. Vielleicht kommt Excel 
mit der Geschwindigkeit nicht klar? Die Daten sind durch ein Komma 
getrennt und haben kein "\n" nach jedem Zeichen.

von hanss (Gast)


Lesenswert?

Jetzt sprudelt es auch.
Den DatenStream erhalte ich jetzt auch,
allerdings auch immer nur ein Messwert jede 200ms egal ob
über LAN oder USB, Excel oder Terminalprogramm.

Wie ist der Zeit Abstand bei Dir von einem Messwert zum anderen?

von Stefan D. (mackie05)


Lesenswert?

200ms passiert bei mir nur, wenn die ADC-Rate am HMC auf Slow gesetzt 
ist.

von hanss (Gast)


Lesenswert?

@Stefan
Danke, Slow war das Problem

von Jonathan (Gast)


Lesenswert?

Hallo Hanss,
ich hätte Interesse an deinem Programm. Würde gerne Messwerte direkt auf 
dem PC auslesen für meine Abschlussarbeit. Wäre super wenn du mir das 
zukommen lassen kannst.
Ich hab von dem gebiet leider kaum Ahnung eine Erklärung dazu wäre auch 
nicht schlecht.
Vielen Dank schonmal!

Mit freundlichen Grüßen
Jonathan

von Jonathan (Gast)


Lesenswert?

Hallo @Stefan D.,
hast du mittlerweile eine neuere Version deines Programms?
Falls ja könntest du die mir zur Verfügung stellen das sieht sehr 
vielversprechend für meine Messungen aus.

MfG
Jonathan Buck

Beitrag #6812136 wurde von einem Moderator gelöscht.
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.