สารบัญ:

Arduino Tension Scale พร้อมโหลดเซลล์กระเป๋าเดินทาง 40 Kg และแอมพลิฟายเออร์ HX711: 4 ขั้นตอน
Arduino Tension Scale พร้อมโหลดเซลล์กระเป๋าเดินทาง 40 Kg และแอมพลิฟายเออร์ HX711: 4 ขั้นตอน

วีดีโอ: Arduino Tension Scale พร้อมโหลดเซลล์กระเป๋าเดินทาง 40 Kg และแอมพลิฟายเออร์ HX711: 4 ขั้นตอน

วีดีโอ: Arduino Tension Scale พร้อมโหลดเซลล์กระเป๋าเดินทาง 40 Kg และแอมพลิฟายเออร์ HX711: 4 ขั้นตอน
วีดีโอ: 35 วิดีโอผีที่น่ากลัว: การรวบรวมขนาดใหญ่ของปี 2023 [V1] 2024, กรกฎาคม
Anonim
Arduino Tension Scale พร้อมโหลดเซลล์กระเป๋าเดินทาง 40 Kg และแอมพลิฟายเออร์ HX711
Arduino Tension Scale พร้อมโหลดเซลล์กระเป๋าเดินทาง 40 Kg และแอมพลิฟายเออร์ HX711

คำแนะนำนี้จะอธิบายวิธีการสร้างมาตราส่วนความตึงโดยใช้ชิ้นส่วนที่หาซื้อได้ง่ายจากชั้นวาง

วัสดุที่จำเป็น:

1. Arduino - การออกแบบนี้ใช้ Arduino Uno มาตรฐาน รุ่น Arduino หรือโคลนอื่น ๆ ก็ควรทำงานเช่นกัน

2. HX711 บนบอร์ดฝ่าวงล้อม - ไมโครชิปนี้ทำขึ้นเป็นพิเศษสำหรับการขยายสัญญาณจากโหลดเซลล์และรายงานไปยังไมโครคอนโทรลเลอร์อื่น โหลดเซลล์เสียบเข้ากับบอร์ดนี้ และบอร์ดนี้บอก Arduino ว่าโหลดเซลล์วัดอะไร

3. โหลดเซลล์รับแรงดึง (40 กก.) พร้อมขายึด มี 2 ตัวเลือกที่จะได้รับหนึ่งในเหล่านี้ คุณสามารถซื้อแบบสำเร็จรูปได้ (แบบง่าย) หรือคุณสามารถแยกเครื่องชั่งน้ำหนักกระเป๋าแบบดิจิทัลราคาถูกและถอดโหลดเซลล์ออก (ยากกว่าแต่คุณอาจมีเครื่องชั่งน้ำหนักอยู่แล้ว) คุณสามารถซื้อ HX711 ที่สร้างไว้แล้วได้ที่นี่:

หากคุณซื้อชุดโปรดแสดงความคิดเห็น! มันมีประโยชน์มากสำหรับผู้ซื้อในอนาคต

4. ฮาร์ดแวร์สำหรับติดตั้ง ขึ้นอยู่กับการใช้งานของคุณ อาจเป็นเชือก สกรู สายรัดซิป หรืออะไรก็ได้ที่จะติดขายึดกับแรงที่คุณต้องการวัด

5.สายไฟหลากสีสำหรับต่อทุกส่วน

6. แหล่งจ่ายไฟสำหรับ Arduino

ขั้นตอนที่ 1: ติดตั้งโหลดเซลล์

ติดตั้งโหลดเซลล์
ติดตั้งโหลดเซลล์
ติดตั้งโหลดเซลล์
ติดตั้งโหลดเซลล์
ติดตั้งโหลดเซลล์
ติดตั้งโหลดเซลล์

ขั้นแรกเราจะติดตั้งโหลดเซลล์ การเมานท์ของคุณจะไม่เหมือนใคร แต่นี่คือแนวทางปฏิบัติที่คุณต้องปฏิบัติตาม:

1. โหลดเซลล์เหล็กเป็นแผ่นที่มีสเตรนเกจติดกาวไว้ตรงกลาง โหลดเซลล์วัดแรงโดยการตรวจจับว่าโหลดเซลล์โค้งงอมากน้อยเพียงใด

2. วงเล็บยึดผ่านรูที่ปลายคานโหลดเซลล์ โครงยึดมีรูปทรงเพื่อใช้แรงดึงที่กึ่งกลางของคานโหลดเซลล์ เนื่องจากรูปร่างและตำแหน่งการยึด คานโหลดเซลล์จะโค้งงอเมื่อดึงโครงยึด

