Hi, this is my first post, although I've been reading these forums for some time.
I thought I understood the basic principles of a vlf metal detector. You provide an alternating voltage in one coil and read the induced voltage on a secondary coil. You measure the phase shift between TX and RX to discriminate the type of metal.
With this in mind I wanted to build a multi frequency vlf metal detector. I finally built hardware and software to do this, or so I thought, but I only see in an oscilloscope very little phase shift when putting different metals under a coil. (Less than 1 degree..). I've seen plots in books where this phase shift is much larger.
I will provide all the details of my design below including schematics, but I'm looking for help to determine what I'm doing wrong. Am I misunderstanding how vlf is supposed to work, am I not wiring correctly into the search coil? Do i need a different kind of coil ? Ect... I think at this point it's strictly a hardware problem and not software because i am looking directly at oscilloscope and even there I don't see a phase shift.
I am using a Whites Electronics coil, the one that comes with the XLT. Its optimized for a frequency of 6.6kHz.. Here is a link to the product page and the pinout i am using.
https://www.whiteselectronics.com/pr...loop-6-59-khz/
https://drive.google.com/file/d/0ByZ...ew?usp=sharing
I use an fpga board from National Instruments, the myrio-1900. It uses a xilinx zynq-7010. And I use labview to program it. That is a graphical programming language.
http://www.ni.com/en-us/shop/select/...modelId=125751
http://www.ni.com/pdf/manuals/376047c.pdf
Here is a link to the schematic of the A/D and D/A board I designed. Caution there are bugs on the schematic that have been fixed in the actual hardware. Note: There is a second fpga on this board only because the myrio-1900 i/o is limited in speed. So the second fpga is a serial to parallel converter.
https://drive.google.com/file/d/0ByZ...ew?usp=sharing
Here is a picture of the actual hardware.... the board layout is not optimal. But I just wanted a proof of concept...
https://drive.google.com/file/d/0ByZ...ew?usp=sharing
Brief description of what happens in firmware:
User selects desired frequency, and it is continuously output via D/A and power amp to tx coil.. sampling frequency is 1 MHz. User can select multiple frequencies to sum, scale, and output.
Secondary coil is sampled at 1 MHz, and fed into a Goertzel Algoritm (single frequency Fourier transform), then thru an arc tangent lookup table to find the phase shift. This is done on each user selected frequency.
For all my testing I am using just one frequency, the one the coil is optimized for. The amplitude of the sine wave is 7.5 volts....
Let me know if there is any details I left out.
Hopefully someone can help me figure out what I'm doing wrong... analog electronics is not my thing and I suspect my understanding of the sensor/coil interface is the problem.
Thank you
I thought I understood the basic principles of a vlf metal detector. You provide an alternating voltage in one coil and read the induced voltage on a secondary coil. You measure the phase shift between TX and RX to discriminate the type of metal.
With this in mind I wanted to build a multi frequency vlf metal detector. I finally built hardware and software to do this, or so I thought, but I only see in an oscilloscope very little phase shift when putting different metals under a coil. (Less than 1 degree..). I've seen plots in books where this phase shift is much larger.
I will provide all the details of my design below including schematics, but I'm looking for help to determine what I'm doing wrong. Am I misunderstanding how vlf is supposed to work, am I not wiring correctly into the search coil? Do i need a different kind of coil ? Ect... I think at this point it's strictly a hardware problem and not software because i am looking directly at oscilloscope and even there I don't see a phase shift.
I am using a Whites Electronics coil, the one that comes with the XLT. Its optimized for a frequency of 6.6kHz.. Here is a link to the product page and the pinout i am using.
https://www.whiteselectronics.com/pr...loop-6-59-khz/
https://drive.google.com/file/d/0ByZ...ew?usp=sharing
I use an fpga board from National Instruments, the myrio-1900. It uses a xilinx zynq-7010. And I use labview to program it. That is a graphical programming language.
http://www.ni.com/en-us/shop/select/...modelId=125751
http://www.ni.com/pdf/manuals/376047c.pdf
Here is a link to the schematic of the A/D and D/A board I designed. Caution there are bugs on the schematic that have been fixed in the actual hardware. Note: There is a second fpga on this board only because the myrio-1900 i/o is limited in speed. So the second fpga is a serial to parallel converter.
https://drive.google.com/file/d/0ByZ...ew?usp=sharing
Here is a picture of the actual hardware.... the board layout is not optimal. But I just wanted a proof of concept...
https://drive.google.com/file/d/0ByZ...ew?usp=sharing
Brief description of what happens in firmware:
User selects desired frequency, and it is continuously output via D/A and power amp to tx coil.. sampling frequency is 1 MHz. User can select multiple frequencies to sum, scale, and output.
Secondary coil is sampled at 1 MHz, and fed into a Goertzel Algoritm (single frequency Fourier transform), then thru an arc tangent lookup table to find the phase shift. This is done on each user selected frequency.
For all my testing I am using just one frequency, the one the coil is optimized for. The amplitude of the sine wave is 7.5 volts....
Let me know if there is any details I left out.
Hopefully someone can help me figure out what I'm doing wrong... analog electronics is not my thing and I suspect my understanding of the sensor/coil interface is the problem.
Thank you
Comment