廖 雄, 羅正華, 唐毅謙, 喻 娜
(成都大學 信息科學與工程學院, 四川 成都 610106)
基于GSM短消息的遠程溫度監控系統的設計與實現
廖 雄, 羅正華, 唐毅謙, 喻 娜
(成都大學 信息科學與工程學院, 四川 成都 610106)
綜合無線數據通信、數據采集與單片機等技術優點實現基于GSM短消息的遠程溫度監控功能.完成相關硬件設計(DS18B20溫度采集電路、LCD顯示電路及GSM模塊等)和軟件設計,并使用單片機通過串口發送AT指令控制GSM模塊發送短消息,以實現溫度的無線傳輸和遠程監控.
GSM;溫度遠程監控;單片機;AT指令
在遠程監控方面,系統通信的連接方式大多基于有線電纜,其在運行過程中會受到環境及距離的限制.而無線通信方式往往受到地形地貌的影響及頻率資源的限制,同時其成本高,維護工作繁重.因此,直接利用成熟的GSM網絡實現遠程監控是監控技術發展的新方向.隨著移動通信技術的發展,GSM網絡已成為十分成熟的無線通信網絡,正逐步應用于無線通信系統的監控領域,同時其網絡覆蓋區域性能穩定,通信誤差極小[1].利用GSM網絡作為遠程監控系統的信息傳輸平臺是一種有效的方法,其原理簡單,安全保密性高,不需要組建專用維護網絡.GSM的短消息業務通過無線控制信道進行傳輸,為GSM數字蜂窩移動通信網絡提供主要的電信業務,是GSM通信網絡所特有的,所以選用GSM的短消息業務來實現遠程無線數據傳輸控制是可行的[2].本研究基于GSM短消息所設計的遠程溫度監控系統具有高效率、高性能和低功耗的優點,且操作簡單易行,實用性強.
基于GSM短消息的遠程溫度監控系統將溫度作為監控對象,并在LCD上顯示實時監控的溫度.當溫度超過設定的報警溫度值時,系統自動發送短消息到指定的終端(手機)上,以實現數據的遠程傳輸和遠程監控.通過GSM模塊向終端(手機)通過GSM網絡發送短消息,掌握AT指令及其協議和串口編程來控制GSM模塊.此方法的程序代碼編寫容易,硬件電路設計簡單,只需熟悉AT指令和串口編程即可[3],且對硬件需求不高,并能夠自動收發短消息,對于自動采集數據后發送檢測數據的智能監控系統來說,該方法簡單易行.
本系統選用STC89C52單片機和GSM模塊.系統設計的主要流程是溫度傳感器采集好溫度,存入STC89C52單片機,單片機通過使用I/O口來控制LCD顯示屏顯示,以控制報警電路.單片機通過RS232串口與GSM模塊聯機,進而使用串口發送AT指令來控制GSM模塊發送短消息[4].基于GSM短消息的遠程溫度監控系統總體框架圖如圖1所示.

圖1 遠程監控系統總體框架圖
本遠程溫度監控系統硬件電路主要由單片機及外圍電路、溫度采集電路、顯示電路LCD、串行通信電路及GSM無線通信模塊電路組成.
2.1 溫度采集電路
在三針插孔中插入DS18B20芯片,通過STC89C52單片機實現對溫度的控制.單片機通過對芯片二管腳的讀寫時序控制,來開啟溫度轉換和寫入溫度的峰值及讀出溫度轉換值等一系列操作.溫度采集電路圖如圖2所示.

圖2 溫度采集電路圖
溫度采集電路主要程序代碼如下,
void DS18B20-RomCmd(int8u romCmd)
{ switch(romCmd)
{ case 0xcc:
OneWire-WriteByte(0xcc);
break;
default:
break;
}
}
2.2 LCD顯示電路
LCD12864模塊可以顯示8×4行16×16點陣的漢字,也可完成圖形的顯示,同時還具有低電壓、低功耗、操作簡單易行的特點等.LCD12864插槽引腳圖如圖3所示.

圖3 LCD12864插槽引腳圖
LCD顯示電路主要程序代碼如下,
void v-Lcd12864SendData-f(unsigned char byData)//發送數據
{ v-Lcd12864CheckBusy-f();
SET-DATA;
SET-WRITE;
CLR-EN;
io-LCD12864-DATAPORT=byData;
-nop-();
-nop-();
SET-EN;
-nop-();
-nop-();
CLR-EN;
SET-READ;
SET-INC;
}
void v-DelayMs-f(unsigned int nDelay)//延時
{
unsigned int i;
for(;nDelay>0;nDelay--)
{
for(i=225;i>0;i--);
}
}
2.3 串行通信電路
使用MAX232作為串行通信的電平轉換電路,實現數據的串行通信功能.硬件電路通過9針串口和GSM模塊聯機實現通信.MAX232是標準串行總線,是常用的串行接口標準,用來實現設備之間的數據通信[5].
2.4 GSM模塊電路
本研究直接采用GSM開發板,其集成了GSM模塊(TC35)、GSM天線、+5 V開關電源,自帶RS232通信接口,可方便地與PC機、單片機聯機通信,能快速安全可靠地實現系統方案中的遠程溫度監控短消息通信服務.
GSM模塊是傳統調制解調器與GSM無線移動通信系統相結合的一種數據終端設備.單片機與GSM模塊通過一個TTL轉RS232電平電路連接到串口,另一端連接到GSM模塊串口.GSM模塊結構主要由MS、NSS、BSS和OSS 4部分組成(見圖4).

