Technical mumbo-jumbo warning:
NERD RATING 30 (Max value = 42) . 0 to 5 = likely to be comprehensible to most people. 5 to 10 = likely to be comprehensible to most educated people. 10 to 20 = likely to be comprehensible to most educated technical people. 20 to 35 = likely to be comprehensible to most educated technical people, but of doubtful interest to those who are not nerds. 35 to 42 = Truly of interest only to nerds - may be in the domain of metaphysics!
"Let's see if I can get Fred back, he he. I explored auto-tune and could not figure out how to get the circuit to recognize which side of the Null Point it was." - Christopher
Im "back" - but restricting myself to technical - Tired of everything else!
Determining ""wrong-side-of-null" is simply determining when VFO frequency becomes greater than REF frequency.
I did "wrong-side-of-null" using a PSoC, but any small MCU can do it - if it has some counters / timers available (most 8 bit PIC's for example) - My implementation, and the code can be found in:
http://www.element14.com/community/docs/DOC-46111/l/skywave-hipdf
Pages 12-13-14 or therabout shows the C code.
You can achieve the same object using phase comparator 2 of the 4046 - Feed the ref into "sig in" and variable oscillator to comparator in, an RC filter on the phase comparator 2 output, and the voltage from the filter will go high when Ref frequency > variable frq, and low when variable frq > ref frq (wrong-side-of-null) - If you want the output the other way 'round, swap the inputs. If the ref and vfo frequencies are the same (or close), you will get a lot of 'noise' - make the RC time constant big, and feed the filter into a comparator with hysterisis (a 555 with tr and th connected together is ideal) - use the output of the 555 (Q or dish) to show you which side of the null you are in.
You could construct a phase comparator using logic or FPGA - but the phase comparator 2 on the 4046 is the best I have found, and the 4046 is cheaper than any FPGA - One could possibly use its spare VCO for something (Ref osc?) if building a cheap theremin.
My more advanced theremins had more sophisticated firmware - looking at VFO, REF, and difference (audio) frequencies, and muting when difference is less than 8Hz and Fref <= Fvfo .. If there is jitter (instability) near the null (as one often gets if oscillators are coupling) then auto-muting can make matters worse - this is why a long TC is advised. I found the MCU solution better than the phase comparator solution, but with stable conditions both work.
My method of auto-tuning (on my newer theremin designs), however, is quite different because my theremins topology is different (I tune by adjusting the antenna inductance).
Fred.
(as an aside - Phase comparator 1 is just an XOR - you can take this output seperately to an RC and from this get a triangle wave audio difference output)
Moved and Expanded.. more details on auto-tuning ->
For auto-tuning, frequency comparison and auto-tune algorythm are integrated - one is looking for the null, find it,(as in, tune the Ref and/or Var oscillators till you get it) and set the oscillators etc based on this (as in, once you have it, lock the values and return to playing mode )..
I had a button which one pushed to start auto-cal.. A LED blinked for 5 seconds to allow player to position themselves with hand where they wanted null, LED then went continuous - player must stay stationary during this time [about 1 second if player stands really steady, longer if they move at all], then LED goes out when calibration completed).
Doing basic auto-tune is real easy, but you do need a D/A which does not drift (as in, it requires a bandgap reference).. So its cheapest to go for a MCU which has this on-chip (PSoC for example).. 8 bit resolution is just enough unless one has extreme variation in capacitance seen by the antenna -
Its particularly simple if you use a RC reference oscillator like a TS555C running at 2* the VFO frequency followed by a 4013 to halve its frequency and provide 50/50 M/S, one can then use the 555's CV to control its frequency.
If no D/A is available, A PWM can be used as a D/A, and you can usually get higher than 8 bit resolution ( calibration will take longer, because updating the PWM takes longer, and you need a big filter [ long TC - and highest PWM frequency you can get] on the PWM to eliminate any possibility of it interfering with the audio by modulating the oscillator) - but you need a highly stable supply to your MCU (or seperate CMOS switches driven from the PWM, and supplied by a stable reference) to eliminate drift..
If you use a LC reference oscillator you need to adjust the frequency by using voltage or current controlled capacitance or inductance - The tuning circuit of the EW can easily be adapted.