ARDUINO HX711 жин мэдрэгч ADC модулийн хэрэглэгчийн гарын авлага
Өргөдөл ExampArduino Uno-тай:
Ихэнх ачааллын үүр нь улаан, хар, ногоон, цагаан гэсэн дөрвөн утастай. HX711 самбар дээр та E+/E-, A+/A- болон B+/Bconnections-ийг олох болно. Дараах хүснэгтийн дагуу ачааллын үүрийг HX711 мэдрэгчийн самбарт холбоно.
HX711 Ачааллын мэдрэгч самбар | Ачааллын үүрний утас |
E+ | Улаан |
E- | Хар |
A+ | Ногоон |
A- | Цагаан |
B- | Ашиглагдаагүй |
B+ | Ашиглагдаагүй |
HX711 мэдрэгч | Arduino Uno |
GND | GND |
DT | D3 |
SCK | D2 |
VCC | 5V |
HX711 модуль нь 5V-д ажилладаг бөгөөд холболт нь цуваа SDA болон SCK зүү ашиглан хийгддэг.
Ачааллын үүрэнд жинг хаана хэрэглэх вэ?
Та ачаалах нүдэн дээр сум харагдаж байгааг харж болно. Энэ сум нь ачааны үүрэнд үзүүлэх хүчний чиглэлийг харуулж байна. Та металл тууз ашиглан зурагт үзүүлсэн зохицуулалтыг хийж болно. Боолт ашиглан ачааны үүрэнд металл туузыг холбоно.
Arduino UNO-г кг-аар жинг хэмжих програмчлал:
Дээрх 1-р зурагт үзүүлсэн шиг схемийг холбоно.
Энэхүү мэдрэгч модулийг Arduino хавтангуудтай ажиллахын тулд бидэнд ачааллыг бууруулах боломжтой HX711 номын сан хэрэгтэй. https://github.com/bogde/HX711.
HX711-ийг объектын жинг нарийн хэмжихэд ашиглахын өмнө эхлээд тохируулга хийх шаардлагатай. Доорх алхам танд тохируулга хэрхэн хийхийг харуулах болно.
1 Алхам: Тохируулгын тойм зураг
Доорх ноорог зургийг Arduino Uno Board-д байршуулна уу
/* Handson Technology www.handsontec.com
* 29 оны арванхоёрдугаар сарын 2017
* Жинг кг-аар хэмжихийн тулд Cell HX711 модулийн интерфейсийг Arduino-д суулгаарай
Arduino
зүү
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Arduino Uno дээрх ихэнх зүү нь DOUT/CLK-тэй нийцдэг.
HX711 хавтанг 2.7V-оос 5V хүртэл тэжээх боломжтой тул Arduino 5V-ийн хүч сайн байх ёстой.
*/
#include “HX711.h” //Та arduino номын сангийн хавтсандаа энэ номын сан байх ёстой
#DOUT 3-г тодорхойлох
#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 болгож дахин тохируулна уу
урт тэг хүчин зүйл = масштаб.унших_дундаж(); //Үндсэн уншлага авах
Serial.print("Тэг хүчин зүйл: "); //Энэ нь масштабыг таслах хэрэгцээг арилгахад ашиглагдаж болно.
Байнгын хэмжээний төслүүдэд ашигтай.
Serial.println(тэг_фактор);
}
//================================================ =======================================
// LOOP
//================================================ =======================================
хүчингүй давталт() {
масштаб.тогтоох_масштаб(шалгалт тохируулгын_фактор); //Энэ тохируулгын коэффициентийг тохируулна уу
Serial.print("Уншаж байна: ");
Цуваа.хэвлэх(scale.get_units(), 3);
Serial.print(” кг”); //Үүнийг кг болгож өөрчил, хэрэв та тохируулгын коэффициентийг дахин тохируулна уу
Эрүүл ухаантай хүн шиг SI нэгжийг дагаж мөрдөөрэй
Serial.print(" калибровкын_фактор: ");
Цуваа.хэвлэх(шалгалт тохируулгын_фактор);
Цуваа.println ();
if(Serial.available())
{
char temp = Serial.read();
if(temp == '+' || temp == 'a')
тохируулгын_фактор += 10;
өөр if(temp == '-' || temp == '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 Board-д байршуулна уу.
/* Handson Technology www.handsontec.com
* 29 оны арванхоёрдугаар сарын 2017
* Жинг кг-аар хэмжихийн тулд Cell HX711 модулийн интерфейсийг Arduino-д суулгаарай
Arduino
зүү
2 -> HX711 CLK
3 -> DOUT
5V -> VCC
GND -> GND
Arduino Uno дээрх ихэнх зүү нь DOUT/CLK-тэй нийцдэг.
HX711 хавтанг 2.7V-оос 5V хүртэл тэжээх боломжтой тул Arduino 5V-ийн хүч сайн байх ёстой.
*/
#include “HX711.h” //Та arduino номын сангийн хавтсандаа энэ номын сан байх ёстой
#DOUT 3-г тодорхойлох
#CLK 2-г тодорхойлох
HX711 масштаб(DOUT, CLK);
//Энэ шалгалт тохируулгын хүчин зүйлийг ачааллын үүрэнд тохируулан өөрчилнө үү, олон хүн үүнийг хэдэн мянгаар өөрчлөх шаардлагатай.
хөвөх тохируулгын_фактор = -96650; //-106600 миний 40кг хамгийн их жингийн тохиргоонд ажилласан
//================================================ ============================================
// ТОХИРУУЛАХ
//================================================ ============================================
хүчингүй тохиргоо() {
Serial.begin(9600);
Serial.println("Т дарахын тулд дарна уу");
scale.set_scale(-239250); //Эхний ноорогоос авсан шалгалт тохируулгын коэффициент
scale.tare(); // Масштабыг 0 болгож дахин тохируулна уу
}
//================================================ ============================================
// LOOP
//================================================ ============================================
хүчингүй давталт() {
Serial.print("Жин: ");
Цуваа.хэвлэх(scale.get_units(), 3); //3 хүртэлх аравтын цэг
Serial.println(” кг”); //Үүнийг кг болгож өөрчил, хэрэв та фунтыг дагавал тохируулгын коэффициентийг дахин тохируулна уу
if(Serial.available())
{
char temp = Serial.read();
if(temp == 't' || temp == 'T')
scale.tare(); //Хуваарийг тэг болгож дахин тохируулна
}
}
//================================================ ============================================
Зургийг амжилттай байршуулсны дараа Serial Monitor-ийг нээнэ үү. Хэмжилтийн бодит утгыг харуулсан доорх цонх гарч ирнэ.
Та командын талбарт "t" эсвэл "T" товчийг оруулаад "Илгээх" товчийг дарснаар уншилтыг 0.000 кг (ачаалалгүй) болгож болно. Хэмжилтийн утгыг харуулсан дэлгэцийн доор 0.000 кг болно.
Ачааллын үүрэн дээр объект байрлуулбал бодит жинг харуулах ёстой. 191 грамм жинтэй объектыг байрлуулахдаа жингийн дэлгэцийг доор харуулав (шалгалт тохируулгын 1-р алхамд ашигласан).
Өө! Та гурван аравтын цэгийн нарийвчлалтай жинлүүрийг барьсан байна!
Баримт бичиг / нөөц
![]() |
ARDUINO HX711 жин мэдрэгч ADC модуль [pdf] Хэрэглэгчийн гарын авлага HX711 жин хэмжигч ADC модуль, HX711 жин мэдрэгч ADC модуль, мэдрэгч ADC модуль, ADC модуль, модуль |