Announcement

Collapse
No announcement yet.

Let's made a PC-base metal detector with usb interface !!!

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Aziz. Your plans for the production of the spectral window Rx?

    Comment


    • Originally posted by Sergey_P View Post
      Aziz. Your plans for the production of the spectral window Rx?
      I don't know, whether I have understood you correct. You want to talk about window function?

      Ok, to give some basis to talk about, I'll give the following link to follow:
      http://en.wikipedia.org/wiki/Window_function
      (PJ, UFox, Rafferty, Robby_H look at it .. )

      Let's define the window w[n] for n = 0 .. N-1, where N = number of coefficients/samples in the window, usually a power of two due to efficient discrete FFT requirement.
      w[n] representing the factor coefficients of the window function.

      It is important, that the window function is symmetric and starting/ending (almost) with 0.
      w[0] = w[N-1] = (almost) 0

      The following window functions can be used:
      Hann window; B = 1.50
      http://upload.wikimedia.org/wikipedi...%28hann%29.png

      Tukey window, α=0.5; B=1.22
      http://upload.wikimedia.org/wikipedi...%3D_0.5%29.png

      Cosine window; B=1.23
      http://upload.wikimedia.org/wikipedi...%28sine%29.png

      Lanczos window (sinc window)
      http://upload.wikimedia.org/wikipedi...Lanczos%29.png

      and so on ... (Triangular, Gaussian, etc.. you see the analogy?)

      Further: sin²(), cos²(), sin³(), cos³(), sinc²(), sinc³() and others can also be used with right parameters of course.

      Any window function is convenient, which minimizes the spectral leakage.
      BTW, when using digital lock-in amp for the RX demodulation, windowing is also required (either RX, TX-I/TX-Q or both).

      Window function is not required, when the TX timing is generated from the Tablet/Netbook (clock source) and sound output/input are synchronized to each other. But we have an external clock source (the free running LC oscillator) and the sound card ADC system timing is not synchronized to it. So we have to use the window function.


      Comeon guys, see the beauty of the math and DSP programming. You can do all the things and much more.
      Let's enter the "World's Best Digital VLF Technology"(c)(r)(tm) now.

      Aziz

      Comment


      • (found somewhere on the Wiki-pages about window functions)
        http://web.mit.edu/xiphmont/Public/windows.pdf

        Comment


        • Originally posted by Aziz View Post
          Comeon guys, see the beauty of the math and DSP programming. You can do all the things and much more.
          Let's enter the "World's Best Digital VLF Technology"(c)(r)(tm) now.
          Gladly, but last time I checked there were no easy ways to enter, and no free platforms to play with. I'm not a bit inclined to code some odd functions into some soon-to-become-obsolete device by means of typing in the raw code. No way! Life is too short to waste it on some very temporary devices.

          If you can finger some open platform I'd be delighted to play with it. Otherwise I'll stick to analogue and do my "coding" there. It is basically the same thing.

          Comment


          • Originally posted by Davor View Post
            Gladly, but last time I checked there were no easy ways to enter, and no free platforms to play with. I'm not a bit inclined to code some odd functions into some soon-to-become-obsolete device by means of typing in the raw code. No way! Life is too short to waste it on some very temporary devices.

            If you can finger some open platform I'd be delighted to play with it. Otherwise I'll stick to analogue and do my "coding" there. It is basically the same thing.
            Yep, it can happen with Android systems quickly. And the f****** patent mania (f*** the patent trolls!) is blocking/obsoleting the devices too. Although quite cheap and small tablets available there.

            I'll keep doing with Win32 C/C++ and encapsulate the essential code to achieve some degree of platform independence.
            I hate Java. I really hate Java. I'm not going to code for Android.
            I hate Objective-C. No, I'm not going to code for IPhone, IPad, ITab too.
            I hate (Visual) Basic. I hate the inventor of Basic. I hate Bill Gates too.
            I hate all the other programming languages too.


            Oh yes, we have to wait for Windows 9. Windows 8 is going to be a bad version.
            Windows XP (good)
            Windows Vista (bad)
            Windows 7 (good)
            Windows 8 (bad)
            Windows 9 (must be good then)

            ---------

            But software coding has its advantages:
            c = a*b
            c = a/b
            c = a*e^b
            c = a*log(b)
            Now code it in the analog domain.

            Aziz

            Comment


            • BTW,

              you can't do the "World's best ground balance technology" (WBGB) in the analog domain. Yep, you can't do it with single frequency VLF detector either.

              But the current single frequency VLF project is so much beautiful and simple to implement it. And the outcome is very decent. A typical KISS-project.

              To the disbelievers of the WBGB: it's real and **********.

              Aziz,
              the master of madness
              Last edited by Qiaozhi; 11-14-2012, 11:26 AM. Reason: Please stop cussing!

              Comment


              • Originally posted by Aziz View Post
                Now code it in the analog domain.
                No problem, I have my super sexy analogue multiplier.
                Funny thing is that, given the calculation complexity, even digital domain has some nasty limitations when it comes to some serious signal processing. Once you settle for a grown up DSP you find out that it uses so much power that you'd better done it in analogue instead.

                Only few people remember it today, but uptake of a 3G telephony stalled for a few years just because there was no digital solution at that time that would be practical with any realistic batteries. Finally a solution was found in a chip that was mostly analogue. Unlike the very much expected digital solution - it worked

                Comment


                • Pics of Prototypes

                  I haven't shielded my TX coil yet. And I haven't built the RX coil yet too. I've just put a RX coil I have found in a DD configuration.

                  Hey, that's it. That's all the electronics I'm using at the moment.
                  Click image for larger version

