Project POCASA - Page 1
Forum section: electronics / projects

author: Skimask
author_rank: Super Contributor
timestamp: April 27, 2015, 06:23:36 am
content: EDIT: (copied from the 2nd page post)DOH! I forgot to explain the whole purpose of the project!A number of years ago, I worked in a shop where our sole purpose was to fix "stuff". I got to extensively use the Huntron Tracker 2000 & ProTrack 1. Great pieces of test equipment, but expensive as hell. I've been wanting to build something similar for a long time and I'm finally on my way to getting it done. My figuring says the whole thing would be a lot less expensive than a Tracker 3200S, provide a fair amount more capability...not to mention be an open environment. Ok, it won't have Huntron's good name behind it, and maybe it won't end up 100% as accurate or repeatable as anything Huntron makes. I'm shooting for the middle of the bell curve, not every situation at the bottom of the bell.Enter POCASA...Power Off Component Analog Signature AnalyzerSimilar to the Huntron Tracker and ProTrack, FADOS 9F1, and a handful other pieces of test equipment.The basic premise is that you have a known good component or circuit, you test it, and get a baseline I/V curve for that component/circuit. You then test an unknown component/circuit. All other things being equal, if the unknown component/circuit is good, it'll have the same I/V curve as the known good component/circuit. Any significant mismatch in the I/V curve will help lead a person to the actual problem.My desired spec's include:Source Voltage Range: 0VAC – ~18VAC, 256+ steps; sine, triangle, square wave outputs, variable level, variable DC offset, limited by the power supply and opamp characteristics.Source Frequency Range: 0 – 1+ Mhz in ~.001Hz steps, limited mainly by the AD9833 DDS, 2 DDS's, each of which can be switched to source a test signal to one or both channel 'groups'.Source Resistance Range: 16 ranges, 10 ohms through 1Meg ohms in a 1-2-5 sequence, won't be able to get down to 10 ohms due to resistance in the signal chain, but it'll be close.Channel count: 128 total channels, 64 channels per 'group' (A and B)Pulse Generator: 2 pulse generator channels, 0- ~18V. Duty cycle, frequency, offset, peak voltage, source resistance, are all variableDisplay & Control: 800x480 color TFT LCD w/ 5 point capacitive touch screen, USB2.0, microSD card, 20 button keypad controlled and connected to the LCD panel, or run the whole thing over a USB connection.Power Input: + 24VDC @ ~1 Amp (24 watts max), wall adapter, possibly switch over to LiPo pack if I can find a boost converter that's efficient enough to run the whole thing off a single cell LiPo.Dimensions: ~11”W x ~6”H x ~8”D, about the same size as a typical CRT based o'scope.I've already built up 2 prototypes with lesser capabilities. The first prototype had a single channel, was powered off a 4 cell NiMH pack with a +12/-12 boost/inverting power supply. Worked great until I dropped a -12v wire and basically blew up every chip on the boards. The 2nd prototype had 16 channels, powered off the USB port (with a PNMINI giving me a -5v rail). Worked great as long as I didn't try to push the limits of the USB power, and it had some design issues with the opamps (eg. I didn't know what I didn't know as far as opamps go).This time around, I'm building everything up in chunks, 12 PCBs, each with a different function...not putting all of my eggs in one basket. If one chunk fails profusely, rework it, try again. 442 sq.in. of PCBs for the whole thing. Won't be cheap, but it's been fun so far.First step in the project, the power supply.24VDC in from a wall wart...Using a TPS54331 (schematic from the PNMINI Kickstarter project) to generate a negative rail of about -24VDC, and a handful of linear reg's to get +2.7/3.3/9/18 and -2.7/-9/-18VDC.Not particularly concerned with efficiency at this point as the whole thing will be running off the mains. Later on, I'll be wanting to power the project from a 6S LiPo pack, if it ends up being feasible.Total draw will run about 500mA maximum off the +/-18V rails, another 500mA from the +/-9V rails, and another 250mA from the 3.3v rail. Call it about 2 amps maximum input current at the power jack. The +/-2.7 rails are regulated off the +/-9V rails. Generally, each rail will be pulling about 100mA at any given time. 500mA is a calculated worst case for any given condition downstream of the power supply.On the PCB, the top and bottom layers have a maximized ground pour all around, with the exception of the area around the TP54331, which is an isolated -24V pour as noted by the dashed lines.Minimum load resistors have been added to give me about 5mA minimum load per regulator (yep, there's a bunch of waste right there). Yes, it could be done much smaller. Yes, it could be done with much more efficiency in mind. No, I'm not worried about it at the moment.(More on my project as a whole when I get the write-up/abstract finished up)Keep in mind, I'm not a professional PCB layout guy by any stretch. I'm an average Joe like the bulk of the masses.I figure if it looks right and follows the spec's on the datasheets, I'm probably good to go.I'm up for any thoughts, modifications, blatant errors, etc. that anybody has...

author: prasimix
author_rank: Unknown
timestamp: April 29, 2015, 09:56:58 am
content: What kind of heatsinks you are going to use? It seems that you positioned regulators strategically with some kind of cooling in mind. If that is a standalone heatsinks I'll make it visible on top silkmask (and eventually that will introduce some mounting/fixing holes that can affect ground plane integrity). What you have now it looks like you'd like to use two or three "flying" heatinks taking care to not make a contact with the components that are lying on the top. I think that it is a good practice to have from the start an idea about housing and cooling either internal or external, forced or not.Also I don't see a problem in this case to put all regulators that require cooling in line on just one side of the board.Check for instance positioning of all items that require cooling on top side of the PCBhere.Also I think that one good ground plane is still better then two not so good in the sense of integrity. You have a number of "isolated ground islands" on both side.I don't know do you want to manufacture it by yourself of send it to some PCB manufacturer but in case of later you can easily go with much much smaller "isolate" parameter for ground plane. 12mils is more then enough for low voltage circuits.You have two mounting holes instead of four. Why since you didn't spare on PCB area and have a plenty of space to do that.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 07:58:16 pm
content: Quote from: prasimix on April 29, 2015, 09:56:58 amYes, the board doesn't show it but I plan on putting the linear reg's & heatsinks on the back of the PCB. And 'flying' heating sinks as you call it. (individually mounted???).I've built it up on a protoboard (except for the negative rail generator which I used an actual PNMINI) and tried it out with a pile of resistors simulating maximum load. Heatsinks got warm, but not hot. Also plan on a 12v 40mm fan blowing over the whole thing.QuoteIt's a little hard to see (I think), but there are 2 ground planes per side, one for actual "ground" and another for the "-24v" rail around the switcher, again, because it is basically a different version of the "PNMINI". When using the PNMINI as a buck regulator, ground is ground. When using it as an inverting/buck, ground becomes the output -24v, hence the isolated "ground" (which is actually -24v) plane.QuoteI went with a nice fat 50 mil isolate on the ground plane to keep myself out of trouble while soldering it upSomething that can always be easily tweaked to be tighter if wanted.QuoteIt plugs into a "backplane" PCB. Only need to support the top end. But, you did just give me something to think about in case I want to mount it differently.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 08:11:31 pm
content: 2nd board (of 13) in the project - The backplane.Roughly 9.7" x 5.5". Sockets for 42 plug in PCBs. Maximized ground planes on top and bottom with a bunch of stitching vias connecting all of the grounds. Don't know if I'll need to put in any guard traces around any interconnecting signals or whatnot. Figure it out when I get there.Analog signals shouldn't go much above 1Mhz, digital signals, well, I'll slow them down (or speed them up!) until they work right.(Another note...once I get the whole thing proven and working, I'll be integrating all 42 plug in PCBs onto a fewer number of PCBs)

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 08:19:58 pm
content: 3rd (of 13) PCB - the DDS source board.Using an AD9833 (for now) to generate test signals. Does a decent job up to about ~100Khz for sine/triangle waves, up to 12Mhz for square. After that, starts to get really noisy, a lot of harmonics, etc. just the nature of the beast. 25Mhz clock, 10 bit internal DAC, but it's cheap and will work well enough for testing.Schematic shows a TL082 opamp used as an output buffer. I've got a pile of them on hand. Spec's are marginal for this application, doesn't swing very close to the rails, not much output drive, slew rate is slowish, but the pinout is generic enough that I can easily swap in another opamp with better spec's when I get to that point.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 08:30:05 pm
content: 4th (of 13) PCB - DDS LOC (Level, Offset, Coupling)Input is buffered by IC1A, final output level set by digital pot (AD5204 R#1), mixed with an offset (AD5204 R#2 & IC1C). Output signal after mixing the level and offset is coupled via a switched network of various capacitors thru an ADG5409, 3 cap ranges and 2 resistive ranges. 2x gain thru IC1D, final 2x gain and buffer thru IC4.Opamps used are TL084 and TCA0372. Again, have a pile of each on hand. Spec's are marginal for what I need, GBW and slew rate limited, as well as neither of them are fully rail-to-rail. But again, the pinouts are generic enough I can easily swap in better parts later.The output opamp (TCA0372) eventually will need to drive a maximum of 500mA at +/-18V @ ~1Mhz. Really having a tough time trying to find one to fit the bill.And throughout this whole thing, some of the parts aren't using the correct symbols (eg. the ADG5409, TCA0372, etc), but the footprints are correct as are the connections on the PCB. I'll fix it later...because I can.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 10:39:38 pm
content: 5th (of 13) PCB - DDS R(s) SelectSelecting 1 of 16 resistors to put in series with the output signal. Tap off before and after to sense the current going thru the D.U.T., tap off after to get the voltage going to the D.U.T.Simple circuit. No it won't work down to 1, or even 10 ohms due to the inherent resistance of the analog switches. Easy enough to compensate in software.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 10:45:08 pm
content: 6th (of 13) PCB - ADC - "Real Time" Analog-Digital ConverterGets the level of the signals going thru the D.U.T. One ADC board at the input of the R(s), one at the output. Use the output to get the voltage at the D.U.T., use the output and input difference to get the current thru the D.U.T.Input signal is buffered at IC1A, level and offset corrected/adjusted by IC3/R#1 & R#2, added and amplified at IC1D, and converted at IC2. All of this to center and maximize the range for the ADC input.The MCP3202 is a rather slow ADC, but as before, I've got a pile of them laying around and they'll work well enough. Same with the TL084. Not optimal, but they'll work for testing.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 10:57:23 pm
content: 7th (of 13) PCB - Peak MonitorCaptures peak levels of positive and negative halves of the test signal going thru the D.U.T. Could be handy for getting the freq response of a circuit or D.U.T.Input is buffered thru IC1A. Buffered input splits off. Positive side goes thru another buffer/rectifier. Negative side goes to another buffer/inverter/rectifier. Both sides end up at a peak-hold circuit, both of which are "reset" by using an ADG5409 analog switch, which dumps any voltage on the holding cap to ground.Same thing applies with the use of the TL084 and MCP3202...got a pile of each, they're not optimal, but I'm using them for testing only.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 11:07:15 pm
content: 8th (of 13) PCB - RouterRoutes the Test Signal, Ground, Pulse Generator signal, and output load connections to one of 16 points on the header via a bunch of ADG5408 analog switches.Dual back-to-back zener diodes will be used to help protect the inputs of the ADG5408 against spikes, value of the zeners will be around 20v as the ADG5408's can't take much more than that at any of the inputs.As noted earlier, the symbol for the ADG5408 is a reused 74595 symbol, but the footprint and the connections on the PCB are correct.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 11:09:44 pm
content: 9th (of 13) PCB - Source SelectProject will have 2 DDS sources as well as 2 Pulse Generator sources, each of which can be selected/routed to either 'group' of outputs, A to A, B to B, A to B, B to A, etc. in a sort of a cross-wired way of doing things.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 11:11:40 pm
content: 10th (of 13) PCB - Output LoadUsed to provide a resistive and/or capacitive load to a D.U.T. or circuit. A bunch of switching action going on here. Again, symbols aren't correct for the parts, but the footprint and connections are correct.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 11:13:43 pm
content: 11th (of 13) PCB - Pulse Generator Polarity/Level/Offset/CouplingTakes the pulse generator output and shapes it, changes polarity of the pulse, level, offset, and adds a coupling of that pulse (because I can, not because it's absolutely needed).Same basic premise as the DDS LOC shown earlier, with the addition of the polarity function.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 11:14:54 pm
content: 12th (of 13) PCB - USB/SDSimple little board to bring the USB port and SD card slot out to the front panel. Simple enough...

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 11:17:54 pm
content: 13th (of 13) PCB - the MCU card2 MCU's (original design used a single MCU and a bunch of latches and shift registers...YUK!)For this iteration, I'm using a PIC18F87J50 as a 'master' and a PIC18F87J11 as a 'slave' (basically an I/O expander). Pretty much self-explanatory. Bunches of ports, an SRAM, connectors for an LCD panel, programming headers, speaker, power button, bluetooth, WIFI, etc.

author: Skimask
author_rank: Super Contributor
timestamp: May 10, 2015, 11:41:51 pm
content: EDIT: Project explanation post moved back to the 1st post...Nothing to see here!

author: paulie
author_rank: Frequent Contributor
timestamp: May 11, 2015, 03:28:09 pm
content: Quote from: Skimask on May 10, 2015, 11:41:51 pmWell that's nice. All of page one a total waste of internet bandwidth.

author: Skimask
author_rank: Super Contributor
timestamp: May 16, 2015, 10:38:53 pm
content: Reading a bunch of "Basic Linear Design" by Hank Zumbahlen. 1275 pages of goodness.Thinking out loud...The 'backplane' PCB is going to be roughly 9.7" x 5.5", I'm wondering where, if at all, I should include any ferrite beads along the power paths. I've got .1uf decoupling cap's at every connector between each rail and ground, both on the backplane itself, and designed into every card that's going to plug into the board. Thinking I'm also going to want to incorporate some sort of soft-turn-on function at the power supply to keep the inrush current down.Playing around with the AD9833 on a protoboard... Can't get much above 100Khz before distortion gets noticeable on the 'scope, and a few 10's of Khz before it gets noticeable on the Spec-An. The AD9833 is getting replaced sooner or later. Even an AD9851 would be a marked improvement...assuming the rest of the project can handle the freq's.

author: SArepairman
author_rank: Frequent Contributor
timestamp: May 21, 2015, 09:05:39 pm
content: im surprised you went for the data acquisition stuff, I would just make it an oscilloscope plugin. then again, you cant autocal that way.