กระทู้ไมโครคอนโทรลเลอร์ ESP32 (EP.8) ESP32 กับการคุมอุปกรณ์ไฟฟ้าในห้อง

กระทู้สนทนา
สวัสดีครับเพื่อนสมาชิก
พาพันชอบ
กระทู้ ESP32 (EP.8) วันนี้จะขอเสนอเรื่องการใช้งานประยุกต์ใช้ ESP32 กับรีโมทคอนโทรลในการควบคุมอุปกรณ์ไฟฟ้าในห้อง

กระทู้เก่าทั้งหมด
🛑 EP.1  แนะนำเบื้องต้นให้รู้จัก ESP32
https://pantip.com/topic/44159372
🛑 EP.2  ใช้งาน ESP32 กับ web dashboard
https://pantip.com/topic/44161526
🛑 EP.3  ใช้งาน ESP32 กับ sensor ต่าง ๆ
https://pantip.com/topic/44163637
🛑 EP.4  ESP32 กับ dashboard + แจ้งเตือนผ่าน Line
https://pantip.com/topic/44165778
🛑 EP.5  ESP32 กับงาน PWM
https://pantip.com/topic/44167818
🛑 EP.6  ESP32 กับตัวรับ/ส่งสัญญาณ Infrared
https://pantip.com/topic/44168885
🛑 ESP32 (EP.7) ESP32 ในการประยุกต์ใช้วัดค่าตัว Resistor , Capacitor
https://pantip.com/topic/44171282

การใช้งาน ESP32 ในการควบคุมอุปกรณ์ไฟฟ้าต่าง ๆ ในห้องจะมีความสะดวกมาก  เนื่องจาก ESP32 มีขา GPIO จำนวนมาก (สูงสุดถึงประมาณ 15 ขาในการใช้งานแบบ digital ON/OFF)  และรีโมท 1 อันก็จะมีทั้งแป้นตัวเลขและปุ่มอื่นจำนวนมากเช่นกัน  นั่นก็หมายความว่าเราสามารถควบคุมอุปกรณ์ได้นับสิบอย่างที่มีในห้องโดยที่เรานั่งอยู่กับโต๊ะหรือนอนอยู่บนเตียงก็ได้ครับ

project นี้ค่อนข้างจะง่ายมาก .... ขั้นตอนจะมี 2 อย่างเท่านั้น

ขั้นแรกก็คือเราจะต้องหา code ที่ตัวรีโมทคอนโทรลส่งสัญญาณ Infrared ออกมาก่อน  ซึ่งสัญญาณ infrared ที่รีโมทส่งออกมาจะเป็น pulse train แบบภาพนี้

ซึ่งก็แน่นอนว่าทุกปุ่มของรีโมทคอนโทรลจะมี code ต่างกัน  ลักษณะของ code นี้เมื่อรับโดย ESP32 มันจะแปลง pulse train ที่ซับซ้อนออกมาเป็นชุด data ในรูปแบบ HEX (Hexadecimal numbers) จะต้องทำงานร่วมกับ library ครับ .... ซึ่ง library ใหม่สุดที่แนะนำก็คือ "IRremote" library (พัฒนาโดย shirriff / z3t0 / ArminJo)  ตัวล่าสุดนี้ทำงานได้ดีและให้ HEX data สั้นที่สุด  ดูได้จากคลิปด้านล่างนี้เลยครับ
คลิกเพื่อดูคลิปวิดีโอ
จากคลิปนี้จะเห็นว่าเมื่อเรากดปุ่มตัวเลข 1 2 3 และอื่น ๆ มันจะให้ HEX data ที่สั้นมาก  เราก็เอา HEX data นี้ไปใส่ใน code ของ ESP32 เพื่อที่จะสั่งงาน GPIO ให้ ON / OFF ตามปุ่มของรีโมทที่เรากดได้

อุปกรณ์ที่ใช้มีเพียงเท่านี้  

LED 4 ดวงในภาพต่ออยู่กับ GPIO ของ ESP32 .... ซึ่งในการประยุกต์ใช้งานจริงเราจะต้องต่อวงจรจาก GPIO ต่าง ๆ เพื่อไปควบคุมอุปกรณ์ซึ่งใช้ไฟ 220 โวลต์  วิธีการต่อที่ง่ายที่สุดก็คือใช้ครับรายละเอียดตามภาพด้านล่าง
แก้ไขข้อความเมื่อ
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่