ว่าไงพวกน้อง! เป็นไงบ้างวะ?
รุ่นพี่กลับมาพร้อมโปรเจคใหม่ล่าสุดแล้วคร้าบ คราวนี้เราจะมาควบคุมหลอดไฟ LED ผ่านโมดูล WiFi ESP8266 กัน
บอกเลยว่าโมดูล WiFi เนี่ย ควบคุมอะไรก็ได้จัดไปวัยรุ่น!
สำหรับโปรเจคนี้ พี่ใช้ LED 3 ดวงกับหลอดไฟอีกหนึ่งดวง มาควบคุมผ่านมือถือ Android กัน
เชื่อพี่ น้องทำได้แน่ๆ
มีวิดีโอสอนแบบ Step by Step ด้านบนแล้ว ดูให้จบนะ ห้ามข้าม!
อุปกรณ์ที่ต้องเตรียม:
รวบรวมของทั้งหมดให้ครบ
- Arduino
- สาย USB สำหรับ Arduino
- ESP8266
- Breadboard (บอร์ดทดลอง)
- ตัวต้านทาน (Resistor) 330 โอห์ม (3 ตัว)
- LED 3 ดวง
- หลอดไฟ (Lamp)
- สายจัมเปอร์ (Jumper wires)
- มือถือ/แท็บเล็ต Android
วาง LED ทั้ง 3 ดวงบน Breadboard ต่อตัวต้านทาน 330 โอห์มเข้ากับขาแอโนด (ขาบวก) ของ LED แต่ละดวง แล้วต่อขาแคโทด (ขาลบ) ลง Ground (GND)

- เตรียมโมดูล ESP8266 กับสายจัมเปอร์
วิธีการต่อ:
- ขา Tx ของ ESP8266 ต่อเข้ากับขา Rx ของ Arduino
- ขา Rx ของ ESP8266 ต่อเข้ากับขา Tx ของ Arduino (ข้อสำคัญ! ต่อสาย Tx, Rx นี้หลังจากอัพโหลดโค้ดแล้วเท่านั้น)
- ขา Vcc และ CH_PD (Chip Enable) ต่อเข้ากับ 3.3V ของ Arduino
- ขา GND ต่อเข้ากับ GND ของ Arduino

- ต่อ LED และหลอดไฟเข้ากับ Arduino ตามนี้เลย:
- LED สีแดง (RED) ต่อกับขา Digital Pin 13
- LED สีเขียว (GREEN) ต่อกับขา Digital Pin 12
- LED สีน้ำเงิน (BLUE) ต่อกับขา Digital Pin 11
- หลอดไฟ (LAMP) ต่อกับขา Digital Pin 10

- เปิดโปรแกรม RemoteXY เพื่อสร้างแอปสำหรับมือถือ Android ดูขั้นตอนการสร้างแอปแบบเต็มๆ ได้ในวิดีโอของพี่เลย

- หลังจากสร้างแอปสำเร็จ มันจะหน้าตาประมาณนี้

ต่อสายทุกอย่าง ตามในวิดีโอให้เรียบร้อย
ดาวน์โหลดไลบรารี RemoteXY แล้วเพิ่มลงในโปรแกรม Arduino IDE จากนั้นอัพโหลดโค้ดลงบอร์ด (ช่วงนี้ยังไม่ต้องต่อสาย Tx, Rx นะ)
เปิด Play Store บนมือถือ Android แล้วค้นหาแอป "RemoteXY" เพื่อติดตั้ง

เปิด WiFi บนมือถือ แล้วเชื่อมต่อกับเครือข่าย WiFi ที่สร้างจาก ESP8266 (ชื่อจะเป็น RemoteXY...) พร้อมใส่รหัสผ่านที่เราตั้งไว้ตอนสร้างแอป
เชื่อมต่อกับ RemoteXY เสร็จแล้วก็เปิดแอป ได้เวลาควบคุมไฟ LED กันแล้ววว! สู้งานนะน้อง

ลงลึกกันหน่อย (Technical Details)
การควบคุมแสงไฟผ่านเว็บ
โปรเจคนี้คือการเชื่อมต่อฮาร์ดแวร์ไฟในบ้านเข้ากับระบบควบคุมระยะไกลผ่านเว็บ
- mDNS และ Web Server: ESP8266 จะทำหน้าที่เป็นเว็บเซิร์ฟเวอร์ (ใช้ไลบรารี
ESP8266WebServer) และลงทะเบียนตัวเองผ่าน mDNS ทำให้เราพิมพ์ "led.local" ในเบราว์เซอร์เพื่อเข้าแผงควบคุมได้เลย แทนที่จะต้องจำ IP Address - การปรับความสว่างแบบ PWM: ใช้ขา PWM ของ ESP8266 ซึ่งให้ความละเอียดถึง 1024 ระดับ ทำให้การหรี่ไฟนุ่มนวลกว่าการใช้ Arduino แบบมาตรฐาน (256 ระดับ) มาก
การออกแบบหน้าจอควบคุม
- ความเข้ากันได้กับ RemoteXY / Blynk: ฟิร์มแวร์ถูกออกแบบให้ทำงานร่วมกับแพลตฟอร์ม IoT แบบลากแล้ววางได้ (Drag-and-drop) ทำให้น้องๆ สามารถสร้างแอปมือถือในสไตล์ตัวเอง มีสไลด์ปรับค่าและตัวเลือกสี เพื่อควบคุมแถบ LED หรือช่องสี RGB แต่ละช่องได้โดยตรง
สุดท้ายนี้ อย่าลืมกดติดตามช่อง YouTube ของพี่ด้วยล่ะ! ช่วยพี่ไปให้ถึง 1,000 ซับหน่อยยย
ขอบคุณคร้าบบบ!