ทำ WIFI Switch ด้วย ESP-01 + Solid State Relay Module ตอนที่ 1

หลายตอนที่ผ่านมาผมจับเอา ESP-01 มาต่อโน้นต่อนี่ก็แลดูไม่ค่อยมีประโยชน์เท่าไร ตอนนี้จะเป็นการรวมยอดความรู้จากหลายๆตอนมาประยุกต์เป็นของที่ใช้งานได้จริงๆล่ะ

ตั้งโจทย์ให้งานของตัวเองก่อน

  • ทำ WIFI Switch เพื่อควบคุมหลอดไฟส่องสว่างในห้อง
  • เปลี่ยนแปลง UX , UI เดิมให้น้อยที่สุด
  • ยังคงใช้ Switch เปิดปิดไฟได้เหมือนเดิม
  • ให้ควบคุม Switch ผ่านมือถือโดยสั่งงานผ่าน WIFI ได้ทั้งในวงเดียวและจากภายนอก

จริงๆการทำพวก WIFI Switch พวกนี้เป็นพื้นฐานหรือของเล่นอันแรกๆของเหล่า Maker ควรทำได้น่ะนะ ผมเองก็เลยลองตั้งโจทย์ให้ยากซักนิด เพื่อให้ท้าทายตัวเอง ความยากของมันคือการเปลี่ยนแปลง UX , UI เดิมให้น้อยที่สุดนี่แหล่ะ

หลายๆคนอาจจะทำง่ายๆด้วยการซื้อ WIFI Switch สำเร็จรูปมาใช้งานเลย (เดี๋ยวบทความต่อๆไปจะแนะนำ) แต่ผมดูตัวเลือกหลายๆทางแล้วมันเปลี่ยนแปลง UI ผมค่อนข้างเยอะ ผมเองอยากใช้ Switch ไฟตัวเดิมไม่อยากเปลี่ยนแปลงอะไรจนรู้สึกแปลกตา

ทางออกของผมคือต้องย่ออุปกรณ์ทุกอย่างให้เล็กที่สุดแล้วยัดมันเข้าไปใส่ใน Block ไฟของเดิมนั่นแหล่ะ … โชคดีที่ ESP-01 มันค่อนข้างเล็กอยู่แล้วที่เหลือผมก็ไปหา Relay Module ที่มีขนาดเล็กๆมาใส่ให้ได้ก็พอ

มารู้จักเจ้า Solid State Relay Module ก่อน

เจ้า Solid State Relay Module ตัวนี้ผมได้มาจาก Aliexpress ก็ Search ไปเรื่อยๆไปเจอเข้า เอ้ยใช้ได้ ราคาตัวละ $1.2 เองเหมาะมาก แล้วเจ้า Relay Module นี้ทำหน้าที่อะไร ? มันทำหน้าที่ตัดต่อวงจรเหมือนกับ Switch ไฟปกตินั่นแหล่ะครับ แค่เรา จ่ายไฟหรือสัญญาณควบคุมเข้าไปให้มัน เช่นส่งไฟ 5V เข้าไปควบคุม ตัว Relay จะทำหน้าไปตีหน้าสัมผัสเพื่อต่อวงจรไฟ AC 220V ให้

เจ้า Relay พวกนี้มีหลายแบบหลายขนาดให้เราเลือกตามความเหมาะสมของงาน เดิมโครงสร้าง Relay ปกติจะเป็นขดลวดคือจ่ายไฟให้มัน ขดลวดจะสร้างสนามแม่เหล็กดึงหน้า Contact ของ Switch ให้สัมผัสเพื่อต่อวงจรไฟ 220V อะไรแบบนี้

แต่เจ้า Sold State Relay จะแตกต่างไปนิดนึงคือ มันไม่ได้ใช้ขดลวดแต่ใช้อุปกรณ์พวกสารกึ่งตัวนำในการตัดต่อวงจรแทน ทำให้ตัวมันมีขนาดเล็กมาก นั่นเอง

หน้าที่ Solid State Relay Module ที่ได้มาจาก Aliexpress
หน้าที่ Solid State Relay Module ที่ได้มาจาก Aliexpress
ด้านบนจะเห็นมี Connecter ให้ต่อไฟ 5V และต่อสัญญาณควบคุมเข้ามาและมี Output ให้ใช้ไปควบคุมได้
ด้านบนจะเห็นมี Connecter ให้ต่อไฟ 5V และต่อสัญญาณควบคุมเข้ามาและมี Output ให้ใช้ไปควบคุมได้
ด้านหลังจะเห็นสัญลักษณ์ขั้วไฟและหน้า Contact ทาง Output ให้ใช้งานชัดเจน
ด้านหลังจะเห็นสัญลักษณ์ขั้วไฟและหน้า Contact ทาง Output ให้ใช้งานชัดเจน

ผมจับเจ้า Solid State Relay Module มาต่อกับ ESP-01 โดยให้ ESP-01 ทำงานแบบมีทั้งขา Input (เพื่อรับการสั่งงานปิดเปิดจาก Switch) และขา Output (เพื่อสั่งงานปิดเปิด Solid State Relay) ตามรูป

การต่อวงจร ESP-01 กับ Solid State Relay module
การต่อวงจร ESP-01 กับ Solid State Relay module

ผมเลือกใช้ GPIO3 มาทำ input รับ Switch และใช้ GPIO2 ต่อออกไปขับ Solid State Relay Module โดยใช้ R10K ทำการแบ่งกระแสไว้

แล้วก็ coding program กัน

เนื่องจาก Switch ที่เราใช้เป็น Switch ไฟบ้านทั่วๆไป สถานะการทำงานมันเปรียบเทียบ Switch กดติดกดดับ ฉะนั้นต้องเขียนส่วนการเช็ค State ของ Switch ใหม่ คือทุกครั้งที่มีการสับ Switch ตัว Program จะตรวจสอบว่า ณ เวลานั้นมีการ On หรือ Off Relay อยู่ให้สลับ State จาก On เป็น Off หรือสลับจาก Off เป็น On มันจะต่างกับ Switch แบบกดติดปล่อยดับนิดหน่อย … ลองไล่การทำงานดูละกันครับ

ตัว Program จะทำงานจาก Switch ปกติ และทำงานจากการเรียก URL
http://192.168.100.102/getstatus = ขอดูสถานะว่า On หรือ Off
http://192.168.100.102/setstatus/0 = สั่งให้ Solid State Relay ทำงานเป็น Off
http://192.168.100.102/setstatus/1 = สั่งให้ Solid State Relay ทำงานเป็น On

ตอนนี้ไล่วงจรและศึกษาดู code การทำงานนะครับ เดี๋ยวตอนหน้าจะมาเอาพวกนี้ต่อควบคุมไฟให้เห็นจริงๆล่ะ ใครที่สนใจเจ้า solid state relay module นี้หาสั่งเอาไว้จาก aliexpress นะครับ ค้นหาคำว่า Solid State Relay module 1 Channel 5V

แล้วเจอกัน

ความคิดเห็น