LCR- und Impedanzmessungen mit dem PC

© 2005 Marcel Müller

Abstract:
Mithilfe heutiger Computer und etwas Bastelgeschick, kann man relativ einfach LCR-Messungen durchführen. Das vorgestellte Verfahren eignet sich für die Bestimmung von Induktivitäten ab ca. 1µH, und Kapazitäten ab ca. 10pF sowie verschiedene Impedanzmessungen im allgemeinen. Im besonderen können auch ESR-Messungen von Elektrolytkondensatoren durchgeführt werden.

Messverfahren

Das Messprinzip basiert darauf, ein Testsignal auf das zu bestimmende Bauteil zu geben und dabei gleichzeitig Strom und Spannung aufzuzeichnen. Aus dem komponentenweisen, komplexen Quotienten der FFTs von Strom und Spannung kann die unbekannte, frequenzabhängige Impedanz bestimmt werden.

Z(f) = FFT(Ux(t)) / FFT(URef(t)) * RRef

Naturgemäß nimmt Z(f) nur bei jenen Frequenzen sinnvolle Werte, in denen das Testsignal T(t) auch eine Intensität hat und die von der Soundkarte erzeugt und verarbeitet werden können. Es empfiehlt sich in dem für Audioanwendungen üblichen Frequenzbereich von 20-20000Hz zu bleiben.

Wer ein HD-Audio-Device mit 192 kHz Sampling-Rate hat, kann auch bis 80 kHz messen. Allerdings können nicht alle 192 kHz Soundkarten wirklich bis zu diesen Frequenzen arbeiten, weil das für Audioanwendungen eigentlich unnötig ist.

Es gibt unterschiedliche Messverfahren, um Z(f) zu bestimmen:

Messung mit Rauschen

Dabei wird ein breites Frequenzspektrum gleichzeitig an das zu testende Bauteil angelegt. Das ist die schnellste Messmethode. Solange man es mit linearen Komponenten zu tun hat und das Signal-Untergrundverhältnis nicht zu schlecht wird, ist das das Mittel der Wahl. Typische Messzeiten liegen in der Größenordnung einer Sekunde für ein komplettes Spektrum. →Beispiele

Messung mit Frequenzscan

Dabei wird das zu messende Frequenzspektrum sukzessive gescannt. Je nach Zahl der Messpunkte kann das eine Weile dauern - typisch wenigstens einige Minuten in Einzelfällen auch Stunden. Lohn der Mühe ist dank Lock-In eine nahezu vollständige Unterdrückung unkorrelierter Störungen. Das wird zum Beispiel interessant, wenn man die Impedanzkurve von Lautsprechern messen will, da selbige immer auch als Mikrophon agieren. Im Prinzip kann aber auch eine Raschmessung mit entsprechender Mittelwertbildung über einen längeren Zeitraum verwendet werden. Der Effekt der Störsignalunterdrückung ist ähnlich, nur wirken sich bei Rauschmessungen Intermodulationen (nichtlineare Effekte) sehr stark aus.

Direkte Messung der Impulsantwort

Wiederum aufgrund nichtlinearer Effekte kann es sinnvoll sein, die Impulsantwort mehr oder minder direkt zu messen. Da ein Dirac-Impuls nicht sinnvoll darstellbar ist, wird man üblicherweise mit einem Chrip-Signal o.ä. messen. Die Messmethode wird hier nicht weiter verfolgt.

Closed-Loop-Verfahren

Neben dem Frequenzscan gibt es noch die Möglichkeit das Referenzsignal in Abhängigkeit des Messsignals zu variieren. Auch diese, besonders präzise Methode wird hier nicht näher behandelt.

Hardwaretechnische Voraussetzungen und Lösungen

man braucht: Lösungen Bemerkungen
eine halbwegs ordentliche Soundkarte haben oder kaufen Für diese Art der Messungen ist auf folgende Parameter zu achten:
 - Tonaussetzer, fehlende Samples (sehr wichtig)
 - Signal/Untergrund-Verhältnis (typischerweise unproblematisch)
 - Übersprechen (typischerweise unproblematisch)
 - Recht/links Symmetrie (typischerweise unproblematisch)
