กลับไปหน้ารวมไฟล์
illumination-controller-f639b5.md

โปรเจกต์ของเราคือการลดการสูญเสียพลังงานและทำให้บ้านของเราฉลาดขึ้น (Smart Home) Illumination Controller เป็นสะพานพื้นฐานและนวัตกรรมสำหรับนักพัฒนา Arduino สมัยใหม่ที่อยากเริ่มต้นสร้างบ้านอัจฉริยะ ด้วยการโฟกัสที่องค์ประกอบหลักๆ พี่ว่าน้องจะได้เรียนรู้วิธีทำให้ไฟในห้องทำงานอัตโนมัติโดยใช้ตรรกะซอฟต์แวร์เฉพาะทางและการตั้งค่าฮาร์ดแวร์ที่มั่นคง

ตัวคอนโทรลเลอร์มีโหมดการทำงาน 2 แบบ:

Controller Modes Controller Diagram

โหมดทั้งสองของคอนโทรลเลอร์จะถูกเปิดใช้งานโดยรีโมทที่สื่อสารกับคอนโทรลเลอร์ผ่านสัญญาณอินฟราเรด ปุ่มสองปุ่มด้านบนของรีโมทคือปุ่มเปิดโหมดทั้งสองนั่นเอง ส่วนที่ตัวคอนโทรลเลอร์จะมีไฟ LED ติดสว่างขึ้นมาเมื่อโหมดที่สอดคล้องกันถูกเปิดใช้งาน

Remote Control

การลงมือทำจริง: เรื่องของแสงและพลังงาน

โปรเจกต์นี้จะเผยให้เห็นเลเยอร์ที่ซ่อนอยู่เบื้องหลังการทำงานง่ายๆ ระหว่างแสงและพลังงาน:

  • เลเยอร์ตรวจจับ (Identification layer): LDR (Light Dependent Resistor) ทำหน้าที่เป็นดวงตาสำหรับสิ่งแวดล้อม คอยวัดระดับแสงในห้องโดยการเปลี่ยนค่าความต้านทานของมัน
  • เลเยอร์แปลงสัญญาณ (Conversion layer): Arduino ใช้พินอินพุตอนาล็อก (A0) เพื่อรับสัญญาณจากวงจรแบ่งแรงดัน (voltage divider) และใช้พินดิจิตอลสำหรับควบคุมรีเลย์
  • เลเยอร์ตรรกะประมวลผล (Processing Logic layer): โค้ด Arduino จะใช้กลยุทธ์ "sequential decoding" (หรือการตรวจสอบค่าขีดจำกัด) นั่นคือมันจะสั่งให้รีเลย์ทำงานก็ต่อเมื่อระดับแสงต่ำกว่าค่าที่ตั้งไว้ (เช่น 500)
  • เลเยอร์อินเตอร์เฟซสำหรับกำลังสูง (High-Power Interface layer): โมดูลรีเลย์ 5V ทำหน้าที่สวิตช์กระแสสูงสำหรับหลอดไฟ AC 110V/220V ในขณะเดียวกันก็ปกป้องไมโครคอนโทรลเลอร์ของเราด้วย
  • ลูปกลยุทธ์ควบคุม (Control Strategy Loop): Arduino จะใช้เทคนิค "Hysteresis" (เช่น การหน่วงเวลาเล็กน้อยและการกำหนดช่วงค่า) เพื่อป้องกันไม่ให้หลอดไฟกระพริบเร็วเกินไปในช่วงเวลาพลบค่ำ

โครงสร้างพื้นฐานฮาร์ดแวร์

  • Arduino Uno: "สมอง" ของโปรเจกต์นี้ จัดการการสุ่มตัวอย่างสัญญาณอนาล็อกความเร็วสูงและประสานงานเอาต์พุตไปยังรีเลย์
  • เซ็นเซอร์ LDR: ให้การตรวจวัดแสงในห้องแบบไม่สัมผัสและน่าเชื่อถือ
  • โมดูลรีเลย์ 5V: ให้การสวิตช์กำลังสูงและน่าเชื่อถือสำหรับหลอดไฟ AC
  • เบรดบอร์ด (Breadboard): วิธีที่สะดวกสำหรับการทำโปรโตไทป์วงจรไฟอัจฉริยะชุดแรกและเชื่อมต่อส่วนประกอบทั้งหมดโดยไม่ต้องบัดกรี
  • สาย Micro-USB: ใช้สำหรับโปรแกรม Arduino และเป็นแหล่งจ่ายไฟหลักสำหรับการตั้งค่าเริ่มต้น

ก่อนหน้านี้พวกเรายังไม่เคยใช้โมดูลอินฟราเรดมาก่อนเลย ต้องไปหาความรู้เพิ่มเติมจากแหล่งต่างๆ ถึงจะเข้าใจการใช้งาน

ขั้นตอนการทำให้ไฟอัตโนมัติและปฏิสัมพันธ์แบบทีละขั้น