圖4 GSM模塊電路圖
GSM模塊電路主要程序代碼如下:
void Init-GSM(void)
{
clearBuff();
Print-Str(″AT&F ″);
led(0x02);
while(strstr(GsmRcv,″OK″)==NULL)
{ led(0x02);
clearBuff(); Print-Str(″AT&F ″);
delay(1000);
}
led(0x04);
while(1)
{
clearBuff();
Print-Str(″AT+CREG? ″);
led(0x08);
if((strstr(GsmRcv,″+CREG:0,1″)‖strstr(GsmRcv,
″+CREG:0,5″)))
{
clearBuff();
led(0x10);
break;
}
else
{
clearBuff();
led(0x08);
}
}
while(!Hand(″OK″))
{
Print-Str(″AT+CMGD=1 ″);
delay(1000);
}
clearBuff();
while(!Hand(″OK″))
{
Print-Str(″AT+CNMI=2,1 ″);
delay(1000);
}
clearBuff();
while(!Hand(″OK″))
{
Print-Str(″AT+CMGF=1 ″);
delay(1000);
}
clearBuff();
}
2.5 特殊器件介紹
TC35模塊.該模塊是Siemens推出的最新一代GSM模塊,與GSM phase 2/2+兼容,有雙頻(GSM900/GSM1800)、RS232數據口,符合ETSI標準GSM0707和GSM0705,而且容易升級成GPRS模塊.該模塊射頻電路與基帶于一體,向用戶提供了標準的AT命令接口,為數據、語音、傳真和短消息提供快速、安全、可靠的傳輸,方便了用戶的應用.
測試過程中,通過使用Keil uvision4軟件進行程序的編輯與編譯,生成后綴名為.hex的可執行文件,再使用stc-isp軟件進行程序文件的下載,最后通過GSM串口調試專用工具進行短消息的收發,進而實現基于GSM短消息的遠程溫度控制.測試操作圖如圖5所示.

圖5 測試操作圖
本研究采用模塊化設計思想,對系統先進行總的框架布局,然后再做模塊化劃分,對各個模塊進行分析與實現.通過理論分析、程序編寫和硬件調試,最終實現了基于GSM短消息的遠程溫度監控系統.目前,基于GSM短消息的遠程溫度監控系統正逐步廣泛被使用,尤其是使用在網絡覆蓋面較廣、危險系數較大,需要實時監控且監控點頻繁移動的行業中,所以本研究設計的監控系統具有一定的實用價值.
[1]謝維成,楊加國.單片機原理與應用及C51程序設計[M].北京:清華大學出版社,2014.
[2]皮波,姚振東,廖政炯,等.基于GSM通信技術的遠程監控系統設計[J].單片機與嵌入式系統應用,2015,15(10):76-79.
[3]李群芳,肖看,張士軍.單片微型計算機與接口技術[M].北京:電子工業出版社,2012.
[4]馬明.基于DS18B20的溫度采集平臺設計[J].江蘇科技信息,2011,28(7):54-56.
[5]呂俊霞,孫自發.短信收發模塊TC35i在小規模安全監控通報系統中的應用[J].沈陽工程學院學報(自然科學版),2010,6(4):360-362.
Design and Implementation of Remote Temperature Monitoring System Based on GSM Short Message
LIAOXiong,LUOZhenghua,TANGYiqian,YUNa
(School of Information Science and Engineering, Chengdu University, Chengdu 610106, China)
Technological advantages of wireless data communication,data acquisition and the MCU are all integrated to realize remote monitoring.The specific work of the research is to complete the relevant hardware design(DS18B20 temperature acquisition circuit,LCD display circuit,GSM module etc.) and software design,and then use MCU to send AT instructions through the serial port to control GSM module for sending short messages so as to achieve the wireless transmission of the temperature as well as remote monitoring.
GSM;temperature remote monitoring;MCU;AT instruction
1004-5422(2017)01-070-03
2016-12-29.
廖 雄(1993 — ), 男, 碩士研究生, 從事計算機通信與信息系統研究.
TP872;TN929.532
A