Aufgrund der relativ moderaten Anforderungen eignet sich i.d.R. sogar On-Board Sound - Ausnahme: Laptops.
einen Linearverstärker für das Testsignal Soundkarte mit eingebautem Verstärker Für einfache Messungen reicht oft schon ein in der Soundkarte eingebauter Verstärker, so er denn vorhanden ist. Dann sollte man allerdings oberhalb von 50Hz bleiben, da die Koppelkondensatoren oft recht spärlich ausgelegt sind. Allerdings haben die meisten Soundkarten heute keine Verstärker mehr.
HiFi-Verstärker Auch wenn es sich blöde anhört, ein handelsüblicher HiFi-Verstärker eignet sich im allgemeinen sher gut für diesen Zweck. Allerdings sollte man Vorsicht mit dem Lautstärkeregler walten lassen, da man sonst leicht die zu messenden Bauteile grillt. Außerdem darf keinesfalls eine Masseverbindung zu einem der Lautsprecherausgangskabel hergestellt werden, was die Bereitstellung eines DC-Offsets für Elko-Messungen praktisch unmöglich macht und in jedem Fall einen Differenzverstärker erfordert.

selber basteln

Wer es sich zutraut, mag es tun. Die Anforderungen sind moderat.
2 Differenzverstärker für Referenz und Testspannung in Software Das ist die absolute Billiglösung. Dabei wird die Spannung über der Reihenschaltung von Messimpedanz und Referenzwiderstand abgegriffen und in Software durch Differenzbildung (L-R) die Spannung über dem Referenzwiderstand ermittelt. Das funktioniert nur, wenn keine Massetrennung erforderlich ist. Toleranzen der Soundkarte wirken sich teilweise dramatisch auf das Messergebnis aus.
INA105 (Ein-Chip-Lösung von Burr-Brown) Aufgrund der Eingangsimpedanz des INA105 ergibt sich bei höheren Referenzwiderständen eine begrenzte Genauigkeit (ca. 2% bei 200Ohm).

selber basteln

Hier kann man die INA105-Lösung nochmal kräftig aufpeppen, indem man je zwei OPs als Impedanzwandler vorschaltet. Auf das DC-Offset kommt es ohnehin nicht an, da die Soundkarte kein DC verarbeiten kann. Es reicht ein billiger TL074.
Wer Laune hat, kann statt der relativ teuren INA105 auch einen OP mit einem Satz Präzisionswiderständen verwenden. 1‰ Widerstände sind hierfür allerdings Pflicht.
mindestens einen Referenzwiderstand handelsüblicher Widerstand,
(kein Drahtwiderstand)
Der genaue Wert des Widerstands ist zweitrangig. Er muss nur hinreichend genau bekannt (→Multimeter) sein und sollte in der Größenordnung der zu Messenden Impedanzen liegen. Besonders geeignet sind Werte zwischen etwa 2Ohm und 2kOhm. Es ist i.A. sinnvoll, verschiedene Werte zur Auswahl zu haben.
Dicker Elko
(nur für Elko-Messungen mit DC-Offset)
haben oder kaufen Die Eigenschaften des Elkos beeinflussen die Messung praktisch nicht. Die Auswahl ist daher minder kritisch. Wenn er zu klein ist, wird das SNR bei niedrigen Frequenzen schlecht.
Stromversorgung
ca. ±5..12V
handelsübliches Labornetzteil mit zwei Ausgängen oder etwas vergleichbares Falls ein selber gebastelter Verstärker zum Einsatz kommt, muss selbiges wenigstens den Strom für selbigen bereitstellen. Typischerweise sollten 1,5A Ausgangsstrom für alle Eventualitäten reichen.
zwei Steckernetzteile Wenn man keinen gebastelten Verstärker verwendet, tun es auch einfach zwei gleiche Steckernetzteile mit so 5 bis 10V. Die Netzteile sollten allerdings halbwegs brauchbaren Gleichstrom liefern, sonst ist noch ein Satz Siebelkos bzw. ein Filter gegen Reste der Schaltfrequenz fällig. Dann kann man das Netzteil auch gleich selber bauen.
selber basteln Wer noch eine Grabbelkiste mit alten Trafos hat, mag sich darin bedienen.
diverse Kabel selber basteln Hier kenne ich keine echte Alternative zum Basteln. Zu verschieden sind die Endpunkte, die es zu verbinden gilt.

Vorschläge

