Hi guys, I have a question relating to the use of the HX711 with a strain gauge.
I’m using the green HX711 breakout board with an Arduino Nano to monitor one strain gauge mounted to a bracket for analysis. High tolerance, temperature stable resistors are used to complete the wheatstone bridge. The HX711 was calibrated to determine the correct scale factor and offset – as per the library documentation. The Nano works fine communicating with the HX711 and displays the output on my screen just fine. The code and the circuit work as expected.
Right after calibration, for an instant on/off loading situation, the HX711 seems to yield the proper results.
However, over a longer time (say 15 minutes), the HX711 seems to show problems with zero point drift. And more specifically, hysteresis of the readings. For example, I can calibrate the HX711 to show all the correct loads. I can display Load A, Load B, and Load C with acceptable accuracy – as long as A, B, and C are incrementally larger and added to the bracket.
The problem arises when I try to REMOVE the loads. So A->B->C works. C->B->A does NOT. If A is 100lb, B is 200lb, and C is 300lb, the HX711 works as weights are added. But if I start at 300lb and remove 100lb, expecting to arrive back at B – which is 200lb…..my reading is way off and terribly inconsistent. Sometimes I read 250lb. Sometimes 120lb.
So I investigated deeper and looked specifically at the raw data coming from the HX711 using the Scale.Read_Average(20) function. The readings definitely drift and I’m not sure why. The load calibration and application process only works ONCE – and when released, the readings DO NOT return to their original values. Zero is no longer zero. This, of course, affects any readings attempted AFTER the first calibration and the first load application/removal cycle.
I understand some people have implemented a Tare() function to reset the readings. I guess this works like a digital bathroom scale. You turn it on, it sets a zero (tares), you step on and add weight, it reads the weight, you step off….and the scale turns off. To measure again, you repeat the process.
Is it not possible to continuously measure with the HX711? I thought that once the system was "calibrated", it would continue to correctly measure the output of the bridge and thus the scaled load would be accurate and repeatable. If the HX711 cannot be used continuously, are there any alternative chips that can be used so seamlessly with Arduino?