สารบัญ:

เครื่องชั่งน้ำหนักพร้อมหน้าจอสัมผัส (Arduino): 7 ขั้นตอน (พร้อมรูปภาพ)
เครื่องชั่งน้ำหนักพร้อมหน้าจอสัมผัส (Arduino): 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องชั่งน้ำหนักพร้อมหน้าจอสัมผัส (Arduino): 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องชั่งน้ำหนักพร้อมหน้าจอสัมผัส (Arduino): 7 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: #32 สอน Arduino Tutorial : Arduino Load cell Sensor ชั่งน้ำหนักด้วย Load Cell 2024, กรกฎาคม
Anonim
เครื่องชั่งน้ำหนักพร้อมหน้าจอสัมผัส (Arduino)
เครื่องชั่งน้ำหนักพร้อมหน้าจอสัมผัส (Arduino)

เคยต้องการสร้างเครื่องชั่งน้ำหนักด้วยหน้าจอสัมผัสหรือไม่? ไม่เคยคิดเลย? อ่านต่อและลองสร้าง …

คุณรู้หรือไม่ว่าหน้าจอสัมผัส TFT และ Load Cell คืออะไร?

ถ้าใช่ ให้ข้ามไปยังขั้นตอนที่ 1 อย่างอื่น ให้เริ่มต้นด้วยการอ่านบทนำ

บทนำ:

โหลดเซลล์ คืออะไร ?

โหลดเซลล์คือทรานสดิวเซอร์ที่สร้างสัญญาณไฟฟ้าเมื่อมีแรงกระทำและทำให้เสียรูป โหลดเซลล์มีหลายประเภท: แบบปุ่ม, แบบกระป๋อง, แบบบีม, แบบ S เป็นต้น ผมได้ใช้บีม พิมพ์.

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

หน้าจอสัมผัส TFT คืออะไร?

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

หน้าจอสัมผัสเป็นประเภทของการวางซ้อนบนหน้าจอแสดงผลที่ใช้ในการลงทะเบียนการโต้ตอบแบบสัมผัสบนหน้าจอ หน้าจอสัมผัสไม่ใช่ประเภทของจอแสดงผล แต่เป็นส่วนประกอบที่สามารถเพิ่มลงในหน้าจอที่มีอยู่ได้ หน้าจอสัมผัสใช้สองวิธีที่แตกต่างกันในการลงทะเบียนการโต้ตอบแบบสัมผัสที่เรียกว่า "resistive" และ "capacitive" ซึ่งหมายถึงแรงกดและความไวในการสัมผัสตามลำดับ เราจะใช้เป็นแบบต้านทาน

หน้าจอสัมผัส TFT ใช้ทั้งเทคโนโลยี TFT และหน้าจอสัมผัสร่วมกันเพื่อสร้างการซ้อนทับอินเทอร์เฟซแบบสัมผัสบนจอแสดงผลที่บางและน้ำหนักเบา

ต้องการเรียนรู้เพิ่มเติมเพียงแค่ Google:D

ขั้นตอนที่ 1: ส่วนประกอบที่จำเป็น

ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น

ส่วนประกอบอิเล็กทรอนิกส์:

  1. โหลดเซลล์ (แบบบีม) (ผมเคยใช้อันที่จำกัด 10 กก.)
  2. HX711 โหลดเซลล์แอมพลิฟายเออร์
  3. Arduino Uno
  4. จอทัชสกรีน 2.4" TFT
  5. สายจัมเปอร์
  6. แบตเตอรี่ 9v
  7. 7805 IC
  8. 0.33uF ตัวเก็บประจุด้วยไฟฟ้า
  9. ตัวเก็บประจุเซรามิก 0.1uF

ส่วนประกอบทางกล:

  1. ไม้อัด
  2. เพ้นท์เล็บ
  3. สกรู
  4. กาว

รูปภาพประกอบที่นำมาจาก google images

ขั้นตอนที่ 2: เชื่อมต่อ TFT และโหลดเซลล์กับ Arduino

การเชื่อมต่อ TFT และโหลดเซลล์ด้วย Arduino
การเชื่อมต่อ TFT และโหลดเซลล์ด้วย Arduino

การเชื่อมต่อหน้าจอสัมผัส TFT กับ UNO:

