賈春剛
(青島海信網(wǎng)絡科技股份有限公司,山東青島,266071)
根據(jù)設計方案架構圖1可以看出,系統(tǒng)由微處理器模塊、OLED液晶顯示模塊、DHT11傳感器模塊、報警模塊和無線通訊模塊組成。方案設計遵循簡潔的原則,因此,所有的外圍模塊采用串行方式與微處理器模塊連接。該設計控制核心是STM32F103c8t6單片機,實現(xiàn)傳輸和處理數(shù)據(jù)的基本功能,其他五大模塊圍繞單片機展開。在設計系統(tǒng)時,采用模塊設計法,通過單獨設計各個功能模塊,達到系統(tǒng)架構清晰明確的效果。
圖1 系統(tǒng)方案架構圖
系統(tǒng)硬件為6個分模塊與1個總模塊連接。DHT11溫濕度模塊DATA引腳與單片機IO口PC14連接傳輸數(shù)據(jù),VCC接電源,GND與NC并聯(lián)接地。單片機的USART連接無線通訊模塊GSM800C實現(xiàn)異步通訊功能。OLED模塊3、4、5、6引腳與單片機PB1、PB0、PA7、PA6引腳的IO口連接傳輸數(shù)據(jù)。報警部分由單片機IO口PC14連接報警模塊三極管的基極,集電極連接蜂鳴器和PB14,PA10連接報警模塊的LED燈共同組成。報警時LED和蜂鳴器一起運作達到報警效果。調(diào)節(jié)部分單片機引腳PB4連接三極管,利用單片機傳輸?shù)臄?shù)據(jù)和三極管的特性對繼電器進行操作。系統(tǒng)電路原理圖如上圖2所示。
圖2 系統(tǒng)電路原理圖
2.2.1 溫濕度數(shù)字采集電路
如圖3所示的DHT11電路原理圖,溫濕度傳感器DATA與單片機IO端口PC14單總線傳輸,收發(fā)串行數(shù)據(jù),Pin3、4并聯(lián)接地,其中NC為空腳,可接可不接,VCC引腳連接電源。使用3.3V的電源供電時,要注意電路中的走線長短,以避免供電不足產(chǎn)生的偏差。傳感器讀取的數(shù)據(jù)為上一次測量結果,本系統(tǒng)通過連續(xù)兩次的讀取數(shù)據(jù)實現(xiàn)實時數(shù)據(jù)的采集。
圖3 DHT11電路原理圖
2.2.2 DHT11數(shù)字溫濕度傳感器
DHT11溫濕度傳感器是使用DATA這個可傳輸數(shù)據(jù)的引腳進行單總線協(xié)議通信的,單片機通過復位電路發(fā)送一次復位信號后,DHT11發(fā)送響應信號,同時拉高總線準備傳輸數(shù)據(jù)。傳輸?shù)臄?shù)據(jù)分為濕度數(shù)據(jù)16bit部分、溫度數(shù)據(jù)16bit部分和校驗位8bit。
數(shù)據(jù)時序圖如圖4所示。
圖4 數(shù)據(jù)時序圖
STM32F103c8t6對傳感器發(fā)出傳輸開始信號,傳感器接收信號后采集系統(tǒng),采集系統(tǒng)響應后發(fā)出數(shù)據(jù)的同時再進行一次信號采集。如果沒有接收到主機的響應信號,數(shù)據(jù)采集模塊轉變?yōu)榈凸哪J剑粍幼鳌?/p>
微處理器讀取步驟:
(1)傳感器通電后,測量并記錄環(huán)境中的溫度、濕度數(shù)據(jù),然后通過上拉電阻使DATA數(shù)據(jù)線保持為高電平,等待信號。
(2)STM32F103c8t6的 I/O輸出低電平發(fā)送信號,設置時間大于18ms小于30ms,然后單片機的I/O設置變?yōu)檩斎肽J?。由于上拉電阻的關系,電平回到高電平,同時等待DHT11做出回答信號,發(fā)送信號如圖5所示。
圖5 主機發(fā)送起始信號
(3)當DHT11接收到STM32F103c8t6發(fā)出的信號時,DHT11傳輸引腳發(fā)出回應信號,信號時長為83微秒,回應信號為低電平,然后輸出高電平87us回應單片機準備接收數(shù)據(jù),工作過程如圖6所示。
圖6 從機響應信號
本系統(tǒng)選用帶有振蕩電路的有源蜂鳴器PNP三極管S8550。通過STM32F103c8t6發(fā)出電平給蜂鳴器即可發(fā)出報警信號。蜂鳴器接在三極管的集電極,驅動信號為3.3V的電平,基極接在單片機I/O口的PC14。單片機IO口默認為高電平,系統(tǒng)通電時,蜂鳴器是不發(fā)聲的,當單片機檢驗溫度或者濕度超過上下限時,單片機傳輸?shù)碗娖?,三極管被導通,蜂鳴器響起達到報警功能。蜂鳴器發(fā)出的聲音大小可根據(jù)PWM驅動信號頻率調(diào)節(jié),有源蜂鳴器電路原理圖如圖7所示。
圖7 有源蜂鳴器電路原理圖
GSM 800C是一款四頻GSM/GPRS模塊,分別GSM/GPRS850/900/1800/1900MHz頻率。該設備作為本系統(tǒng)遠程監(jiān)視的核心,在監(jiān)控模塊中,產(chǎn)品利用高電平通電,低電平斷電自動開機,時刻等待接收單片機傳輸?shù)膱缶盘?,信號一旦接收,即刻發(fā)送通知,這樣達到真正意義上的無人監(jiān)視。該模塊利用TTL串口與單片機、電腦連接,實現(xiàn)通訊功能;支持短、彩信,支持錄音功能,支持藍牙,支持TTS等功能。
根據(jù)功能需求設計系統(tǒng)流程圖如圖8。在工作時無需手動開機,通電后自動初始化系統(tǒng)各個模塊。待模塊初始化完畢后,傳感器讀取溫度、濕度數(shù)據(jù),讀取數(shù)據(jù)后傳輸給單片機處理計算,再轉化為數(shù)字字符顯示在OLED顯示屏上。讀取溫濕度的同時系統(tǒng)調(diào)用功能函數(shù),并將讀取的數(shù)值與設置的閾值進行比較。若大于或小于設置的溫濕度閾值,單片機發(fā)送報警信號給報警模塊。蜂鳴器收到信號后,響應信號,同時LED亮起,短信模塊接收信號后發(fā)出信息,水泵繼電器收到信號后開始運行。讀取數(shù)據(jù)時,系統(tǒng)還會實時緩存數(shù)據(jù),方便計算機讀取,以達到實時監(jiān)控的效果。
圖8 系統(tǒng)軟件流程圖
溫濕度傳感器開機進行初始化,做好等待信號準備,得到單片機的指令后,開始對外部環(huán)境的溫度與濕度進行采集數(shù)據(jù)。通過對比數(shù)據(jù)是否正確,決定是否發(fā)出數(shù)據(jù)。正確發(fā)出數(shù)據(jù),反之重新采集。
本系統(tǒng)采用GSM無線通訊模塊的TEXT模式,在溫度或者濕度超過閾值時采用發(fā)送信息到用戶手機的方式提示用戶。在初始化時,通訊模塊進入TEXT模式,一旦收到命令,短信模塊把字符串拼接進入函數(shù),發(fā)送短信。10s后如果還是收到單片機命令,繼續(xù)發(fā)送短信,發(fā)送3次后不再發(fā)送。
關于溫濕度恒定數(shù)值檢測:
(1)利用空調(diào)的恒溫系統(tǒng)檢測溫度穩(wěn)定性,開啟儀器后1分鐘,溫度數(shù)值不變。把房間空調(diào)設定在25度,在儀器穩(wěn)定后放入空調(diào)房,每隔5分鐘進行溫度檢測。檢測結果如表1所示。
表1 溫度檢測結果值
結論:檢測溫度正常。
(2)在濕度為70%RH的環(huán)境下,檢測其穩(wěn)定性,每隔5分鐘檢測環(huán)境濕度,檢測結果如表2所示。
表2 濕度檢測結果值
結論:檢測濕度正常。
通過實驗數(shù)據(jù)觀察,溫度和濕度測定值都趨向于穩(wěn)定,由于硬件的原因,溫度存在1-2℃的誤差,濕度存在1-4%RH的誤差,總體來說儀器較為完善,可以使用。
在本次系統(tǒng)設計的器件選擇上,選擇了計算功能強大STM32F103c8t6處理器、溫濕度檢測功能較為完善的DHT11溫濕度傳感器、顯示屏OLED和無線通信GSM800c。利用四者的結合,打造了一個包含收集-分析-顯示-監(jiān)控功能的機房溫濕度監(jiān)控系統(tǒng)。