ARDUINO HX711 таразы сенсорлары ADC модулінің пайдаланушы нұсқаулығы
ARDUINO HX711 таразы сенсорлары ADC модулі

Өтінім МысampArduino Uno көмегімен:

Көптеген жүктеме ұяшығында төрт сым бар: қызыл, қара, жасыл және ақ. HX711 тақтасында сіз E+/E-, A+/A- және B+/Bconnections таба аласыз. Жүктеме ұяшығын HX711 сенсорлық тақтасына келесі кестеге сәйкес қосыңыз:

HX711 Жүктеме сенсорының тақтасыҰяшық сымын жүктеңіз
E+Қызыл
E-Қара
A+Жасыл
A-Ақ
B-Пайдаланылмаған
B+Пайдаланылмаған

Байланыс

HX711 сенсорыArduino Uno
GNDGND
DTD3
SCKD2
VCC5V

HX711 модулі 5 В кернеуінде жұмыс істейді және байланыс сериялық SDA және SCK түйреуіштері арқылы жүзеге асырылады.

Жүктеме ұяшығына салмақты қайда қолдану керек?
Ұяшықты жүктеуде көрсеткі көрсетілгенін көре аласыз. Бұл көрсеткі жүк ұяшығына түсетін күштің бағытын көрсетеді. Металл жолақтарды пайдаланып суретте көрсетілген орналасуды жасауға болады. Болттар арқылы жүк ұяшығына металл жолақты бекітіңіз.

Салмағы

Arduino UNO-ны кг-дағы салмақты өлшеуге бағдарламалау:

Жоғарыдағы 1-суретте көрсетілгендей схеманы қосыңыз.
Бұл сенсорлық модуль Arduino тақталарымен жұмыс істеуі үшін бізге HX711 кітапханасы қажет, ол жүктеуді төмендетеді. https://github.com/bogde/HX711.
Нысанның салмағын дәл өлшеу үшін HX711 құрылғысын пайдаланбас бұрын, алдымен оны калибрлеу керек. Төмендегі қадам сізге калибрлеуді қалай орындау керектігін көрсетеді.

1-қадам: калибрлеу эскизі
Төмендегі эскизді Arduino Uno тақтасына жүктеңіз

/* Handson Technology www.handsontec.com
* 29 желтоқсан 2017 ж
* Салмақты кг-мен өлшеу үшін Arduino-мен HX711 ұяшығы модулінің интерфейсін жүктеңіз
Arduino
түйреуіш
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Arduino Uno-дағы кез келген түйреуіш DOUT/CLK-мен үйлесімді болады.
HX711 тақтасын 2.7 В-тан 5 В-қа дейін қуаттандыруға болады, сондықтан Arduino 5 В қуаты жақсы болуы керек.
*/
#include “HX711.h” //Ардуино кітапханасы қалтасында бұл кітапхана болуы керек
#DOUT 3-ті анықтаңыз
#CLK 2 анықтау
HX711 шкаласы(DOUT, CLK);
//Бұл калибрлеу коэффициентін жүк ұяшығына сәйкес өзгертіңіз, ол сізге көп қажет болған кезде
оны мыңдаған түрлендіріңіз
float calibration_factor = -96650; //-106600 менің 40Кг макс шкала орнатуым үшін жұмыс істеді
//================================================ =======================================
// ОРНАТУ
//================================================ =======================================
жарамсыз орнату() {
Serial.begin(9600);

Serial.println («HX711 Calibration»);
Serial.println («Барлық салмақты таразыдан алып тастау»);
Serial.println («Оқылымдар басталғаннан кейін таразыға белгілі салмақты қойыңыз»);
Serial.println(“Калибрлеу коэффициентін 10,100,1000,10000 арттыру үшін a,s,d,f пернелерін басыңыз.
тиісінше»);
Serial.println(“Калибрлеу коэффициентін 10,100,1000,10000 азайту үшін z,x,c,v пернелерін басыңыз
тиісінше»);
Serial.println («Тара үшін t түймесін басыңыз»);
scale.set_scale();
scale.tare(); // Масштабты 0-ге қалпына келтіріңіз
ұзын нөлдік_фактор = scale.read_average(); //Базалық оқуды алыңыз
Serial.print («Нөлдік фактор: «); //Бұны шкаланы кесу қажеттілігін жою үшін пайдалануға болады.
Тұрақты ауқымды жобаларда пайдалы.
Serial.println(нөл_фактор);
}
//================================================ =======================================
// LOOP
//================================================ =======================================
void цикл() {
scale.set_scale(калибрлеу_факторы); //Осы калибрлеу коэффициентіне реттеңіз
Serial.print («Оқу: «);
Serial.print(scale.get_units(), 3);
Serial.print(” кг”); //Бұны кг-ға өзгертіңіз және қажет болса, калибрлеу коэффициентін қайта реттеңіз
СИ бірліктерін есі дұрыс адам сияқты орындаңыз
Serial.print(” калибрлеу_факторы: “);
Serial.print(калибрлеу_факторы);
Serial.println ();
if(Serial.available())
{
char temp = Serial.read();
егер(температура == '+' || температура == 'a')
калибрлеу_факторы += 10;
басқа if(температура == '-' || темп == 'z')
калибрлеу_факторы -= 10;
басқа болса (температура == 's')
калибрлеу_факторы += 100;
басқа болса (температура == 'x')
калибрлеу_факторы -= 100;
басқа болса (температура == 'd')
калибрлеу_факторы += 1000;
басқа болса (температура == 'c')
калибрлеу_факторы -= 1000;
басқа болса (температура == 'f')
калибрлеу_факторы += 10000;
басқа болса (температура == 'v')
калибрлеу_факторы -= 10000;
басқа болса (температура == 't')
scale.tare(); //масштабты нөлге қалпына келтіріңіз
}
}
//================================================ ======================================