ประเด็นก็คือการเชื่อมต่อ TFT กับ UNO นั้นเป็นเรื่องง่าย ตอนนี้ทำอย่างไร ? คุณจะสังเกตเห็นว่า TFT มีช่องเสียบการ์ด SD ที่ด้านล่าง ตอนนี้วาง TFT บน UNO ในลักษณะที่ช่องเสียบการ์ด SD อยู่ด้านเดียวกับพอร์ต USB ของ UNO กดพอดีบน UNO และเมื่อคุณเสียบ UNO เข้ากับพีซีของคุณ คุณจะเห็นหน้าจอสีขาวบน TFT ก่อนกดติดตั้ง ให้ติดเทปที่พอร์ต USB แบบโลหะของ UNO

ยินดีด้วยที่ TFT เชื่อมต่อกับ UNO ของคุณอย่างถูกต้องแล้ว !!! แต่อีกไม่นานคุณจะรู้ว่า TFT ได้ยึดพินของ Arduino UNO ทั้งหมดแล้ว และคุณยังมีโหลดเซลล์ให้เชื่อมต่อ

จะทำอย่างไร? อืม… คุณจำช่องเสียบการ์ด SD ที่ฉันพูดถึงก่อนหน้านี้ได้ไหม… เรายังไม่ได้ใส่การ์ดในนั้นหมายความว่าเราจะไม่ใช้มัน.. ดังนั้นเราจะไม่ใช้หมุดที่มีชื่อดังต่อไปนี้:

  • SD_SS
  • SD_DI
  • SD_DO
  • SD_SCK

เราสามารถจัดการได้ดีโดยไม่ต้องใช้การ์ด SD เนื่องจากเราจะไม่แสดงภาพใดๆ

ตอนนี้หมุดที่กล่าวถึงข้างต้นเหล่านี้เชื่อมต่อกับหมุดดิจิทัล 10, 11, 12 และ 13

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

การเชื่อมต่อโหลดเซลล์ด้วย HX711:

โหลดเซลล์จะมี 4 สายเป็นเอาต์พุต ซึ่งจะมอบให้กับอินพุตของ HX711 เช่น

  • สายสีแดงถึง E+
  • BLACK ลวด E-
  • สายสีเขียวถึง A+
  • ลวดสีขาวถึง A-

การเชื่อมต่อ HX711 กับ UNO:

  • เชื่อมต่อพิน DT ของ HX711 กับพินดิจิตอล 11 ของ UNO
  • ต่อพิน SCK ของ HX711 เข้ากับพินดิจิตอล 10 ของ UNO

ขั้นตอนที่ 3: การจัดวางเครื่องกล

การจัดเรียงทางกล
การจัดเรียงทางกล
การจัดเรียงทางกล
การจัดเรียงทางกล

ตอนนี้คุณสามารถวาง UNO, HX711 และ TFT ได้ทุกที่ที่คุณต้องการ แต่ควรวางโหลดเซลล์ในลักษณะคานรับน้ำหนัก นำไม้อัดสี่เหลี่ยม 2 แผ่น 1) 150mmX150mm(สำหรับฐาน) และ 2) 100mmX150mm (สำหรับวางตุ้มน้ำหนัก)

ติดตั้งโหลดเซลล์ตามที่แสดงในภาพหรือในรูปร่าง Z

ตรวจสอบรูปภาพที่ฉันแนบมาเพื่อทำความเข้าใจ ตอนนี้โปรดทราบว่าในขณะที่คุณวางน้ำหนัก สิ่งทั้งหมดจะล้มลงเนื่องจากฐานไม่ได้รับการแก้ไข ยึดฐานในลักษณะที่เหมาะสมกับคุณ (ฉันได้ใช้ C-Clamp)

ขั้นตอนที่ 4: ไลบรารีที่จำเป็นและการระบุไดรเวอร์ TFT

ห้องสมุดที่คุณต้องการคือ:

สำหรับ HX711 คลิกที่นี่

สำหรับ TFT-1

สำหรับ TFT-2

สำหรับหน้าจอสัมผัส

คุณจะต้องใช้ไลบรารีทั้งสี่ด้านบนนี้เพื่อให้ TFT ทำงานควบคู่ไปกับ TFT ได้อย่างถูกต้อง

