LED กะพริบเป็นโปรแกรมที่ใช้กันทั่วไปและเกือบจะเป็นโปรแกรมแรกสำหรับผู้เรียนฝังตัวหรือผู้เริ่มต้นทุกคน ซึ่งเรากะพริบ LED พร้อมกับมีการหน่วงเวลา ดังนั้นวันนี้เรามาที่นี่ด้วยโครงการเดียวกัน แต่ที่นี่เราจะใช้หลอดไฟ AC แทน LED ปกติและจะกะพริบหลอดไฟ AC
เมื่อใดก็ตามที่เราต้องการเชื่อมต่ออุปกรณ์ AC ใด ๆ ในวงจรฝังตัวของเราเราจะใช้รีเลย์ ดังนั้นใน Arduino กวดวิชาควบคุมการถ่ายทอดนี้เราก็จะได้เรียนรู้วิธีการติดต่อรีเลย์กับ Arduino ที่นี่เราไม่ได้ใช้ IC Driver Relay ใด ๆ เช่น ULN2003 และจะใช้ทรานซิสเตอร์ NPN เพื่อควบคุมรีเลย์เท่านั้น
ส่วนประกอบที่ต้องการ:
- Arduino
- รีเลย์ 5v หรือ 6v
- เครื่องใช้ไฟฟ้ากระแสสลับหรือหลอดไฟ
- BC547 ทรานซิสเตอร์
- ตัวต้านทาน 1k
- Breadboard หรือ PCB
- การเชื่อมต่อสายจัมเปอร์
- แหล่งจ่ายไฟ
- 1n4007 ไดโอด
- ขั้วต่อสกรูหรือแผงขั้วต่อ
รีเลย์:
รีเลย์เป็นสวิตช์แม่เหล็กไฟฟ้าซึ่งควบคุมโดยกระแสไฟฟ้าขนาดเล็กและใช้เพื่อเปิดและปิดกระแสไฟฟ้าที่ค่อนข้างใหญ่กว่า หมายถึงการใช้กระแสไฟฟ้าขนาดเล็กเราสามารถเปิดรีเลย์ซึ่งช่วยให้กระแสไหลได้มากขึ้น รีเลย์เป็นตัวอย่างที่ดีในการควบคุมอุปกรณ์ AC (กระแสสลับ) โดยใช้กระแสไฟฟ้ากระแสตรงที่น้อยกว่ามาก รีเลย์ที่ใช้กันทั่วไปคือ Single Pole Double Throw (SPDT) Relayมีห้าขั้วดังนี้
เมื่อไม่มีแรงดันไฟฟ้าที่ใช้กับขดลวด COM (ทั่วไป) จะเชื่อมต่อกับ NC (หน้าสัมผัสปิดตามปกติ) เมื่อมีแรงดันไฟฟ้าบางส่วนที่ใช้กับขดลวดสนามแม่เหล็กไฟฟ้าจะถูกสร้างขึ้นซึ่งดึงดูด Armature (คันโยกที่เชื่อมต่อกับสปริง) และ COM และ NO (หน้าสัมผัสที่เปิดตามปกติ) จะเชื่อมต่อซึ่งทำให้กระแสไฟฟ้าไหลได้มากขึ้น รีเลย์มีให้เลือกหลายระดับที่นี่เราใช้รีเลย์แรงดันไฟฟ้า 6V ซึ่งช่วยให้กระแส 7A-250VAC ไหลได้
รีเลย์ได้รับการกำหนดค่าเสมอโดยใช้วงจรไดรเวอร์ขนาดเล็ก ซึ่งประกอบด้วยทรานซิสเตอร์ไดโอดและตัวต้านทานทรานซิสเตอร์ใช้เพื่อขยายกระแสเพื่อให้กระแสไฟฟ้าเต็ม (จากแหล่ง DC - แบตเตอรี่ 9v) สามารถไหลผ่านขดลวดเพื่อให้พลังงานได้เต็มที่ต้านทานจะใช้เพื่อให้การให้น้ำหนักไปทรานซิสเตอร์ และDiodeใช้เพื่อป้องกันการไหลย้อนกลับเมื่อทรานซิสเตอร์ปิดอยู่ ขดลวดตัวเหนี่ยวนำทุกตัวจะสร้าง EMF ที่เท่ากันและตรงข้ามกันเมื่อปิดเครื่องกะทันหันซึ่งอาจทำให้ส่วนประกอบเสียหายถาวรดังนั้นจึงต้องใช้ไดโอดเพื่อป้องกันกระแสไฟฟ้าย้อน โมดูล Relay หาซื้อได้ง่ายในตลาดด้วยวงจร Driver ทั้งหมดบนบอร์ดหรือคุณสามารถสร้างขึ้นบนบอร์ด perf หรือ PCB ตามด้านล่าง ที่นี่เราใช้โมดูลรีเลย์ 6V
ที่นี่เพื่อ เปิดรีเลย์ด้วย Arduino เราเพียงแค่ต้องทำให้ Arduino Pin High (A0 ในกรณีของเรา) ที่เชื่อมต่อโมดูลรีเลย์ ด้านล่างนี้คือ Relay Driver Circuit เพื่อสร้างโมดูลรีเลย์ของคุณเอง:
แผนภาพวงจรและการทำงาน:
ในวงจรควบคุมรีเลย์ Arduinoนี้เราได้ใช้ Arduino เพื่อควบคุมรีเลย์ผ่านทรานซิสเตอร์ BC547 เราได้เชื่อมต่อฐานทรานซิสเตอร์กับขา Arduino A0 ผ่านตัวต้านทาน 1k ใช้หลอดไฟ AC สำหรับการสาธิต อะแดปเตอร์ 12v ใช้สำหรับเปิดวงจร
การทำงานเป็นเรื่องง่ายที่เราต้อง ทำให้ RELAY พิน (PIN A0) สูงที่จะทำให้โมดูลถ่ายทอดและให้ RELAY ขาต่ำเพื่อปิดโมดูล ไฟ AC จะเปิดและปิดตามรีเลย์
เราเพิ่งตั้งโปรแกรม Arduino เพื่อให้ Relay Pin (A0) สูงและต่ำโดยมีการหน่วงเวลา 1 วินาที:
โมฆะ loop () {digitalWrite (รีเลย์, สูง); ล่าช้า (ช่วงเวลา); digitalWrite (รีเลย์, LOW); ล่าช้า (ช่วงเวลา); }
วิดีโอสาธิต และรหัสที่สมบูรณ์สำหรับ Arduino Relay Controlได้รับด้านล่าง