From 6849f8ca1cfbe0f044ee188bc4a4f86c528a4088 Mon Sep 17 00:00:00 2001 From: Fisch Date: Thu, 18 Feb 2021 22:28:46 +0100 Subject: [PATCH] test calibration --- src/main.cpp | 63 +++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 55 insertions(+), 8 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 9a93d17..7f521b8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -11,18 +11,65 @@ HX711 scale; void setup() { Serial.begin(115200); scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); + + + //calibration + Serial.println("setup"); + scale.set_scale(23805); //calibrated with 2.25kg weight + delay(500); + scale.tare(); + delay(2000); + Serial.println("tared. measuring..."); + //after this taring put known weight on scale and get value from scale.get_units(10). then devide this value by the weight and use this number for set_scale(NUMBER) + + + /* + 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(2280.f); // 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() { - if (scale.wait_ready_retry(10)) { - long reading = scale.read(); - Serial.print("HX711 reading: "); - Serial.println(reading); - } else { - Serial.println("HX711 not found."); - } + Serial.print("reading:\t"); + Serial.println(scale.get_units(10)); - delay(1500); + delay(100); + + /* + scale.power_down(); // put the ADC in sleep mode + delay(5000); + scale.power_up();*/ } \ No newline at end of file