สารบัญ:

เครื่องวัดระดับถังอัลตราซาวด์: 5 ขั้นตอน (พร้อมรูปภาพ)
เครื่องวัดระดับถังอัลตราซาวด์: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องวัดระดับถังอัลตราซาวด์: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องวัดระดับถังอัลตราซาวด์: 5 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: การตั้งค่าเครื่องอัลตร้าซาวด์ @user-gc9qh8we1q 2024, พฤศจิกายน
Anonim
เครื่องวัดระดับถังอัลตราซาวนด์
เครื่องวัดระดับถังอัลตราซาวนด์
เครื่องวัดระดับถังอัลตราซาวนด์
เครื่องวัดระดับถังอัลตราซาวนด์

ต้องการตรวจสอบระดับของเหลวในหลุมขนาดใหญ่ ถัง หรือภาชนะเปิดหรือไม่? คู่มือนี้จะแสดงวิธีการสร้างเครื่องวัดระดับของเหลวแบบไม่สัมผัสโซนาร์โดยใช้อุปกรณ์อิเล็กทรอนิกส์ราคาถูก!

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

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

1) โมดูล Arduino ในบ้านนี่คือโมดูล Arduino หลัก มันจะส่งสัญญาณทริกเกอร์ไปยัง Arduino ในบ่อน้ำ รับระยะทางที่วัดได้ และแสดงปริมาณน้ำที่เหลือที่คำนวณได้บนจอแสดงผล

2) Well side Arduino และโมดูลโซนาร์วัตถุประสงค์ของ Arduino นี้คือเพียงเพื่อรับสัญญาณทริกเกอร์จากบ้าน ทำการวัด และส่งกลับระยะทางจากโมดูลโซนาร์ถึงระดับน้ำ อุปกรณ์อิเล็กทรอนิกส์ถูกสร้างขึ้นในกล่อง (ค่อนข้างสุญญากาศ) โดยมีท่อพลาสติกติดอยู่ที่ด้านรับของโมดูลโซนาร์ จุดประสงค์ของท่อคือเพื่อลดข้อผิดพลาดในการวัดโดยการลดมุมมองเพื่อให้ "มองเห็น" เฉพาะผิวน้ำเท่านั้น

ขั้นตอนที่ 1: ชิ้นส่วน การทดสอบ และการเขียนโปรแกรม

ชิ้นส่วน การทดสอบ และการเขียนโปรแกรม
ชิ้นส่วน การทดสอบ และการเขียนโปรแกรม
ชิ้นส่วน การทดสอบ และการเขียนโปรแกรม
ชิ้นส่วน การทดสอบ และการเขียนโปรแกรม
ชิ้นส่วน การทดสอบ และการเขียนโปรแกรม
ชิ้นส่วน การทดสอบ และการเขียนโปรแกรม

เราใช้ส่วนต่อไปนี้ในโครงการนี้:

  • 2 x Arduino (อันหนึ่งสำหรับวัดระดับของเหลว อีกอันหนึ่งสำหรับแสดงผลบนจอแสดงผล)
  • แหล่งจ่ายไฟ 12V พื้นฐาน
  • โมดูลอัลตราซาวด์ (โซนาร์) HC-SR04
  • โมดูลแสดงผล LED MAX7219
  • สายโทรศัพท์ยาว 25 ม. (สายไฟ 4 เส้น กราวด์ และ 2 สัญญาณข้อมูล)
  • กล่องติดตั้ง
  • กาวร้อน
  • ประสาน

ค่าอะไหล่: ประมาณ 70 ยูโร

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

อย่าประมาทเวลาที่ใช้ในขั้นตอนนี้ เนื่องจากจำเป็นต้องรู้ว่าระบบทำงานก่อนที่จะพยายามติดตั้งทุกอย่างลงในกล่องอย่างดี ขุดสายเคเบิล ฯลฯ

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

โค้ดเวอร์ชันสุดท้ายที่เราใช้สำหรับ Arduinos ทั้งสองตัวมีอยู่ที่นี่:

