智慧家庭 - 自動瓦斯警報與通風系統

Posted on Nov 10, 2022 by Allen
Embedded System ESP32

專案隊員


  • 徐文献 (負責蒐集資料與設計整體外觀)
  • 林品安 (負責設計程式)

開發動機


  • 鄰近冬天,新聞媒體上時常出現室內中毒事件,常常是因為使用暖爐或熱水器而導致昏迷的事件,這對很多家庭都是不可忽視的潛在危機。利用嵌入式系統來設計一套簡易的自動瓦斯警報與自動通風系統,來模擬現實家庭室內空氣瓦斯的檢測,並在濃度過高時採取通風與警報系統。將利用 ESP32 開發版連接偵測元件,來進行開發完成此次專案的成品。

設計方法


  • 元件
    • 開發板: ESP32*1
    • 瓦斯感測器: MQ2*1
    • 顯示臨界值濃度: 共陽(陰)七段顯示器*1
    • 顯示瓦斯目前濃度: OLED 模組*1
    • 開啟窗戶的伺服馬達: SG90*1
    • 調整臨界值按鈕: 按鈕*2
  • 架構示意圖
  • structure design 1 structure design 2
  • 流程圖
  • 流程圖
  • 外觀感測器布建
  • 外觀結構-1
    外觀結構-2
    外觀結構-3
    外觀結構-4

房屋施工與感測器布建


  1. 先布建感測器,感測器一般值利用瓦斯濃度測試為 0~100,而上限值會到達 300 多。我們透過除以 33 把濃度分成 10 個等級。
  2. 裝設 OLED 顯示器當成顯示幕前瓦斯濃度等級顯示器
  3. 裝設馬達當成窗戶開啟的動力
  4. 裝設 LED 指示燈,作成濃度超過的警報燈號
  5. 裝設 7 段式顯示器,顯示使用者設定的瓦斯警報臨界值

DEMO 影片


重要程式解說


  • 宣告函式庫與初值設定(OLED顯示...)
  • 程式宣告截圖
  • 顯示目前濃度
  • 程式顯示濃度截圖
  • 初始化設定
  • 程式初始化截圖
  • 調整臨界值
  • 程式臨界值截圖
  • 判斷瓦斯濃度安全性
  • 程式瓦斯濃度截圖

Reference


Note
  • 唯一比較大的問題是,馬達、 OLED 顯示器、7段式顯示器都已經接好,但把 LED 接上時會讓 MQ2 感測的值飆漲且下不來,我們發現是因為 LED 沒有給電阻。
  • MQ2 會因為過熱而導致功能失常,需要冷機。
  • 利用 ESP32 上的 BOOT 鍵可以解決程式無法燒錄進 ESP32 的問題。