เซ็นเซอร์ชั่งน้ำหนัก ARDUINO HX711 คู่มือผู้ใช้โมดูล ADC
โมดูล ADC เซ็นเซอร์ชั่งน้ำหนัก ARDUINO HX711

ใบสมัครampเลอกับ Arduino Uno:

โหลดเซลล์ส่วนใหญ่มีสายไฟสี่เส้น: แดง ดำ เขียว และขาว บนบอร์ด HX711 คุณจะพบการเชื่อมต่อ E+/E-, A+/A- และ B+/B เชื่อมต่อโหลดเซลล์กับบอร์ดเซ็นเซอร์ HX711 ตามตารางต่อไปนี้:

บอร์ดเซ็นเซอร์โหลด HX711 โหลดเซลล์ลวด
E+ สีแดง
E- สีดำ
A+ สีเขียว
A- สีขาว
B- ไม่ได้ใช้
B+ ไม่ได้ใช้

การเชื่อมต่อ

เซ็นเซอร์ HX711 อาร์ดูโน่ ยูโน่
ก.ย.ด. ก.ย.ด.
DT D3
SCK D2
วีซีซี 5V

โมดูล HX711 ทำงานที่ 5V และการสื่อสารเสร็จสิ้นโดยใช้พิน SDA และ SCK แบบอนุกรม

จะใส่น้ำหนักบนโหลดเซลล์ได้ที่ไหน
คุณจะเห็นลูกศรปรากฏบนโหลดเซลล์ ลูกศรนี้แสดงทิศทางแรงบนโหลดเซลล์ คุณสามารถจัดเรียงตามภาพโดยใช้แถบโลหะ ติดแถบโลหะบนโหลดเซลล์โดยใช้สลักเกลียว

น้ำหนัก

การเขียนโปรแกรม Arduino UNO เพื่อวัดน้ำหนักเป็น KG:

เชื่อมต่อแผนผังดังแสดงในรูปที่ 1 ด้านบน
เพื่อให้โมดูลเซ็นเซอร์นี้ทำงานร่วมกับบอร์ด Arduino ได้ เราจำเป็นต้องมีไลบรารี HX711 ซึ่งสามารถดาวน์โหลดได้ https://github.com/bogde/HX711.
ก่อนที่จะสามารถใช้ HX711 เพื่อวัดวัตถุที่ชั่งน้ำหนักได้อย่างแม่นยำ จะต้องปรับเทียบก่อน ขั้นตอนด้านล่างจะแสดงวิธีการปรับเทียบ

1 ขั้นตอน: ร่างการสอบเทียบ
อัปโหลดภาพร่างด้านล่างไปยังบอร์ด Arduino Uno

