Announcement

Collapse
No announcement yet.

PI CHIP

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

  • WM6
    replied
    Originally posted by moodz View Post
    We use 6 wire control mode to minimise CPU pins used ....
    Code is a little more complex

    moodz.
    Thanks moodz,

    please, post here last version of other stages (frontend ...) too.

    Leave a comment:


  • moodz
    replied
    UNIPI LCD display

    We use 6 wire control mode to minimise CPU pins used ....
    Code is a little more complex

    moodz.

    Click image for larger version

Name:	UNIPI_LCDv22.JPG
Views:	1
Size:	70.4 KB
ID:	328886

    Leave a comment:


  • moodz
    replied
    UNIVERSAL PI CHIP v2.2 UNIPI updated schematic

    Added LCD display ....

    The rotary QEI will select the menu item .. push click ... then rotate to change value ... push click to set value.

    Dropped the complementary PWM outputs to free up three pins ... redundant in most designs anyway and I can change the polarity of the TX pulse using code anyway if required ...

    Code tweaking in progress ( menu configuration )

    Configuration via LCD or serial port ( or both if you like )

    Now we are using every pin on the chip ...

    moodz.
    Click image for larger version

Name:	UNIPI_MOODZ_V22.JPG
Views:	1
Size:	168.4 KB
ID:	328885

    Leave a comment:


  • moodz
    replied
    Originally posted by maca404 View Post
    Nice works moodz

    You might have covered this but I wonder if you could explain some more about the function of some of the pins ?.

    Apart from the TX and the INV I have no idea what the other PWM outputs are for ?. Also I see the ADC input but what are sample 1 and 2 for, Just a output of the sampling "pulse" ?
    Hi maca .... I need to write bit of a user manual .... At the moment there are three PWM outputs.

    PWM1 is the main TX pulse. You can set the frequency and duty cycle ( ie ON time ) using the A and B command at the serial menu.
    eg A7370 sets a frequency of 2.000 Khz ( 500 us ) ( 66 ns steps )
    B7370 sets an ontime of 250 us ( 33 ns steps )

    The TX-INV is an inverted version of the TX signal ... gives you versatility in MOSFET drivers / switching.

    PWM2 is the DISC TX pulse .... this is for discriminate .... it runs at the same frequency as the main ( PWM1 ) so you dont need to set the frequency but you can set the duty cycle via the C command eg C4000 sets an ON time of 135.685 us ( 33 ns steps ).
    The DISC pulse is an "alternative" or "extended" or "restricted" pulse .... if you see how detectors like the CHANCE work you may find a use for this signal ... this is an option I added for experimenters like me ... it is not required for simple PI detectors.

    PWM3 is the target response signal after processing inside the chip. This PWM runs at the TX rate frequency however the duty cycle is related to the target signal. If you run this signal through a simple RC low pass filter ( say 20 Hz cutoff ) you will get a DC value that is nominally 2.5 volts ... a target difference from the internal SAT level will vary this signal +/- from 2.5 volts down to 0 volts or up to 5 volts. Thus by connecting to analogue meter and a fixed 2.5 volt bias .... you get an analogue indication of target strength. This level could be used for other things like AGC for an front end amp etc. ... you dont need this signal for a basic AUDIO only detector.

    There are two pulse signals 1 and 2 ... these are ouput signals. You can set the ON time and OFF time using the E F G and H commands. eg E2500 169.607 us ON time for pulse 1.
    The ON and OFF times are relative to the start of the TX pulse .... ie if you want to sample at 10 us after TX off and your TX on time was set to 50 us then the ON time for pulse one must be set to 60 us. If sample pulse one must be on for 10 us then the OFF time is set to 70 us. ( ie 70 - 60 = 10 us ON time for pulse starting 60 us after TX on ). You can set the on/off time for the two sample pulses anywhere during the TX cycle.
    There actually is a small fixed offset error in the pulse relative offset ( due to interrupt latency in CPU ) ... but the difference ( or duration time ) is very accurate.

    It is very easy using the main TX ( PWM1 ) and sample 1 and sample 2 to set up the timing for a surfPI or hammerhead ... you just type in the settings and save to eeprom.

    The analogue IN can accept a voltage from 0 to 5 volts and is approximately 17 bit accurate ( yes 17 real bits ..... ) The analogue input expects to see a signal that consists of a relatively stable base voltage that varies as targets are passed over ... so it is a motion detector. However if the SATLOCK button is pressed ( 0 volts on button pin ) the SAT will no longer try to catch up with the target signal ... so you can hover over the target without it being SATed out so to speak.

    The audio out is a type of digital voltage to frequency converter .... the frequency is dependant on the target signal. A larger target makes a larger frequency shift. The M option on the menu sets the lower and upper frequency range with one setting ... neat huh ? ( 0 is the lowest audio frequency BTW )

    The ZERO button "snap locks" the SAT threshold to the current target signal ... This makes the current SAT level the same as the target level ... ie the difference is zero so no target indication. This is useful if a large target / ground change suddenly swamps the detector SAT ( cannot keep up ) and for finding gold coins balanced on cannon balls. ( true ... if the ZERO button is released the detector will effectively only detect the difference ... cannon ball only = no signal ... cannon ball + coin = yes signal ).

    I think that is the main pins for now ...

    cheers

    moodz.
    Last edited by moodz; 06-07-2011, 08:58 AM. Reason: typo fix

    Leave a comment:


  • maca404
    replied
    Nice works moodz

    You might have covered this but I wonder if you could explain some more about the function of some of the pins ?.

    Apart from the TX and the INV I have no idea what the other PWM outputs are for ?. Also I see the ADC input but what are sample 1 and 2 for, Just a output of the sampling "pulse" ?

    Leave a comment:


  • moodz
    replied
    RS232 interface .... for UNIPI

    Could use a dedicated RS232 level shifter chip .... but .....

    Click image for larger version

