Beruflich Dokumente
Kultur Dokumente
Table of Contents
Digital multimeter shield for Arduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 2: WARNINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 9: PCB's... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Step 14: The DMM software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
File Downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Step 15: Software tuning of the accuracy (part 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Step 16: Software tuning of the accuracy (part 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Step 17: Trimming the ohmmeter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Advertisements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Author:Milen
Thank you all for following me. Please support our project : https://www.kickstarter.com/projects/388017586/quantum-battery
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Step 2: WARNINGS
I thought to add these warnings at the end, where the conclusions should be, but I have changed my mind because of the importance of this step. Before starting the
copying of the design and doing some measurements the following things should be kept always in attention.
Dangerous voltages could appear at the shield nodes, connections and parts. As the shield is designed in the presented implementation, it can be used for
measuring of voltages until 100 V. These voltages are dangerous for the life!!! . Even voltages close to 30 V in some cases can cause death. For this reason,
all requirements concerning the work with high voltages must be met:
You should use only insulated leads. You should avoid touching of the shield parts (especially the banana socket for voltage measurements and the input
resistor). You should keep your table clean - no metal parts or instruments shall be placed close to the shield because they can create short circuit between
the shield parts. You should not touch any of the banana sockets and plugs during high voltage measurements. (The banana socket for the voltage
measurement is not insulated in any way and touching it during operation can have deadly results!!!).
I would like to thank the user "granz" (see the comments), who reminded us about the following: When using the "Arduino" based DMM connected to the
computer, you should be aware of that the ground potentials of the DMM is the same as the ground potential of you PC, and you should measure voltages
and currents of device or unit, which have the same ground potential. In other case you risk to damage both - you computer and your device. If you are not
sure, what the ground potential of your device is - then it is recommended to use the "Arduino" based DMM in standalone mode - supplied by battery pack or
isolated DC/DC converter.
.....
The "Eagle" design files are attached to the project and are available for download and free use.
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. the footprint supports two type of packages SO08 and SOIC08
2. Two type of transistor packages can be used
Image Notes
1. See remark 2
2. See remark 1
3. See remark 3
File Downloads
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Step 9: PCB's...
The PCB's were ordered in the fab and after two weeks they came.
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. pin header soldered for comfortability
Image Notes
1. Evolution - the best will survive
2. quite precise :-)
Image Notes
1. Still two resistor are missing, but they are on the way...
2. not neccessary
3. also not necessary
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. NPN BJT order
File Downloads
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
File Downloads
Modeselect.zip (3 KB)
[NOTE: When saving, if you see .tmp as the file ext, rename it to 'Modeselect.zip']
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
On the pictures can be seen the functioning DMM in different modes and functions.
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. The shield withot LCD - uses the serial monitor of arduino IDE
File Downloads
DMM.zip (2 KB)
[NOTE: When saving, if you see .tmp as the file ext, rename it to 'DMM.zip']
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. The power supply voltage
Image Notes
1. The battery measured by the standard DMM - this is the target value
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. Initially measured voltage - before the trimming
Image Notes
1. The measured voltage after thr software trimming
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. http://www.instructables.com/id/LASER-diode-driver/
Image Notes
1. Not very good - makes problems, which we have to solve by the software
trimming
Image Notes
1. Preliminary measurement. The seconady measurement gave 189.9 mA
2. DYI power supply unit
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
This voltage - for simplicity I will write Vce is calculated using the following formula:
Vce = Vsupply - Vzener - Vr, where
Vsupply is the measured supply voltage of the "Arduino" board;
Vzener - the voltage drop over D2 (measured at step 1 above);
Vr - the voltage over the resistor - measured at step 3. For the first case is 0 V.
The calculated Vce and the corresponding currents are filled in excel file.(picture 3). Graph is done, and trendline corresponding to the date is shown (straight line). The
equation of the trendline is displayed - it will be used for the calculations.
In my case Ir = Ice = 0.0081*Vce+2.4773 - using this formula we can calculate always the current Ice flowing through the measured resistor and also function of the
voltage over the resistor, which is sampled by the ADC. Here is taken the presumption, that the dependence Ice of Vce is linear, what is commonly true.
Finally we calculate the resistance using the Ohm formula:
R = Vr / Ir
here is how the modified code looks like:
.......
float V_zener = 2.16;
float Vr = 0;
float Vce = 0;
float Ice = 0;
float coeff_v100 = 1.01;
float coeff_v30 = 1.011;
float coeff_v10 = 1.018;
float coeff_A_gain = 0.992174;
float coeff_A_res = 0.98315;
float opamp_offset = 0.000767;
volatile unsigned long last_millis = 0;
void R_1000() {
digitalWrite(curr_mode, HIGH);
delay(20);
lcd.clear();
lcd.print("Ohmmeter R=<1000");
Serial.println("* Ohmmeter mode - Range 0 - 1000 Ohm *");
lcd.setCursor(0, 1);
acc_value = 0;
for (int i=0; i <= 15; i++)
{ curr_value = analogRead(A2);
acc_value = acc_value + curr_value; }
curr_value = int(acc_value/16);
if (curr_value >= 513) { meas_overflow(); }
else { Vr = ( curr_value*supply )/1024;
Vce = supply - V_zener - Vr; Ice = 0.0081*Vce + 2.4773;
disp_res = Vr / Ice * 1000;
lcd.print(" R = ");
lcd.print(disp_res, 1);
lcd.print(" Ohm");
Serial.print("* R = ");
Serial.print(disp_res, 1);
Serial.println(" Ohm");
delay(250); }
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
As conclusion:
The presented multimeter is designed in the simplest way, trying to embed as much functions as possible. This approach brings some undesired features - the input
resistance is very low, the accuracy in comparison with the standard fabric DMM is lower. The reasons for that are :
the matching of the discrete elements (mainly resistors);
not enough accuracy of the microcontroller ADC - it is 10 bit, but allows error of 3-4 LSB;
the digital noise affecting the analog measurements;
not well fixed supply voltage (it can vary when the DMM is connected to different computers), which serves as voltage reference for the ADC converter;
...etc.
Despite all disadvantages, in this work was shown, how using software tricks, the accuracy of such device can be drastically increased - starting with multiple ADC
readings, their averaging and all additional software trimming. I think that similar project would be interesting for students willing to get deep inside the data measuring
and processing theory. It can be used also as DMM replacement for home electronic projects, which do net require more complicated measurement tools.
Thank you for the attention!
Image Notes
1. The cuurent without resistance
2. We measure the current sourced from the PNP/PMOS to the ground
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/
Image Notes
1. The current with the maximum resistance for the range
2. 1 KOhm resistance put in series with the ampere meter
Advertisements
http://www.instructables.com/id/Digital-multimeter-shield-for-Arduino/