/* เทคโนโลยี Handson www.handsontec.com
* 29 ธันวาคม 2017
* โหลดเซลล์ HX711 โมดูลเชื่อมต่อกับ Arduino เพื่อวัดน้ำหนักเป็นกิโลกรัม
อาร์ดูอิโน่
เข็มหมุด
2 -> HX711 ซีแอลเค
3 -> ดับ
5V -> วีซีซี
GND -> GND
พินส่วนใหญ่บน Arduino Uno จะเข้ากันได้กับ DOUT/CLK
บอร์ด HX711 สามารถจ่ายไฟได้ตั้งแต่ 2.7V ถึง 5V ดังนั้นไฟ Arduino 5V ก็น่าจะใช้ได้
*/
#include “HX711.h” //คุณต้องมีไลบรารีนี้ในโฟลเดอร์ไลบรารี Arduino ของคุณ
#กำหนด DOUT3
#กำหนด CLK2
สเกล HX711(DOUT, CLK);
//เปลี่ยนปัจจัยการสอบเทียบนี้ตามโหลดเซลล์ของคุณเมื่อพบว่าคุณต้องการจำนวนมาก
แปรผันเป็นพัน
ลอย calibration_factor = -96650; //-106600 ใช้งานได้กับการตั้งค่าเครื่องชั่งสูงสุด 40Kg ของฉัน
-
// ติดตั้ง
-
การตั้งค่าว่าง() {
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 เพื่อภาชนะ");
ขนาด.set_scale();
ขนาด.ภาชนะ(); //รีเซ็ตมาตราส่วนเป็น 0
ยาว zero_factor = scale.read_average(); //รับการอ่านพื้นฐาน
Serial.print("ปัจจัยศูนย์:"); //สามารถใช้เพื่อขจัดความจำเป็นในการชั่งน้ำหนักเครื่องชั่ง
มีประโยชน์ในโครงการขนาดถาวร
Serial.println(zero_factor);
}
-
// วนซ้ำ
-
ลูปว่าง() {
scale.set_scale(calibration_factor); // ปรับตามปัจจัยการสอบเทียบนี้
Serial.print("การอ่าน:");
Serial.print(scale.get_units(), 3);
Serial.print(”กก.”); //เปลี่ยนเป็นกิโลกรัมและปรับปัจจัยการสอบเทียบอีกครั้งหากคุณ
ติดตามหน่วย SI อย่างคนมีสติ
Serial.print(” calibration_factor: “);
Serial.พิมพ์(calibration_factor);
อนุกรม. println ();
ถ้า(Serial.available())
{
ถ่านชั่วคราว = Serial.read();
ถ้า (อุณหภูมิ == '+' || อุณหภูมิ == 'a')
การสอบเทียบ_ปัจจัย += 10;
อย่างอื่นถ้า (อุณหภูมิ == '-' || อุณหภูมิ == 'z')
calibration_factor -= 10;
อย่างอื่นถ้า (อุณหภูมิ == 's')
การสอบเทียบ_ปัจจัย += 100;
อย่างอื่นถ้า (อุณหภูมิ == 'x')
calibration_factor -= 100;
อย่างอื่นถ้า (อุณหภูมิ == 'd')
การสอบเทียบ_ปัจจัย += 1000;
อย่างอื่นถ้า (อุณหภูมิ == 'c')
calibration_factor -= 1000;
อย่างอื่นถ้า (อุณหภูมิ == 'f')
การสอบเทียบ_ปัจจัย += 10000;
อย่างอื่นถ้า (อุณหภูมิ == 'v')
calibration_factor -= 10000;
อย่างอื่นถ้า (อุณหภูมิ == 't')
ขนาด.ภาชนะ(); //รีเซ็ตมาตราส่วนเป็นศูนย์
}
}
-

ถอดโหลดออกจากเซ็นเซอร์โหลด เปิดการตรวจสอบแบบอนุกรม หน้าต่างด้านล่างควรเปิดขึ้นมาเพื่อแสดงว่าโมดูลเชื่อมต่อกับ Arduino Uno สำเร็จแล้ว

การกำหนดค่า

วางวัตถุน้ำหนักที่ทราบไว้บนโหลดเซลล์ ในกรณีนี้ ผู้เขียนใช้น้ำหนักที่ทราบ 191 กรัม กับโหลดเซลล์ 10KG Serial Monitor จะแสดงตัวเลขน้ำหนักบางส่วนดังที่แสดงด้านล่าง:
การกำหนดค่า

เราจำเป็นต้องทำการสอบเทียบที่นี่:

  • ป้อนตัวอักษร ” a, s, d, f ” ลงในช่องคำสั่งมอนิเตอร์อนุกรมแล้วกดปุ่ม "ส่ง" เพื่อเพิ่มปัจจัยการสอบเทียบ 10, 100, 1000, 10000 ตามลำดับ
  • ป้อนตัวอักษร ” z, x, c, v ” ลงในช่องคำสั่งมอนิเตอร์อนุกรมแล้วกดปุ่ม "ส่ง" เพื่อลดปัจจัยการสอบเทียบลง 10, 100, 1000, 10000 ตามลำดับ
    การกำหนดค่า

ปรับไปเรื่อยๆ จนกระทั่งค่าที่อ่านได้แสดงน้ำหนักจริงที่วางอยู่บนโหลดเซลล์ บันทึกค่า "calibration_factor" ในกรณีนี้คือ "-239250" ในน้ำหนักผู้เขียน 191 กรัม โดยอ้างอิงกับโหลดเซลล์ 10KG เราจะต้องใช้ค่านี้เพื่อเสียบเข้ากับร่างที่สองของเราเพื่อการวัดจริง

ขั้นตอนที่ 2: รหัสสุดท้ายสำหรับการวัดน้ำหนักจริง
ก่อนที่จะอัปโหลดภาพร่าง เราจำเป็นต้องเสียบ "ปัจจัยการสอบเทียบ" ที่ได้รับในขั้นตอนที่ 1:
การตั้งค่า

