สารบัญ:

วิธีสร้างเครื่องวัดการไหลของน้ำ: 7 ขั้นตอน
วิธีสร้างเครื่องวัดการไหลของน้ำ: 7 ขั้นตอน

วีดีโอ: วิธีสร้างเครื่องวัดการไหลของน้ำ: 7 ขั้นตอน

วีดีโอ: วิธีสร้างเครื่องวัดการไหลของน้ำ: 7 ขั้นตอน
วีดีโอ: Blynk IOT EP.15#สอนทำโปรเจค water flow meter วัดปริมาตรการไหลของน้ำด้วย flow sensor DIY มือถือ 2024, พฤศจิกายน
Anonim
วิธีการสร้างเครื่องวัดการไหลของน้ำ
วิธีการสร้างเครื่องวัดการไหลของน้ำ

เครื่องวัดอัตราการไหลของของเหลวที่แม่นยำ ขนาดเล็ก และต้นทุนต่ำสามารถสร้างได้อย่างง่ายดายโดยใช้ส่วนประกอบ GreenPAK™ ในคำแนะนำนี้ เราขอนำเสนอเครื่องวัดการไหลของน้ำที่วัดการไหลของน้ำอย่างต่อเนื่องและแสดงบนจอแสดงผล 7 ส่วนสามจอ ช่วงการวัดเซ็นเซอร์การไหลอยู่ระหว่าง 1 ถึง 30 ลิตรต่อนาที เอาต์พุตของเซ็นเซอร์เป็นสัญญาณ PWM ดิจิตอลที่มีความถี่เป็นสัดส่วนกับอัตราการไหลของน้ำ

GreenPAK Programmable Mixed-signal Matrix SLG46533 ICs สามตัวนับจำนวนพัลส์ภายในเวลาฐาน T เวลาฐานนี้คำนวณเพื่อให้จำนวนพัลส์เท่ากับอัตราการไหลในช่วงเวลานั้น จากนั้นตัวเลขที่คำนวณนี้จะแสดงบนเลข 7 - ส่วนแสดง ความละเอียด 0.1 ลิตร/นาที

เอาต์พุตของเซ็นเซอร์เชื่อมต่อกับอินพุตดิจิตอลพร้อมทริกเกอร์ Schmitt ของเมทริกซ์สัญญาณผสมตัวแรกที่นับจำนวนเศษส่วน ชิปจะต่อเรียงกันผ่านเอาต์พุตดิจิตอล ซึ่งเชื่อมต่อกับอินพุตดิจิตอลของเมทริกซ์สัญญาณผสมที่กำลังดำเนินการอยู่ แต่ละอุปกรณ์เชื่อมต่อกับจอแสดงผลแคโทดทั่วไป 7 ส่วนผ่าน 7 เอาต์พุต

การใช้ GreenPAK Programmable Mixed-signal Matrix ดีกว่าโซลูชันอื่นๆ เช่น ไมโครคอนโทรลเลอร์และส่วนประกอบแบบแยกส่วน เมื่อเทียบกับไมโครคอนโทรลเลอร์ GreenPAK มีต้นทุนต่ำกว่า เล็กกว่า และตั้งโปรแกรมได้ง่ายกว่า เมื่อเทียบกับการออกแบบวงจรรวมแบบลอจิกแบบไม่ต่อเนื่อง ยังมีต้นทุนที่ต่ำกว่า สร้างง่ายกว่า และเล็กกว่า

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

เพื่อทดสอบการออกแบบ ได้มีการสร้าง PCB อย่างง่าย อุปกรณ์ GreenPAK เสียบอยู่บน PCB นี้โดยใช้ขั้วต่อหัวต่อตัวเมียแบบสองแถว 20 พิน

ทำการทดสอบครั้งแรกโดยใช้พัลส์ที่สร้างโดย Arduino และวัดอัตราการไหลของน้ำในแหล่งน้ำในบ้านเป็นครั้งที่สอง ระบบแสดงความแม่นยำ 99%

ค้นพบขั้นตอนทั้งหมดที่จำเป็นเพื่อทำความเข้าใจว่าชิป GreenPAK ได้รับการตั้งโปรแกรมให้ควบคุมเครื่องวัดการไหลของน้ำอย่างไร อย่างไรก็ตาม หากคุณต้องการเพียงแค่ผลลัพธ์ของการเขียนโปรแกรม ให้ดาวน์โหลดซอฟต์แวร์ GreenPAK เพื่อดูไฟล์การออกแบบ GreenPAK ที่เสร็จสมบูรณ์แล้ว เสียบ GreenPAK Development Kit เข้ากับคอมพิวเตอร์ของคุณและกดโปรแกรมเพื่อสร้าง IC แบบกำหนดเองเพื่อควบคุมเครื่องวัดการไหลของน้ำ ทำตามขั้นตอนที่อธิบายไว้ด้านล่างหากคุณสนใจที่จะทำความเข้าใจว่าวงจรทำงานอย่างไร

ขั้นตอนที่ 1: คำอธิบายโดยรวมของระบบ

คำอธิบายโดยรวมของระบบ
คำอธิบายโดยรวมของระบบ
คำอธิบายโดยรวมของระบบ
คำอธิบายโดยรวมของระบบ

วิธีหนึ่งที่ใช้กันทั่วไปในการวัดอัตราการไหลของของเหลวนั้นเหมือนกับหลักการวัดความเร็วลมด้วยเครื่องวัดความเร็วลม: ความเร็วลมเป็นสัดส่วนกับความเร็วในการหมุนของเครื่องวัดความเร็วลม ส่วนหลักของเซ็นเซอร์การไหลประเภทนี้คือกังหันชนิดหนึ่งซึ่งมีความเร็วเป็นสัดส่วนกับอัตราการไหลของของเหลวที่ไหลผ่าน

เราใช้เซ็นเซอร์วัดการไหลของน้ำ YF-S201 จากบริษัท URUK ที่แสดงในรูปที่ 1 ในเซ็นเซอร์นี้ เซ็นเซอร์ Hall Effect ที่ติดตั้งบนตะไลจะส่งสัญญาณชีพจรในทุกรอบ ความถี่สัญญาณเอาท์พุตแสดงในสูตร 1 โดยที่ Q คืออัตราการไหลของน้ำในหน่วยลิตร/นาที

ตัวอย่างเช่น หากอัตราการไหลที่วัดได้คือ 1 ลิตร/นาที ความถี่สัญญาณเอาท์พุตคือ 7.5 Hz เพื่อแสดงค่าที่แท้จริงของการไหลในรูปแบบ 1.0 ลิตร/นาที เราต้องนับพัลส์เป็นเวลา 1.333 วินาที ในตัวอย่าง 1.0 ลิตร/นาที ผลการนับจะเป็น 10 ซึ่งจะแสดงเป็น 01.0 บนจอแสดงผลเจ็ดส่วน แอปพลิเคชั่นนี้มีงานสองงาน: งานแรกคือการนับพัลส์และงานที่สองแสดงตัวเลขเมื่องานการนับเสร็จสิ้น แต่ละงานใช้เวลา 1.333 วินาที

ขั้นตอนที่ 2: การนำ GreenPAK Designer ไปใช้

SLG46533 มีมาโครเซลล์ของฟังก์ชันผสมที่หลากหลาย และสามารถกำหนดค่าเป็นตารางค้นหา ตัวนับ หรือ D-Flip-Flop โมดูลาร์นี้เป็นสิ่งที่ทำให้ GreenPAK เหมาะสมกับการใช้งาน

โปรแกรมมี 3 ขั้นตอน: ระยะ (1) สร้างสัญญาณดิจิตอลเป็นระยะเพื่อสลับระหว่าง 2 งานของระบบ ระยะ (2) นับพัลส์เซ็นเซอร์การไหล และระยะ (3) แสดงตัวเลขเศษส่วน

ขั้นตอนที่ 3: ด่านแรก: การนับ/แสดงการสลับ

ด่านแรก: การนับ/แสดงการสับเปลี่ยน
ด่านแรก: การนับ/แสดงการสับเปลี่ยน
ด่านแรก: การนับ/แสดงการสับเปลี่ยน
ด่านแรก: การนับ/แสดงการสับเปลี่ยน
ด่านแรก: การนับ/การสลับการแสดงผล
ด่านแรก: การนับ/การสลับการแสดงผล

จำเป็นต้องมีเอาต์พุตดิจิตอล “COUNT/DISP-OUT” ที่เปลี่ยนสถานะระหว่างสูงและต่ำทุกๆ 1.333 วินาที เมื่อสูง ระบบจะนับพัลส์ และเมื่อต่ำ จะแสดงผลลัพธ์ที่นับ สามารถทำได้โดยใช้สาย DFF0, CNT1 และ OSC0 ดังแสดงในรูปที่ 2

