Arduino Precision Scale
Hello guys, Lets have some fun building a high precision kitchen scale.
This should be straight forward to do, all codes attached for download.
In next step we going to go through what needs to be done to set all up and get this beauty working with precision.
Load cells are transducer that transforms force or pressure into electrical output. As you will see the middle of the loadcell is thinned with a hole and that point suffers deformation when a load is placed on the mount side. Now imagine that the right-side cell is mounted to the base and the left side is where the load is placed, this configuration deforms the strain gauge load cell because of the hole in the middle, this means When a load is placed on the load side of the load cell, the top part will suffer tension, and the bottom part will suffer compression and that is why the aluminium bar bends downward on the left side.
If we measure this deformation, we can measure the force that was applied to the aluminium block and that's exactly what we need.
Supplies
1. Arduino (Nano, Uno, Mega etc)
2. 16 x 2 LCD display
3. Some accurate weights
4. Jumper wires
5. Loadcell
6. HX711
7. 5V power supply
8. Scale Enclosure
Integration
The loadcell is basically a Wheatstone bridge. When you place the strain gauge in the Wheatstone bridge if the bridge is balanced, the voltage in the middle point should be zero. And when the strain gauge changes its resistance, it will unbalance the bridge, and the voltage will change. This is how the Wheatstone bridge converts resistance variations to voltage values.
But this voltage change is still very small, so to increase that, we need to use the HX711 module. HX711 is a 24-bit Differential ADC, in this way, we could measure very small voltage changes. it will give values from 0 to 2 exponential 24
Firstly, get all the parts wired up as you will be mounting all into your case. I use the Arduino Nano shown in the photo with all the PINOUT soldered to allow me easy manoeuvrable. Also make connection from the LCD display, I use the 4 pin I2C interface connectivity.
I first tested the circuit with a larger loadcell of up to 20KG capacity before using a 5Kg capacity loadcell, this is mainly for me to study the accuracy level of the device.
Test
Follow the schematic and connect all as indicated
Test Connection and Calibration
First step is to calibrate the load cell and store that value on EEPROM of the Arduino. find the file HX 711_ADC, then select the calibration code. Before uploading the code, place the balance on a stable plane surface. Upload the code and open the serial monitor. Change the baud rate to 572600. Now monitor ask to take the weight, for that, to press t and enter.
Place the known weight on the balance, in my case, that is 100g. After placing the known weight, type weight on the serial monitor, and hit enter.
Before assembling, run a proper testing process weight variety of weights if you can to be assured of its precision, if not recalibrate.
A good test for basic accuracy is to use some reference weights if you have any. So, for example, if you calibrate the scales with a 100g weight, then what readings do you get when weighing 1g, 10g and 1kg weights.
Downloads
Main Code
Upload the main code here and all should be good for assembling
Downloads
All Done
Now wrap things up and make it look sweeeetttttt......
Hope you learn something today?... if you encounter any challenge let me know. Adios