Name:	VLF-OSC-DetectorController-prototype-02.jpg
Views:	1
Size:	199.8 KB
ID:	333990

                  My previous prototype:
                  Click image for larger version

Name:	VLF-OSC-DetectorController-prototype-01.jpg
Views:	1
Size:	225.6 KB
ID:	333991

                  Cheers,
                  Aziz

                  Comment


                  • (Aziz)
                    FFT = DFT
                    FFT * (win) >> DFT
                    To select target – requires DFT

                    Comment


                    • Originally posted by Sergey_P View Post
                      (Aziz)
                      FFT = DFT
                      FFT * (win) >> DFT
                      To select target – requires DFT
                      Sergey,

                      such a "compressed" conversation will lead to misunderstanding. I don't know exactly, what you are trying to say.
                      Please put some sencentes there at least.

                      BTW,
                      a simplified processing of RX signal and TX reference can be done by only using the FFT on both RX and TX. So you don't even need Lockin-amp, I/Q demodulation of TX .. a very trivial task.

                      Cheers,
                      Aziz

                      Comment


                      • USB Powered VLF OSC Detector Controller?

                        Hi all,

                        anyone interested in the USB powered VLF OSC Detector Controller with active RX-amplifier?

                        Could be another nice and valuable KISS-project.
                        I'm thinking of it.... stay tuned ...

                        Aziz

                        Comment


                        • USB Powered VLF OSC Detector Controller

                          Ok guys,

                          spice simulation & circuit design finished: approx. 10 - 15 mA @ 5V with USB port power.
                          I have to use p-mosfets this time and a DC/DC charge-pump converter generating the negative power supply for the op-amp (approx. -4.5 V). But the charge-pump is clocked by the LC oscillator (synchronized to LC oscillator).

                          I have built the USB power cable already and I am keen on soldering the USB detector controller soon.
                          Stay tuned ... it's going to be an interesting USB detector controller.

                          Cheers,
                          Aziz

                          Comment


                          • (oscillator + FFT) - very bad signal detector
                            Optimal detector -> S(targets) = ∫ (Stx(t)*Srx(t)), technical realization – correlator
                            For the harmonic signal Stx(t) = A*sin(wt+ф) need to know instantaneous (t) value w, ф, A . Oscillator it does not provide. Assuming that A,w – known constant, we can use DFT as correlator, but you must take into account its features.
                            If, time integrating multiple of the period Tx, it is possible to choose the maximum number of samples to process. Otherwise - to apply smoothing function that limits the signal spectrum
                            In the figure: a rectangular function and Blackman–Nuttall window
                            Attached Files

                            Comment


                            • Originally posted by Sergey_P View Post
                              (oscillator + FFT) - very bad signal detector
                              Optimal detector -> S(targets) = ∫ (Stx(t)*Srx(t)), technical realization – correlator
                              For the harmonic signal Stx(t) = A*sin(wt+ф) need to know instantaneous (t) value w, ф, A . Oscillator it does not provide. Assuming that A,w – known constant, we can use DFT as correlator, but you must take into account its features.
                              If, time integrating multiple of the period Tx, it is possible to choose the maximum number of samples to process. Otherwise - to apply smoothing function that limits the signal spectrum
                              In the figure: a rectangular function and Blackman–Nuttall window
                              Hi Sergey,

                              thank you for writing some sentences now. I understand you this time.

                              Yep, windowing limits the signal spectrum but it makes different solution approaches possible. Even the pure FFT solution.

                              I didn't try all approaches. There might be more (maybe much more) potential for the detectors performance.

                              Cheers,
                              Aziz

                              Comment


                              • Hi all,

                                I haven't implemented all the window functions yet. But the sinc²() and sinc³() are working quite good (see below).

                                Click image for larger version

Name:	Window-sinc2-3.gif
Views:	1
Size:	44.4 KB
ID:	333996

                                Cheers,
                                Aziz

                                Comment

                                Working...