กระบวนการควบคุมแสงอัตโนมัตินี้ออกแบบมาให้ใช้ง่ายมาก:

  1. เริ่มต้นฮาร์ดแวร์ (Initialize Hardware): วาง LDR และตัวต้านทาน 10k ในวงจรแบ่งแรงดันบนเบรดบอร์ดให้ถูกต้อง แล้วเชื่อมต่อเข้ากับ Arduino
  2. ตั้งค่าเอาต์พุตซิงค์ (Setup Output Sync): ในฟังก์ชัน setup() ให้เริ่มต้นพอร์ตอนุกรม (Serial port) และกำหนดให้พินรีเลย์เป็น OUTPUT
  3. ลูปสนทนาภายใน (Internal Dialogue Loop): Arduino จะทำการตรวจสอบระดับแสงประสิทธิภาพสูงอย่างต่อเนื่องและอัปเดตสถานะรีเลย์แบบเรียลไทม์
  4. บูรณาการการตอบสนองด้วยภาพ (Visual Feedback Integration): ดูสิว่าหลอดไฟของคุณจะกลายเป็นสัญญาณภาพที่มีจังหวะไปเองอัตโนมัติ กะพริบและปรับตามการตั้งค่าแสงในห้องของน้องเลย

ต่อยอดในอนาคต

  • เชื่อมต่อกับ OLED Identity Dashboard: ใส่จอ OLED เล็กๆ เพื่อแสดง "ความเข้มแสง (%)" หรือ "สถานะหลอดไฟ (เปิด/ปิด)" ก็เท่ไม่เบา
  • ซิงค์ข้อมูลจากเซ็นเซอร์หลายตัว (Multi-sensor Climate Sync): ต่อ PIR Motion Sensor เข้าไป แล้วตั้งให้ไฟ "เปิด" ก็ต่อเมื่อห้อง "มืด" และ "มีคนอยู่" เท่านั้น ฉลาดสุดๆ
  • เชื่อมต่อกับระบบคลาวด์ (Cloud Interface): ใส่โมดูล WiFi (ESP8266/ESP32) แล้วลิงก์ไปยังเว็บแดชบอร์ดเฉพาะทาง เพื่อคอยส่องจากมือถือว่าน้องใช้ห้องยังไงบ้าง (แต่ห้ามแอบส่องน้องสาวนะ!)
  • ปรับแต่งโปรไฟล์การเปิด-ปิดแบบ Advance (Advanced Velocity Profile): เพิ่มวงจร "PWM Dimmer" เข้าไปในโค้ด เพื่อให้ไฟค่อยๆ สว่างขึ้นและค่อยๆ มืดลงเวลาเปิดปิด ให้ความรู้สึกพรีเมียม หรูหรามาก

โปรเจค Illumination Controller นี้เหมาะสุดๆ สำหรับวัยรุ่นสายช่างที่อยากได้เครื่องมือสมาร์ทโฮมที่ทั้งอินเทอร์แอคทีฟและน่าสนใจ เอาไปจัดต่อได้เลย!

[!CAUTION] เวลาทำงานกับไฟบ้าน 110V/220V AC ต้องใช้กล่องกันน้ำและฉนวนคุณภาพสูงเท่านั้นนะตัว! ไม่งั้นอาจได้ช็อตฟรี ไม่มีคืน ปลอดภัยไว้ก่อน สู้งานนะน้อง!

ข้อมูล Frontmatter ดั้งเดิม

apps:
  - "1x Solidworks"
  - "1x Arduino IDE"
author: "shassandanish1"
category: "Home & Automation"
components:
  - "3x Resistor 220 ohm"
  - "3x LED (generic)"
  - "1x 9V battery (generic)"
  - "1x Infrared Receiver, 38 kHz"
  - "1x Jumper wires (generic)"
  - "1x Ky-005 Infrared transmitter module"
  - "1x Rotary potentiometer (generic)"
  - "3x Ky-004 Key Switch Module"
  - "1x Gravity: Analog Ambient Light Sensor TEMT6000"
  - "1x 3D Printer (generic)"
  - "2x Arduino UNO"
description: "A fun and practical project to build an automatic room lighting controller that adjusts brightness based on ambient light using an Arduino and an LDR."
difficulty: "Easy"
documentationLinks: []
downloadableFiles:
  - "https://projects.arduinocontent.cc/646e1a74-63d3-4ae5-b2f6-33135bd79b97.ino"
  - "https://projects.arduinocontent.cc/646e1a74-63d3-4ae5-b2f6-33135bd79b97.ino"
encryptedPayload: "U2FsdGVkX1/jnBbO/xY2m0+OQF6QIpyL9U5LPvnEDu1ANK+5JwbXVesaH+BXoC0+GuAS+1noRvDPTVe0ZiqP7y3CHFzc+7OIVYzd7pdxBua7XHnzPnpkhLnT7OC7qRM4"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/illumination-controller-f639b5_cover.jpg"
lang: "en"
likes: 1
passwordHash: "6333476c63856058436c511c72208c7f267258305aa21e10592b50f56f306f7b"
price: 1120
seoDescription: "An intuitive and simple automated light controller for beginners interested in Arduino LDR sensing and relay-to-lamp projects."
tags:
  - "illumination"
  - "light-control"
  - "ldr"
  - "relay"
  - "arduino"
  - "beginners"
title: "โปรเจคจัดไฟอัจฉริยะ ควบคุมได้ด้วยรีโมต งานง่ายแต่หล่อ!"
tools: []
videoLinks:
  - "https://www.youtube.com/embed/NsEgCXGWUJU"
views: 1282