/**
* Complete project details at https://RandomNerdTutorials.com/arduino-load-cell-hx711/
*
* HX711 library for Arduino - example file
* https://github.com/bogde/HX711
*
* MIT License
* (c) 2018 Bogdan Necula
*
**/
//#include <Arduino.h>
/*
//เป็นการรันโค้ดหาค่าดิบเพื่อมาเปรียบเทียบเพื่อจะได้ค่าน้ำหนักจริงหน่วยเป็นกรัม
#include "HX711.h"
// HX711 circuit wiring
const int LOADCELL_DOUT_PIN = 7;
const int LOADCELL_SCK_PIN = 6;
HX711 scale;
void setup() {
Serial.begin(57600);
scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
}
void loop() {
if (scale.is_ready()) {
scale.set_scale();
Serial.println("Tare... remove any weights from the scale.");
delay(5000);
scale.tare();
Serial.println("Tare done...");
Serial.print("Place a known weight on the scale...");
delay(5000);
long reading = scale.get_units(10);
Serial.print("Result: ");
Serial.println(reading);
}
else {
Serial.println("HX711 not found.");
}
delay(1000);
}
//calibration factor will be the (reading)/(known weight)
*/
#include "HX711.h"
HX711 scale; // Создаём объект scale
#define DT 7 // Указываем номер вывода, к которому подключен вывод DT датчика HX711
#define SCK 6 // Указываем номер вывода, к которому подключен вывод SCK датчика HX711
float weight_of_standard = 10000; // Указываем эталонный вес
float units = 0.035274; // Указываем коэффициент для перевода из унций в граммы
float calibration_factor = 0; // Создаём переменную для значения калибровочного коэффициента
void setup()
{
Serial.begin(57600); // Инициируем работу с последовательным портом на скорости 57600 бод
scale.begin(DT, SCK); // Инициируем работу с платой HX711
scale.set_scale(); // Не калибруем полученные значения
scale.tare(); // Обнуляем вес на весах (тарируем)
Serial.println("You have 10 seconds to set your known load"); // Выводим в монитор порта текст
delay(10000); // Ждём 10 секунд
Serial.print("calibration factor: "); // Выводим текст в монитор последовательного порта
calibration_factor = scale.get_units(10) / (weight_of_standard); // Считываем значение с тензодатчика
Serial.println(calibration_factor); // Выводим в монитор порта значение корректирующего коэффициента
}
void loop() {}