บ่อยครั้งที่เราเห็นเคาน์เตอร์ผู้เยี่ยมชมที่สนามกีฬาห้างสรรพสินค้าสำนักงานห้องเรียน ฯลฯ พวกเขานับคนอย่างไรและเปิดหรือปิดไฟเมื่อไม่มีใครอยู่ข้างใน? วันนี้เราอยู่ที่นี่พร้อมกับโครงการควบคุมแสงห้องอัตโนมัติพร้อมตัวนับผู้เยี่ยมชมแบบสองทิศทางโดยใช้ Arduino Uno เป็นโครงการที่น่าสนใจมากสำหรับมือสมัครเล่นและนักเรียนเพื่อความสนุกสนานและการเรียนรู้
ส่วนประกอบ
- Arduino UNO
- รีเลย์ (5v)
- Resisters
- โมดูลเซ็นเซอร์ IR
- จอ LCD 16x2
- คณะกรรมการขนมปัง
- การเชื่อมต่อสายไฟ
- นำ
- BC547 ทรานซิสเตอร์
โครงการ“ Digital visitor counter ” ขึ้นอยู่กับการเชื่อมต่อส่วนประกอบบางอย่างเช่นเซ็นเซอร์มอเตอร์ ฯลฯ กับไมโครคอนโทรลเลอร์ arduino เคาน์เตอร์นี้สามารถนับคนได้ทั้งสองทิศทาง วงจรนี้สามารถใช้เพื่อนับจำนวนคนที่เข้ามาในห้องโถง / ห้างสรรพสินค้า / บ้าน / ที่ทำงานในประตูทางเข้าและสามารถนับจำนวนคนที่ออกจากห้องโถงได้โดยการลดจำนวนที่ประตูหรือประตูทางออกเดียวกันและขึ้นอยู่กับเซ็นเซอร์ ตำแหน่งในห้างสรรพสินค้า / ห้องโถง นอกจากนี้ยังสามารถใช้ที่ประตูพื้นที่จอดรถและสถานที่สาธารณะอื่น ๆ
โครงการนี้แบ่งออกเป็นสี่ส่วน ได้แก่ เซ็นเซอร์ตัวควบคุมจอแสดงผลตัวนับและประตู เซ็นเซอร์จะสังเกตเห็นการหยุดชะงักและให้อินพุตไปยังคอนโทรลเลอร์ซึ่งจะเรียกใช้การเพิ่มหรือลดตัวนับขึ้นอยู่กับการเข้าหรือออกของบุคคล และการนับจะแสดงบนจอ LCD 16x2 ผ่านตัวควบคุม
เมื่อมีใครเข้ามาในห้องเซ็นเซอร์ IR จะถูกวัตถุขัดจังหวะจากนั้นเซ็นเซอร์อื่นจะไม่ทำงานเนื่องจากเราได้เพิ่มการหน่วงเวลาไว้ระยะหนึ่ง
คำอธิบายวงจร
มีบางส่วนของวงจรตัวนับผู้เยี่ยมชมทั้งหมดที่เป็นส่วนเซ็นเซอร์ส่วนควบคุมส่วนแสดงผลและส่วนไดรเวอร์
ส่วนเซ็นเซอร์: ในส่วนนี้เราได้ใช้โมดูลเซ็นเซอร์ IR สองชุดซึ่งประกอบด้วยไดโอด IR, โพเทนชิออมิเตอร์, ตัวเปรียบเทียบ (Op-Amp) และ LED โพเทนชิออมิเตอร์ใช้สำหรับตั้งค่าแรงดันอ้างอิงที่เทอร์มินัลเดียวของเครื่องเปรียบเทียบและเซ็นเซอร์ IR จะตรวจจับวัตถุหรือบุคคลและให้แรงดันไฟฟ้าที่ขั้วที่สองของเครื่องเปรียบเทียบ จากนั้นเครื่องเปรียบเทียบจะเปรียบเทียบแรงดันไฟฟ้าทั้งสองและสร้างสัญญาณดิจิตอลที่เอาต์พุต ในวงจรนี้เราได้ใช้ตัวเปรียบเทียบสองตัวสำหรับเซ็นเซอร์สองตัว LM358 ใช้เป็นตัวเปรียบเทียบ LM358 มี Op-amp เสียงรบกวนต่ำในตัว
ส่วนควบคุม: Arduino UNO ใช้สำหรับควบคุมกระบวนการทั้งหมดของโครงการเคาน์เตอร์ผู้เยี่ยมชมนี้ เอาต์พุตของเครื่องเปรียบเทียบเชื่อมต่อกับพินดิจิตอลหมายเลข 14 และ 19 ของ arduino Arduino อ่านสัญญาณเหล่านี้และส่งคำสั่งไปยังวงจรขับรีเลย์เพื่อขับเคลื่อนรีเลย์สำหรับการควบคุมหลอดไฟ หากคุณพบปัญหาในการทำงานกับรีเลย์โปรดอ่านบทช่วยสอนเกี่ยวกับการควบคุมรีเลย์ arduino เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับรีเลย์การทำงานกับ Arduino
ส่วนแสดงผล: ส่วนการ แสดงผลประกอบด้วยจอ LCD 16x2 ส่วนนี้จะแสดงจำนวนคนที่นับและสถานะแสงเมื่อไม่มีใครอยู่ในห้อง
ส่วนรีเลย์ไดร์เวอร์: ส่วนไดรเวอร์รีเลย์ประกอบด้วยทรานซิสเตอร์ BC547 และรีเลย์ 5 โวลต์สำหรับควบคุมหลอดไฟ ทรานซิสเตอร์ใช้ในการขับเคลื่อนรีเลย์เนื่องจาก arduino ไม่ได้จ่ายแรงดันและกระแสเพียงพอที่จะขับเคลื่อนรีเลย์ ดังนั้นเราจึงเพิ่มวงจรขับรีเลย์เพื่อให้ได้แรงดันและกระแสเพียงพอสำหรับรีเลย์ Arduino ส่งคำสั่งไปยังทรานซิสเตอร์ไดรเวอร์รีเลย์นี้จากนั้นหลอดไฟจะเปิด / ปิดตามนั้น
Visitor Counter Circuit Diagram
เอาต์พุตของโมดูลเซ็นเซอร์ IR เชื่อมต่อโดยตรงกับพินดิจิตอลของ arduino หมายเลข 14 (A0) และ 19 (A5) และทรานซิสเตอร์รีเลย์ขับที่ขาดิจิตอล 2. LCD เชื่อมต่อในโหมด 4 บิต ขา RS และ EN ของ LCD เชื่อมต่อโดยตรงที่ 13 และ 12 ขาข้อมูลของ LCD D4-D7 ยังเชื่อมต่อโดยตรงกับ arduino ที่ D11-D8 ตามลำดับ การเชื่อมต่อที่เหลือจะแสดงในแผนภาพวงจรด้านล่าง
คำอธิบายรหัส
อันดับแรกเราได้รวมไลบรารีสำหรับ LCD และพินที่กำหนดไว้สำหรับเดียวกัน และยังกำหนดพินอินพุตเอาต์พุตสำหรับเซ็นเซอร์และราเลย์
จากนั้นกำหนดทิศทางไปยังขาอินพุตเอาต์พุตและ LCD เริ่มต้นในลูปการตั้งค่า
ในฟังก์ชันลูปเราอ่านอินพุตของเซ็นเซอร์และการเพิ่มหรือลดการนับขึ้นอยู่กับการทำงานเข้าหรือออก และตรวจสอบสภาพศูนย์ด้วย สภาพเป็นศูนย์หมายถึงไม่มีใครอยู่ในห้อง หากเงื่อนไขศูนย์เป็นจริง arduino จะปิดหลอดไฟโดยปิดการใช้งานรีเลย์ผ่านทรานซิสเตอร์
และถ้าเงื่อนไขศูนย์เป็นเท็จ arduino จะเปิดไฟ นี่คือสองฟังก์ชั่นสำหรับเข้าและออก