Soy un nuevo usuario en el mundo electrónico. Intenté hackear la escala de peso de mi baño pero no tuve éxito. Hay un gran tutorial que seguí:
mis partes:
- báscula de baño barata (4 sensores de peso de 50 Kg de carga)
- Módulo de sensor de pesaje de canal dual HX711 (como aquí: enlace )
- Combinador de sensor de carga SparkFun ( enlace )
- Arduino esp-32
¿Podría alguien que tenga más experiencia echar un vistazo a mi solución?
Lo verifiqué con el multímetro y todos los cables están bien.
paraguardarellugar,solomostréunsensordecargaconectado,pero3acontinuaciónconectédelamismamanera.
Estoyrecibiendosolo:
onereading:0.0|average:0.00onereading:0.0|average:0.00
¿Quépuedeserunproblema?Estoytratandodehacerunasemanaenteracondiferentesarduinosysinéxito:(
códigoqueestoyusando:
#include"HX711.h"
#include "soc/rtc.h"
HX711 scale;
void setup() {
Serial.begin(115200);
rtc_clk_cpu_freq_set(RTC_CPU_FREQ_80M);
Serial.println("Diska");
Serial.println("Initializing the scale");
// parameter "gain" is ommited; the default value 128 is used by the library
// HX711.DOUT - pin #A1
// HX711.PD_SCK - pin #A0
scale.begin(26, 25);
Serial.println("Before setting up the scale:");
Serial.print("read: \t\t");
Serial.println(scale.read()); // print a raw reading from the ADC
Serial.print("read average: \t\t");
Serial.println(scale.read_average(20)); // print the average of 20 readings from the ADC
Serial.print("get value: \t\t");
Serial.println(scale.get_value(5)); // print the average of 5 readings from the ADC minus the tare weight (not set yet)
Serial.print("get units: \t\t");
Serial.println(scale.get_units(5), 1); // print the average of 5 readings from the ADC minus tare weight (not set) divided
// by the SCALE parameter (not set yet)
scale.set_scale(233.82); // this value is obtained by calibrating the scale with known weights; see the README for details
scale.tare(); // reset the scale to 0
Serial.println("After setting up the scale:");
Serial.print("read: \t\t");
Serial.println(scale.read()); // print a raw reading from the ADC
Serial.print("read average: \t\t");
Serial.println(scale.read_average(20)); // print the average of 20 readings from the ADC
Serial.print("get value: \t\t");
Serial.println(scale.get_value(5)); // print the average of 5 readings from the ADC minus the tare weight, set with tare()
Serial.print("get units: \t\t");
Serial.println(scale.get_units(5), 1); // print the average of 5 readings from the ADC minus tare weight, divided
// by the SCALE parameter set with set_scale
Serial.println("Readings:");
}
void loop() {
Serial.print("one reading:\t");
Serial.print(scale.get_units(), 1);
Serial.print("\t| average:\t");
Serial.println(scale.get_units(10), 1);
int ww = (int)(scale.get_units(10) + 0.5);
Serial.println(ww);
scale.power_down(); // put the ADC in sleep mode
delay(100);
scale.power_up();
}