新聞中心

EEPW首頁 > 物聯(lián)網與傳感器 > 設計應用 > 基于STM32單片機的智能家居測量系統(tǒng)設計*

基于STM32單片機的智能家居測量系統(tǒng)設計*

作者:張智勇,曹穎,劉梓博,王曉玲(北京信息科技大學儀器科學與光電工程學院,北京100192) 時間:2022-04-19 來源:電子產品世界 收藏
編者按:為實現(xiàn)家居智能化的監(jiān)控管理并且測量其溫度、空氣成分以及煙霧等重要數(shù)據(jù),設計了基于STM32單片機的智能家居測量系統(tǒng)。硬件設計部分使用STM32單片機,并設計主電路;軟件設計中設置自動檢測家庭環(huán)境數(shù)據(jù)并實現(xiàn)實時上傳云端,完成智能家具測量系統(tǒng)。仿真實驗表明,該系統(tǒng)在一般環(huán)境和復雜環(huán)境中都有較高的測量精度和實時上傳云端功能。

*本項目受北京信息科技大學大學生創(chuàng)新項目支持,項目編號:5102110802

本文引用地址:http://m.butianyuan.cn/article/202204/433249.htm

當今的家庭生活面臨著各種環(huán)境和健康問題,周圍的生活參數(shù)存在潛在的隱患,包括室溫、氣體中有害物質的濃度等。在新時代,人們越來越關注健康及其相關因素。隨著微電子技術的應用,電器的普及,以及和傳感器性能的快速提高,它可以通過和傳感器實現(xiàn)對室內各種環(huán)境參數(shù)的實時監(jiān)測。進行調整,使生活體驗更好[1]。當前已經可以實現(xiàn)基本環(huán)境數(shù)據(jù)的測量,但是目前在實際應用當中存在成本高、可測量數(shù)據(jù)少、無法進行實時調控、行業(yè)標準不統(tǒng)一、跨領域協(xié)作困難等問題[2]。

針對上述問題,為實現(xiàn)的價格合理化、標準化、簡易操作、注重使用者體驗、全面性等發(fā)展趨勢。開發(fā)基于 的智能家居測量系統(tǒng)本設計主要論述了由單片機控制的室內環(huán)境監(jiān)測裝置,以實現(xiàn)數(shù)字化和智能化。各種室內環(huán)境參數(shù)可以通過顯示裝置實時顯示在用戶面前,再通過報警電路,用戶可以根據(jù)環(huán)境情況及時采取相應措施,從而享受更健康、更安全的生活[3]。

1   智能家居測量系統(tǒng)總體設計方案

該系統(tǒng)由硬件系統(tǒng)、原子云服務器和移動設備三部分組成。總體方案結構如圖所示。硬件系統(tǒng)由單片機、傳感器模塊、Wi-Fi(wireless fidelity,無線網絡通信技術)無線模塊、電源模塊等組成。單片機作為硬件系統(tǒng)的主控芯片,對傳感器模塊采集的家庭環(huán)境信息進行處理,電源模塊為整個硬件系統(tǒng)的各個模塊供電[4]。原子云服務器作為本系統(tǒng)的中轉站與硬件系統(tǒng)交互環(huán)境信息,并對登錄信息進行處理,當用戶在移動端設備界面中請求時將環(huán)境信息發(fā)送給界面,實現(xiàn)實時回傳檢測數(shù)據(jù)[5]。當界面中有控制請求信息時,對控制信息進行處理,移動端設備界面中包含注冊界面、登錄界面、控制界面三大模塊,環(huán)境信息的顯示及警報均在控制界面中實現(xiàn)[6]。如圖1 為系統(tǒng)工作流程圖。

1650351884913281.png

圖1 系統(tǒng)工作流程

2   系統(tǒng)硬件設計

2.1 單片機

選擇 單片機作為智能家居控制系統(tǒng)的主控中心,實現(xiàn)系統(tǒng)高性能、低功耗的應用需求。本文選用正點原子生產的STM32F407 單片機系統(tǒng),STM32F407提供了工作頻率為168 MHz 的Cortex-M4 內核(具有浮點單元)的性能。

2.2 主電路設計

首先,設計外圍電路,包含空氣成分傳感器、溫濕度傳感器、煙霧傳感器、攝像頭模塊。其次添加了Wi-Fi 模塊,使系統(tǒng)具備遠程通信,控制以及觸發(fā)警報的功能。除此之外,還包括微控制電路、串口電路以及串口通信電路等多個外圍電路。

