|
Arduino Nano R3 |
x 1 | |
|
TM1637 4-digit 7-segment display |
x 1 | |
|
ADS1110 16bit A/D converter module |
x 1 | |
|
Capacitor 100 nF |
x 3 | |
|
Capacitor 10 µF |
x 1 | |
|
Resistor 100 ohm |
x 1 | |
|
Pushbutton Switch, Momentary |
x 1 |
|
Soldering Iron Kit |
|
|
arduino IDEArduino
|
DIY Precise Arduino Miliohmmeter
In practice, we very often need to measure low resistances. Measuring low-value resistances, especially those less than 1 ohm, is nearly impossible with a standard multimeter. On the other hand, an commercial milliohmmeter instrument is in the price range of several hundred dollars and is not cost effective for self builders.
This time I will describe to you a simple and inexpensive way to make such an instrument, for the production of which we will not need more than a few dollars. With this instrument we can measure the resistance of 0.001 Ohm or 1 milliom. The result is displayed on a 4-digit 7-segment display that is easy to read even at wide angles.
You can find the original project on the rcl-radio (http://rcl-radio.ru/?p=100859) page. Just to note that the code uses a modified STM32 library which has been modified by the author and is compatible with Arduino nano. The heart of the device is ADS1110 IC wich is a precision differential input analog-to-digital (A/D) converter with up to 16-bit resolution.
The ADS1110 uses an I2C interface to communicate with the microcontroller, and measures at 15, 30, 60, or 240 samples per second and has a built-in 1, 2, 4, 8 voltage amplifier. The measuring range is from 0 ohms to 150 ohms.
Otherwise, the device is very simple to build and consists of several componen
- Arduino Nano microcontroller (I am currently using a cheap version with LGT8F328P MCU)
- ADS1110 A/D converter
- TM1637 4-digit 7-segment display
- and a few resistors and capacitors
This project is sponsored by PCBWay. They has all the services you need to create your project at the best price, whether is a scool project, or complex professional project. On PCBWay you can share your experiences, or get inspiration for your next project. They also provide completed Surface mount SMT PCB assemblY service at a best price, and ISO9001 quality control.
The measuring leads should be as short as possible, and they need to have the same length. To calibrate the milliohmmeter, you need to accurately measure the voltage of 3.3 V (supplied from the Arduino board) and indicate it in the line:
#define U33 3.342
The accuracy of the resistance measurement is directly dependent on the accuracy of the 100 ohm reference resistance and the accuracy of the 3.3 V voltage measurement.
And now let's see how the instrument works in real conditions.
Immediately after switching on, we need to prepare the measuring instrument. For that purpose тhe circuit uses a “0” button to calibrate the zero before measuring low-resistance resistances.
To calibrate the zero, you need to short-circuit the test leads and press the “0” button. Now let's make more measurements on resistors with different values between 0 and 100 Ohms.
Finally, a short conclusion. This is an indispensable and very useful instrument for any laboratory, especially considering the fact that it is very inexpensive, and we can make it ourselves. The device is installed in a suitable box made of PVC board with thicknesses of 3 and 5 mm and covered with self-adhesive colored wallpaper. I would like to emphasize that it is preferable to power the instrument from an external stable voltage source for greater accuracy.
#include <Wire.h>
#include <STM32_TM1637.h> // http://rcl-radio.ru/wp-content/uploads/2020/02/STM32_TM1637_V1_3.zip
STM32_TM1637 tm(2,3);// CLK, DIO
#define ADDR 0x48
#define U33 3.342
int n=3;
float r,u,n_u=0.256,r0;
long dig_sum,dig;
int value,f;
void setup() {
Serial.begin(9600);
tm.brig(7); // ЯРКОСТЬ 0...7
Wire.begin();
pinMode(4,INPUT_PULLUP);// null
}
void loop() {
r = ((100.00*u)/(U33-u))-r0;
if(digitalRead(4)==LOW&&r<0.1){r0=((100.00*u)/(U33-u));delay(200);}
for(int i=0;i<10;i++){
read_u();
dig_sum = dig_sum+value;delay(10);}
read_u();if(value>0x7FFF-0xF&&n==1){delay(10);n=0;n_u=2.048;}
read_u();if(value>0x7FFF-0xF&&n==2){delay(10);n=1;n_u=1.024;}
read_u();if(value>0x7FFF-0xF&&n==3){delay(10);n=2;n_u=0.512;}
read_u();if(value<16380&&n==0){delay(10);n=1;n_u=1.024;}
read_u();if(value<16380&&n==1){delay(10);n=2;n_u=0.512;}
read_u();if(value<16380&&n==2){delay(10);n=3;n_u=0.256;}
dig = dig_sum/10;dig_sum=0;
u = dig*n_u/0x7FFF;
if(r<10){tm.print_float(r,3 ,0,0,0,0);}
if(r>=10&&r<100){tm.print_float(r,2 ,0,0,0,0);}
if(r>=100&&r<=150){tm.print_float(r,1 ,0,0,0,0);}
if(r>150){tm.print_float(r,0 ,0b01000000,0b01000000,0b01000000,0b01000000);}
Serial.println(r0,5);
}
float read_u(){
Wire.beginTransmission(ADDR);
Wire.write (0b10001100+n);
Wire.endTransmission();
Wire.requestFrom(ADDR,2);
while(Wire.available()<2);
value = (Wire.read()<<8) + (Wire.read());
}
DIY Precise Arduino Miliohmmeter
- Comments(0)
- Likes(2)
- Mehmet Akif Ersoy Grme Eng. Okulu Nov 29,2024
- Kocis Julius Mar 10,2024
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Mirko Pavleski
- Arduino 3D Printed self Balancing Cube Self-balancing devices are electronic devices that use sensors and motors to keep themselves balanc...
- How to make simple Arduino RGB Led strip VU Meter VU meter or volume unit meter is a device intended for visual presentation of the audio signal. It ...
- DIY Simple Antistress and Relaxation PEMF Device based on Schumannn resonance frequency 7.83 Hz Schumann resonances are global electromagnetic resonances, generated by lightning discharges in the...
- DIY Si4825 A10 multiband Radio (MW,SW,FM) Thanks to the production of specialized radio chips, nowadays it is possible to make a quality mult...
- DIY simple HUNTER Led Game with Arduino Some time ago I presented you a simple to make, but interesting game, a 1D version simulation of "P...
- XHDATA D-109WB Radio Short Review with complete disassembly Recently I received a shipment of a radio from the brand XHDATA model: D-109WB, so I immediately de...
- Arduino Rotary encoder combination lock (Arduino door lock system with Rotary Encoder) Rotary dial safes typically use a mechanical combination lock. They are valued for their simplicity...
- DIY DRSSTC Music Tesla coil with Interrupter using cheap Driver Module DRSSTC (Dual resonant solid state tesla coil) is a type of Tesla coil that uses solid-state compone...
- Arduino HPDL1414 Retro Clock with Set and Alarm Functions The HPDL-1414 is a 16-segment LED display with four printable fields that is over twenty years old....
- How to turn a 7 inch Elecrow pi terminal into a standalone SDR Radio Today I received the Pi Terminal-7” IPS HMI CM4 Panel All-In-One Module Raspberry Pi Computer from E...
- DIY Simple Functional Lakhovsky MWO (Multiwave Oscillator) Therapy Device The Lakhovsky Multiwave Oscillator (LMO) is a device that was developed by Georges Lakhovsky in the...
- DIY simple Advanced Weather station (5day forecast) and Internet Radio ELECROW crow panel 2.8 inch esp32 display module is ideal for making simple but also relatively com...
- How to turn a Mouse into a Wireless Tuning Knob for SDR Radio A software defined radio basically consists of an RF front-end hardware part and specialized softwa...
- Arduino Car Paint Thickness Indicator - Meter A paint thickness indicator is useful in industries like automotive, aerospace, marine, and constru...
- Simple Arduino Solar Radiation Meter for Solar Panels The sun provides more than enough energy to meet the whole world’s energy needs, and unlike fossil f...
- Simple ESP32 CAM Object detection using Open CV Object detection is a computer vision technique that involves identifying and locating objects with...
- Arduino OPLA IoT Kit blink_ Example and Symon Says Game The Arduino Opla IoT Kit is a versatile kit designed for creating and managing Internet of Things ...
- How to make Simplest and Cheapest compact Internet Radio - Yoradio Internet radio is a digital audio service that streams music, news, and other forms of audio conten...
-
-
-
kmMiniSchield MIDI I/O - IN/OUT/THROUGH MIDI extension for kmMidiMini
125 0 0 -
DIY Laser Power Meter with Arduino
174 0 2 -
-
-
Box & Bolt, 3D Printed Cardboard Crafting Tools
164 0 2 -