Кіраўніцтва карыстальніка модуля АЦП датчыкаў вагі ARDUINO HX711
Ужыванне Example з Arduino Uno:
Большасць датчыкаў мае чатыры правады: чырвоны, чорны, зялёны і белы. На плаце HX711 вы знойдзеце злучэнні E+/E-, A+/A- і B+/B. Падключыце тензодатчик да платы датчыка HX711 у адпаведнасці з наступнай табліцай:
Плата датчыка нагрузкі HX711 | Провад нагрузкі |
E+ | Чырвоны |
E- | Чорны |
A+ | Зялёны |
A- | Белы |
B- | Нявыкарыстаны |
B+ | Нявыкарыстаны |
Датчык HX711 | Arduino Uno |
GND | GND |
DT | D3 |
SCK | D2 |
VCC | 5V |
Модуль HX711 працуе пры напрузе 5 В, а сувязь ажыццяўляецца з дапамогай паслядоўных штыфтоў SDA і SCK.
Дзе прыкласці вагу да тэнзамеру?
Вы бачыце, што на датчыку нагрузкі паказана стрэлка. Гэтая стрэлка паказвае кірунак сілы на датчык нагрузкі. Вы можаце зрабіць кампазіцыю, паказаную на малюнку, выкарыстоўваючы металічныя палоскі. Замацуеце металічную паласу на тэнзаметрыі балтамі.
Праграмаванне Arduino UNO для вымярэння вагі ў кг:
Падключыце схему, як паказана на малюнку 1 вышэй.
Каб гэты модуль датчыка працаваў з платамі Arduino, нам патрэбна бібліятэка HX711, якая можа спампоўваць з https://github.com/bogde/HX711.
Перш чым HX711 можна будзе выкарыстоўваць для дакладнага вымярэння вагі аб'екта, спачатку яго трэба адкалібраваць. Наступны крок пакажа вам, як выканаць каліброўку.
Крок 1: эскіз каліброўкі
Загрузіце прыведзены ніжэй эскіз на плату Arduino Uno
/* Тэхналогія Handson www.handsontec.com
* 29 снежня 2017 г
* Інтэрфейс модуля нагрузкі HX711 з Arduino для вымярэння вагі ў кг
Arduino
шпілька
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Большасць кантактаў на Arduino Uno будуць сумяшчальныя з DOUT/CLK.
Плата HX711 можа харчавацца ад 2.7 В да 5 В, так што харчаванне Arduino 5 В павінна быць у парадку.
*/
#include “HX711.h” //Вы павінны мець гэту бібліятэку ў тэчцы бібліятэкі Arduino
#define DOUT 3
#define CLK 2
Шкала HX711 (DOUT, CLK);
//Зменіце гэты каэфіцыент каліброўкі ў адпаведнасці з вашым тензодатчиком, як толькі вы выявіце, што гэта вам трэба
змяняць яго ў тысячах
каэфіцыент каліброўкі паплаўка = -96650; //-106600 спрацавала для маіх максімальных вагаў 40 кг
//=================================================== =========================================
// УСТАЛЯВАЦЬ
//=================================================== =========================================
несапраўдная ўстаноўка() {
Serial.begin(9600);
Serial.println(“Каліброўка HX711”);
Serial.println(“Выдаліць усю вагу з вагаў”);
Serial.println(“Пасля пачатку паказанняў пастаўце вядомую вагу на шалі”);
Serial.println(“Націсніце a,s,d,f, каб павялічыць каэфіцыент каліброўкі на 10,100,1000,10000
адпаведна”);
Serial.println(“Націсніце z,x,c,v, каб паменшыць каэфіцыент каліброўкі на 10,100,1000,10000
адпаведна”);
Serial.println(“Націсніце t для тары”);
scale.set_scale();
scale.tare(); //Скінуць шкалу да 0
доўгі zero_factor = scale.read_average(); //Атрымайце базавыя паказанні
Serial.print(“Нулявы каэфіцыент: “); //Гэта можа быць выкарыстана, каб пазбавіцца ад неабходнасці тарыраваць маштаб.
Карысна ў пастаянных маштабных праектах.
Serial.println(нулявы_каэфіцыент);
}
//=================================================== =========================================
// ПЯЦЛЯ
//=================================================== =========================================
несапраўдны цыкл() {
scale.set_scale(каэфіцыент_каліброўкі); // Адрэгуляваць гэты каэфіцыент каліброўкі
Serial.print(“Чытанне: “);
Serial.print(scale.get_units(), 3);
Serial.print("кг"); //Зменіце гэта на кг і паўторна адрэгулюйце каэфіцыент каліброўкі, калі хочаце
прытрымлівацца адзінак СІ як здаровы чалавек
Serial.print(”каэфіцыент_каліброўкі: “);
Serial.print(каэфіцыент_каліброўкі);
Serial.println();
калі (Serial.available())
{
char temp = Serial.read();
калі (temp == '+' || temp == 'a')
каэфіцыент_каліброўкі += 10;
інакш, калі (temp == '-' || temp == 'z')
каэфіцыент_каліброўкі -= 10;
інакш, калі (temp == 's')
каэфіцыент_каліброўкі += 100;
інакш, калі (temp == 'x')
каэфіцыент_каліброўкі -= 100;
інакш, калі (temp == 'd')
каэфіцыент_каліброўкі += 1000;
інакш, калі (temp == 'c')
каэфіцыент_каліброўкі -= 1000;
інакш, калі (temp == 'f')
каэфіцыент_каліброўкі += 10000;
інакш, калі (temp == 'v')
каэфіцыент_каліброўкі -= 10000;
інакш, калі (temp == 't')
scale.tare(); //Скінуць шкалу да нуля
}
}
//=================================================== ========================================
Зніміце любую нагрузку з датчыка нагрузкі. Адкрыйце паслядоўны манітор. Ніжэй павінна адкрыцца акно, у якім будзе паказана, што модуль паспяхова падключыўся да Arduino Uno.
Змесціце прадмет з вядомай вагой на тензодатчик. У гэтым выпадку аўтар выкарыстаў вядомую вагу 191 грам з датчыкам нагрузкі 10 кг. Паслядоўны манітор адлюструе лічбу вагі, як паказана ніжэй:
Нам трэба зрабіць каліброўку тут:
- Увядзіце літару "a, s, d, f" у поле каманд паслядоўнага манітора і націсніце кнопку "Адправіць", каб павялічыць каэфіцыент каліброўкі на 10, 100, 1000, 10000 адпаведна
- Увядзіце літару "z, x, c, v" у поле каманд паслядоўнага манітора і націсніце кнопку "Адправіць", каб паменшыць каэфіцыент каліброўкі на 10, 100, 1000, 10000 адпаведна.
Працягвайце рэгуляваць, пакуль паказанні не пакажуць фактычную вагу, размешчаную на датчыку нагрузкі. Запішыце значэнне «calibration_factor», у дадзеным выпадку «-239250» у эталоннай вазе аўтара 191 г з тензодатчиком 10 кг. Нам спатрэбіцца гэта значэнне для ўключэння ў наш другі эскіз для рэальнага вымярэння.
2-і крок: Канчатковы код для рэальнага вымярэння вагі
Перш чым загрузіць эскіз, нам трэба падключыць «каэфіцыент каліброўкі», атрыманы на першым этапе:
Загрузіце эскіз ніжэй на плату Arduino Uno пасля змены каэфіцыента маштабу:
/* Тэхналогія Handson www.handsontec.com
* 29 снежня 2017 г
* Інтэрфейс модуля нагрузкі HX711 з Arduino для вымярэння вагі ў кг
Arduino
шпілька
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Большасць кантактаў на Arduino Uno будуць сумяшчальныя з DOUT/CLK.
Плата HX711 можа харчавацца ад 2.7 В да 5 В, так што харчаванне Arduino 5 В павінна быць у парадку.
*/
#include “HX711.h” //Вы павінны мець гэту бібліятэку ў тэчцы бібліятэкі Arduino
#define DOUT 3
#define CLK 2
Шкала HX711 (DOUT, CLK);
//Зменіце гэты каэфіцыент каліброўкі ў адпаведнасці з вашым датчыкам нагрузкі, калі высветліцца, што вам трэба змяніць яго ў тысячах
каэфіцыент каліброўкі паплаўка = -96650; //-106600 спрацавала для маіх максімальных вагаў 40 кг
//=================================================== ================================================
// УСТАЛЯВАЦЬ
//=================================================== ================================================
несапраўдная ўстаноўка() {
Serial.begin(9600);
Serial.println(“Націсніце T, каб тарыраваць”);
scale.set_scale(-239250); //Каэфіцыент каліброўкі, атрыманы з першага эскіза
scale.tare(); //Скінуць шкалу да 0
}
//=================================================== ================================================
// ПЯЦЛЯ
//=================================================== ================================================
несапраўдны цыкл() {
Serial.print(“Вага: “);
Serial.print(scale.get_units(), 3); //Да 3 знакаў пасля коскі
Serial.println("кг"); //Зменіце гэта на кг і паўторна адрэгулюйце каэфіцыент каліброўкі, калі вы прытрымліваецеся фунтаў
калі (Serial.available())
{
char temp = Serial.read();
калі (temp == 't' || temp == 'T')
scale.tare(); //Скінуць шкалу да нуля
}
}
//=================================================== ================================================
Пасля паспяховай загрузкі эскіза адкрыйце Serial Monitor. Ніжэй павінна з'явіцца акно з рэальным вымяральным значэннем:
Вы можаце скінуць паказанне да 0.000 кг (без нагрузкі), увёўшы «t» або «T» у поле каманд і націснуўшы кнопку «Адправіць». Пад дысплеем, які паказвае значэнне меры, становіцца 0.000 кг.
Змесціце прадмет на тензодатчик, павінен адлюстравацца фактычны вага. Ніжэй паказана вага дысплея пры размяшчэнні аб'екта вагой 191 грам (выкарыстоўваецца на першым этапе для каліброўкі).
Ура! вы пабудавалі шалі з дакладнасцю да трох знакаў пасля коскі!
Дакументы / Рэсурсы
![]() |
Модуль АЦП датчыкаў вагі ARDUINO HX711 [pdfКіраўніцтва карыстальніка HX711 Модуль АЦП датчыкаў вагі, HX711, Модуль АЦП датчыкаў вагі, Модуль АЦП датчыкаў, Модуль АЦП, Модуль |