ตอนนี้ สิ่งแรกที่คุณควรทำคือค้นหาไดรเวอร์ที่คุณใช้ TFT

สำหรับสิ่งนี้ ให้รันการทดสอบกราฟิกในตัวอย่าง TFTLCD_5408

ตอนนี้คุณจะสามารถเห็น TFT ของคุณมีชีวิตขึ้นมาได้ และคุณจะเห็นข้อความหลังจากผ่านไประยะหนึ่ง ซึ่งจะมี ID ไดรเวอร์

หรือ

เพียงเรียกใช้ตัวอย่าง Touch_shield_kbv และจะแสดง ID

ขั้นตอนที่ 5: การกำหนดค่า Touch

การกำหนดค่า Touch
การกำหนดค่า Touch

ปัญหาที่คุณอาจเผชิญในตอนนี้คือพิกัด x & y กลับด้านในแนวนอนหรือแนวตั้ง

คุณสามารถสังเกตเห็นสิ่งนี้ได้หลังจากใช้ฟังก์ชั่นระบายสีหลังจากคลิกตัวเลือก 'ออก' บนหน้าจอ TFT

คุณต้องการแก้ไขปัญหานี้อย่างแน่นอน ดังนั้น คุณจะต้องขัดขวางโค้ด " Touch_shield_kbv " ลองเปลี่ยน

tp.x ถึง 1050-tp.x หรือ tp.y ถึง 1050-tp.y นี่คือค่าที่คุณจะต้องเล่นเพื่อให้ระบบสัมผัสทำงานได้อย่างถูกต้อง หรือลองเปลี่ยนพินเป็น YP, XP, YM, XM

หากทุกอย่างทำงานอย่างถูกต้องให้อัปโหลดรหัสที่ฉันแนบไว้ตอนท้าย

คุณสามารถสร้างอินเทอร์เฟซผู้ใช้ของคุณเองได้โดยใช้ฟังก์ชันบางอย่าง เช่น tft.fillScreen(); tft.fillRect(); tft.drawRect(); tft.print(); tft.setCursor(); ฯลฯ ในการทำให้สี่เหลี่ยมที่วาดมีลักษณะเหมือนปุ่ม การสัมผัสควรเหมาะสม เพียงแมปพิกัด x และ y แล้วเขียนลงในคำสั่ง IF ภายใต้เงื่อนไขการสัมผัส IF เช่น (tp.z)

ตอนนี้ ถ้าคุณต้องการเพิ่มจำนวนโหลดเซลล์น้อยที่สุด ให้เปลี่ยนค่าจาก 1 เป็นค่าที่มากกว่าในฟังก์ชันนี้ Serial.print(scale.get_units(), 1);

ขั้นตอนที่ 6: วิธีใช้งาน

วิธีใช้งาน
วิธีใช้งาน
วิธีใช้งาน
วิธีใช้งาน
วิธีใช้งาน
วิธีใช้งาน

เพียงคลิกที่ LOAD CELL จากนั้นคลิกที่ START และรอให้ข้อความทั้งหมดแสดงเสร็จสิ้น ให้คลิกที่ Unit Change แล้วเลือกหน่วยที่คุณต้องการ จากนั้นระบบจะเริ่มแสดงผลเมื่อคุณวางโหลดลงไป

ปัจจัยการสอบเทียบนั้นแตกต่างกันสำหรับโหลดเซลล์ที่แตกต่างกันสำหรับฉัน -90000

คลิกที่ + หรือ - เพื่อเพิ่มหรือลดปัจจัยการสอบเทียบ

หมายเหตุ: เมื่อคุณจะใช้ UNO กับ TFT และโหลดเซลล์ จำนวนพินจะถูกจำกัด..ตอนนี้ไม่ใช่ว่า HX711 ต้องใช้แรงดันไฟฟ้าตั้งแต่ 3.3V-5V (5.5V ที่สูงสุด..นั่นคือสิ่งที่ฉัน ได้อ่าน)

ดังนั้นฉันจึงใช้แบตเตอรี่ 9V และ 7805 เพื่อผลิตแหล่งจ่ายไฟ 5v สำหรับ HX711

ขอบคุณที่อ่านคำแนะนำนี้

วิดีโอมาเร็ว ๆ นี้..

แนะนำ: