智能私家車庫控制系統(tǒng)的設計與實現(xiàn)
摘要:隨著人民生活質量的提升,我國家庭正逐步進入“一戶一車”的時代。傳統(tǒng)的開放式停車場已難以滿足人們對車庫安全性和智能化的需求。本文以STM32單片機為核心,結合DHT11傳感器用于環(huán)境溫濕度檢測,MQ2煙霧傳感器用于火災檢測,HC-SR04超聲波傳感器用于水位監(jiān)測,esp8266作為WiFi通信模塊,通過機智云物聯(lián)網(wǎng)平臺開發(fā)的手機APP,實現(xiàn)對車庫內(nèi)溫濕度、水位和火災等情況的實時監(jiān)測。手機APP還支持遠程控制車庫門的升降及車庫燈的開關。
1 智能車庫硬件電路總體設計
本系統(tǒng)采用STM32單片機作為主控制器,采用步進電機控制車庫門的升降、LED模擬庫燈,分別設計溫濕度檢測、火災檢測、水位監(jiān)測等電路。主控制器接收采集到的數(shù)據(jù),然后利用WiFi模塊與無線網(wǎng)絡進行連接,使用手機App實現(xiàn)與服務器之間的通信。智能車庫控制系統(tǒng)的硬件原理框圖如圖1所示。
圖1 系統(tǒng)硬件原理框圖
1.1 溫濕度檢測電路
溫濕度檢測使用DHT11溫濕度傳感器。該傳感器是一款直接輸出數(shù)字信號的傳感器,利用數(shù)字采集和溫濕度傳感技術,完成溫度和濕度的復合檢測。其輸出信號使用單總線數(shù)字信號,可直接與單片機的IO口進行串行的數(shù)據(jù)讀取。因DHT11傳感器具有低功耗、體積小、響應速度快以及抗干擾能力強等特性,被廣泛應用于較苛刻的環(huán)境中。系統(tǒng)電路使用單片機的一個PA8口與DHT11傳感器的DATA端相連。
1.2 火災檢測電路
火災檢測采用MQ2氣體傳感器。火災檢測電路由MQ2煙霧傳感器和電壓比較器構成。當檢測氣體來臨時,MQ2傳感器的內(nèi)部電阻發(fā)生變化,并輸出與煙霧濃度成比例的模擬電壓,經(jīng)低通濾波器后,再通過電壓比較器輸出數(shù)字量0或1,表示火災的有或無。
1.3 水位檢測電路
采用HC-SR04超聲波傳感器測量水位。它使用IO觸發(fā)的方式,自動發(fā)射40 kHz方波信號,沒有遇到障礙物,即沒有信號返回時,IO輸出低電平(0);遇到障礙物,即有信號返回時,IO輸出高電平(1)。其持續(xù)時間就是超聲波從發(fā)射到接收的時間。已知聲速為340 m/s,水位超聲波到地平面的距離為L,水平面到超聲波探頭的距離為X,超聲波從發(fā)射到接收信號的時間差為T,則水位高度H為:
1.4 WiFi通信電路
WiFi通信電路采用ESP8266模塊。該模塊可實現(xiàn)與單片機進行串口通信,也可以通過它接入互聯(lián)網(wǎng),從而添加物聯(lián)網(wǎng)設備。ESP8266模塊只需將其Tx和Rx引腳連接至單片機的普通IO口,并將該IO口配置為串口的Tx和Rx,ESP8266模塊的Tx與串口Rx相連,Rx與串口Tx相連即可。
1.5 其他外設電路 1.5.1 門控系統(tǒng)
使用28BYJ-48型步進電機的順/逆時針轉動模擬庫門的開/關,28BYJ-48型步進電機使用ULN2003芯片驅動。驅動的工作原理是將電脈沖轉換為角位移。單片機IO口輸出脈沖信號,ULN2003接收到脈沖后,將驅動28BYJ-48型步進電機轉動一定角度。
1.5.2 照明系統(tǒng)
采用工作電壓為直流12 V,功率5 W的LED作為車庫照明燈,使用STM32的IO口接三極管放大后接繼電器,由繼電器控制車庫燈的亮滅。
1.5.3 報警系統(tǒng)
采用有源蜂鳴器作為報警系統(tǒng),使用IO口和三極管驅動,通過置位IO口為高或低(1或0),控制三極管(NPN)的導通與截止,從而控制蜂鳴器報警或不報警。
2 物聯(lián)網(wǎng)系統(tǒng)的構建 2.1 物聯(lián)網(wǎng)方案設計 隨著物聯(lián)網(wǎng)技術的迅猛發(fā)展,其應用范圍不斷擴大,在提高工作效率、節(jié)省人工成本等方面起到了很大的作用。本系統(tǒng)主要采用的是機智云物聯(lián)網(wǎng)平臺。該平臺提供了智能家電、智能家居等產(chǎn)品的物聯(lián)網(wǎng)解決方案。在本方案中,STM32單片機通過ESP8266 WiFi模塊,與GAgent進行數(shù)據(jù)互傳,通過2.4 G網(wǎng)絡(路由器或手機熱點)接入互聯(lián)網(wǎng)后,利用機智云平臺與手機App實現(xiàn)數(shù)據(jù)通信,物聯(lián)網(wǎng)方案如圖2所示。
圖2 物聯(lián)網(wǎng)方案示意圖
其中,GAgent是可移植到ESP8266 WiFi模組中的,主要實現(xiàn)數(shù)據(jù)轉發(fā)的功能,實現(xiàn)設備、機智云和手機App之間的交互。其接入機智云平臺的流程分為三大步驟:(1)設備上電;(2)配置入網(wǎng);(3)綁定設備。
2.2 機智云平臺 機智云平臺應運物聯(lián)網(wǎng)而生,是一個致力于物聯(lián)網(wǎng)產(chǎn)品開發(fā)的云服務平臺,包括智能硬件和軟件。其產(chǎn)品接入流程圖如圖3所示。機智云物聯(lián)網(wǎng)平臺面向個人和企業(yè)開發(fā)者,是智能家居產(chǎn)品開發(fā)的理想云服務平臺。
圖3 機智云物聯(lián)網(wǎng)平臺快速接入流程
2.3 手機App的設計
手機App的設計主要使用機智云平臺提供的Demo(樣板App),Demo可到機智云平臺的官網(wǎng)下載。根據(jù)上述產(chǎn)品接入流程,經(jīng)注冊、創(chuàng)建數(shù)據(jù)點及虛擬調(diào)試等步驟,即可完成硬件設備與App的綁定。手機App界面如圖4所示。
圖4 手機app界面
3 下位機系統(tǒng)程序設計 3.1 主控芯片程序設計
在STM32單片機的主程序中,包含了各模塊函數(shù)的頭文件、數(shù)據(jù)定義類型、協(xié)議及函數(shù)初始化等。主函數(shù)設計為一個死循環(huán),循環(huán)的內(nèi)容是對車庫環(huán)境(溫濕度、災情等)的循環(huán)檢測,以及對發(fā)出控制命令(開啟報警,開/關門等)的循環(huán)檢測。程序流程圖如圖5所示。
圖5 主函數(shù)程序流程圖
3.2 溫濕度檢測模塊程序設計
溫濕度檢測模塊程序設計,采用STM32單片機IO口串行數(shù)據(jù)讀取,數(shù)據(jù)格式為8 bit濕度整數(shù)數(shù)據(jù)+8 bit濕度小數(shù)數(shù)據(jù)+8 bit溫度整數(shù)數(shù)據(jù)+8 bit溫度小數(shù)數(shù)據(jù)+8 bit校驗位。首先對DHT11進行初始化,判斷其是否存在,若數(shù)據(jù)正確即讀取數(shù)據(jù)。程序流程圖如圖6所示。
3.3 火災檢測模塊程序設計
火災檢測模塊程序設計,使用STM32單片機內(nèi)部的12位ADC采集。該模塊的采集信號由IO輸入到MCU,ADC把模擬量轉化成數(shù)字量,再將數(shù)據(jù)轉換成煙霧濃度。程序流程圖如圖7所示。
圖6 溫濕度檢測程序流程圖
圖7 火宅檢測程序流程圖
3.4 水位檢測模塊程序設計
水位檢測模塊程序設計,利用STM32定時器定時,測量超聲波發(fā)射到接收所用的時間,從而根據(jù)聲速計算出所測水位是否超過預警值,若超出預警值則向手機發(fā)送水災報警信號。
4 測試結果
通過測試,本系統(tǒng)實現(xiàn)了車庫內(nèi)部溫濕度、煙霧、水位等測試,測試數(shù)據(jù)可通過WiFi上傳至機智云平臺,手機App可以查閱機智云平臺存儲的車庫信息,也可以發(fā)送指令遠程控制模擬車庫門的升降。控制系統(tǒng)實物圖如圖8所示。
圖8 控制系統(tǒng)實物圖
5 結語 本文設計了一種基于物聯(lián)網(wǎng)的智能私家車庫控制系統(tǒng)。該系統(tǒng)以STM32單片機為核心,結合硬件檢測電路、WiFi通信和手機App,實現(xiàn)了通過手機App遠程控制車庫門的升降,并對外部環(huán)境參數(shù)(如溫濕度、煙霧、水位)進行智能檢測和報警。
|