อัปโหลดภาพร่างด้านล่างไปยังบอร์ด Arduino Uno หลังจากแก้ไขตัวประกอบขนาด:

/* เทคโนโลยี Handson www.handsontec.com
* 29 ธันวาคม 2017
* โหลดเซลล์ HX711 โมดูลเชื่อมต่อกับ Arduino เพื่อวัดน้ำหนักเป็นกิโลกรัม
อาร์ดูอิโน่
เข็มหมุด
2 -> HX711 ซีแอลเค
3 -> ดับ
5V -> วีซีซี
GND -> GND
พินส่วนใหญ่บน Arduino Uno จะเข้ากันได้กับ DOUT/CLK
บอร์ด HX711 สามารถจ่ายไฟได้ตั้งแต่ 2.7V ถึง 5V ดังนั้นไฟ Arduino 5V ก็น่าจะใช้ได้
*/
#include “HX711.h” //คุณต้องมีไลบรารีนี้ในโฟลเดอร์ไลบรารี Arduino ของคุณ
#กำหนด DOUT3
#กำหนด CLK2
สเกล HX711(DOUT, CLK);
//เปลี่ยนปัจจัยการสอบเทียบนี้ตามโหลดเซลล์ของคุณเมื่อพบว่า หลายๆ คนจำเป็นต้องเปลี่ยนแปลงค่าเป็นพัน
ลอย calibration_factor = -96650; //-106600 ใช้งานได้กับการตั้งค่าเครื่องชั่งสูงสุด 40Kg ของฉัน
-
// ติดตั้ง
-
การตั้งค่าว่าง() {
Serial.begin(9600);
Serial.println("กด T เพื่อทดน้ำหนัก");
ขนาด.set_scale(-239250); //Calibration Factor ที่ได้จากการร่างครั้งแรก
ขนาด.ภาชนะ(); //รีเซ็ตมาตราส่วนเป็น 0
}
-
// วนซ้ำ
-
ลูปว่าง() {
Serial.print("น้ำหนัก:");
Serial.print(scale.get_units(), 3); //มีทศนิยมไม่เกิน 3 ตำแหน่ง
Serial.println(”กก.”); //เปลี่ยนเป็นกก. และปรับปัจจัยการสอบเทียบอีกครั้งหากคุณติดตามปอนด์
ถ้า(Serial.available())
{
ถ่านชั่วคราว = Serial.read();
ถ้า (อุณหภูมิ == 't' || อุณหภูมิ == 'T')
ขนาด.ภาชนะ(); //รีเซ็ตมาตราส่วนเป็นศูนย์
}
}
-

หลังจากอัปโหลดภาพร่างสำเร็จแล้ว ให้เปิด Serial Monitor หน้าต่างด้านล่างควรปรากฏขึ้นเพื่อแสดงค่าการวัดจริง:
การกำหนดค่า

คุณสามารถรีเซ็ตการอ่านเป็น 0.000 กก. (โดยไม่ต้องโหลด) โดยการป้อน "t" หรือ "T" ลงในพื้นที่คำสั่งแล้วกดปุ่ม "ส่ง" หน้าจอด้านล่างแสดงค่าการวัดเป็น 0.000กก.
การกำหนดค่า

วางวัตถุบนโหลดเซลล์ โดยจะแสดงน้ำหนักจริงออกมา ด้านล่างนี้คือการแสดงน้ำหนักเมื่อวางวัตถุขนาด 191 กรัม (ใช้ในขั้นตอนที่ 1 สำหรับการสอบเทียบ)
การกำหนดค่า

ไชโย! คุณได้สร้างเครื่องชั่งน้ำหนักที่มีความแม่นยำระดับทศนิยมสามจุดแล้ว!

เอกสาร / แหล่งข้อมูล

โมดูล ADC เซ็นเซอร์ชั่งน้ำหนัก ARDUINO HX711 [พีดีเอฟ] คู่มือการใช้งาน
HX711 โมดูลเซ็นเซอร์ชั่งน้ำหนัก ADC, HX711, โมดูลเซ็นเซอร์ชั่งน้ำหนัก ADC, โมดูลเซ็นเซอร์ ADC, โมดูล ADC, โมดูล

อ้างอิง

ฝากความคิดเห็น

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องกรอกข้อมูลมีเครื่องหมาย *