Wer gerne eine Komplettlösung mag, bei der man nicht jedesmal sämtliche Komponenten zusammensuchen und verbinden muss, findet möglicherweise an diesem Bauvorschlag gefallen. Er beinhaltet eine Komplettlösung mit 6 Referenzwiderständen von 0,2Ω bis 20kΩ und einstellbarem DC-Offset (allerdings ohne Netzteil). Die Verbindung zur Soundkarte erfolgt über handelsübliche Klinke-Cinch-Kabel.

Für sehr einfache Anforderungen gibt es noch eine absolute Sparlösung. Voraussetzung ist, dass die Soundkarte einen Ausgang mit eingebautem Verstärker besitzt. Außer dem Messobjekt benötigt man ausschließlich einen Referenzwiderstand von ca. 10-20Ω. Die Spannung am Referenzwiderstand wird dabei durch Differenzbildung R-L bestimmt. Die Messgenauigkeit dieser Methode ist auf ca. 5% begrenzt.

Software

Referenzsignal

Alternative Software Bemerkungen
vorgefertigte Testdatei oder -CD handelsüblicher Audioplayer
Hinweis: Bei der Wiedergabe von CD muss unter allen Umständen der digitale Übertragungsweg über den Systembus benutzt werden! Ein externer CD-Player kommt keinesfalls in Frage.
Das ist eigentlich die einfachste Lösung, aber letztlich müssen diese Tonkonserven auch erst einmal erstellt werden.
Referenzsignal in Echtzeit generieren Online Signalgenerator analyze Im Sourcecode verfügbar.
ein Programm, dass von stdin oder einer Pipe wiedergeben kann unter Linux: aplay oder ähnliches, unter OS/2 PlayRec (≥ Version 0.20), andere OS: bitte selber suchen.

Analyse

Alternative Software Bemerkungen
Einzelne Programme
(one tool for one purpose)
eine Aufnahmesoftware, die nach stdout aufnehmen kann unter Linux: arecord oder ähnliches, unter OS/2 PlayRec, andere OS: bitte selber suchen.
Online Analysesoftware analyze Im Sourcecode verfügbar.
Mathematik-Programm wie Mathematica oder Matlab Viele Mathematikprogramme können auch Sound verarbeiten. In diesen kann man auch die oben erwähnten Formeln berechnen.
eine Visualisierungssoftware wie z.B. Gnuplot Der Klassiker ist Gnuplot, etwas spröde in der Bedienung, dafür kostenlos, plattformunabhängig und leistungsfähig.
Ein wesentlicher Vorteil besteht darin, dass man Gnuplot sehr einfach über stdin fernsteuern kann. (Hinweis: diese Funktionalität ist bei der Windows-Portierung zugunsten von Klick&Bunt kaputt. Es gibt aber Work-Arounds, die eine Tastatureingabe simulieren.)
Natürlich kann hier jeder auch seinen persönlichen Favoriten einsetzen. Um ein Live-Display zusammen mit analyze zu Erhalten, ist es allerdings notwendig, dass das Programm per Kommando an stdin oder per ausführbares Programm (auch Skriptsprachen) fernbedient werden kann.
Mathematik-Programm Mathematica, Matlab o.ä., mutmaßlich auch Labview Viele Mathematikprogramme können auch Sound verarbeiten. In diesen kann man auch die oben erwähnten Formeln berechnen und das Ergebnis visualisieren.

Theorie

Messung mit Rauschen

Referenzsignal

Es braucht etwas Fingerspitzengefühl für die Wahl des Rauschens. Letztlich ist seine Energieverteilung entscheidend für das Signal-Untergrund-Verhältnis bei verschiedenen Frequenzen.

Des weiteren sollte man die Energie nur auf für die Auswertung benötigte Frequenzen begrenzen. Andernfalls kommt es vor allem beim Rosa Rauschen zu erheblichen niederfrequenten Anteilen, die die Soundkarte zwar nicht passieren, aber sehr wohl übersteuern können.

