ในช่วงวันหยุดฉันคิดว่ามันเป็นความคิดที่ดีที่จะมีอุปกรณ์ตรวจจับไฟฟ้าดับสำหรับบ้านของเราในนิวอิงแลนด์ การค้นหา Duckduckgo อย่างรวดเร็วค้นพบการใช้งาน Raspberry Pi ที่ยอดเยี่ยมของ @Fabytm หลังจากเล่นกับมันเล็กน้อยฉันตัดสินใจว่าความคิดของ Butean รุ่นเบากว่าอาจจะง่ายกว่าใน ESP32 หรือ ESP8266 MCU ราคาถูก นอกจากนี้ยังจะช่วยให้ผู้อื่นมีเวลาน้อยลงเงินน้อยลงหรืออาจเป็นทักษะทางเทคนิคน้อยลงในการสร้างอุปกรณ์ตรวจจับพลังงาน
มีสถานการณ์ดับสองสถานการณ์ที่ฉันต้องการจับ:
การตรวจจับไฟดับ - ก่อนอื่นฉันต้องการใช้ระบบการแจ้งเตือนฟีดของ Adafruit เพื่อแจ้งให้ฉันทราบเมื่อไม่ได้รับการตอบกลับ HTTP จากอุปกรณ์ของฉันภายในระยะเวลาที่กำหนด Adafruit IO อนุญาตให้บัญชีฟรีส่งการแจ้งเตือนหากไม่มีการอัปเดตใน 10 นาที 30 นาที 1 ชั่วโมงหรือ 1 วัน คุณสมบัติฟีด 'ออนไลน์' นี้ดีจริงๆ สำหรับบัญชี Adafruit IO ฟรีมันเป็นอีเมลเท่านั้น แต่สำหรับวัตถุประสงค์ของเรานี่ค่อนข้างเพียงพอ
ความยาวไฟดับ - รหัสทั้งหมด ~ 100 บรรทัดของมันยังติดตามเวลายุคด้วย เมื่อพลังงานกลับมาทำงานต่อจะคำนวณระยะเวลาที่ผ่านไปตั้งแต่เวลาที่บันทึกล่าสุดและจะโพสต์ไปยัง ifttt เดลต้านี้หากเกินค่าที่คุณตั้งไว้ใน config.py ฉันรายงานเวลาหยุดทำงานในฟิลด์ ค่า 1 ของ IFTTT และการกระทำ "จากนั้น" ของฉันคือให้ Alexa แจ้งให้ฉันทราบถึงความยาวของการหยุดทำงาน
ใน config.py ฉันตั้งค่าช่วงเวลาการโพสต์ Adafruit เป็น 30 วินาทีและช่วงเวลาหยุดทำงานเป็น 10 นาที ฉันยังมีฟีดนี้ส่งอีเมลบัญชี Gmail ของฉันซึ่งมีกฎว่าหากผู้ส่งเป็น [email protected] มันส่งต่ออีเมลไปยัง AT&T SMTP-to-Sms [email protected] และฉันได้รับการแจ้งเตือน SMS สำหรับการแจ้งเตือน IFTTT ฉันตั้งค่าความยาวหยุดทำงานของเดลต้าเป็น 30 นาทีและใช้ webhooks เพื่อแจ้งเตือนฉันถึงการหยุดทำงานที่ยาวนานกว่าช่วงเวลานั้น
คุณจะต้องมี 5 องค์ประกอบต่อไปนี้เพื่อสร้างอุปกรณ์นี้:
Expressif ESP MCU - ฉันเลือกบอร์ด Lolin/Wemos ESP32C3 ในราคา ~ $ 4 ESP8266 ทำงานได้ดีพอ ๆ กัน
Micropython - คุณสามารถดาวน์โหลดได้สำหรับบอร์ดด้านบนที่นี่ คุณจะต้องใช้เครื่องมือ esptool และ ampy เพื่อแฟลช micropython และอัปโหลดสคริปต์ Python ของคุณ ใช้เครื่องมือการเชื่อมต่ออนุกรมที่คุณชื่นชอบ (putty.exe, หน้าจอ ฯลฯ )
ไฟล์ detect.py และ config-sample.py micropython เปลี่ยนชื่อ config-sample.py เป็น config.py เพื่อรวมข้อมูลรับรอง WiFi, Adafruit และ IFTTT ของคุณ
บัญชีฟรีที่ทำทั้ง Adafruit และ Ifttt การสร้างบัญชีเหล่านี้เป็นเรื่องง่าย - เพื่อไปที่ไซต์เหล่านี้โดยตรงและลงทะเบียน คุณจะต้องสร้างฟีดและตั้งค่าการแจ้งเตือนสำหรับฟีดนี้บน Adafruit บน IFTTT ให้ใช้ webhook โดยใช้ชื่อฟีดที่คุณระบุใน Adafruit
กรณีเล็ก ๆ ที่จะปิด MCU ฉันได้รวมเคสขนาดเล็ก. sscad และ. stl ซึ่งจะเป็นที่ตั้งของชิป ESP คุณสามารถแก้ไขได้ตามที่คุณต้องการให้พอดีกับบอร์ดที่คุณเลือก ใช้ SCAD เพื่อทำการเปลี่ยนแปลงเหล่านี้
ยินดีต้อนรับความคิดเห็น/ข้อเสนอแนะ/คำวิจารณ์ โปรดทราบว่าฉันสร้าง repo และรหัสนี้ในเวลาไม่ถึง 90 นาทีและฉันแน่ใจว่ามันจะดีขึ้น แต่มันใช้งานได้ดีสำหรับสิ่งที่ฉันต้องการ