3. ยึดวงเล็บกับสิ่งที่คุณต้องการวัด ควรใช้สิ่งของที่สามารถเคลื่อนไหวได้อย่างอิสระ (เช่น โซ่ ตะขอ เชือกที่แข็งแรง หรือสายรัดซิป) คุณต้องการให้โหลดเซลล์และชุดประกอบโครงยึดสามารถจัดตำแหน่งให้อยู่ตรงกลางในทิศทางของโหลดได้ ดังนั้นการวัดจึงแม่นยำ

ขั้นตอนที่ 2: ต่อสายโหลดเซลล์และ HX711

วางสายโหลดเซลล์และ HX711
วางสายโหลดเซลล์และ HX711

ดูแผนภาพการเดินสายไฟสำหรับวิธีเชื่อมต่อโหลดเซลล์, HX711 และ Arduino

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

ขั้นตอนที่ 3: เพิ่มไลบรารี HX711 ลงใน Arduino IDE ของคุณ

ห้องสมุด HX711 มีอยู่ที่นี่:

ดูลิงก์นี้บนเว็บไซต์ Arduino สำหรับคำแนะนำในการเพิ่มไลบรารีลงใน Arduino IDE ของคุณ:

ขั้นตอนที่ 4: ปรับเทียบและชั่งน้ำหนัก

ปรับเทียบและชั่งน้ำหนัก!
ปรับเทียบและชั่งน้ำหนัก!

Sparkfun มีโปรแกรม Arduino ที่ยอดเยี่ยมในการรันสเกล เวอร์ชันล่าสุดมีอยู่ใน GitHub และพิมพ์ซ้ำด้านล่าง:

ขั้นตอนแรกของซอฟต์แวร์คือการกำหนดปัจจัยการสอบเทียบสำหรับเครื่องชั่ง ในการดำเนินการนี้ ให้รันโค้ดนี้

/*

ตัวอย่างการใช้กระดานฝ่าวงล้อม SparkFun HX711 ที่มีมาตราส่วน โดย: Nathan Seidle SparkFun Electronics วันที่: 19 พฤศจิกายน 2014 ใบอนุญาต: รหัสนี้เป็นสาธารณสมบัติ แต่คุณซื้อเบียร์ให้ฉันถ้าคุณใช้สิ่งนี้และเราพบกันสักวันหนึ่ง (ใบอนุญาตเบียร์) นี่คือภาพร่างการสอบเทียบ ใช้เพื่อกำหนด calibration_factor ที่ตัวอย่างหลักใช้ นอกจากนี้ยังแสดงค่า zero_factor ที่เป็นประโยชน์สำหรับโครงการที่มีมวลถาวรบนมาตราส่วนระหว่างรอบพลังงาน ตั้งค่าเครื่องชั่งของคุณและเริ่มสเก็ตช์โดยไม่ต้องชั่งน้ำหนักบนเครื่องชั่ง เมื่ออ่านค่าแล้ว ให้วางน้ำหนักลงบนสเกล กด +/- หรือ a/z เพื่อปรับ calibration_factor จนกว่าค่าที่อ่านได้จะตรงกับน้ำหนักที่ทราบ ใช้ calibration_factor นี้กับตัวอย่างสเก็ตช์ ตัวอย่างนี้ถือว่าปอนด์ (lbs) หากคุณต้องการกิโลกรัม ให้เปลี่ยน Serial.print(" lbs"); เส้นเป็นกก. ปัจจัยการสอบเทียบจะแตกต่างกันอย่างมีนัยสำคัญ แต่จะสัมพันธ์เชิงเส้นกับปอนด์ (1 ปอนด์ = 0.453592 กก.) ปัจจัยการสอบเทียบของคุณอาจเป็นบวกหรือลบมาก ทั้งหมดขึ้นอยู่กับการตั้งค่าระบบมาตราส่วนของคุณและทิศทางที่เซ็นเซอร์เบี่ยงเบนจากสถานะศูนย์ โค้ดตัวอย่างนี้ใช้ไลบรารีที่ยอดเยี่ยมของ bogde:"https://github.com/bogde/HX711" ไลบรารีของ bogde เผยแพร่ภายใต้ GNU GENERAL PUBLIC LICENSE Arduino pin 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND พินส่วนใหญ่บน Arduino Uno จะเข้ากันได้กับ DOUT/CLK บอร์ด HX711 สามารถจ่ายไฟได้ตั้งแต่ 2.7V ถึง 5V ดังนั้นไฟ Arduino 5V น่าจะใช้ได้ */ #รวม "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 มาตราส่วน; float calibration_factor = -7050; //-7050 ทำงานสำหรับการตั้งค่าขนาดสูงสุด 440lb ของฉัน การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); Serial.println ("ร่างการสอบเทียบ HX711"); Serial.println("เอาน้ำหนักทั้งหมดออกจากมาตราส่วน"); Serial.println("หลังจากการอ่านเริ่มต้น ให้วางน้ำหนักที่ทราบบนมาตราส่วน"); Serial.println("กด + หรือ a เพื่อเพิ่มปัจจัยการสอบเทียบ"); Serial.println("กด - หรือ z เพื่อลดปัจจัยการสอบเทียบ"); scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); มาตราส่วน.set_scale(); scale.tare(); //รีเซ็ตมาตราส่วนเป็น 0 ยาว zero_factor = scale.read_average(); //รับค่าพื้นฐานการอ่าน Serial.print("Zero factor: "); // สามารถใช้เพื่อลดความจำเป็นในการทดน้ำหนักได้ มีประโยชน์ในโครงการขนาดถาวร Serial.println(zero_factor); } วงเป็นโมฆะ () { scale.set_scale (calibration_factor); //ปรับปัจจัยการสอบเทียบนี้ Serial.print("การอ่าน: "); Serial.print(scale.get_units(), 1); Serial.print("ปอนด์"); //เปลี่ยนค่านี้เป็นกิโลกรัมและปรับปัจจัยการสอบเทียบใหม่หากคุณปฏิบัติตามหน่วย SI เช่น Serial.print(" calibration_factor: "); Serial.print(calibration_factor); Serial.println(); ถ้า (Serial.available ()) { ถ่านชั่วคราว = Serial.read (); if(temp == '+' || temp == 'a') calibration_factor += 10; อื่น if(temp == '-' || temp == 'z') calibration_factor -= 10; } }