Da man bei der Auswertung der Signale faktisch mit einer endlich langen FFT arbeiten wird, kann man hier eine besondere Art von Testsignal verwenden: Ein periodisches Rauschen. Dieses zeichnet sich dadurch aus, dass sich die Energie nur auf ganzzahlige Vielfache einer Grundfrequenz verteilt. Diese entspricht sinnvollerweise exakt der Länge der FFT bei der Auswertung. Dadurch ist sowohl das Referenzsignal als auch das Messsignal (oder genauer dessen Nutzanteil) zyklisch. Man kann folglich auf eine Fensterfunktion bei der FFT verzichten. Damit das funktioniert, müssen die Wiedergabe des Referenzsignals und die Aufnahme der Messdaten absolut synchron laufen, also in einer festen, aber nicht absolut bekannten Phasenbeziehung (Zeit) stehen. Alle mir bekannten Soundkarten, und seien sie noch so billig, erfüllen dieses Kriterium, solange man nur mit derselben Karte aufnimmt und wiedergibt.

Ein solches periodisches Rauschen kann man am einfachsten per inverser Fourier-Transformation erzeugen:

r(t) = IFFT(R(f))

R(f) = fκ flag · exp(2 π i random())      mit random() ∈ [0,1) und flag = 1 für fminffmax, sonst 0

Anders formuliert: die Amplitude geht mit fκ und die Phase ist zufällig. κ bestimmt dabei die Art des Rauschens:

κ = 0 Weißes Rauschen
κ = -1 Rosa Rauschen
κ = -0,5 mit Wurzel f abfallendes Rauschen

Das Ergebnis muss man dann nur noch normalisieren und als PCM-Datei abspeichern. Typischerweise wird man das Signal ständig wiederholen, um eine lückenlose Wiedergabe zu erzielen.

Analyse

Die Auswertung bei einer Rauschmessung ist vergleichsweise einfach:

Bei logarithmischer Frequenzskala empfiehlt es sich (bei höheren Frequenzen) benachbarte Kanäle in f per Mittelung zusammenzufassen, so dass gilt fmax/fmin ≥ 1,irgendwas.

Messung im Wobbelmodus

Referenzsignal

Sinussignale verschiedener Frequenz. Üblicherweise scannt man den zu messenden Frequenzbereich in in f oder log(f) äquidistanten Stützpunkten. Dazu wird jede der zu messenden Frequenzen für einen begrenzten Zeitraum angelegt und nach einer Einschwingzeit die Antwort des Systems gemessen.

Analyse

Für die Analyse der Wobbeldaten muss man eine zeitliche Beziehung zwischen dem wiedergegebenen Referenzsignal und dem aufgenommenen Messsignal herstellen, damit man weiß, welche Frequenz gerade anliegt. In der Praxis ist das schwerer zu erreichen, als die Synchronisation bei der Rauschmessung. Außerdem muss man nach dem Wechsel zur nächsten Frequenz erst mal einen Moment warten, bis das zu messende Objekt eingeschwungen ist. Man wird deshalb nur etwa die Hälfte der Messzeit wirklich nutzen.

Eine komplette Fourieranalyse ist für diesen Modus unnötig, da immer nur genau ein Koeffizient benötigt wird. Diesen berechnet man sinnvollerweise einzeln.

Z(f) =  l(t) * exp(2 π f i t)
  t
r(t) * exp(2 π f i t)
  t

Zudem sollte man noch den Koeffizienten für f = 0 (Mittelwert der Samples) berechnen, da nahezu alle Soundkarten ein DC-Offset haben. Aus der Energiedifferenz zum Gesamtsignal kann man dann ein Maß für die Störungen bei der Messung ermitteln:

SNRl(f) =    l(t) * exp(2 π f i t)
    t
sqrt( l2(t) - [ l(t)]2 - [ l(t) * exp(2 π f i t)]2 )
    t   t   t

Analog für den rechten Kanal. Typischerweise findet man hier bei 50Hz ein besonders schlechtes SNR.

Glossar

Periodisches Rauschen

Das im Dokument erwähnte periodische Rauschen, ist ähnlich einer MLS (Maximum Length Sequence) eine Variation von Rauschen mit einem diskreten Frequenzspektrum. Im Gegensatz zur MLS ist jedoch die Samplewertverteilung in etwa gaußförmig und der Crestfaktor nicht eins. Dafür kann man diesem Testsignal jede gewünschte Energiedichteverteilung aufprägen, wohingegen eine MLS immer nur weißes Rauschen repräsentieren kann.

Kontakt

Anmerkungen, Ergänzungen, Einwände (nur nicht zu viele :-):

Originale Seite: http://www.maazl.de/electronic/LCR/LCR.html