大量實驗表明,最適宜人的溫濕度是:夏天溫度20~27 ℃,濕度為30%~60%;冬天溫度18~25 ℃,濕度為30%~80%。一般情況下, 室內溫度控制在18~26 ℃,濕度為30%~70% 時,人體感覺最舒適。因此對室內進行溫度、濕度、空氣質量等參數(shù)檢測,并通過遠程控制進行調整能獲得人體舒適的家居環(huán)境。

2.3 傳感器設計

2.3.1 溫濕度傳感器

BME680 環(huán)境傳感器是一款MEMS(micro-electromechanical system,微機電系統(tǒng)) 的環(huán)境傳感器,可測量溫度濕度參數(shù),非常適用于監(jiān)測空氣數(shù)據(jù)。由于采用了MEMS 技術,該傳感器的體積非常小,功耗低,因此也適用于低功率場合,如可穿戴家居設備。

2.3.2 煙霧氣體傳感器

MQ-2 煙霧氣體傳感器模塊是用于監(jiān)控煙霧氣體(例如液化氣和天然氣) 的模塊。它具有信號輸出指示和雙信號輸出的特點??芍苯舆B接單片機,模擬輸出0-5 V 電壓,濃度越高,電壓越高。對液化氣,天然氣和城市燃氣具有良好的敏感性。具有長期使用壽命和可靠的穩(wěn)定性,并具有快速響應恢復的特點。

2.3.3 空氣質量傳感器

SGP30 氣體傳感器模塊TVOC/eCO2 空氣質量甲醛二氧化碳測量模塊。SGP30 是一種金屬氧化物氣體傳感器,在單個芯片上具有多個傳感器元件。四個氣體傳感元件集成在其中,并具有完全校準的空氣質量輸出信號。此外,SGP 易于集成,可以將金屬氧化物氣體傳感器集成到移動設備中,為智能家居,家用電器和物聯(lián)網應用中的環(huán)境監(jiān)控開辟了新的可能性。

2.3.4 WIFI模塊

該模塊使用串口(LVTTL) 與MCN( 或其他串口設備)通信,并內置TCP/IP 協(xié)議棧,可實現(xiàn)串口和Wi-Fi 之間的轉換。該模塊支持串口到Wi-Fi STA,串口到AP 和Wi-Fi STA + Wi-Fi AP 模式,從而快速構建串口-Wi-Fi 數(shù)據(jù)傳輸方案。該模塊體積小,通過6個2.54 毫米的間距引腳連接到外部,并且可以免費連接到原子云服務器。

3   系統(tǒng)軟件設計

設計需要用到STM32F407 單片機上集成的電路系統(tǒng),另外加裝外部傳感器,在環(huán)境參數(shù)超過人體健康范圍的時候,使用單片機上集成的蜂鳴器發(fā)出警報聲,使用聲音警示環(huán)境變化[7]。

家庭環(huán)境參數(shù)使用傳感器來收集信號。該功能與人類的感官一致,并且處于所有信息處理系統(tǒng)的最前沿[8]。傳感器類型的選擇應考慮傳感器參數(shù)的設計要求,如測量范圍、穩(wěn)定性等,然后對每個測量參數(shù)進行不同的測試,最后以實際結果為準,選擇最佳選擇計劃[9]。通過對傳感信號采集和處理,單片機系統(tǒng)根據(jù)篩選結果分為數(shù)據(jù)采集、校正、分析和報警[10]。為保證信號的準確性,首先,主控芯片數(shù)字值進行校正和補償,并對數(shù)據(jù)的準確性進行綜合分析,是否超過設定的限值,否則報警[11]。

3.1 數(shù)據(jù)采集前端軟件設計

按照中華人民共和國GB/T1883-2002《室內空氣質量標準》,確定了室內溫度、濕度、有毒氣體含量等相關正常參數(shù)的范圍。根據(jù)居家生活實際環(huán)境與國家標準確定傳感器的工作模式,將其成本和體積降低,進一步提高性價比。一旦確定了測量參數(shù),即著手制定一個總體設計計劃[12]

程序的一般流程如圖2 所示。首先啟動系統(tǒng),然后各單片機和傳感器模塊開始工作。MQ-2 傳感器對空氣中有毒物質的濃度進行實時檢測,如果達到預定限度,就會向單片機發(fā)送信號。如果接收到信號,它會發(fā)出警報。如果沒有,它將繼續(xù)被檢測。BME680 溫濕度傳感器和SGP30 空氣質量傳感器同時實時采集室內空氣成分含量,并將參數(shù)發(fā)送至單片機。單片機收到對Wi-Fi無線模塊的請求后,通過串口向Wi-Fi 模塊傳輸數(shù)據(jù),Wi-Fi 模塊透明實時傳輸數(shù)據(jù)。使用者可以在移動設備端登陸云賬號并查詢實時測量的家庭環(huán)境數(shù)據(jù)。圖2 為系統(tǒng)總體設計的工作流程圖。