หลังจากปรับเทียบมาตราส่วนแล้ว คุณสามารถเรียกใช้โปรแกรมตัวอย่างนี้ แล้วแฮ็กเพื่อจุดประสงค์ของคุณเอง:

/*

ตัวอย่างการใช้กระดานฝ่าวงล้อม SparkFun HX711 ที่มีมาตราส่วน โดย: Nathan Seidle SparkFun Electronics วันที่: 19 พฤศจิกายน 2014 ใบอนุญาต: รหัสนี้เป็นสาธารณสมบัติ แต่คุณซื้อเบียร์ให้ฉันถ้าคุณใช้สิ่งนี้และเราพบกันสักวันหนึ่ง (ใบอนุญาตเบียร์) ตัวอย่างนี้สาธิตเอาท์พุตมาตราส่วนพื้นฐาน ดูภาพร่างการสอบเทียบเพื่อรับ calibration_factor สำหรับการตั้งค่าโหลดเซลล์เฉพาะของคุณ โค้ดตัวอย่างนี้ใช้ไลบรารีที่ยอดเยี่ยมของ bogde: "https://github.com/bogde/HX711" ไลบรารีของ bogde เผยแพร่ภายใต้ใบอนุญาตสาธารณะของ GNU GENERAL HX711 ทำสิ่งหนึ่งได้ดี: อ่านโหลดเซลล์ บอร์ดฝ่าวงล้อมเข้ากันได้กับโหลดเซลล์ที่ใช้สะพานหินข้าวสาลี ซึ่งจะช่วยให้ผู้ใช้สามารถวัดทุกอย่างได้ตั้งแต่ไม่กี่กรัมจนถึงหลายสิบตัน Arduino pin 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND บอร์ด HX711 สามารถจ่ายไฟได้ตั้งแต่ 2.7V ถึง 5V ดังนั้นไฟ Arduino 5V น่าจะใช้ได้ */ #include "HX711.h" #define calibration_factor -7050.0 // ค่านี้ได้มาจาก SparkFun_HX711_Calibration sketch #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 scale; การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); Serial.println ("สาธิตมาตราส่วน HX711"); scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale(calibration_factor); //ค่านี้ได้มาจากการใช้ SparkFun_HX711_Calibration sketch scale.tare(); //สมมติว่าไม่มีน้ำหนักบนมาตราส่วนเมื่อเริ่มต้น ให้รีเซ็ตมาตราส่วนเป็น 0 Serial.println("การอ่าน:"); } วงเป็นโมฆะ () { Serial.print ("การอ่าน: "); Serial.print(scale.get_units(), 1); //scale.get_units() ส่งคืน Serial.print แบบลอยตัว (" lbs"); //คุณสามารถเปลี่ยนค่านี้เป็น kg ได้ แต่คุณจะต้องปรับโครงสร้างใหม่ calibration_factor Serial.println(); }

แนะนำ: