HM-LCR

Feed

 

Letzte Änderung: 22. August 2017

Eine LCR-Meßbrücke ist – zumindest für den Heimanwender – meist ein recht hochpreisiges Instrument. Dagegen sind Digitalosziloskop und Frequenzgenerator im Hobbylabor oft schon vorhanden. Das kleine Kommandozeilenprogramm HMlcr ermöglicht es, mit einem Digitaloszilloskop (HM1507, HM407 oder HM307 von Hameg) die Impedanz eines beliebigen Zweipols zu messen. Da es sich dabei wohl meistens um Spulen oder Kondensatoren handelt, wird die komplexe Impedanz auch gleich als Kapazität oder Induktivität angegeben. HMlcr läuft auf Linux-Systemen und steht unter der GPL zur Verfügung.

Das Programm kann hier heruntergeladen werden.

Meßaufbau

Zur Bestimmung der Impedanz Z wird der Prüfling mit einer Wechselspannung beaufschlagt. Mit dem Oszilloskop wird an Kanal 1 die Spannung am Bauteil gemessen und Kanal 2 mißt den Strom als Spannung über einen in Reihe geschalteten Shuntwiderstand. Die Masseleitung des Oszilloskops wird zwischen Prüfling und Strommeßwiderstand angeschlossen. Da die meisten Signalquellen wie z. B. ein Funktionsgenerator nicht potentialfrei sind, sondern das Signal bezogen auf Masse ausgeben, wird die Signalquelle Ugen durch einen Trenntrafo von der eigentlichen Meßschaltung getrennt (siehe Schaltplan).

Impedanzmessung-kl.png
Schaltplan zur Impedanzmessung

Um eine möglichst große Meßgenauigkeit zu erzielen, ist es sinnvoll, den Widerstand R etwa so groß zu wählen wie der zu erwartende Blindwiderstand des zu messenden Bauteils. Es bietet sich an, den Widerstand z. B. in Dekadenschritten schaltbar zu machen. Um die Meßgenauigkeit weiter zu erhöhen, können Parasitärkapazitäten des Meßaufbaus nach einer Kalibrierung herausgerechnet werden; mehr dazu weiter unten. Dazu ist ein Referenzwiderstand nötig, der genau so groß ist wie der Meßwiderstand und anstelle des Prüflings angeschlossen wird. In der Schaltung oben steht ein entsprechender Referenzwiderstand am Pin „ref“ zur Verfügung.

Die folgenden Bilder zeigen meinen Aufbau des Impedanzmeßnetzwerks. Der Prüfling wird an die beiden Kroko-Klemmen angeschlossen. Die drei BNC-Buchsen führen die Signale U, -IR und Ugen. Der Referenzwiderstand kann an einer isoliert befestigten Schraube abgegriffen werden.

geschlossen-kl.jpg
Impedanzmeßnetzwerk im Alugehäuse

Im geöffneten Gehäuse sind die umschaltbaren Widerstände und der Trenntrafo zu sehen. Den Trafo habe ich auf einem Ringkern selbst gewickelt. Er ist eignetlich für Frequenzen ab 1 MHz dimensioniert, funktioniert aber auch bei 100 kHz noch zuverlässig. Er hat für Primär- und Sekundarwicklung je acht Windungen, parallel gewickelt auf einem Ferrit-Ringkern (von Amidon, Material 77 (0,5 MHz bis 50 MHz), AL = 1275 nH). Damit ergibt sich eine Induktivität von etwa 82 μH und bei 1 MHz ein Blindwiderstand von gut 500 Ω, was deutlich größer als der Ausgangswiderstand von 50 Ω eines üblichen Funktionsgenerators ist.

offen-kl.jpg
Impedanzmeßnetzwerk mit geöffnetem Gehäuse

Software

Kompilieren und Installieren

Wenn der Quellcode aus dem .tar.gz-Archiv entpackt ist, kann HMlcr mit make kompiliert werden. Das ausfürhrbare Programm kann dann entweder nach ~/bin/ oder als root nach /usr/local/bin/ kopiert werden. Fertig.

Anschluß des Oszilloskops

Das Oszilloskop wird an die serielle Schnittstelle /dev/ttyS1 angeschlossen. Soll eine andere Schnittstelle benutzt werden, so kann das mit -s angegeben werden oder in hmlcr.c der Standardwert verändert werden.

Bedienung