1650352329110121.png

圖2 系統(tǒng)總體設計流程

系統(tǒng)軟件設計流程復雜,涉及面廣,包括數(shù)據(jù)硬件軟件、原子云服務器設計、移動終端硬件設計,這是首次推出各傳感器模塊采集環(huán)境信息和監(jiān)控控制系統(tǒng)名稱信息。通過端口發(fā)送,服務器接收對設備的控制。指令過程中,可將數(shù)據(jù)通過網絡傳輸至界面屏,通過無線通訊、數(shù)據(jù)采集、發(fā)送、發(fā)送等方式讀取數(shù)據(jù),進而實現(xiàn)報警作用。

3.2 數(shù)據(jù)處理方法

在前端過濾錯誤數(shù)據(jù)后,執(zhí)行下一個數(shù)據(jù)操作。首先,在配置功能中,在寄存器中獲取相關數(shù)據(jù)分析功能,以進一步獲取所需數(shù)據(jù)。以下以BME680 傳感器舉例。

首先與BME680 進行交互,但是BME680 的讀寫取決于特定的硬件平臺,因此它們被操作為對象。在執(zhí)行相關操作時,如果需要控制時序,則需要使用延遲操作。延遲處理始終取決于特定的軟件和硬件平臺,因此延遲處理被視為對象的操作。而使用SPI(serial peripheral interface,串行外設接口)時,沒有設備地址但有片選信號,如何操作片選信號依賴于硬件平臺,將對片選的操作定義為對象的操作函數(shù)。一個對象必須對其進行初始化才可使用。初始化對象主要有四個方面的內容:檢查對象賦值的合法性;屬性賦初值;為對象操作指定函數(shù)指針;對象所指向設備的初始配置。通常一些設備需要定義操作碼來實現(xiàn)讀寫區(qū)分,但BME680 采取了將寄存器地址的最高位置零表示為寫。之所以可以這樣定義,是因為BME680 寄存器地址分配的特殊性決定的。改變寄存器地址的最高位也能區(qū)分不同的寄存器,絕不會重復。

BME680 環(huán)境傳感器支持SPI 和I2C(I2C總線)接口,SPI 也支持3 線和4 線模式,但在測試應用中只使用I2C 接口,SPI 接口還有待測試。BME680 環(huán)境傳感器在使用SPI 接口時支持SPI 模式0(CPOL = CPHA = 0) 和模式3(CPOL = CPHA = 1)。使用I2C 接口時,支持標準模式、快速模式和高速模式。而且在使用I2C 接口時,SDO 引腳必須接高電平或低電平,以確定設備地址。

聲明不能立即使用此對象變量,并且需要使用驅動程序中定義的初始化函數(shù)來初始化此變量。BME680 環(huán)境傳感器有一個測量范圍寄存器。這個寄存器的值對應于兩組計算常數(shù)。這兩組常數(shù)用于計算測量值。一般來說,BME680 環(huán)境傳感器本身的讀寫操作并不復雜,但是計算和校正之間的關系相對復雜,尤其是空氣質量數(shù)據(jù)更應該注意這種校正關系[13]。另外傳感器與上述BME680 傳感器數(shù)據(jù)處理方法基本類似,相似算法本文不做過多贅述。

3.2 云服務器軟件設計

UI 界面作為用戶與MCU 系統(tǒng)之間的交互界面,可以提高用戶的直觀感覺。但是,UI 接口不能直接與MCU 系統(tǒng)交互,需要服務器作為傳輸來實現(xiàn)它們之間的信息傳輸。因此,設計了系統(tǒng)的UI 界面和服務器??紤]到QT 具有可用C++ 編寫UI 框采用QT 進行UI界面設計。此外,由于TCP 服務器在應對多網關數(shù)據(jù)同時接入時會存在一定的性能損耗,本系統(tǒng)采用基于Linux 下的C 語言編程設計原子云服務器。

4   系統(tǒng)可靠性測試和傳感器標定

4.1 系統(tǒng)可靠性測試

4.1.1 居家環(huán)境測試

系統(tǒng)穩(wěn)定性與可靠性的低下會直接導致抗干擾能力較差。單片機的應用范圍遠遠超過了計算機和其他計算設備的總和,計算機工程的許多實際應用往往會產生比人類更多的控制程序。在這種情況下,很多技術人員往往會選擇同時使用多個控制程序,相互補充完善。但是需要注意的是,在這個過程中,軟件干擾是不活躍的,而硬件干預是活躍的。所以達到較高的抗干擾能力。只有技術人員將硬件與軟件抗干擾相結合,并且在這一過程中更加細致周到地分析干擾源,才能夠真正地起到完善系統(tǒng)穩(wěn)定性的效果。

智能家居測量系統(tǒng)在實際居家環(huán)境中測試記錄各傳感器數(shù)據(jù),并制成如圖3 至圖6。

image.png

圖3 溫度濕度

image.png

圖4 氣壓

image.png

圖5 天然氣/VTOC含量

image.png

圖6 二氧化碳含量

分析上述折線圖可得,日溫濕度曲線變化從上午八點到十二點是呈上升曲線,一般環(huán)境溫濕度會隨著日出而變化。氣壓折線圖有一個上升曲線,查閱資料得知,一天中,氣壓有一個最高值、一個最低值,分別出現(xiàn)在9~10 時和15~16 時,還有一個次高值和一個次低值,分別出現(xiàn)在21~22 時和3~4 時。氣壓日變化幅度較小,一般為0.1~0.4 kPa,并隨緯度增高而減小。二氧化碳折線圖有小幅度的波動,經分析得出,這樣的波動在誤差范圍內,是由于居家人數(shù)變化造成的數(shù)據(jù)輕微波動,峰值的出現(xiàn)不影響參數(shù)總體的測量。

4.1.2 測試結果分析

實測數(shù)據(jù)是一周內同一時間段同一環(huán)境下固定測量結果,取加權平均之后得到以上折線圖。如圖得到傳感器的測量數(shù)據(jù)可知,在實際居家環(huán)境中,環(huán)境數(shù)據(jù)時刻在變化,系統(tǒng)整體穩(wěn)定性可靠,可保證長時間工作不會過熱死機,傳感器可持續(xù)穩(wěn)定的工作。

4.2 傳感器定標

測試系統(tǒng)在真實家居環(huán)境中的工作狀態(tài),得到真實的傳感器采樣數(shù)據(jù),反饋到相應的傳感器數(shù)據(jù)計算函數(shù)。在更高精度的傳感器同測量環(huán)境下進行對標,以獲取更高精度的測量數(shù)據(jù)。

因為本測量系統(tǒng)涉及多個傳感器同時工作,遂即采用單獨定標法。由于傳感器的設計不同,零件的加工存在誤差,以及裝配調整狀態(tài)不完全相同的因素,校準后每個傳感器的靈敏度不一致。但是,從用戶使用的角度來看,希望同一型號的產品應具有相同的靈敏度,輸入阻抗和其他技術參數(shù),并且初始零輸出應盡可能細微,從而最大限度地減少在使用中調整系統(tǒng)的工作量,最大限度地提高測量精度。傳感器輸入和輸出之間的工作特性與非線性,滯后和非重復性問題有關。與線性傳感器相比,最好的解決方案是在每個傳感器測得的實際標準曲線中擬合一條直線,并且每個最大偏差曲線與直線的偏差將最小。例如,具有相同特性的傳感器具有最高的精度。校準線可以用線性方程y = kx + B表示,因為方程中的B 是傳感器輸出零的初始值,k 是傳感器輸出的靈敏度斜率。其中,xy 是來自傳感器的實驗( 校準)數(shù)據(jù),因此通常使用平均斜率法或最小二乘法來處理并獲得直線。如圖7 為最小二乘法擬合曲線圖。

image.png

圖7 最小二乘法擬合曲線

4.2.2 定標結果分析

綜合測試結果的主要內容是對溫濕度傳感器、煙霧氣體傳感器、空氣質量傳感器進行靜態(tài)定標、動態(tài)定標以及補償。靜態(tài)定標或靜態(tài)校準的方法可以獲得測量系統(tǒng)的靜態(tài)特性。本次傳感器定標校準操作過程簡單,但是耗時較多,主要是多次重復性測量。得出各個傳感器需要進行改善才可以擁有良好的靜態(tài)特性,這是需要通過計算傳感器的靜態(tài)性能指標。對上述數(shù)據(jù)分別采用了分段擬合和分段直線擬合兩種方法,保證了遲滯、精度和重復性的要求。通過擬合測試得到靜態(tài)定標的基本方法,熟悉了數(shù)據(jù)處理的過程。測試系統(tǒng)的動態(tài)特性是其內的一種屬性,這種屬性只有系統(tǒng)受到激勵之后才能明顯表現(xiàn)出來,并且這隱含在系統(tǒng)的響應之中。階躍響應法是以階躍信號作為測試系統(tǒng)的輸入,通過對系統(tǒng)的輸出響應的測試,從中計算出系統(tǒng)的動態(tài)特性參數(shù)。本次定標已經知道上述傳感器的動態(tài)特性符合一階模型,所以用階躍響應法可方便測出。

5   系統(tǒng)的提升與改進

智能家居測量系統(tǒng)相比較傳統(tǒng)機械儀表測量,其功能全面性、智能化程度更高,可更快速便捷的獲取實時數(shù)據(jù)。體積較小,集成化程度高,現(xiàn)已成為智能設備未來的發(fā)展新方向。在較為傳統(tǒng)的機械儀表測量系統(tǒng)中,環(huán)境數(shù)據(jù)的監(jiān)測需要依靠傳統(tǒng)的機械測量方式,有誤差大、反應慢、測量周期長等缺點,并且存在危害性環(huán)境不適宜機械儀器測量。但是智能家居測量系統(tǒng)正好克服這些缺點,因為其工作環(huán)境可以與監(jiān)測顯示系統(tǒng)分開,做到云上傳數(shù)據(jù)并且云讀取。這樣大大減少了危害環(huán)境下對人體的傷害,并且可以做到在環(huán)境指數(shù)超標時及時警報提醒。對家居環(huán)境實時測量以抑制復雜環(huán)境對人可能造成的有害影響。集成化智能家居測量系統(tǒng)可以很大程度的節(jié)約成本,降低使用難度,并且在單一傳感器出現(xiàn)故障的時候可以更換維修,降低維護成本。集成化的環(huán)境測量系統(tǒng)體積較小,耗能少,可與智能手機智能云互聯(lián),在外也可實時讀取家庭環(huán)境數(shù)據(jù)。

參考文獻:

[1] 林學偉,嚴明忠.基于STM32單片機的智能家居控制系統(tǒng)設計[J].廊坊師范學院學報(自然科學版),2020.20(4):35-38.

[2] 余云飛,朱得元,章平.基于Arduino和ESP8266的多終端智能家居控制平臺的設計與實現(xiàn)[J].安慶師范大學學報(自然科學版),2019,25(3):36-40.

[3] 劉璐,袁戰(zhàn)軍,王希娟.基于ARM及ZigBee的智能家居遠程監(jiān)控系統(tǒng)的設計與實現(xiàn)[J].電子設計工程,2019,27(11):136-140+145.

[4] 鄭凱,姜毅,趙永生.基于STM32單片機實驗平臺的測控綜合實踐教學探索[J].教育現(xiàn)代化,2020,47(53):12-14+18.

[5] 熊斯鵬,黃敏.基于STM32單片機動力環(huán)境監(jiān)控終端的設計與實現(xiàn)[J].電子產品世界,2020,27(2):74-76.

[6] 王洪生.基于單片機與傳感器的智能家居環(huán)境監(jiān)測系統(tǒng)設計[J].智能應用,2020.22.(9):24-27.

[7] 胡學芝,程海博,南光群.基于STM32的智能家居系統(tǒng)設計與實現(xiàn)[J].湖北理工學院學報,2018,34(1):1-4.

[8] 馮偉.單片機應用系統(tǒng)可靠性的影響因素以及測試方法分析[J].技術交流,2016.10.(93):130.

[9] 陳建新.DHT11數(shù)字溫濕度傳感器在溫室控制系統(tǒng)中的應用[J].山東工業(yè)技術,2016(18):120.

[10] 幸聯(lián)星.基于單片機的智能家居環(huán)境檢測系統(tǒng)設計[J].電子技術與軟件工程,2020(1):59-61.

[11] 徐艇,張衛(wèi)強,胡建平等.基于傳感技術的室內監(jiān)護系統(tǒng)設計[J].傳感器與微系統(tǒng),2019,38(2): 59-62.

[12] Y X Lin,R Kong,R B She,et al. Design and Implementation of Remote/Short-range Smart Home Monitoring System Based on ZigBee and STM32 [Z].STMicroelectronics,2013.2040-7459.

(本文來源于《電子產品世界》雜志2022年4月期)



評論


相關推薦

技術專區(qū)

關閉