Our old algebra teacher used to say, “You have to take what you know and use it to get what you don’t know.” That saying always reminds of us sensors that convert physical quantities into things our microcontrollers can measure. Sometimes the key to a project is knowing what kind of sensor will read the physical properties of the system you are interested in. If that physical property is weight, you can use what is known as a load cell. [DegrawSt] uses four 50 kg load cells to create a bathroom scale using an Arduino.
Load cells typically contain strain gauges that change resistance when deformed. This actually measures force, but if you mount them so they measure the force exerted by you standing on a platform, you get a scale. A load cell usually has four strain gauges in a bridge configuration. This causes a voltage across the bridge, although the output can be noisy and on the order of millivolts.
There are other types of load cells that use a piezoelectric material, hydraulics, pneumatics, or other technologies. However, the strain gauge cell is the most common. If you want more information about load cells, check out [Rick Sellens’] lecture on the topic, below.
To provide excitation to the load cells and measure the voltage output, you usually want to use an amplifier to condition the circuit. [DegrawSt] uses an HX711 chip on a breakout board to manage the cells. There’s a library for the Arduino already available and even some example code.
The four load cells allow the 50 kg sensors to read a person’s weight, up to 200 kg, anyway. The load cells themselves are in a bridge configuration which adds the weight on each cell together.