IoT Smart Home: ตรวจวัดกำลังไฟฟ้าแจ้งเตือนความผิดปกติผ่าน Line-notify

สวัสดีค่ะทุกท่าน,, สืบเนื่องจากงาน อว.แฟร์ : SCI Power for Future Thailand ที่จัดขึ้นระหว่างวันที่ 22 – 28 กรกฎาคม 2567 ณ ศูนย์การประชุมแห่งชาติสิริกิติ์ ซึ่งภายในงานมีหัวข้อการประชุม เสวนา และการอบรมในประเด็นที่เกี่ยวข้องกับ
ศูนย์รวมผู้เชี่ยวชาญ(Hub of Talents) และศูนย์กลางความรู้ (Hub of Knowledge) ที่น่าสนใจมากมาย ซึ่งสิ่งที่นิกคิดว่านอกจากองค์ความรู้ที่ได้รับแล้ว ยังทำให้เราเห็นภาพกว้างว่า เทคโนโลยีแทรกซึมอยู่ในชีวิตประจำวันเราอยู่ทุกหนทุกแห่ง และใกล้ชิดกับเรามากกว่าที่คิด โดยเฉพาะอย่างยิ่งการเข้ามา(นานแล้ว)ของอุปกรณ์ IoT (Internet of Things) ที่ในปัจจุบันกระจายขอบเขตการใช้งานไปสู่ User ทั่วไปและกลายเป็นสิ่งที่เข้าถึงได้ง่ายๆ เช่น การใช้งานในรูปแบบของ Smart Home หรือ Smart Devices ทั้งหลาย

SCI Power for Future Thailand
Forum: AI in Domains: Medical, Energy, Finance, Frontier

ซึ่งจาก Forum AI Empowering Thailand’s Economy: AI in Domains: Medical, Energy, Finance, Frontier ที่นิกพบว่าในโดเมนของ Energy หรือการใช้พลังงานถือได้ว่าเป็น Hot Issue ที่อยู่ใกล้ๆ ตัวพวกเราทุกคน

และน่าจะเป็นการดีไม่น้อยหากเราสามารถเข้าถึงอุปกรณ์ IoT ที่สามารถตรวจวัด และจัดเก็บข้อมูลการใช้พลังงานในบ้านของเรา เพื่อให้เราสามารถควบคุมดูแล และบริหารจัดการการใช้พลังงานให้มีประสิทธิภาพได้

ในบทความนี้,, นิกเลยจะพาทุกๆ ท่านไปสร้าง IoT Devices เพื่อใช้ในการเก็บข้อมูลการใช้งานกำลังไฟฟ้าภายในบ้าน พร้อมกับเพื่มเติมในส่วนของ Regression Model ในการคำนวณค่าไฟฟ้าล่วงหน้าจากพฤติกรรมการใช้ไฟฟ้าที่จัดเก็บไว้ และแจ้งเตือนหากมีความผิดปกติที่เลยค่า Thresholds ที่กำหนดไว้ (จากการทำ Outlier: Anomaly Detection) ผ่าน Line Notify โดยเราจะเก็บข้อมูลลงใน Google Sheets เพื่อให้ง่ายต่อการเรียกดูและเข้าถึงค่ะ(^∀^●)ノシ

  • *บทความนี้ประกอบไปด้วย 3 ส่วนหลักคือ
  • 1. ส่วนของอุปกรณ์ที่ต้องใช้ (ซึ่งรับรองว่าซื้อตามได้ไม่ยาก จากทั้งแอพส้ม หรืออื่นๆ ไม่ต้องเป็นวิศวกร หรือ Technician ก็สามารถประกอบตามได้ง่ายๆ)
    2. ส่วนของโค้ด หรือโปรแกรมที่จะป้อนให้กับตัวบอร์ด หรืออุปกรณ์ IoT ของเรา (ซึ่งเดี๋ยวนิกจะให้โค้ดไปเลยค่ะ แค่ Copy & Paste ก็พอ)
    3. ส่วนของการ Config และการใช้งาน

