I have four load sensors (Link) hooked up to a combinator on a HX711 wheatstone bridge that is connected to a NodeMCU (ESP-12E).
I am using this library for accessing HX711 values.
It should be used for a permanent scale, so I had to figure out the offset and scale factors initially.
Recently I looked at the values history and noticed a strange pattern among the values:
The pattern looks like the value is increasing 5 times and then drops to a lower value.
I could low-pass the value with no trouble, but the pattern makes it look like there is something strange.
I thought already of a wiring problem, but to me the cables look OK.
Can anyone give me a hint of what could cause the strange pattern?
My code:
#include "HX711.h"
// HX711
HX711 hx711(D6, D5);
float weight = 0.0;
void setup()
{
Serial.begin(9600);
delay(200);
// HX711
hx711.set_scale(-12140.0);
hx711.set_offset(55000.0);
}
void loop()
{
hx711.power_up();
delay(500);
float w = hx711.get_units(3);
// if value is not ready to be read, retry until succeed
while (isnan(w)) {
delay(100);
w = hx711.get_units(3);
}
hx711.power_down();
// low pass filter the value
weight = w;
Serial.print("Weight: ");
Serial.println(weight);
delay(60000);
}
I have a similar setup and haven't seen results like this. I have found that those load cells are quite susceptible to drift with quite small changes in temperature. Have you got a thermostat in the room that is cycling the temperature every 5 - 6 minutes? On mine, as the temperature goes down the weight reading goes up.
I have had more luck with stability by reading the scale until I get a number of consecutive values that are within a given tolerance. This eliminates any spikes that may throw your average out, especially in an average of only three samples.
I habe a DHT22 sensor close to the load sensors that I am reading as well (not shown in code above).
Contrary to what I read on load sensors I found out that mine are sensitive to the inverse air humidity. Plotting the graph shows a clear similarity between air humidity and weight. I am trying to work out a formula to correct the value, but it's not good enough yet so I had a deeper look at the raw values.
Interestingly I couldn't find a clear correlation between temperature and weight reading. There are some similarities between the two but the humidity seems to be a bigger player in the equation.
Looking at the load sensors I can see that they have some white glue coating above the three cables that are used to measure the resistance. Maybe they let humidity flow through. Could adding a better (glue) coating maybe help isolating the sensors from humidity?
I think that after having a good base I can continue worling on my formula...
Can you please post a copy of your circuit, in CAD or a picture of a hand drawn circuit in jpg, png?
Can you post a picture of your project so we can see you component layout.