- วัสดุที่จำเป็น
- แผนภูมิวงจรรวม
- LDR
- การทำงานของ LED ที่ควบคุมด้วย LDR โดยใช้ Arduino
- คำอธิบายรหัส:
- การควบคุมรีเลย์โดยใช้ LDR กับ Arduino
เราทุกคนต้องการให้เครื่องใช้ในบ้านของเราได้รับการควบคุมโดยอัตโนมัติตามเงื่อนไขบางประการและเรียกว่า Home automation วันนี้เราจะควบคุมแสงโดยอาศัยความมืดภายนอกไฟจะเปิดโดยอัตโนมัติเมื่อภายนอกมืดและจะดับลงเมื่อได้รับความสว่าง สำหรับสิ่งนี้เราจำเป็นต้องมีเซ็นเซอร์ตรวจจับแสงเพื่อตรวจจับสภาพแสงและวงจรบางส่วนเพื่อควบคุมเซ็นเซอร์แสง เหมือนกับวงจรตรวจจับความมืดและแสง แต่คราวนี้เราใช้ Arduino เพื่อควบคุมแสงให้มากขึ้น
ในวงจรนี้เรากำลังสร้างLight Sensor โดยใช้ LDR กับ Arduino เพื่อควบคุมหลอดไฟ / CFLตามสภาพแสงของห้องหรือพื้นที่ภายนอก
วัสดุที่จำเป็น
- Arduino UNO
- LDR (ตัวต้านทานแบบพึ่งพาแสง)
- ตัวต้านทาน (100k-1; 330ohm-1)
- LED - 1
- โมดูลรีเลย์ - 5v
- หลอดไฟ / CFL
- การเชื่อมต่อสายไฟ
- เขียงหั่นขนม
แผนภูมิวงจรรวม
LDR
LDR เป็นไฟขึ้นอยู่กับตัวต้านทานLDR ทำจากวัสดุเซมิคอนดักเตอร์เพื่อให้มีคุณสมบัติไวต่อแสง มีหลายประเภท แต่นิยมใช้วัสดุชนิดหนึ่งคือแคดเมียมซัลไฟด์ (CdS) LDRs หรือ PHOTO RESISTORS เหล่านี้ทำงานบนหลักการของ“ Photo Conductivity” สิ่งที่หลักการนี้กล่าวคือเมื่อใดก็ตามที่แสงตกลงบนพื้นผิวของ LDR (ในกรณีนี้) การนำไฟฟ้าขององค์ประกอบจะเพิ่มขึ้นหรือกล่าวอีกนัยหนึ่งคือความต้านทานของ LDR จะตกลงเมื่อแสงตกลงบนพื้นผิวของ LDR คุณสมบัติของการลดลงของความต้านทานสำหรับ LDR นี้ทำได้เนื่องจากเป็นคุณสมบัติของวัสดุเซมิคอนดักเตอร์ที่ใช้กับพื้นผิว
ก่อนหน้านี้เราได้สร้างวงจรจำนวนมากโดยใช้ LDR ซึ่งใช้ LDR เพื่อทำให้ไฟอัตโนมัติตามความต้องการ
การทำงานของ LED ที่ควบคุมด้วย LDR โดยใช้ Arduino
ตามแผนผังวงจรเราได้สร้างวงจรแบ่งแรงดันโดยใช้ตัวต้านทาน LDR และ 100k เอาต์พุตตัวแบ่งแรงดันจะถูกป้อนไปยังขาอะนาล็อกของ Arduino อะนาล็อกพินตรวจจับแรงดันไฟฟ้าและให้ค่าอะนาล็อกกับ Arduino ค่าอะนาล็อกจะเปลี่ยนไปตามความต้านทานของ LDR ดังนั้นเมื่อแสงตกบน LDR ความต้านทานของมันจะลดลงและด้วยเหตุนี้ค่าแรงดันจึงเพิ่มขึ้น
ความเข้มของแสง↓ - ความต้านทาน↑ - แรงดันไฟฟ้าที่ขาอนาล็อก↓ - ไฟสว่างขึ้น
ตามรหัส Arduino หากค่าอะนาล็อกต่ำกว่า 700 เราจะถือว่ามืดและไฟจะสว่างขึ้น หากค่าสูงกว่า 700 เราจะถือว่าสว่างและไฟจะดับลง
คำอธิบายรหัส:
รหัส Arduino และวิดีโอสาธิตที่สมบูรณ์จะได้รับในตอนท้ายของโครงการนี้
ที่นี่เรากำลังกำหนดพินสำหรับรีเลย์ LED และ LDR
# กำหนดรีเลย์ 10 int LED = 9; int LDR = A0;
การตั้งค่า LED และรีเลย์เป็นขาเอาต์พุตและ LDR เป็นขาอินพุต
PinMode (LED, เอาท์พุท); PinMode (รีเลย์, เอาต์พุต); pinMode (LDR, อินพุต);
การอ่านค่าอะนาล็อกของแรงดันไฟฟ้าผ่านขา A0 ของ Arduino แรงดันไฟฟ้าแบบอะนาล็อกนี้จะเพิ่มขึ้นหรือลดลงตามความต้านทานของ LDR
int LDRValue = analogRead (LDR);
ให้สภาพมืดและสว่าง หากค่าน้อยกว่า 700 แสดงว่ามืดและไฟ LED หรือไฟจะสว่างขึ้น หากค่ามากกว่า 700 แสดงว่าสว่างและ LED หรือไฟดับลง
ถ้า (LDRValue <= 700) {digitalWrite (LED, HIGH); digitalWrite (รีเลย์สูง); Serial.println ("It's Dark Outside; Lights status: ON"); } else {digitalWrite (LED, LOW); digitalWrite (รีเลย์, LOW); Serial.println ("It's Bright Outside; Lights status: OFF"); }
การควบคุมรีเลย์โดยใช้ LDR กับ Arduino
แทนที่จะควบคุม LED ตามความสว่างและความมืดเราสามารถควบคุมไฟบ้านหรืออุปกรณ์ไฟฟ้าใด ๆ สิ่งที่เราต้องทำคือเชื่อมต่อโมดูลรีเลย์และตั้งค่าพารามิเตอร์เพื่อเปิดและปิดอุปกรณ์ AC ใด ๆ ตามความเข้มของแสง หากค่าต่ำกว่า 700 ซึ่งหมายความว่ามืดแล้วรีเลย์จะทำงานและไฟจะสว่างขึ้น หากค่ามากกว่า 700 ซึ่งหมายถึงวันหรือสว่างรีเลย์จะไม่ทำงานและไฟจะดับ เรียนรู้เพิ่มเติมเกี่ยวกับรีเลย์ที่นี่และวิธีเชื่อมต่ออุปกรณ์ AC กับรีเลย์
ตรวจสอบด้วย:
- วงจรควบคุมไฟถนนอัตโนมัติโดยใช้รีเลย์และ LDR
- ไฟบันไดอัตโนมัติ
- ไฟฉุกเฉิน Raspberry Pi