Das Programm kann sowohl eine Einzelmessung mit festen Parametern durchführen als auch interaktiv bedient werden. Hilfe zur Bedienung bekommt man an der Kommandozeile mit hmlcr -h. Meistens wird man es wohl im interaktiven Modus benutzen, etwa so: hmlcr -i -s /dev/ttyUSB0. Die Ausgabe sieht bei der Benutzung z. B. so aus:


test condition: f =  99.7 kHz
R  =   0.6 kOhm	    G  =   0.1 µS
X  = -72.0 kOhm	    B  =  13.9 µS
Z  =  72.0 kOhm	    Y  =  13.9 µS
phi= -89.5 °
Q  = 114.3	d  =  0.01
C  =  22.2 pF

display    : [Human]       |eXponential|
calibrate  : Open(x)  rEference(x) Clear
measurement: [Autoscale]
             R =  10.0 kOhm
             F =  auto
Quit                          <-'measure


Das Beispiel zeigt die Messung an einem 22 pF Kondensator. Im oberen Bereich werden die Meßergebnisse angezeigt. Der untere Bereich zeigt das Menü zur Bedienung. Großbuchstaben kennzeichnen die Tasten, die die entsprechende Funktion auslösen. Der Meßwiderstand muß explizit angegeben werden, entweder hier oder als mit -r an der Kommandozeile. Die Meßfrequenz kann angegeben werden. Wird ein Wert von null angegeben, wird die Frequenz aus den Oszidaten bestimmt (auto). Im Beispiel oben waren 100 kHz eingestellt, die als 99,7 kHz erkannt wurden. Bei der Eingabe von Frequenzen und Widerständen im interaktiven Modus dürfen die üblichen SI-Einheitenpräfixe angegeben werden, also z. B. 10k für 10 kΩ. Mit RETURN wird die Messung ausgelöst.

Kalibierung

Für kleine Spulen und Kondensatoren ist es sinnvoll, Parasitärkapazitäten aus dem Meßaufbau von der Messung abzuziehen. Dazu müssen zwei Kalibrationsmessungen durchgeführt werden, eine bei offenen Anschlüssen (Open) und eine mit der ohmschen Impedanz R, wobei R dem eingestellten Strommeßwiderstand entspricht (rEference). Für jede der beiden Kalibriermessungen wird ein x gesetzt, nachdem sie druchgeführt wurden. Wenn sie beide vorhanden sind (also beide x gesetzt wie im Beispiel oben), dann wird die Kalibrierung berücksichtigt. Es muß damit gerechnet werden, daß die Kalibrierung für einen anderen Strommeßwiderstand oder eine andere Meßfrequenz nicht mehr hinreichend genau ist. Die Kalibrierwerte können mit Clear gelöscht werden.

Kompatibilität

Da ich selbst natürlich nur ein Digitaloszilloskop besitze, bin ich beim Test der Software auf anderen Geräten auf die Rückmeldung von (hofffentlich) zufriedenen Benutzern angewiesen. Über Rückmeldungen unter formica bei Opppf Punkt de würde ich mich freuen. Es interessiert mich neben der Typenbezeichnugn auch die Firmwareversion, die man mit hmlcr -v /dev/ttyS1 erhält.

Typ getestet
HM 305-x
HM 407-x
HM 1507 FC1.01 DG1.03
HM 1507-x

Hintergrund: Das Impedanzmodell

Der dominierende Fehler in der Impedanzmessung entsteht durch das Abgreifen der Spannungen am Prüfling Z und am Strommeßwiderstand R. Diesen beiden Impedanzen ist jeweils die Eingangsimpedanz des Oszilloskops mitsamt der Kabelkapazität (und Verlusten) parallelgeschaltet. Im Impedanzmodell werden daher die Parallelimpedanzen Zp und Rp eingeführt.

Modell-kl.png
Modell der Parasitärimpedanzen

Die gesuchte Impedanz Z ergibt sich jetzt aus der Formel

Formel_Z

Die beiden unbekannten Parallelimpedanzen Zp und Rp können durch zwei Kalibriermessungen bestimmt werden. Die erste Messung wird mit offener Prüfimpedanz Z gemacht, also 1/Z = 0. Die zweite Messung wird mit der Prüfimpedanz Z = R durchgeführt. Dadurch entstehen die beiden Gleichungen

Formel_Zoffen

und

Formel_ZR

Darin sind neben dem gewählten Wert für R auch die beiden mit a und b indizierten Klammerausdrücke aus den beiden Kalibriermessungen bekannt. Damit können aus den beiden Gleichungen die beiden unbekannten Zp und Rp bestimmt werden.

Weitere Quellen