ว่าแล้ว,,,,,ก็มาเริ่มกันที่ตัวอุปกรณที่เราจะต้องใช้งานซึ่งมีรายละเอียดดังนี้ 🔎🧐

    อุปกรณ์ในการสร้าง IoT Device 🧐✨

    ลำดับแรกที่เราจะมาพิจารณากันคือในส่วนของอุปกรณ์ที่เราจะซื้อมาประกอบกันเพื่อขึ้นรูปเป็น Devices ของเรา โดยจะมีสิ่งที่ต้องใช้จำนวน 14 รายการดังต่อไปนี้ค่ะ

    IoT Smart Home: ตรวจวัดกำลังไฟฟ้าแจ้งเตือนความผิดปกติผ่าน Line-notify
    1. บอร์ดพัฒนา ESP32: ESP32-WROOM-32D เพื่อรองรับ WiFi และ Bluetooth
    2. เซนเซอร์วัดกระแสไฟฟ้า: SCT-013-030 แบบคล้องสายไฟ 30A แกนแยก
    3. เซนเซอร์วัดแรงดันไฟฟ้า: AC ZMPT101B โมดูลวัดแรงดันไฟฟ้า AC เฟสเดียว
    4. ตัวแปลงไฟ AC เป็น DC: HLK-PM01 แปลง 220V AC เป็น 5V DC, 3W
    5. ตัวควบคุมแรงดันไฟฟ้า: AMS1117-3.3 ปรับแรงดัน 5V เป็น 3.3V
    6. ฟิวส์ 1 250V 1A ทำงานช้า สำหรับป้องกันวงจร
    7. ที่ใส่ฟิวส์ 1 แบบติดแผงหน้าปัด สำหรับเปลี่ยนฟิวส์ได้ง่าย
    8. ตัวเก็บประจุ (ขนาดใหญ่) 2 470μF 16V สำหรับปรับความเรียบของไฟ
    9. ตัวเก็บประจุ (ขนาดเล็ก) 4 0.1μF (100nF) สำหรับกรองสัญญาณรบกวน
    10. ตัวต้านทาน 10kΩ 1/4W สำหรับวงจรแบ่งแรงดัน จำนวน 2 ตัว
    11. ขั้วต่อสายไฟ 2 แบบสกรู 2 ขา สำหรับต่อไฟ AC เข้า
    12. แผ่นวงจรพิมพ์ แบบกำหนดเองหรือโปรโตไทป์ สำหรับติดตั้งอุปกรณ์
    13. กล่องพลาสติก ABS สำหรับใส่วงจรทั้งหมด
    14. แจ็คเสียง 3.5 มม. แบบตัวเมียติดแผง สำหรับเชื่อมต่อเซนเซอร์ SCT-013

    โดยจากอุปกรณ์ทั้งหมดนี้ทุกท่านสามารถ Search เพื่อซื้อได้จาก Wording ที่นิกทำเป็นตัวหนาค่ะ ซึ่งหลักจากที่ได้อุปกรณ์มาแล้วให้เราทำการ Wiring หรือต่อวงจรตามภาพด้านบนโดยให้บอร์ดหรือแผงวงจรพิมพ์ (อุปกรณ์ข้อที่ 12) ได้เป็น IoT Devices หน้าตาน่ารัก ปุ๊กปิ๊ก ตามภาพด้านล่างนี้ค่ะ 💡🚀

    IoT Smart Home: ตรวจวัดกำลังไฟฟ้าแจ้งเตือนความผิดปกติผ่าน Line-notify
    IoT Smart home Devices for data monitoring and Line Notify: RAM+

    มาสร้าง Code กันค่ะ 🧐✨

    หลังจากส่วนแรกที่เป็นตัวอุปกรณ์เรียบร้อยไปแล้ว ก็เข้าสู่ส่วนของการโปรแกรมกันค่ะ,, Let’s go ,,,,(∩^o^)⊃━☆

    โดยส่วนประกอบของตัวโปรแกรมจะประกอบไปด้วย 2 ส่วนหลักค่ะ ได้แก่

    • Microcontroller Code
    • Web Application Code: HTML Code และ App Script Code

    ซึ่งในส่วนของ Microcontroller Code จะเป็นโค้ดในส่วนของการควบคุมและสั่งการตัว IoT board ของเราให้สามารถทำงานตาม Function ได้ตามปกติ ซึ่งการทำงานของตัวบอร์ดมีรายละเอียดดังนี้ค่ะ

    1. ตู้ไฟฟ้า (Electrical Panel):
      • เป็นแหล่งจ่ายไฟหลักขนาด 220V AC
      • จ่ายไฟให้กับระบบทั้งหมด
    2. ฟิวส์ (Fuse):
      • ทำหน้าที่ป้องกันวงจรจากกระแสไฟเกิน
      • เป็นอุปกรณ์เพื่อความปลอดภัย
    3. เซนเซอร์วัดกระแสไฟฟ้า (Current Sensor):
      • เช่น SCT013030
      • ใช้สำหรับวัดกระแสไฟฟ้าแบบไม่รุกล้ำ
      • หนีบรอบสายไฟเพื่อวัดกระแส
    4. เซนเซอร์วัดแรงดันไฟฟ้า AC (AC Voltage Sensor):
      • เช่น ZMPT101B
      • วัดแรงดันไฟฟ้ากระแสสลับ
    5. ตัวแปลงไฟ AC เป็น DC (AC-DC Converter):
      • เช่น HLK-PM01
      • แปลงไฟฟ้าจาก 220V AC เป็น 5V DC
    6. ตัวเก็บประจุ (Capacitor):
      • ทำหน้าที่ปรับความเรียบของกระแสไฟฟ้า
      • ลดการกระเพื่อมของแรงดันไฟฟ้า
    7. ตัวควบคุมแรงดันไฟฟ้า (Voltage Regulator):
      • เช่น AMS1117-3.3
      • ปรับแรงดันไฟฟ้าให้คงที่ที่ 3.3V สำหรับ ESP32
    8. ESP32:
      • เป็นหน่วยประมวลผลกลาง
      • รับข้อมูลจากเซนเซอร์และประมวลผล
      • ส่งข้อมูลไปยังคลาวด์ผ่าน WiFi

    โดยโค้ดในสวนของ Microcontrollerม Web Application (HTML Code และ App Script Code) จะทำงานร่วมกันเพื่อให้สามารถจัดเก็บข้อมูลลงใน IoT Smart home Devices ตามลำดับขั้นตอนการทำงานดังนี้,,

    1. ไฟฟ้าจากตู้ไฟฟ้าผ่านฟิวส์เพื่อความปลอดภัย
    2. เซนเซอร์วัดกระแสและแรงดันไฟฟ้าทำการวัดค่า
    3. ตัวแปลงไฟแปลงแรงดันลงเพื่อจ่ายให้ ESP32
    4. ตัวเก็บประจุและตัวควบคุมแรงดันทำให้ไฟที่จ่ายให้ ESP32 มีความเสถียร
    5. ESP32 ประมวลผลข้อมูลจากเซนเซอร์
    6. ข้อมูลถูกส่งไปยัง Google Sheets ผ่าน WiFi
    7. Google Sheets แสดงผลข้อมูลการใช้พลังงานในรูปแบบที่เข้าใจง่าย

    ซึ่งระบบนี้ช่วยให้ผู้ใช้สามารถติดตามการใช้พลังงานได้อย่างแม่นยำและแสดงผลแบบเรียลไทม์ผ่านคลาวด์นั่นเองค่ะ,, โดยทุกท่านสามารถเข้าไป Download Source Code ทั้งหมดได้ทื่ =>> https://github.com/Nick-Panaya/RAMplus 🧐 (^∀^●)ノシ

    การ Config และการใช้งาน IoT device

    ในส่วนของการใช้งาน ของอุปกรณ์นี้ก็จะเน้นให้ทุกท่านสามารถ Config และเข้าไปตั้งค่าการใช้งานได้เองง่ายๆ โดยมีลำดับขั้นตอนดังต่อไปนี้ค่ะ

    1. การตั้งค่าเริ่มต้น:
      • เมื่อเปิดเครื่องครั้งแรก อุปกรณ์จะสร้าง WiFi Hotspot ชื่อ “SmartEnergyMeter”
      • เชื่อมต่อกับ Hotspot นี้และเข้าสู่หน้าตั้งค่า
      • กรอกข้อมูล WiFi , URL ของ Google Script, และ Token ของ LINE Notify
      • ตั้งค่าขีดจำกัดสำหรับแรงดันไฟฟ้า, กระแสไฟฟ้า, และกำลังไฟฟ้า
      • บันทึกการตั้งค่า
    2. การใช้งานทั่วไป:
      • อุปกรณ์จะวัดแรงดันไฟฟ้า, กระแสไฟฟ้า, และคำนวณกำลังไฟฟ้าอย่างต่อเนื่อง
      • ข้อมูลจะถูกส่งไปยัง Google Sheets ทุก 10 วินาที
      • หากมีค่าผิดปกติ จะมีการส่งการแจ้งเตือนผ่าน LINE Notify
    3. การรีเซ็ต:
      • กดปุ่ม BOOT ค้างไว้ 5 วินาทีเพื่อทำ Soft Reset (ล้างการตั้งค่า WiFi และการกำหนดค่า)
      • กดปุ่ม BOOT ค้างไว้ 10 วินาทีเพื่อทำ Hard Reset (ล้างข้อมูลทั้งหมด)
    4. การติดตามการใช้พลังงาน:
      • อุปกรณ์จะบันทึกการใช้พลังงานรายวันและรายเดือน
      • ข้อมูลจะถูกรีเซ็ตอัตโนมัติทุกวันและทุกเดือน
    5. การแจ้งเตือน:
      • ผู้ใช้จะได้รับการแจ้งเตือนผ่าน LINE เมื่อมีค่าเกินขีดจำกัดที่กำหนดไว้
    6. การดูข้อมูล:
      • ตรวจสอบ Google Sheets ที่เชื่อมต่อไว้เพื่อดูประวัติการใช้พลังงาน
    7. การแก้ไขปัญหา:
      • หากอุปกรณ์ไม่สามารถเชื่อมต่อ WiFi ได้ ให้ลองรีเซ็ตและตั้งค่าใหม่
      • ตรวจสอบการเชื่อมต่อเซนเซอร์หากเห็นค่าผิดปกติ
    IoT Smart Home: ตรวจวัดกำลังไฟฟ้าแจ้งเตือนความผิดปกติผ่าน Line-notify
    Device & System testing: IoT RAM+

    และใดๆ ก็ตามค่ะเพื่อน หลังจากที่เราสร้าง IoT devices นี้มาแล้ว เรามาลองทดสอบการใช้งานกันค่ะ โดยในรูปด้านบนนี้นิกทดลองใช้งาน โดยการให้ IoT ของเรามีการแจ้งเตือนเมื่อมีเหตุการณ์แรงดัน/ กระแส เกินค่าความปลอดภัยที่เรากำหนดไว้ นอกจากนี้ในภาพด้านขวาเป็นส่วนของ Dashboard การแสดงผลค่าพารามิเตอร์ต่างๆ ที่วัดได้ค่ะ^^

    Last but not Least…

    จากบทความนี้นิกเชื่อว่าเพื่อนๆ น่าจะได้ประโยชน์และเปิดมุมมองในเรื่องของการใช้งาน และ Create IoT Devices ซึ่งเราจะเห็นได้ว่าปัจจุบันนี้เทคโนโลยีเหล่านี้อยู่ใกล้ตัวเรามาก และสำหรับเพื่อนๆ นักการตลาดหรือผู้ที่ทำธุรกิจเกี่ยวเนื่อง สิ่งที่เราพบก็คือในปัจจุบันบุคคลทั่วไปอาจไม่ได้เป็นเพียง User อีกต่อไป แต่เมื่อการเข้าถึงแหล่งความรู้และอุปกรณ์เป็นไปได้ง่าย อาจทำให้รูปแบบของ Products ในลักษณะนี้มีการเปลี่ยนแปลงไปจากผู้ให้แบบ Passive เป็น Active, Adaptive และ Creative เองในที่สุด,, ซึ่งแน่นอนค่ะว่าผู้ปรับตัวทันเท่านั้นที่จะอยู่รอด ✪ ω ✪

    ป.ล. สำหรับท่านไหนที่อยากลองนำโค้ดไปรันเล่น หรือเป็นแนวทาง สามารถคอมเมนต์ให้นิกติดต่อกลับ ติดต่อมาได้ที่การตลาดวันละตอน  เว็บไซต์ Facebook Instagram TwitterYoutube และ Blockdit ได้เลยค่ะ

    Hi, I am Nick,,,,Panaya Sudta (●'◡'●) Engineer during the daytime. Researcher at night. Reader in spare time. (❁´◡`❁) วิศวกร/นักวิจัย/ Market research ค่ะ หวังเป็นอย่างยิ่งว่าจะได้แชร์มุมมองกันนะคะ

    Leave a Reply

    Your email address will not be published. Required fields are marked *