ความถี่ของ OSC0 คือ 25 kHz CNT1/DLY1/FSM1 ได้รับการกำหนดค่าเป็นตัวนับ และอินพุตนาฬิกาเชื่อมต่อกับ CLK/4 เพื่อให้ความถี่สัญญาณนาฬิกาอินพุตของ CNT1 คือ 6.25 kHz สำหรับช่วงสัญญาณนาฬิกาแรกที่คงอยู่ดังแสดงในสมการที่ 1 เอาต์พุต CNT1 จะสูงและจากขอบที่เพิ่มขึ้นของสัญญาณนาฬิกาถัดไป เอาต์พุตตัวนับจะต่ำ และ CNT1 จะเริ่มลดลงจาก 8332 เมื่อข้อมูล CNT1 ถึง 0 พัลส์ใหม่ของเอาต์พุต CNT1 จะเป็น สร้างขึ้น ในแต่ละขอบที่เพิ่มขึ้นของเอาต์พุต CNT1 เอาต์พุต DFF0 จะเปลี่ยนสถานะ หากต่ำจะเปลี่ยนเป็นสูงและในทางกลับกัน

ขั้วเอาต์พุตของ DFF0 ควรกำหนดค่าเป็นกลับด้าน CNT1 ถูกตั้งค่าเป็น 8332 เนื่องจากเวลานับ/แสดง T เท่ากับดังแสดงในสมการที่ 2

ขั้นตอนที่ 4: ขั้นตอนที่สอง: การนับพัลส์อินพุต

ขั้นตอนที่สอง: การนับพัลส์อินพุต
ขั้นตอนที่สอง: การนับพัลส์อินพุต
ขั้นตอนที่สอง: การนับพัลส์อินพุต
ขั้นตอนที่สอง: การนับพัลส์อินพุต
ขั้นตอนที่สอง: การนับพัลส์อินพุต
ขั้นตอนที่สอง: การนับพัลส์อินพุต

ตัวนับ 4 บิตสร้างขึ้นโดยใช้ DFF3/4/5/6 ดังแสดงในรูปที่ 4 ตัวนับนี้จะเพิ่มขึ้นในแต่ละพัลส์ก็ต่อเมื่อ “COUNT/DISP-IN” ซึ่งก็คือ PIN 9 สูงเท่านั้น อินพุต AND gate 2-L2 คือ "COUNT/DISP-IN" และอินพุต PWM ตัวนับจะรีเซ็ตเมื่อถึง 10 หรือเมื่อเริ่มขั้นตอนการนับ ตัวนับ 4 บิตจะถูกรีเซ็ตเมื่อหมุด DFF RESET ซึ่งเชื่อมต่อกับเครือข่ายเดียวกัน “RESET” อยู่ในระดับต่ำ

LUT2 4 บิตใช้เพื่อรีเซ็ตตัวนับเมื่อถึง 10 เนื่องจากเอาต์พุต DFF ถูกกลับด้าน ตัวเลขจึงถูกกำหนดโดยการกลับบิตทั้งหมดของการแสดงไบนารี: การสลับ 0 วินาทีสำหรับ 1 วินาทีและในทางกลับกัน การแสดงนี้เรียกว่าส่วนเติมเต็มของเลขฐานสอง 1 อินพุต LUT2 4 บิต IN0, IN1, IN2 และ IN3 เชื่อมต่อกับ a0, a1, a2, a3 และ a3 ตามลำดับ ตารางความจริงสำหรับ 4-LUT2 แสดงไว้ในตารางที่ 1

เมื่อลงทะเบียน 10 พัลส์แล้ว เอาต์พุตของ 4-LUT0 จะสลับจากสูงไปต่ำ ณ จุดนี้ เอาต์พุตของ CNT6/DLY6 ซึ่งกำหนดค่าให้ทำงานในโหมดถ่ายภาพเดียว จะเปลี่ยนไปที่ระดับต่ำเป็นเวลา 90 ns แล้วเปิดใหม่อีกครั้ง ในทำนองเดียวกัน เมื่อ “COUNT/DISP-IN” เปลี่ยนจากต่ำไปสูง นั่นคือ ระบบจะเริ่มนับพัลส์ เอาต์พุตของ CNT5/DLY5 ซึ่งกำหนดค่าให้ทำงานในโหมดถ่ายภาพเดียว สวิตช์ต่ำเกินไปเป็นระยะเวลา 90 ns แล้วเปิดใหม่อีกครั้ง สิ่งสำคัญคือต้องรักษาปุ่ม RESET ไว้ที่ระดับต่ำชั่วขณะหนึ่งแล้วเปิดใหม่อีกครั้งโดยใช้ CNT5 และ CNT6 เพื่อให้มีเวลาสำหรับการตั้งค่า DFF ทั้งหมด การหน่วงเวลา 90 ns ไม่มีผลกระทบต่อความแม่นยำของระบบ เนื่องจากความถี่สูงสุดของสัญญาณ PWM คือ 225 Hz เอาต์พุต CNT5 และ CNT6 เชื่อมต่อกับอินพุตของเกต AND ที่ส่งสัญญาณ RESET