Name:	RS232.JPG
Views:	1
Size:	20.4 KB
ID:	328858

    Leave a comment:


  • moodz
    replied
    UNIVERSAL PI CHIP v2.0 UNIPI updated schematic

    updated schematic ...

    moodz.

    PS ....see previous post about posting chips... I can only send to experimenters who at least have a two channel CRO ...those with them know why

    Click image for larger version

Name:	moodzUNIPIv200.JPG
Views:	1
Size:	213.1 KB
ID:	328857

    Leave a comment:


  • moodz
    replied
    v2.0 chip now operational + descrim pulse control

    Update .... I have dumped the PWM SAT output and instead there is now a secondary TX PWM called the DESCRIM output. I have no idea why I did this .... but I am sure it will come in useful . There is an additional menu item on the control menu. The DESCRIM value may be adjusted by entering >C1234 where 1234 is the value of the DESCRIM pulse.

    updated menu screen shown below .... updated schematic to follow ....

    moodz.

    If you want a programmed chip they are $10 AUD each + postage .... I only have a dozen or so and these are bleeding edge .... so caveat emptor.

    Click image for larger version

Name:	v20descrim.JPG
Views:	1
Size:	158.0 KB
ID:	328856

    Leave a comment:


  • maca404
    replied
    Sounds good, it will be interesting to see what you can squeeze out of that chip.

    Leave a comment:


  • moodz
    replied
    Originally posted by maca404 View Post
    Looks like a nice bit of coding congrats. Have you had a chance to do much experimenting with different targets and detection distances etc ?.
    Thanks ... the internal function is a basic version of my FPGA project ... it is intended as an experimenters chip ... to simplify generating the TX, Sample, Audio signals as well as a SAT function, ADC and feed back PWM channels for analogue target signal and SAT.

    So I have not even used it in a circuit yet. I have a board layed out but it will need testing before the design gets close to target testing ....

    regards

    moodz.

    Leave a comment:


  • moodz
    replied
    Originally posted by Mustafa View Post
    Hi moodz,
    Are you using C30?
    If you don't mind, is it possible to compile your code for dsPIC33FJ128MC802 or better post here?
    Regards,
    Mustafa

    Yes its C30 ... I will have to finish this chip version before mapping to a new one.

    Regards,

    moodz.

    Leave a comment:


  • maca404
    replied
    Looks like a nice bit of coding congrats. Have you had a chance to do much experimenting with different targets and detection distances etc ?.

    Leave a comment:


  • Mustafa
    replied
    Hi moodz,
    Are you using C30?
    If you don't mind, is it possible to compile your code for dsPIC33FJ128MC802 or better post here?
    Regards,
    Mustafa

    Leave a comment:


  • moodz
    replied
    ... hex file for testing only.

    hex file for dspic30F4012 MOODZ UNIPI V2.0 Beta Test

    Metal20.zip

    Leave a comment:


  • moodz
    replied
    UNIVERSAL PI CHIP v2.0 UNIPI update.

    Fixed a nasty interrupt memory leak ....
    Cleaned up the code for compiler efficiency.

    Code Functionality tests
    EEPROM save OK
    EEPROM read OK
    Checksum of RAM and EEPROM OK
    TX frequency set OK 450 Hertz to 20 Khz in 32767 steps ( 15 bit divider )
    TX duty cycle OK ( 65535 steps ) 0 to 100% duty cycle
    Sample pulse 1 ON and OFF OK sample anywhere under or after each TX pulse
    Sample pulse 2 ON and OFF OK sample anywhere under or after each TX pulse
    ADC sample working at better than 16 bits resolution.
    SAT LOCK button working OK
    ZERO button working OK
    TARGET PWM output set to 2.5 volts +/- target signal for analogue meter drive or other.
    SAT PWM ... not sure ... this is supposed to drive autobalance for DD or bucking coil.
    AUDIO ... working ... but will have to test with real front end + coil.

    I think its ready.

    moodz.

    Leave a comment:

Working...
X