1 引言
近年來,遠程監控技術備受人們關注,尤其在設備的性能監測和故障診斷領域都得到了廣泛的應用。目前使用較多的是基于Internet, PSTN公用電話網或者現場總線網絡的有線數據傳輸方式。但是在最近幾年,隨著數字無線通信技術的成熟,遠程監控技術進入一個新的發展階段。GSM網是目前我國應用范圍最廣的數字移動通信系統,短消息SMS( Short Message Service)作為GSM通信網絡的一項基本業務,能夠有效的完成信息的遠程傳輸,已廣泛應用于各種遠程監控系統中。
SMS短消息服務是GSM系統中提供的一種GSM終端(手機)之間,通過服務中心(Service Center)進行文本信息收發的應用服務,其中服務中心完成信息的存儲和轉發功能。利用短消息進行通信,不僅信號較穩定,無同頻干擾,而且具有保密性好,價格低廉等優點,因此,目前國內外一些公司對采集點分散且相距較遠的遠程監控系統均采用了短消息的通信方式。
2 基于SMS遠程監控系統傳輸方案
在筆者實際開發的變壓器紅外遠程報警裝置中,就利用了短消息實現遠程通信。該遠程報警裝置主要用于電力系統中的變壓器防盜報警。在遠程監控系統設計中,根據系統需要實現遠程報警的功能,遠程監控系統的總體結構主要由現場控制設備(下位機),遠程通信,監控中心(上位機)三部分組成,其中遠程通信,采用短消息SMS完成數據的遠程傳輸,整個系統結構框圖如圖1所示。
下位機采用嵌入式微處理器ARM來控制和采集設備的運行參數、報警信息,并以短消息的方式通過GSM網絡發送給上位機,上位PC機通過GSM網絡接收短信,對數據進行整理和分析并以短消息方式發出控制命令,微處理器ARM接受控制命令對設備進行調整。
圖1 遠程監控系統結構圖
Fig. 1 Structure of remote supervision systems
3 實現SMS收發的硬件電路
短信收發電路的核心硬件是無線通信模塊,目前,國內已經開始使用的手機模塊有Falcom的A2D系列、Wavecome的WM02系列、西門子的TC35系列、中興的ZXCM18系列等,其中西門子TC35系列模塊性價比很高。本設計選用的是西門子TC35系列的TC35I,功能與TC35兼容并且具有國內的無線電設備入網證,設計緊湊,大大縮小了用戶產品的體積。TC35I與GSM 2/2+兼容、雙頻(GSM900 /GSM1800)、RS232數據口。該模塊集射頻電路和基帶于一體,向用戶提供標準的AT命令接口,為數據、語音、短消息和傳真提供快速、可靠、安全的傳輸,方便用戶的應用開發及設計。
為實現TC35I能夠完成系統短信收發功能,它的外圍電路設計如圖2,包含六個部分:電源電路、開機啟動電路、關機電路、SIM卡電路、工作狀態指示電路和數據輸入/輸出電路。TC35I通過RS232串口與處理器連接,微處理器(微機)通過RS232串口向TC35I發送AT命令,可以控制模塊進行設置,撥號以及模塊的短信收發。
圖2 手機模塊的外圍電路
Fig. 2 Periphery circuit of mobile telephone module
4 AT指令和SMS收發過程
短消息的接收和發送(手機模塊的工作),主要是微處理器ARM或上位PC機通過串口向手機模塊發送AT指令來控制完成的。GSM AT指令集由諾基亞、愛立信、摩托羅拉和HP等廠家共同為GSM系統研制的。GSM AT指令集包含對SMS的控制。
4.1 AT指令
TC35提供的命令接口符合GSM07.05中定義的AT指令,提供了移動平臺與數據終端之間的通用接口。在手機模塊收到網絡發來的短消息時,能通過串口發送指示,數據終端設備也可以向手機模塊發送各種命令。表1列出了一些常用的與SMS相關的GSM AT指令。
表1與SMS相關的AT指令
Tab. 1 AT Command of SMS
4.2 SMS收發過程
根據GSM 07. 05的定義,AT指令對短消息的發送和接收共有三種模式:Block模式、基于AT命令的Text模式和基于AT命令的PDU模式。PDU模式不僅支持英文短消息也能發送中文短消息,由于要發送漢字信息,因此采用AT指令的PDU模式。實現短信收發的基本過程如下:
(1) TC35i初始化
AT+CMGF=0<CR>;設置PDU編碼模式
AT+CNMI=1.1.2<CR>;設置短消息到來自動提示
AT+CMGD=<index><CR>;將所有位置的消息刪除,準備接收
(2)發送消息過程
1) AT+CMGS=<Len_ char><CR>;設置發送數據長度;
2) 接收到“>”符號后開始發送短消息格式幀,以ASCII碼“1A”結束。格式幀中包含短消息服務中心地址、對方地址、消息生命周期以及需傳輸的數據內容等。
(3)接收消息過程
1) MCU接收到新短消息信號后,發出讀取消息指令:
AT+CMGR=<index><CR>;
2)TC35i將返回短消息格式幀,包含對方地址,短消息服務中心地址,數據內容,以及消息發送的時間等。程序從消息幀中分解出需要傳輸的數據。
3)從SIM卡讀出消息并處理后,要將其刪除:
AT+CMGD=<index><CR>;
5 SMS收發的軟件設計
系統程序軟件設計的重點在于處理器的編程。微處理器通過串口向TC35發送不同的AT指令,能完成多種功能,如網絡登錄、讀取SIM卡上電話號碼、發送SMS消息、接收SMS消息等。其主程序流程如圖3所示。
其中,初始化的工作包括設置串口速率、無線網絡登陸以及設置短信模式為PDU模式。由于在GSM標準中,中文編碼采用的是Unicode編碼,而不是目前國內常用的GB-2312編碼,故還需要進行中文編碼的轉換,才能顯示漢字字型。因此PDU編碼不僅包括按PDU的編碼規則產生PDU串,還包括Unicode編碼與GB-2312編碼之間的相互轉換。
圖3軟件流程圖
Fig .3 Flowchart of software system
6 結束語
使用GSM網SMS作為遠程通信的實現技術,克服了傳統通信方式的缺點,提高了通信的穩定性,方便了系統擴展,簡化了控制,并且能夠實現多個手機模塊并行工作,大大提高了系統的性能。這種模式能夠方便地為各種規模的企業和單位搭建起一個廉價、方便的通信平臺,為建立遠程監控系統提供了有效的途徑。
參考文獻
[1] 周國祥,周俊等. 基于GSM的遠程通信控制器研制及其應用[J]. 計算機工程,2005,(10).
[2] Siemens TC35技術手冊. http://www.siemens.com/wm[EB/OL].
[3] 饒潔,黃華等. 基于GSM/SMS與Internet/PC的遠程監控系統[J]..計算機系統應用,2005,(4).
[4] 趙長奎. GSM數字移動通信應用系統[M]. 北京:國防工業出版社,2001.
[5] 張申勇; 陳長清等. 一種基于SMS的移動通信網絡自動監控系統[J]. 計算機工程2005,(11).
[6] 馬潮. ATmega8原理及應用[M]. 北京,清華大學出版社,2002.