Robert,
You could "cheat" with this one as follows, in that you only need to take TWO samples to give you the phase angle.
From the driver for the TX, take a normal phase shift network as used in most detectors. Feed this into a TLO72 to square it up, and feed it into a divider to give you approximately 200Hz output (this is the SAMPLE rate at which you will test for finds). Feed this 200Hz signal into a monostable to give a narrow pulse width, which will reliably trigger your micro with an interrupt.
Take the output from your front-end amplifier to a PEAK detector (NOTE, the peak detector MUST be of the resettable type, and the TRAILING EDGE of the phase ref. pulse from the TL072 RESETS the peak detector) then to one input of a 4066 electronic switch. Branch off a second output from the F.E. amp, to another switch input on the 4066.
Connect the two control lines of the switches to one bit of an output port on the micro, one with an inverter in the path, so that one input is selected when the bit is high, the other when the bit is low.
Connect BOTH outputs to the input of the 10 bit ADC (biased around centre as you already have).
Now , when an interrupt arrives, read the DIRECT PATH FIRST, FOLLOWED by the peak detector, you MUST ensure that a software delay is in place to allow a ½ cycle (FTx) delay, BEFORE you then read the peak detector. Also the action of reading the direct path, must “gate off” the detector reset signal from the TL072 thus stopping the normal set/reset cycle, and allowing the detector to read the TRUE peak of that cycle.
Instead of the phase ref. resetting the peak detector, the rising edge of the read peak detector cycle will provide the reset. It will also restore the normal set/reset cycle of the circuit.
Right, now you have TWO values, one for the INSTANTANEOUS value of the incoming wave (signed), and the PEAK value of the incoming wave.
Apply the formula;
Phase Angle = Sin-1(V(instantaneous)/V(peak)).
This is a derivative of the V(instantaneous)=V(peak)*SIN(Phase Angle).
Now you’ve VERY MUCH relieved the workload on the micro.
You phase angle calculation should be accurate to approx. +/- 0.1 degrees.
Providing you can eliminate any jitter then you should very easily be able to get this order of accuracy.
I tried the above, but "jerry built" it with one a few full cct diagrams, so if anyone wants a copy, I'll have to redo the whole thing
You could "cheat" with this one as follows, in that you only need to take TWO samples to give you the phase angle.
From the driver for the TX, take a normal phase shift network as used in most detectors. Feed this into a TLO72 to square it up, and feed it into a divider to give you approximately 200Hz output (this is the SAMPLE rate at which you will test for finds). Feed this 200Hz signal into a monostable to give a narrow pulse width, which will reliably trigger your micro with an interrupt.
Take the output from your front-end amplifier to a PEAK detector (NOTE, the peak detector MUST be of the resettable type, and the TRAILING EDGE of the phase ref. pulse from the TL072 RESETS the peak detector) then to one input of a 4066 electronic switch. Branch off a second output from the F.E. amp, to another switch input on the 4066.
Connect the two control lines of the switches to one bit of an output port on the micro, one with an inverter in the path, so that one input is selected when the bit is high, the other when the bit is low.
Connect BOTH outputs to the input of the 10 bit ADC (biased around centre as you already have).
Now , when an interrupt arrives, read the DIRECT PATH FIRST, FOLLOWED by the peak detector, you MUST ensure that a software delay is in place to allow a ½ cycle (FTx) delay, BEFORE you then read the peak detector. Also the action of reading the direct path, must “gate off” the detector reset signal from the TL072 thus stopping the normal set/reset cycle, and allowing the detector to read the TRUE peak of that cycle.
Instead of the phase ref. resetting the peak detector, the rising edge of the read peak detector cycle will provide the reset. It will also restore the normal set/reset cycle of the circuit.
Right, now you have TWO values, one for the INSTANTANEOUS value of the incoming wave (signed), and the PEAK value of the incoming wave.
Apply the formula;
Phase Angle = Sin-1(V(instantaneous)/V(peak)).
This is a derivative of the V(instantaneous)=V(peak)*SIN(Phase Angle).
Now you’ve VERY MUCH relieved the workload on the micro.
You phase angle calculation should be accurate to approx. +/- 0.1 degrees.
Providing you can eliminate any jitter then you should very easily be able to get this order of accuracy.
I tried the above, but "jerry built" it with one a few full cct diagrams, so if anyone wants a copy, I'll have to redo the whole thing

Comment