เอาต์พุตของ 4-LUT2 ยังเชื่อมต่อกับพิน 4 ซึ่งมีป้ายกำกับว่า "F/10-OUT" ซึ่งจะเชื่อมต่อกับอินพุต PWM ของขั้นตอนการนับชิปถัดไป ตัวอย่างเช่น หาก "PWM-IN" ของอุปกรณ์นับเศษส่วนเชื่อมต่อกับเอาต์พุต PWM ของเซ็นเซอร์ และ "F/10-OUT" เชื่อมต่อกับ "PWM-IN" ของอุปกรณ์นับหน่วยและ " F/10-OUT" ของหลังเชื่อมต่อกับ "PWM-IN" ของอุปกรณ์นับสิบเป็นต้น "COUNT/DISP-IN" ของขั้นตอนทั้งหมดเหล่านี้ควรเชื่อมต่อกับ "COUNT/DISP-OUT" เดียวกันกับอุปกรณ์ 3 ตัวสำหรับอุปกรณ์นับเศษส่วน

รูปที่ 5 อธิบายรายละเอียดว่าขั้นตอนนี้ทำงานอย่างไร โดยแสดงวิธีการวัดอัตราการไหล 1.5 ลิตร/นาที

ขั้นตอนที่ 5: ขั้นตอนที่สาม: แสดงค่าที่วัดได้

ขั้นตอนที่สาม: การแสดงค่าที่วัดได้
ขั้นตอนที่สาม: การแสดงค่าที่วัดได้
ขั้นตอนที่สาม: การแสดงค่าที่วัดได้
ขั้นตอนที่สาม: การแสดงค่าที่วัดได้
ขั้นตอนที่สาม: การแสดงค่าที่วัดได้
ขั้นตอนที่สาม: การแสดงค่าที่วัดได้

สเตจนี้มีอินพุตเป็น: a0, a1, a2 และ a3 (กลับด้าน) และจะส่งออกไปยังพินที่เชื่อมต่อกับจอแสดงผล 7 ส่วน แต่ละเซ็กเมนต์มีฟังก์ชันตรรกะที่ต้องทำโดย LUT ที่พร้อมใช้งาน LUT 4 บิตสามารถทำงานได้อย่างง่ายดายมาก แต่น่าเสียดายที่มีเพียง 1 เท่านั้นที่พร้อมใช้งาน LUT0 4 บิตใช้สำหรับเซ็กเมนต์ G แต่สำหรับเซ็กเมนต์อื่น ๆ เราใช้ LUT 3 บิตคู่ดังแสดงในรูปที่ 6 LUT 3 บิตทางซ้ายสุดมี a2/a1/a0 เชื่อมต่อกับอินพุต ขณะที่ขวาสุด LUT แบบ 3 บิตมี a3 เชื่อมต่อกับอินพุต

ตารางค้นหาทั้งหมดสามารถอนุมานได้จากตารางความจริงของตัวถอดรหัส 7 ส่วนที่แสดงในตารางที่ 2 ซึ่งแสดงในตารางที่ 3, ตารางที่ 4, ตารางที่ 5, ตารางที่ 6, ตารางที่ 7, ตารางที่ 8, ตารางที่ 9

หมุดควบคุมของ GPIO ที่ควบคุมการแสดงผล 7 ส่วนจะเชื่อมต่อกับ "COUNT/DISP-IN" ผ่านอินเวอร์เตอร์เป็นเอาต์พุตเมื่อ "COUNT/DISP-IN" ต่ำ ซึ่งหมายความว่าจอแสดงผลจะเปลี่ยนเฉพาะระหว่างงานการแสดงผลเท่านั้น ดังนั้น ระหว่างงานการนับ การแสดงจะปิด และในระหว่างการแสดง งานจะแสดงพัลส์ที่นับ

