Electronics > Projects, Designs, and Technical Stuff

Feedback on Milliohm meter V2.0

(1/3) > >>

OM222O:
Hey guys
I wanted to create a milliohm meter a while back, using the 4 wire measurement method. The first prototype worked fine but had some issues, especially with op amp stability, very limited range and a few other minor issues. It also didn't look clean at all but was a good starting point.
Version 2.0 replaces the 16 bit ADC with a 2 bit one, has 6 current ranges (up from 2) which means it can measure to about 200k\$\Omega\$ (I figured above that 4 wire measurement has no advantage over a regular voltage divider circuit). To keep high accuracy all the filter caps are C0G(NP0) and every resistor on the board is 0.1% with 15ppm temp co or better (except the giant 1ohm shunt, R3).I also redesigned the power button (it only turns on a fet, so virtually no current flows through it) to improve it's life and add to the stability of the entire circuit. my schematic is extremely messy at this point, so I will publish it after cleaning it up later. The PCB is meant to be used as a front panel on top of the box, which basically turns it into a 1 sided PCB which is less than ideal. The PCB itself is really crammed and I had to use a lot of vias and tracks under the display to make it work. Here are some small clips of me testing different sections of the PCB and the final design as of now. Please check them out and tell me what you think  ;D




(I will only use the black and red plugs, not the non insulated one)

Also here is a "block diagram" if you will:

1) Power delivery
2) MCU (Atmega328P-AU)
3)ADC input filtering
4) 24 bit ADC (ADS1219)
5)1V voltage reference
6)Current output stage
7)different value shunt resistors + dual mosfets as switches

Here is a test of the OLED module using the IMPACT font (that will be customizable by end user!):
https://streamable.com/8w75e

Also here is me getting excited way too much about the new power button design:
https://streamable.com/dx1lz
https://streamable.com/vxwey

Overall it's taken me about 8 months to get to this stage and I'm very excited about it!
I have kept the design goal as original: to achieve better than 1m\$\Omega\$ (and potentially even better 100u\$\Omega\$, although I don't have any calibrated equipment to confirm that!) for much cheaper than the industrial solutions on the market and I think I have been able to achieve it  :D

Future upgrades that I currently have in mind are:
1) adding protection to all inputs and power rails (not enough space on this PCB and the larger PCBs will cost a lot more. I'm ordering from JLCPCB and the limit on the PCB sizes is 100x100. my other option is to get a custom size box manufactured in china as the next size up box will exceed 100x100mm. please let me know if I can get cheap boxes made)

2) adding common resistor footprints to the top of the PCB (between force and sense pins) to allow direct measurement on the board without any need for wires. For that please write the common low value shunt resistor footprints that you would like to use, I will add the most popular ones)

Feel free to add more upgrades that you would like to see and provide some feedback on the overall design. what would you do differently? where can I improve this design?

station240:
The ground pour looks a bit close to tracks/pads, would make it less troublesome to repair/modify in the future with a bit more clearance.

Rotate Q5 90 degrees clockwise to reduce the trace lengths to C1, battery, will also make it easier to solder.

Check the contact resistance on those banana sockets, the 4 wire lead sets have gold plated connectors for a reason.

Overall I do like the design, been looking at building something that requires miliohm measurements as well.
How are you going on the software ?

DaJMasta:
+1 on the trace clearance, maybe your preferred fab can do it, but there's really no reason it's required at this density, so I'd add some extra to be sure, especially around the binding posts and things.  Also probably worth setting your copper pours to remove unconnected copper - I see some islands between close traces that I don't think ever get grounded, so they'll just be little capacitvely coupled antennae sitting on your board waiting for the right frequency to come around to really mess with the stuff around them - if you just stop them from being generated you lose no shielding and prevent some of that.

Hard to tell from the zoom level, but also worth making sure there are some thermal relieves around the pads that go directly to the ground plane, otherwise you're gonna have to park the iron there for a while to get your part stuck down.

OM222O:
The software has been pain and agony! first I had to create my own library for ADS1219 (nothing was available for arduino!), then I had to create my own bitmaps from the font because u8glib doesn't support symbols like omega, and u8g2 eats more than 75% of memory just for diplay, so NOPE! automatic ranging and effectively getting the best solution has been another can of worms, but it's coming along really nicely. I just need to spend some more time with it. I definetly agree that rotating Q5 makes life a lot easier and I have plenty of space for it. As for the contact resistance: doesn't matter at all! it only creates some burden voltage. as I said the FSR range of the ADS1219 is 2.048 volts, so 3V burden voltage at 1A = 3ohm! that would be 3 watts just in the wires + connectors ... I don't think it's that bad tbh (plus it would be an easy upgrade to find a drop in replacement). What foot prints do you recommend for front panel testing? I'm considering 0603,0805,1206 and 2512 so far, but I've seen ones with 4 wire connections already made and large metal tabs on both sides. I'm not sure what footprint they are but they look something like:


The clearance of traces is recommended by JLCPCB themselves and I haven't had issues with ordering them from the past so I don't think that will be an issue at all, but might increase it to 10mil just in case. I have disabled the "keep islands" setting, can you please show where there is one between tracks? If there is any, it should go away with increased clearance as it might be connected by 1 or 2 mills.

Doctorandus_P:
I've always found these 4 terminal SMD resistors a bit weird.
When a "normal" SMD resistor is soldered on a PCB you have a nicely conductive solder blob on each side of the resistor.
Then you can easily add a 4 terminal connecton by designing the PCB traces right.
Current gets fed in from the outside, and measurement wires are taken from the inside of the pads.

Also:
What you describe as: "Pain and agony!" and "another can of worms" is stuff that is all simply part of the normal design cycle of writing software.
"arduino" is nice to get an easy start to get your first blinking led project, but there will come a day you have to write some serious software yourself to advance your project.

Navigation

[0] Message Index

[#] Next page

There was an error while thanking
Thanking...
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod