Announcement

Collapse
No announcement yet.

PICKINI - an easy to build PI detector

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

  • #16
    Hi Bernard.

    You have very good project site.

    I'm interested in your signal processing. Do you have plans for releasing the source code? I use 3 circular buffers in my detector with PIC, cant do without, because of the thermal drifting of parameters. Do I understand correctly that you do not use circular buffers(moving average)?

    Regards.

    Comment


    • #17
      Hi Teemo,

      I only take a new reference value ( which is normally done wit a moving average ) when 4 consecutive readings are identical. This means that glitches / anomalies are not taken into account. I have been playing around with this value (number of consecutive stable values, now=4) and tried out different approaches within the limitations of the microchip device I used and this seemed like a good compromise. Thermal drift should not really have any influence on this as it is changing very slowly compared to your detector movement. My method is identical to the classic hardware implentation with a small and large storage capacitor, except that I reject glitches in the reference. Only consistently identical values are taken into account. As you are hovering over a target, even the slightest moovement of the search head will result in a difference betweeen reference and momentary value. Possibly the only way to verify this - as I did at the start of the development - is enable the softUART on one of the free pins and spit out the readings ( in hex - ascii - like "AA74\n") on a simple terminal (emulator). This shows you how stable the readings are. But I don't see how slow thermal drift should influence a fast motion detector ?

      Regards,
      - Bernard

      Comment


      • #18
        Originally posted by F117 View Post
        I only take a new reference value ( which is normally done wit a moving average ) when 4 consecutive readings are identical. This means that glitches / anomalies are not taken into account. I have been playing around with this value (number of consecutive stable values, now=4) and tried out different approaches within the limitations of the microchip device I used and this seemed like a good compromise. Thermal drift should not really have any influence on this as it is changing very slowly compared to your detector movement. My method is identical to the classic hardware implentation with a small and large storage capacitor, except that I reject glitches in the reference. Only consistently identical values are taken into account. As you are hovering over a target, even the slightest moovement of the search head will result in a difference betweeen reference and momentary value. Possibly the only way to verify this - as I did at the start of the development - is enable the softUART on one of the free pins and spit out the readings ( in hex - ascii - like "AA74\n") on a simple terminal (emulator). This shows you how stable the readings are. But I don't see how slow thermal drift should influence a fast motion detector ?
        Your method then rejects targets also from affecting reference, which is good. I used exactly the same way of using UART to debug! It is like the built in debugger.

        Although I can not use the exact same algorithm of 4 consecutive readings because I have so much noise that no consecutive values may be the same. This is because my PIC have higher timing resolution, and thus the noise pickup, and of cource the different analog design. So now I take moving average, but to avoid targets affecting reference I only use largest value within 1s for the reference.

        Thanks

        Comment


        • #19
          very nice project, Bernard
          i try to build this next week....all part are in stock.
          can i also use a speaker instead of the headphone?
          which art is suitable and how I have to wire it?

          regards, marc

          Comment


          • #20
            Originally posted by F117 View Post
            Hi ODM,
            The "running average algorithm" is limited by the amount of RAM inside the PIC controller and is not as sophisticated as I would have liked:
            The potmeter value is read as an ADC input. This gives a 10 bit value. This is reduced to a 6 bit value (0..63). This is the number of pulses that are accumulated in the internal counter (pulse width of the flyback * 50 ns [@20 MHz]). Even when there is an overflow in the internal counter, this snapshot value is compared to the reference value. The reference value is stored whenever "n" consecutive snapshot values (accumulated pulse values) are identical. With identical, I mean binary identical to the lowest bit. Now, "n" is fixed to 4. This results in relatively fast motion response when sweeping at 1m/s.
            Suppose, the sensitivity is set to worst case = maximum = 63. This means that 64 flyback samples are accumulated before obtaining a snapshot value. A value of 63 is in the high sensitivity range, with 500 Hz pulses. Total accumulation time = 2 ms * 64 = 128ms --> 8 complete snapshot values / second.
            With a sweep speed of 1 m / s, a snapshot value spans 1m /8 = 12.5 cm. So, worst case, when sweeping that fast at maximum sensitivity, you get a signal 12.5 cm [5 "]next to the target. Intuitively, you will decrease sweep speed and pinpoint the target.
            So far, I could only crank up the sensitivity potmeter to max when there are no houses/civilisation in the vicinity, like on a large field or beach.
            To summarize: the "running average" does not take into account 'anomaly' values, only the real stable values are taken as reference. "Sensitivity" is limited only by the internal counter frequency ( stable 20 MHz xtal reference ) and the "normal" sweep speed.

            Regards,
            - Bernard

            What language is the code written in? Any chance we could get to see the original source please?

            Cheers, Jim.

            Comment


            • #21
              Originally posted by Schatztaucher View Post
              can i also use a speaker instead of the headphone?
              which art is suitable and how I have to wire it?
              regards, marc
              Marc, you can connect a speaker between the left or right output and ground.
              The speaker should be high-impedance, 50 ohm or higher. You may want to decrease the 1K resistors in series with the output to increase the volume.
              Pin 7 of the microcontroller is a digital "detect" output connected to an empty test pin on the PCB ( hole) . You could connect a 5V beeper here or an LED with 470E series resistor.

              Regards,
              - Bernard

              Comment


              • #22
                Originally posted by TH Jim View Post
                What language is the code written in? Any chance we could get to see the original source please?

                Cheers, Jim.
                The code is developed with mikroC because I also use it at work. I am currently reworking it to match a newer 32 MHz PIC controller (16F18124) that is pin compatible ( but you don't need the Xtal anymore) and gain 1.6 times sensitivity since the measurement timer runs at 32MHz instead of 20MHz.

                You can find the C source code here:
                http://users.telenet.be/willaert/MD/.../software.html

                regards,
                - Bernard

                Comment


                • #23
                  Had some fun at the freezing cold beach this weekend...

                  Click image for larger version

Name:	pickini_test.jpg
Views:	1
Size:	277.9 KB
ID:	334967

                  Comment


                  • #24
                    many thanks, Bernard

                    Comment


                    • #25
                      Added Pickini V2 PCB/hex/source to the website:
                      http://users.telenet.be/willaert/MD/...ectronics.html

                      Using different microcontroller 16F1824 - pin compatible wit Pickini V1 (16F616) but running on the internal oscillator of 32 MHz instead of external Xtal oscillator of 20 MHz.
                      With thanks to Teemo for the tip.

                      Comment


                      • #26
                        Hi F117,

                        Thank you for your generosity, we all appreciate you sharing your project.

                        Cheers, Jim.

                        Comment


                        • #27
                          Do you have a good constructive turned. What is done painting? Please make a video of the device.

                          Comment


                          • #28
                            Originally posted by F117 View Post
                            Added Pickini V2 PCB/hex/source to the website:
                            http://users.telenet.be/willaert/MD/...ectronics.html

                            Using different microcontroller 16F1824 - pin compatible wit Pickini V1 (16F616) but running on the internal oscillator of 32 MHz instead of external Xtal oscillator of 20 MHz.
                            With thanks to Teemo for the tip.
                            Thanks for the source codes.
                            I'm glad if my published project is helpful to you

                            Comment


                            • #29
                              Made a short video - proof of concept - of the PICKINI PCB on the table.
                              First with a standard 150 microHenry coil in series with 2E2 - could be used as a pinpointer.
                              Secondly with a 240 microHenry flat spiral coil - 20 cm.
                              Targets: 1 US dime, 2 Eurocent, gold ring and WW1 shrapnel ball.
                              Picked up quite some noise in house + my video skills are minimal , but here it is:
                              http://youtu.be/Me5QFDXo-II

                              Regards,
                              - Bernard

                              Comment


                              • #30
                                Has anyone built a PICKINI detector so far ?

                                Just curious if anyone has reproduced the PICKINI design so far ?
                                Some feedback would be greatly appreciated.
                                I have built 6 detectors so far, all with 20cm coils and they all work fine...

                                regards,
                                - Bernard

                                Comment

                                Working...
                                X