อาจจำเป็นต้องใช้ตัวบ่งชี้จุดทศนิยมในการแสดงผล 7 ส่วน ด้วยเหตุนี้ PIN5 ซึ่งมีป้ายกำกับว่า "DP-OUT" จึงเชื่อมต่อกับเครือข่าย "COUNT/DISP" ที่ย้อนกลับ และเราเชื่อมต่อกับ DP ของจอแสดงผลที่เกี่ยวข้อง ในแอปพลิเคชันของเรา เราจำเป็นต้องแสดงจุดทศนิยมของอุปกรณ์นับหน่วยเพื่อแสดงตัวเลขในรูปแบบ "xx.x" จากนั้นเราจะเชื่อมต่อ "DP-OUT" ของอุปกรณ์นับหน่วยกับอินพุต DP ของหน่วย 7- การแสดงส่วนและเราปล่อยให้คนอื่น ๆ ไม่เชื่อมต่อ

ขั้นตอนที่ 6: การติดตั้งฮาร์ดแวร์

การติดตั้งฮาร์ดแวร์
การติดตั้งฮาร์ดแวร์

รูปที่ 7 แสดงการเชื่อมต่อระหว่างชิป GreenPAK 3 ตัวและการเชื่อมต่อของชิปแต่ละตัวกับจอแสดงผลที่เกี่ยวข้อง เอาต์พุตจุดทศนิยมของ GreenPAK เชื่อมต่อกับอินพุต DP ของจอแสดงผล 7 ส่วนเพื่อแสดงอัตราการไหลในรูปแบบที่ถูกต้องด้วยความละเอียด 0.1 ลิตร/นาที อินพุต PWM ของชิป LSB เชื่อมต่อกับเอาต์พุต PWM ของเซ็นเซอร์การไหลของน้ำ เอาต์พุต F/10 ของวงจรเชื่อมต่อกับอินพุต PWM ของชิปต่อไปนี้ สำหรับเซ็นเซอร์ที่มีอัตราการไหลที่สูงขึ้นและ/หรือความแม่นยำที่มากขึ้น สามารถเรียงชิปจำนวนมากขึ้นเพื่อต่อท้ายตัวเลขเพิ่มเติมได้

ขั้นตอนที่ 7: ผลลัพธ์

ผลลัพธ์
ผลลัพธ์
ผลลัพธ์
ผลลัพธ์
ผลลัพธ์
ผลลัพธ์

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

ระบบได้รับการทดสอบก่อนด้วย Arduino ที่จำลองเซ็นเซอร์วัดอัตราการไหลและแหล่งน้ำที่มีอัตราการไหลคงที่ที่ทราบโดยการสร้างพัลส์ที่ 225 Hz ซึ่งสอดคล้องกับอัตราการไหล 30 ลิตร/นาทีตามลำดับ ผลการวัดเท่ากับ 29.7 ลิตร/นาที คลาดเคลื่อนประมาณ 1 %

การทดสอบครั้งที่สองทำด้วยเซ็นเซอร์วัดอัตราการไหลของน้ำและแหล่งน้ำในครัวเรือน การวัดที่อัตราการไหลต่างกันคือ 4.5 และ 12.4

บทสรุป

คำแนะนำนี้สาธิตวิธีสร้างมิเตอร์วัดการไหลขนาดเล็ก ต้นทุนต่ำ และแม่นยำโดยใช้ Dialog SLG46533 GreenPAK ช่วยให้การออกแบบนี้มีขนาดเล็กลง เรียบง่ายขึ้น และสร้างได้ง่ายกว่าโซลูชันที่เปรียบเทียบกันได้

ระบบของเราสามารถวัดอัตราการไหลสูงสุด 30 ลิตร/นาทีด้วยความละเอียด 0.1 ลิตร แต่เราสามารถใช้ GreenPAKs มากขึ้นในการวัดอัตราการไหลที่สูงขึ้นด้วยความแม่นยำที่สูงขึ้น ทั้งนี้ขึ้นอยู่กับเซ็นเซอร์การไหล ระบบที่ใช้ Dialog GreenPAK สามารถทำงานร่วมกับเครื่องวัดการไหลของกังหันได้หลากหลาย

โซลูชันที่แนะนำนี้ออกแบบมาเพื่อวัดอัตราการไหลของน้ำ แต่สามารถปรับให้ใช้กับเซ็นเซอร์ที่ส่งสัญญาณ PWM ได้ เช่น เซ็นเซอร์วัดอัตราการไหลของก๊าซ

แนะนำ: