Electronics > Projects, Designs, and Technical Stuff

on-the-fly inductor resonance frequency finding

(1/9) > >>

Rx7man:
I have a sensor I'm trying to interface that's a variable INDUCTANCE sensor, I have no access to the old interface to reverse engineer, it's basically a steel ring that moves up and down through the core of a coil, changing the inductance.. I've found it to be somewhere in the 60khz range
ONE way to do it is to feed it a steady frequency either above it's max or below it's minimum, and then as the coil moves it'll change the amplitude of the sine wave, though that's not really the best way..
Then you could feed it alternating minimum and maximum frequencies and read the amplitude of the sine wave.. and get two points from which to interpolate from
However, to sweep through the frequency to find the sweet spot is much too slow for this, I'd like to be able to get a reading about every 10ms, though 25ms could still work

So I guess I'd have to be able to find the phase shift between the current and voltage, then step my input frequency proportionally to the phase shift as that would have both direction and quantity information and should be fairly fast.

I'd really like to hear how other people would interface to this... Is there a specialized chip?  At the moment I'm thinking of using a pair of MAX9924 chips (Variable reluctance sensor chips with zero-crossing detection), though there's another in the family (max9927 I think?) that has quadrature output which might be usable for this, though I'd really have to read up on it to see if I could do it

PCB.Wiz:
The simplest is to make a resonant circuit / oscillator and measure the frequency.
You can make a LC circuit, or you can make an L-R oscillator, via the same topology used to make R-C oscillators with gates

Or, you can meter the inductance directly

https://www.ti.com/sensors/specialty-sensors/inductive/overview.html?keyMatch=INDUCTANCE-TO-DIGITAL%20CONVERTER

DavidAlfa:
Driving it with a 10-100Hz square wave using a transistor will  show the natural resonant frequency as ringing.
Here you can see some basics.
You can avoid the mcu, if you  have a scope only a square driving signal is needed.
https://danyk.cz/avr_ring_en.html

Rx7man:
The resonant frequency will always be changing and I need to know what it is though.. your solution sounds good if you have an unknown inductor on a bench.  I'll think about ways to adapt this though.. in some ways it sounds less processor intensive if I can use an interrupt to do the timing. perhaps with an op amp to give it a square wave..

One thing I'll take note of from that article (I think I've come across it before) is to use a polypropylene cap

T3sl4co1l:
The canonical approach is an impedance bridge, with I-Q detection.  That is, measuring the sin and cos components of the output, relative to the source (which might be defined as purely sin).  This gives a complex result, i.e. including inductance and resistance.

Depending on the bridge design, I and Q may vary in a straightforward manner, or jointly, as inductance or resistance varies, but in any case there exists a transformation between the measured signals and the element's reactance and resistance.  You could arrange a circuit to read mostly inductance, or impedance, but you might as well go for both, the added effort is small and the complete measurement makes more opportunities for measuring precision.

For more simpler analog approaches, you can arrange an oscillator to run at resonance (no need to track resonant peak), and count the frequency, and measure the current consumption, to find inductance and resistance respectively.  Generally with more sources of error than the bridge approach.  Or even just do a dumb impedance divider and assume voltage sensed corresponds to inductance -- it doesn't, it depends on impedance and phase -- but this gets close enough for most capacitor ESR tester circuits for example.

I'm particularly a fan of doing the I-Q (synchronous detector) method with an MCU, as it's pretty easy to do with a moderately fast ADC (for 60kHz, at least 240kSps is required; many MCUs offer this), and a bit of clever math.

Tim