DIY milliohmmeter

DIY MILLIOHMMETERThis is an example of a simple and cheap milliohmmeter that can be made by every maker. The core of the circuit are a current source (LT3092) and a current sense (INA225): a costant current flows through the milliohm resistor under test and the voltage at the current sense output gives the value of the resistor (V=R*I).

The milliohmmeter can be used as a stand alone instrument by adding a MCU with at least 10 bit ADC and a LCD display or it can be used togheter with a DMM.DIY milliohmmeter schematic

Current out from LT3092 can be set between 0.5 mA and 200 mA with 1% accuracy; INA225 gain can be set to 25, 50, 100 or 200 (0.3% accuracy). By setting Iout from current source equal to 10mA (Iout=10*R2/R3 uA) and current sense gain equal to 100, 1Ω = 1V and 1mΩ = 1mV as such the milliohm  resistor value can be easily measured in mV using a DMM, without any kind of conversion. A voltage reference (LT1461) has been added to the circuit in order to have a precise and stable voltage, useful to power both the current source and the current sense as well as the the MCU and its ADC in case we want to have a stand alone milliohmmeter.

Following a simple example of code running on mbed freescale KL-25Z:

#include “mbed.h”
Serial pc(USBTX, USBRX); // tx, rx
float VADC=2.922; //ADC VOLTAGE REFERENCE (EQUAL TO V SUPPLY)
//float IO=10.0; //COSTANT CURRENT
//float GAIN=100.0; //INA225 GAIN
//BOTH NOT REQUIRED IF SET LIKE THIS (1 Ω = 1 V)
float RO=0.021; //RESISTANCE OF CONNECTING CABLES (COMPENSATION)
float STAMPA_R = 0;
AnalogIn resistor(A0); //CONNECTED TO INA225 OUT
float ohm()
{
float R=0.0;
float RADC=resistor.read();
R = VADC*RADC-RO; //IF IO=10mA AND INA225 GAIN 100 -> (1 Ω = 1 V)
wait_ms(100);
return R;
}
int main()
{
while (1) {
STAMPA_R= (ohm());
pc.printf(“R = “);
pc.printf(“%1.3f”,STAMPA_R); //R IN OHM WITH 3 DECIMALS (1mΩ OF RESOLUTION)
pc.printf(“Ω”);
pc.printf(“\r”);
wait_ms(500);
}
}

mbed serial output of a 0.22Ω 5W resistor:

mded_serial

This entry was posted in Uncategorized and tagged , , , , , . Bookmark the permalink.

6 Responses to DIY milliohmmeter

  1. Winston says:

    Cool. You should make this commercially available, at least the PCB. Failing that, can you provide the pcb file? I can make my own pcbs.

    • admin says:

      Thank you for your appreciation. The board is just a concept, as such, there are no PCB available for the moment; anyway if someone thinks gerber files could be useful, they could be added to the project.

  2. S SCHOLLE says:

    Hi Bob. Nice little writeup!

    My question is however, your photo of the board uses the LT1451 (461AI5) Voltage reference. Thats a 5V reference Voltage IC. Your code however refers to a 2.922 Voltage reference. Did I miss something? or is that intentional?

    • admin says:

      Hi,

      voltage reference IC is a 5V LT1461 (top silk wrongly reports LT1416); VADC refer to ADC reference voltage which is not the same on the milliohmmeter board because we’ve tested the instrument using a mbed KL-25Z which is supplied by 2.922V (measured to improve reading accuracy).

  3. “wow it”s really useful.”

Leave a Reply

Your email address will not be published. Required fields are marked *