Announcement

Collapse
No announcement yet.

VDI-RODERICO

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

  • my designed PCB for GLCD on PIC18F25K22
    Attached Files

    Comment


    • this is the source code for version 2.0 released under the GPL license and including all the versions (LED, LCD and GLCD). I also backported the backlight control for PIC16F88/690 but the pcb is not backwards compatible anymore and it will not build with the XC8 compiler in free mode, so not recommended, consider PIC16F886 instead. PIC18Fxxxx firmwares can be built with the SDCC compiler but they are very slow compared with those of the Microchip XC8 compiler:
      Attached Files

      Comment


      • Hello .. a query, this vdi can work with treasure wolf, frequency 17.5 khz?

        Comment


        • It work with any frequency detector.

          Comment


          • looking at the original IDX schematic http://www.geotech1.com/forums/attac...7&d=1313926126 I saw that the problem spotted by kroman01 (different saturation levels of XY) is not present in the original design as it can be seen in the VDI connector (P12). Maybe someone would like to test it, i.e. instead of using RT2 and R9 it might work much better to use R47, R48, VR5 and C20 of the original schematic (below). This is something similar to the U3 input through VR2 which is not in the idx pcb...
            Click image for larger version

Name:	p12.png.jpg
Views:	1
Size:	27.1 KB
ID:	352451

            Comment


            • Originally posted by roderico View Post
              Here it is the version with the trigger delay adjustable in the configuration menu to set a faster response. To remove the delay as in the led version you need to set it to 0ms and to recover the previous version value you need to set the delay to 500ms. This version also discards some cases where the sampling is incomplete and gives wrong vdi numbers (I'm using a 10k resistor between MCLR pin and Vdd in my vdi, however I haven't tested the firmware without the resistor while reducing the delay to 0).
              Hi Roderico,
              is it possible to replace 16f88 with 16f628a?
              regard

              Comment


              • unfortunately it is not possible because pic16f628a does not have an analog-to-digital converter (ADC) module...

                Comment


                • I see, thank you Roderico!
                  Cvele

                  Comment


                  • I found some bugs in the code and I updated the firmware to v2.1 if someone would like to give it a try, the changes w.r.t. version 2:

                    - fix width of integers in vdi limits
                    - set upper limit of minimum vdi to 90 for excluding also positive vdi values
                    - fix sampling ending before 400ms (only the first 200ms were used in v2.0)
                    - implement axis scaling in histogram view
                    - remove ticks at +/-45 degrees in histogram view (kroman01's idea)
                    - exclude vdi values from the saturation region in histogram view (you might need 2x scale to be similar to v2.0)

                    this version would be only for testing and check if it works better than previous one
                    Attached Files

                    Comment


                    • I am happy with the operation of version 2.0, although I go to field tests myself
                      I will check version 2.1, I will write comments as soon as time permits

                      Comment


                      • ok very good, no problem, it would be good to see in the tests how the vdi changes with the soil, i.e. a test with an object in the air and the same or an identical object buried in the soil. If possible also a test with this version where the vdi is extracted from the histogram as the mean value. This version also shows an uncertainty estimated with the mean deviation (it can be hidden in the config menu). Big values of the deviation would indicate bad measurements of the vdi e.g. iron objects.
                        Attached Files

                        Comment


                        • I merged beta1&2 in beta3 for testing, now it is possible to select how the vdi is extracted, i.e. as max(x,y) equivalent to v2.0 or as the mean value. This latter might not work well when using a broad interval, e.g. [-90,180] or [-180,180] because you might have two peaks, but it works well in [-90,90]. I also backported the changes to the LCD version (see attached image). The uncertainty on the vdi helps to fix its value, i.e. you need to move the search coil until you get a small uncertainty then you will have a good vdi measurement.
                          Attached Files

                          Comment


                          • this test version fixes a bug in the mean vdi (different index ranges), changes max(x,y) by the maximum extracted from the histogram and highlight the vdi value when the uncertainty is less than a given value e.g. 10 degrees (it can be disabled by setting the uncertainty to 0 degrees, i.e. all values are considered good measurements which is not very realistic)...
                            Attached Files

                            Comment


                            • I updated the old THT version of the pcb reorganizing some of the components and I have changed the values of C1, C2, R3, R4 and the like to more common values for testing. Larger values of RT2 and R9 more similar to the original IDX schematic also work well, e.g. 10K (RT2) and 22K (R9).

                              - R11 needs to be chosen to limit the current to the backlight e.g. 8-10mA
                              - R7 and R8 are 1%
                              - C12, C13 and crystal Y1 are not necessary for PIC18F25K22 and PIC16F886
                              - for a LCD display short R15, pins CS1, CS2, RST and VEE are not used
                              Attached Files

                              Comment


                              • did you correct this
                                strcpy(name, "cooper "); should be "copper" in vdi.c

                                Thanks for the code. I'm going to try porting it to a PIC24fj series part, since that is what I use in practically everything these days.
                                Last edited by scrungy_doolittle; 07-10-2019, 06:54 PM. Reason: correction

                                Comment

                                Working...
                                X