Кіраўніцтва карыстальніка модуля АЦП датчыкаў вагі ARDUINO HX711
Модуль АЦП датчыкаў вагі 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, Модуль АЦП датчыкаў вагі, Модуль АЦП датчыкаў, Модуль АЦП, Модуль

Спасылкі

Пакінуць каментар

Ваш электронны адрас не будзе апублікаваны. Абавязковыя для запаўнення палі пазначаны *