劉 勇,徐娟娟
(濱州學院 信息工程系,山東 濱州 256600)
?
基于GSM的溫濕度監(jiān)測系統(tǒng)設(shè)計*
劉 勇,徐娟娟
(濱州學院 信息工程系,山東 濱州 256600)
設(shè)計了基于GSM的溫濕度監(jiān)測系統(tǒng),該系統(tǒng)可以根據(jù)不同環(huán)境調(diào)節(jié)溫濕度的閥值。當監(jiān)測到環(huán)境溫濕度超過設(shè)定的閥值時向目標手機發(fā)送短信提醒,并且發(fā)出警報聲。該系統(tǒng)共分為四大部分:數(shù)據(jù)采集部分、主控制部分、數(shù)據(jù)發(fā)送部分、人機交互部分。該系統(tǒng)有著穩(wěn)定性良好,數(shù)據(jù)傳輸及時等優(yōu)點。
單片機;溫濕度參數(shù);GSM;無線監(jiān)測
對于GSM溫濕度監(jiān)測系統(tǒng)的開發(fā),在現(xiàn)代科技生活中,越來越重要。同時,現(xiàn)代農(nóng)業(yè)生產(chǎn)和機械化工業(yè)生產(chǎn)的各個發(fā)展領(lǐng)域內(nèi),對溫濕度環(huán)境的需求越來越迫切,其中包括對于建筑工程的建造、溫室中植物的種植、糧食儲備和機械制造等各行各業(yè)。因此,近幾年來,研究人員逐漸把研究重點轉(zhuǎn)向精確度高且穩(wěn)定性好的監(jiān)測系統(tǒng),溫濕度監(jiān)測系統(tǒng)逐漸發(fā)展成為環(huán)境監(jiān)測領(lǐng)域研究中的研究熱點,并且具有很大的發(fā)展?jié)撃堋?/p>
本文主要關(guān)于GSM溫濕度監(jiān)測系統(tǒng)的工作機理和使用的功能特點,利用DHT11模塊收集溫濕度,通過單片機對收集到的溫濕度進行數(shù)模轉(zhuǎn)換,將轉(zhuǎn)換好的數(shù)據(jù)通過單片機的串口傳遞到TC35模塊,并由GSM發(fā)短信到用戶手機,用戶可以利用短信傳送特殊命令控制單片機做出響應(yīng)。
GSM溫濕度監(jiān)測系統(tǒng)以STC89C52單片機為控制器,芯片DHT11測量溫度和濕度。溫濕度傳感器采集環(huán)境的溫度和濕度信息,STC89C52單片機對溫濕度信息處理得溫濕度的數(shù)據(jù)。利用串口與GSM模塊TC35進行數(shù)據(jù)傳輸,系統(tǒng)可通過AT指令來傳遞數(shù)據(jù)信息,然后通信數(shù)據(jù)終端將通過GSM網(wǎng)絡(luò)收集到的采樣數(shù)據(jù)進行數(shù)據(jù)信息儲存和處理控制。該系統(tǒng)組成結(jié)構(gòu)原理圖如圖1所示。
圖1 系統(tǒng)組成結(jié)構(gòu)原理圖
基于GSM溫濕度監(jiān)測系統(tǒng)操作面板如圖2所示,采用適配器供電,通過溫濕度傳感器采集溫濕度數(shù)據(jù),并通過LCD12864實時顯示。正常情況下,LCD12864用來顯示實時溫濕度,監(jiān)測系統(tǒng)中的四個LED燈分別表示升溫、降溫、加濕、除濕。實驗通過設(shè)置三個按鈕來控制系統(tǒng)的溫度和濕度的上下限報警值,當溫度和濕度高于上限的設(shè)置值或者是低于下限的設(shè)置值時,單片機就會自動亮起相應(yīng)的LED燈,同時也會啟動系統(tǒng)的蜂鳴器同時進行聲光報警,并且會發(fā)送報警短信到指定的手機號,短信內(nèi)容為當前的溫濕度和告警內(nèi)容。
用戶在接收到溫度警告后,可以通過編輯指定短信“kaifengshan”來控制指定繼電器打開風扇,在溫度合格時編輯短信“guanfengshan”來控制指定繼電器關(guān)閉風扇。當用戶在接收到濕度警告后,可以通過編輯指定短信“kaijiashi”來控制指定繼電器打開噴霧器,在濕度合格時編輯短信“guanjiashi”來控制指定繼電器關(guān)閉噴霧器。這樣以達到遠程實時監(jiān)測溫濕度情況并遠程加以控制。
單片機首先把收集到的溫度數(shù)據(jù)(SOT)從SHT10中讀入,然后應(yīng)用程序算出它的溫度值,再讀入濕度數(shù)據(jù)(SORH)同樣通過程序可以計算出其對應(yīng)的濕度值,這就是系統(tǒng)溫濕度數(shù)據(jù)采集的工作原理。
圖2 GSM溫濕度監(jiān)測系統(tǒng)
2.1 實時時鐘電路
時鐘電路通過產(chǎn)生一定頻率振蕩的振蕩電路,相當于單片機的心臟。單片機工作需要時鐘電路產(chǎn)生的振蕩信號,任何操作都需要按照時序進行,時鐘電路控制著整個單片機的運行正常。時鐘電路一般由一個晶體振蕩器和電容構(gòu)成。
本文設(shè)計的系統(tǒng)在設(shè)計初期篩選了很多時鐘電路DS1302、DS1307、PCF8485,最后選擇了DS1302,它的特點是編程簡單,振蕩電路穩(wěn)定,具有掉電保護功能。所以根據(jù)以上幾點選擇了該模塊。DS1302的SCLK、I/O、RST的三個端口分別跟MCU的P1.5、P1.6、P1.7端口相連,DS1302的全部操作可以用這三個端口控制。時鐘電路電路圖如圖3所示。
圖3 時鐘電路圖
2.2 復(fù)位電路
復(fù)位電路是一種對MCU的狀態(tài)進行復(fù)位的一種電路,可以通過R-C電路實現(xiàn)復(fù)位電路,也能使用MAX809芯片來實現(xiàn)復(fù)位電路。該系統(tǒng)使用R-C電路來實現(xiàn)復(fù)位電路的,如圖4所示。
圖4 復(fù)位電路圖
2.3 串口通信寄存器設(shè)置
STC89C52可以使用異步通信方式(UART),與串行傳送信息的終端達成連接,或者使用同步方式也可以,使用TTL或CMOS移位寄存器來擴充I/O口。
STC89C52單片機通過RXD和TXD兩個引腳傳輸數(shù)據(jù)。一個只能被CPU讀出數(shù)據(jù),一個只能被CPU寫入數(shù)據(jù)。
2.4 波特率設(shè)置
波特率指的是兩個系統(tǒng)之間相互進行數(shù)據(jù)傳輸?shù)乃俾省TC89C52在不同工作方式下有著不同波特率的規(guī)定。在這不同工作方式中可以改變工作方式1的波特率。GSM溫濕度監(jiān)測系統(tǒng)所用單片機晶振頻率為11.059 2 MHz,設(shè)置波特率為9 600 bps可以提高數(shù)據(jù)傳輸時的準確度。
3.1 無線控制程序設(shè)計
無線模塊TC35i與MCU采用串行異步通信方式進行數(shù)據(jù)傳輸。利用TC35i模塊的串口,終端發(fā)送不同的AT指令以不同的命令控制單片機響應(yīng),就能實現(xiàn)發(fā)送短消息的功能。在進行無線程序控制的編程時主要的操作流程為,首先需要進行初始化操作,重置模塊的一些設(shè)置;其次就是編寫發(fā)送AT指令,通過想要控制的方式找到對應(yīng)的指令發(fā)送;最后就是對接收到的指令進行處理得出相應(yīng)的數(shù)據(jù)。系統(tǒng)的溫濕度數(shù)據(jù)采集流程圖如圖5所示。
圖5 溫濕度數(shù)據(jù)采集流程圖
3.2 GSM通信控制程序
TC35i模塊上電后,需要觀察SYNC線的指示燈變化,觀察指示燈的閃爍情況,如果是滅的時間短亮的時間長說明已經(jīng)連接進網(wǎng)絡(luò),可以對模塊進行操作。模塊沒有接入網(wǎng)絡(luò)中時,則需要重置模塊。模塊啟動后,需要對串口初始化,設(shè)置一些初始參數(shù)。
模塊準備工作做完后,單片機發(fā)送短信需要進行以下操作完成。首先需要判斷模塊連接是否正常,發(fā)送指令確定。確定連接后就需要以AT指令設(shè)置發(fā)送的方式,有兩種發(fā)送方式,分別為PDU和TEXT方式。再然后就是需要SIM卡的短信中心地址,通過AT+CSCA來確定該地址。以上三條指令需要接收的返回值為OK才能進行下一步的命令操作,如果接收的返回值為ERROR,則需要重新發(fā)送指令控制模塊。發(fā)送指令A(yù)T+CMGS用于設(shè)置接收的目的地址,當模塊的返回值為>時,表示目的地址設(shè)置成功,可以發(fā)送溫濕度數(shù)據(jù),實現(xiàn)了數(shù)據(jù)的無線傳輸。
整個程序按順序執(zhí)行,每一步都需要經(jīng)過返回值函數(shù)的判斷,返回值正確后才能完成AT命令的發(fā)送。本文軟件編寫了Check_Return()函數(shù)用于判斷返回值,當接收寄存器內(nèi)的值為OK或>時,Check_Return()=1,表示模塊已經(jīng)接收命令;當返回值為ERROR時,Check_Return()=0。
3.3 DHT11溫濕度監(jiān)測軟件設(shè)計
DHT11是數(shù)字信號輸出端,包括了兩個傳感器。它使用了一種特殊的溫度和濕度傳感器技術(shù)和精確的數(shù)字采集技術(shù),以確保系統(tǒng)的長期穩(wěn)定性。
DHT11器件采用簡化的單總線通信。單總線通信技術(shù)只能同時支持一種接收數(shù)據(jù)方式,要么是接收數(shù)據(jù)要么是發(fā)送數(shù)據(jù),所以進行數(shù)據(jù)傳輸時需要遵守規(guī)定的時序圖來進行數(shù)據(jù)的傳輸。如果不遵守規(guī)定的時序來設(shè)置,就會出現(xiàn)數(shù)據(jù)傳輸錯誤,不能與外部進行數(shù)據(jù)的交換。
打開電源鍵,敲擊復(fù)位按鈕重置系統(tǒng)。測試結(jié)果如圖6所示,溫度為29.2 ℃濕度為31.1%。
圖6 測試結(jié)果
打開電源鍵,按下復(fù)位按鈕,等待GSM模塊注冊網(wǎng)絡(luò),按下按鈕調(diào)節(jié)閥值。打開手機,利用吹風機給溫濕度傳感器加熱,當溫度超過閥值,單片機控制GSM模塊向目標手機發(fā)送短信,內(nèi)容是當前溫濕度的值。
[1] 張麗娜.51單片機系統(tǒng)開發(fā)與實踐[M].北京:北京航空航天大學出版社,2013:40-50.
[2] 范紅剛.51單片機自學筆記[M].第2版.北京:北京航空航天大學出版社,2010:66-84.
[3] 程昱.Propel DXP電路設(shè)計[M].北京:清華大學出版社,2003:10-40.
[4] 周妍.單片機多主機通信模式在糧庫溫濕度監(jiān)控系統(tǒng)中的應(yīng)用[D].吉林:吉林大學,2007:4-5.
[5] 石東海.單片機數(shù)據(jù)通信技術(shù)從入門到精通[M].西安:西安電子科技大學出版社,2002:100-108.
Design of Temperature and Humidity Monitoring System Based on GSM
Liu Yong,Xu Juanjuan
(Dept.ofInformationEngineering,BinzhouCollege,BinzhouShandong256600,China)
The paper introduces a design of the temperature and humidity monitoring system based on GSM.According to the different environment,the system can adjust the valve of temperature and humidity.As the environment temperature and humidity exceed the threshold,the system sends the text messages to the target cell phone and issues an alarm.The system is divided into four parts of data acquisition part,main control part,data sending part and human-computer interaction.The system has the advantages of good stability and data transmission in a timely manner.
microcontroller; temperature and humidity parameters; GSM; wireless monitor
2016-06-22
2016-07-04
濱州學院國家級大學生創(chuàng)新訓(xùn)練計劃項目(201510449007)
劉 勇(1995-),男,本科在讀,通信工程專業(yè)。
1674-4578(2016)05-0017-02
TP 29
A