Жүктеме сенсорынан кез келген жүктемені алып тастаңыз. Сериялық мониторды ашыңыз. Төмендегі терезе модульдің Arduino Uno-ға сәтті қосылғанын көрсететін ашылуы керек.

Конфигурация

Белгілі салмақ нысанын жүк ұяшығына қойыңыз. Бұл жағдайда автор 191 кг жүк ұяшығымен 10 грамм белгілі салмақты пайдаланды. Сериялық монитор төменде көрсетілгендей кейбір салмақ сандарын көрсетеді:
Конфигурация

Мұнда калибрлеуді жасау керек:

  • Сериялық монитордың пәрмен кеңістігіне «a, s, d, f» әрпін енгізіп, калибрлеу коэффициентін тиісінше 10, 100, 1000, 10000 арттыру үшін «Жіберу» түймесін басыңыз.
  • Сериялық монитордың пәрмен кеңістігіне «z, x, c, v» әрпін енгізіп, калибрлеу коэффициентін тиісінше 10, 100, 1000, 10000 азайту үшін «Жіберу» түймесін басыңыз.
    Конфигурация

Көрсеткіш жүктеме ұяшығына қойылған нақты салмақты көрсеткенше реттеуді жалғастырыңыз. «Калибрлеу_факторы» мәнін жазып алыңыз, бұл жағдайда 239250 кг жүк ұяшығы бар авторлық салмағы 191 г анықтамасында «-10». Бұл мәнді нақты өлшеу үшін екінші эскизге қосу үшін қажет болады.

2-қадам: Нақты салмақты өлшеудің соңғы коды
Эскизді жүктеп салмас бұрын, біз 1-қадамда алынған «калибрлеу коэффициентін» қосуымыз керек:
Орнату

Масштаб коэффициентін өзгерткеннен кейін төмендегі эскизді Arduino Uno тақтасына жүктеңіз:

/* Handson Technology www.handsontec.com
* 29 желтоқсан 2017 ж
* Салмақты кг-мен өлшеу үшін Arduino-мен HX711 ұяшығы модулінің интерфейсін жүктеңіз
Arduino
түйреуіш
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Arduino Uno-дағы кез келген түйреуіш DOUT/CLK-мен үйлесімді болады.
HX711 тақтасын 2.7 В-тан 5 В-қа дейін қуаттандыруға болады, сондықтан Arduino 5 В қуаты жақсы болуы керек.
*/
#include “HX711.h” //Ардуино кітапханасы қалтасында бұл кітапхана болуы керек
#DOUT 3-ті анықтаңыз
#CLK 2 анықтау
HX711 шкаласы(DOUT, CLK);
//Осы калибрлеу коэффициентін жүк ұяшығына сәйкес өзгертіңіз, ол табылған кезде сізге мыңдаған өзгерту қажет.
float calibration_factor = -96650; //-106600 менің 40Кг макс шкала орнатуым үшін жұмыс істеді
//================================================ =============================================
// ОРНАТУ
//================================================ =============================================
жарамсыз орнату() {
Serial.begin(9600);
Serial.println("Тазалау үшін T түймесін басыңыз");
scale.set_scale(-239250); //Бірінші эскизден алынған калибрлеу коэффициенті
scale.tare(); // Масштабты 0-ге қалпына келтіріңіз
}
//================================================ =============================================
// LOOP
//================================================ =============================================
void цикл() {
Serial.print («Салмақ: «);
Serial.print(scale.get_units(), 3); //3 ондық үтірге дейін
Serial.println(” кг”); //Бұны кг-ға өзгертіңіз және фунтқа сай болсаңыз, калибрлеу коэффициентін қайта реттеңіз
if(Serial.available())
{
char temp = Serial.read();
егер(температура == 't' || температура == 'T')
scale.tare(); //масштабты нөлге қалпына келтіріңіз
}
}
//================================================ =============================================

Эскизді сәтті жүктеп салғаннан кейін Сериялық мониторды ашыңыз. Нақты өлшем мәнін көрсететін төмендегі терезе пайда болуы керек:
Конфигурация

Пәрмен кеңістігіне «t» немесе «T» пернелерін енгізу арқылы көрсеткішті 0.000 кг (жүктемесіз») қалпына келтіруге болады және «Жіберу» түймесін басыңыз. Өлшеу мәнін көрсететін төменгі дисплей 0.000 кг болады.
Конфигурация

Нысанды жүк ұяшығына қойыңыз, нақты салмақ көрсетілуі керек. Төменде 191 грамм объектіні қойған кездегі салмақ дисплейі берілген (калибрлеу үшін 1-қадамда пайдаланылады).
Конфигурация

Ура! сіз үш ондық бөлшек дәлдігімен таразы құрастырдыңыз!

Құжаттар / Ресурстар

ARDUINO HX711 таразы сенсорлары ADC модулі [pdf] Пайдаланушы нұсқаулығы
HX711 салмақ сенсорлары ADC модулі, HX711, салмақ сенсорлары ADC модулі, сенсорлар ADC модулі, ADC модулі, модулі

Анықтамалар

Пікір қалдырыңыз

Электрондық пошта мекенжайыңыз жарияланбайды. Міндетті өрістер белгіленген *