github.com/kelindqv/arduinoUltrasonicTank

ขั้นตอนที่ 2: งานโยธา

งานโยธา
งานโยธา

เนื่องจากบ่อน้ำของเราอยู่ห่างจากบ้าน เราจึงต้องสร้างสนามเพลาะเล็กๆ ในสนามหญ้าเพื่อวางสายเคเบิล

ขั้นตอนที่ 3: การเชื่อมต่อและติดตั้งส่วนประกอบทั้งหมด

การเชื่อมต่อและติดตั้งส่วนประกอบทั้งหมด
การเชื่อมต่อและติดตั้งส่วนประกอบทั้งหมด
การเชื่อมต่อและติดตั้งส่วนประกอบทั้งหมด
การเชื่อมต่อและติดตั้งส่วนประกอบทั้งหมด
การเชื่อมต่อและติดตั้งส่วนประกอบทั้งหมด
การเชื่อมต่อและติดตั้งส่วนประกอบทั้งหมด

เชื่อมต่อทุกอย่างเหมือนที่เคยเป็นระหว่างการทดสอบ และหวังว่าจะยังใช้งานได้! อย่าลืมตรวจสอบว่าพิน TX บน Arduino หนึ่งไปที่ RX ของอีกอันหนึ่งและในทางกลับกัน ดังแสดงในภาพที่ 1 เราใช้สายโทรศัพท์เพื่อจ่ายพลังงานให้กับ Arduino ในบ่อน้ำเพื่อหลีกเลี่ยงการใช้แบตเตอรี่

ภาพที่สองและสามแสดงการจัดวางท่อพลาสติก โดยวางเครื่องส่งนอกท่อและวางเครื่องรับไว้ด้านใน (ใช่ ตำแหน่งการถ่ายภาพนี้ไม่สะดวก…)

ขั้นตอนที่ 4: การปรับเทียบ

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

เซ็นเซอร์ติดตามระดับของเหลวได้ดีเพียงใด?

เราสามารถเห็นผลของการกดก็อกน้ำเพียงไม่กี่นาที หรือการกดชักโครก ซึ่งเป็นสิ่งที่เราต้องการ เราสามารถเห็นได้ว่าบ่อน้ำกำลังเติมน้ำในอัตราที่ค่อนข้างคาดเดาได้ในชั่วข้ามคืน - ทั้งหมดเพียงแค่เหลือบมองบนหน้าจอ ความสำเร็จ!

หมายเหตุ:- การแปลงระยะทางตามเวลาไม่ได้รับการแก้ไขสำหรับการเปลี่ยนแปลงความเร็วของเสียงอันเนื่องมาจากความแปรผันของอุณหภูมิ นี่อาจเป็นการเพิ่มในอนาคตที่ดี เนื่องจากอุณหภูมิในบ่อน้ำจะแตกต่างกันเล็กน้อย!

ขั้นตอนที่ 5: การใช้งานระยะยาว

อัปเดต 1 ปี: เซ็นเซอร์ทำงานได้อย่างไร้ที่ติโดยไม่มีร่องรอยการกัดกร่อนหรือความเสียหายแม้ในสภาพแวดล้อมที่ชื้น! ปัญหาเดียวในระหว่างปีคือการควบแน่นที่เซ็นเซอร์ในสภาพอากาศหนาวเย็น (ในฤดูหนาว) ซึ่งปิดกั้นเซ็นเซอร์อย่างเห็นได้ชัด นี่ไม่ใช่ปัญหาในกรณีของเราเนื่องจากเราต้องการการอ่านในช่วงฤดูร้อนเท่านั้น แต่ผู้ใช้รายอื่นอาจต้องมีความคิดสร้างสรรค์!:) ฉนวนหรือการระบายอากาศอาจเป็นวิธีแก้ปัญหาที่เป็นไปได้ มีความสุขในการประดิษฐ์!

แนะนำ: