設(shè)計家用/工業(yè)用氣體探測器和地震警報系統(tǒng)
用于家庭/工業(yè)安全的氣體探測器和地震警報系統(tǒng)
目的:
?探測可燃?xì)怏w/煙霧(如甲烷、丙烷、一氧化碳)和不尋常的地震運動或振動的存在。
?激活即時本地警報(在OLED顯示屏上),并通過LoRaWAN網(wǎng)關(guān)向the Things Stack中的警報系統(tǒng)發(fā)送遠(yuǎn)程通知。
?提供火警、氣體泄漏或地震活動的早期預(yù)警系統(tǒng),加強人身及財產(chǎn)安全。
先決條件:
?Arduino (C/ c++)編程基礎(chǔ)。
?電子和傳感器的基本概念(特別是氣體和運動傳感器)。
?熟悉Arduino IDE或PlatformIO開發(fā)環(huán)境。
?了解LoRaWAN通信,以便向Things Stack發(fā)送關(guān)鍵警報。
所需材料和軟件:
硬件:
?WISBLOCK底座:RAK19003迷你底座板(用于緊湊的設(shè)計)
?WISBLOCK Core: RAK4630 Nordic NRF52840(集成LoRaWAN報警通信)
?WISBLOCK傳感器:
?RAK12004氣體傳感器(用于可燃?xì)怏w和煙霧)
?RAK12027 Dimron D75地震傳感器
?IM-42652 6軸加速度計(用于一般振動檢測或設(shè)備運動)
?WISBLOCK Miscellaneous: RAK1821 OLED顯示屏
?其他組件/配件:
?WisGate Edge Lite 2 (LoRaWAN網(wǎng)關(guān),用于遠(yuǎn)程警報轉(zhuǎn)發(fā))
?電池連接器電纜
?螺絲刀
軟件:
?Arduino IDE或PlatformIO
?用于RAK模塊的Arduino庫(例如RAKwireless_RAK4631_BSP)和用于傳感器的特定庫(例如,用于MQ2, D75, IMU如Adafruit_LIS3DH或類似,Adafruit_SSD1306, Adafruit_GFX)。
?RAK7268V2網(wǎng)關(guān)配置軟件。
?Things Stack(用于LoRaWAN網(wǎng)絡(luò))和云物聯(lián)網(wǎng)平臺上的帳戶,用于接收警報(例如,與Telegram, SMS或電子郵件等通知服務(wù)集成的Things Stack)。
學(xué)習(xí)成果:
?能夠?qū)嵤┗诙喾N類型事件(氣體,地震活動,運動)檢測的安全系統(tǒng)。
?熟練處理氣體和運動傳感器數(shù)據(jù),用于關(guān)鍵事件檢測和警報激活。
?具備配置本地(可視)和遠(yuǎn)程(通過The Things Stack通知)警報的知識。
?具有針對安全和快速響應(yīng)應(yīng)用設(shè)計物聯(lián)網(wǎng)系統(tǒng)的經(jīng)驗。
設(shè)置和實現(xiàn)步驟:
?硬件組裝:將RAK4631 (Core)模塊連接到RAK1903 (Mini Base Board)上。將傳感器(MQ2、Earthquake、Accelerometer)和OLED顯示器連接到相應(yīng)的端口。連接電池線纜。
?開發(fā)環(huán)境配置:安裝Arduino IDE/PlatformIO,支持RAK4631板。為傳感器和OLED安裝必要的庫。
?節(jié)點編程(RAK4631):
?編寫代碼來初始化并從MQ2氣體傳感器讀取數(shù)據(jù)。設(shè)置氣體/煙霧濃度的警報閾值。
?從D75地震傳感器(數(shù)字)和IM-42652加速度計讀取數(shù)據(jù)。實現(xiàn)檢測地震事件或異常振動的邏輯(例如,加速度的突然變化)。
?在OLED顯示屏上顯示當(dāng)前傳感器狀態(tài)和活動警報。
?將RAK4631配置為LoRaWAN節(jié)點。當(dāng)檢測到警報(氣體或地震/運動)時,發(fā)送帶有事件類型的LoRaWAN警報消息。
?實現(xiàn)低功耗模式,保持設(shè)備活動和持續(xù)監(jiān)控。
?網(wǎng)關(guān)配置(RAK7268V2):將網(wǎng)關(guān)接入網(wǎng)絡(luò),配置為與the Things Stack相連。
Things棧配置:
?進(jìn)入Things Stack控制臺。
?注冊網(wǎng)關(guān):添加RAK7268V2網(wǎng)關(guān)。
?創(chuàng)建應(yīng)用程序:創(chuàng)建新的應(yīng)用程序。
?注冊設(shè)備(RAK4631節(jié)點):用其LoRaWAN憑據(jù)注冊設(shè)備。
?配置有效負(fù)載格式化器(解碼器):編寫Javascript代碼來解碼警報有效負(fù)載(例如,一個字節(jié)用于警報類型,另一個字節(jié)用于嚴(yán)重性)。
?配置通知的集成:在“集成”部分,添加一個“Webhook”來發(fā)送通知到IFTTT、Zapier等服務(wù),或者在收到特定的警報有效負(fù)載時直接發(fā)送通知到可以發(fā)送SMS/電子郵件/電報消息的服務(wù)器。
?測試:進(jìn)行模擬測試:在MQ2傳感器附近放置氣源(例如,未點燃的打火機),或震動地震傳感器/加速度計,以驗證本地和遠(yuǎn)程警報是否正確激活。
挑戰(zhàn)和故障排除提示:
?氣體傳感器校準(zhǔn):MQ2氣體傳感器需要初始“老化”期(幾個小時)來穩(wěn)定。校準(zhǔn)可以是復(fù)雜的,并取決于具體的氣體和所需的濃度。了解它們的局限性和潛在的誤報是至關(guān)重要的。
?假警報:調(diào)整運動/地震傳感器的閾值對于避免日常振動(例如,行人,附近車輛)的假警報至關(guān)重要。檢測邏輯必須是健壯的。
?通信可靠性:對于安防系統(tǒng)來說,LoRaWAN的通信可靠性至關(guān)重要。確保在安裝位置有良好的覆蓋,并盡可能考慮冗余。
?電源:對于安防系統(tǒng)來說,備用電源(電池)和對其狀態(tài)的持續(xù)監(jiān)控對于確保不間斷運行至關(guān)重要。
評估標(biāo)準(zhǔn):
?該系統(tǒng)可準(zhǔn)確檢測可燃?xì)怏w/煙霧和地震事件/振動的存在。
?本地警報立即清晰地顯示在OLED顯示屏上。
?遠(yuǎn)程通知可靠且及時地發(fā)送到Things Stack和配置的警報服務(wù)。
?系統(tǒng)穩(wěn)定,最大限度減少誤報。
?該代碼是高效的,功耗允許連續(xù)監(jiān)控。
本文編譯自hackster.io





