อัปเกรดบ้านเก่าให้เก๋าด้วย RF-IoT Bridge
ไอ้พวกปลั๊กไฟรีโมท 433MHz มาตรฐานเนี่ย ของถูกและดีเลยนะน้อง แต่มักจะมาพร้อมรีโมทหน้าตาโบราณที่หายโคตรง่าย โปรเจกต์ RF Socket by Phone นี้จะมาช่วยเชื่อมช่องว่างระหว่างเครื่องใช้ไฟฟ้า "โง่ๆ" รุ่นเก่า ให้เข้าสู่โลก Internet of Things (IoT) สุดล้ำ ด้วยการจับเอา ESP8266 (ESP-01) ตัวจิ๋วมาฟีเจอริ่งกับ Module ส่งสัญญาณ RF แค่นี้เราก็เปลี่ยนปลั๊กผนังธรรมดาให้กลายเป็น "Smart Plug" ที่คุมผ่านมือถือได้ โดยไม่ต้องควักกระเป๋าจ่ายแพง จัดไปวัยรุ่น!
คาถาไร้สาย: ไลบรารี RCSwitch
เคล็ดลับวิชาคุมปลั๊กพวกนี้อยู่ที่ไลบรารี RCSwitch เลยน้อง ปกติรีโมท 433MHz ส่วนใหญ่จะส่งรหัส Binary หรือ Tri-State ที่ไม่ซ้ำกันออกมาเพื่อระบุตัวปลั๊กและคำสั่ง "เปิด/ปิด":
- Signal Capturing: ก่อนจะสร้างตัวส่ง เราต้องทำตัวเป็นสปาย ใช้ RF receiver ไป "Sniff" หรือแอบดูรหัสจากรีโมทตัวจริงของน้องมาก่อน
- Emulated Transmission: พอได้รหัส (เช่น
000101000100010101010001) มาแล้ว เราก็สั่งให้ ESP-01 ปลอมตัวเป็นรีโมท ส่งคลื่นรหัสเดิมออกไป หลอกปลั๊กไฟให้มันนึกว่าเรากดรีโมทจริง หล่อเท่เลยงานนี้ - Frequency Tuning: ถึงจะเป็นคลื่น 433MHz เหมือนกันแต่แต่ละเจ้าเขาก็ใช้ค่า Pulse Lengths ต่างกันนะเว้ย (ส่วนใหญ่จะอยู่แถวๆ 300 ถึง 350 microseconds) ในโค้ดจะบอกวิธีตั้งค่าพวกนี้ให้ชัวร์ว่ากดแล้วติด 100% ไม่ต้องมานั่งลุ้น
หน้าจอคุมงาน: Blynk Cloud
อยากให้แอปดูหรูหราหมาเห่า เราจะใช้ Blynk IoT platform จัดการให้:
- Terminal Interaction: เราจะตั้งค่า "Virtual Terminal" (V0) ไว้ในแอป ให้เราพิมพ์สั่งการได้เท่ๆ เช่น "Turn on A" หรือ "All off" แถมเอาไว้ดูสถานะตอบกลับได้ด้วย
- Button Widgets: ถ้าอยากเร็วก็จัด Button มาวางเลย Map เข้ากับ Virtual Pins (V1, V3) พอกดปุ่มในแอปปุ๊บ มันก็จะไปสะกิด ESP-01 ให้พ่นสัญญาณ RF ออกมาทันที
- Global Reach: ความเจ๋งคือมันวิ่งผ่านระบบ Cloud ไงน้อง อยู่ที่ไหนบนโลกก็คุมได้ จะเช็กว่าลืมปิดกาแฟไหม หรือจะแอบเปิดไฟบ้านขู่ขโมยตอนยังทำงานอยู่ที่ออฟฟิศก็จัดไป
เคล็ดลับการประกอบ: ไฟห้ามช็อต โปรแกรมให้ถูก
การเล่นกับ ESP-01 ต้องละเอียดหน่อยนะน้อง:
- กฎเหล็ก 3.3V: ตัว ESP-01 มันบอบบางนะเว้ย จ่ายไฟ 5V เข้าไปคือ "บึ้ม" ชิปพังทันทีนะน้อง! ต้องใช้ไฟ 3.3V นิ่งๆ จาก FTDI adapter หรือ Module แปลงไฟ (Buck converter) เท่านั้น เตือนแล้วนะ!
- การต่อสาย Breadboard: ใช้ตัวแปลง FT232RL FTDI จะง่ายสุดตอน Upload โค้ด แต่อย่าลืมจิ้ม GPIO0 ลง Ground (GND) ตอนจะเริ่มเอาโค้ดลงเครื่องล่ะ เพื่อเข้า "Programming Mode" ไม่งั้นแก้งานจนตายโค้ดก็ไม่เข้าเครื่อง
โปรเจกต์นี้เหมาะมากสำหรับทำขำๆ ช่วงสุดสัปดาห์สำหรับใครที่อยากเข้าสู่โลก Home Automation แถมยังทำให้ของใช้เดิมๆ ในบ้านฉลาดขึ้นแบบผิดหูผิดตา สู้งานนะน้อง!
นี่คือคู่มือที่จะสอนน้องๆ เช็กและคุมปลั๊กไฟรีโมทด้วย Blynk โดยใช้ ESP8266 - 01 และ Module RF 433 Mhz ครับ
เงื่อนไข: เช็กความยาวคลื่น (Wavelength) กับรหัส Binary ของปลั๊กตัวเองให้ดีก่อนเริ่มสร้างตัวส่งล่ะ ใช้ RF receiver ดักสัญญาณจากรีโมทต้นฉบับให้ชัวร์ก่อนนะ