摘要:要想实现雨量RTU系统的通信功能,首先要实现系统通信模块的通信功能,因此系统中通信模块的设计和功能实现是系统的关键部分。针对这一要求,围绕SIM900A芯片和有效SIM电话卡完成系统通信模块的硬件设计,软件方面使用AT指令集以GSM和GPRS通信方式通过串口调试工具实现系统的通信功能,本文主要介绍GSM短消息方式实现系统的通信功能。通过实验证明,虽然GSM短消息具有短消息长度受限和存在延时的缺陷,但是本文设计的雨量RTU系统通信的成功率和实时性可以达到实际应用的需要,符合设计的要求。
关键词:GSM短消息;通信;雨量RTU;AT指令集
在水利领域,雨量RTU系统占据重要的位置,系统功能实现的程度对水资源和土地的合理管理、规划和利用有一定的影响。因此,雨量RTU系统功能的实现效果、实时性等特性要高,特别是系统的通信模块。由于雨量RTU使用于无人值守的、没有市电而且环境恶劣的野外,系统对各元器件和通信方式有特殊的要求,必须要满足系统工作的环境而且通信的质量要符合实际的应用要求。对于系统通信模块的设计,经过综合分析后,本文硬件采用SIM900A芯片,通信方式采用GSM短消息技术。
1 GSM系统和GSM短消息
GSM(Global System for Mobile Communication)是由欧洲ETSI组织提出的第二代数字蜂窝移动通信系统标准,采用TDMA/FDMA复用方式,以及数字化语音编码和数字调制技术,以语音业务为主,也支持无线的数据业务,是世界上使用最广、用户数最多、覆盖面积最大、技术上最成熟的移动通信系统。GSM系统具有高频谱效率,安全性高,稳定性好,集成度高,容量大,开放性的接口,抗噪音性能强,覆盖范围广等特点。从20世纪80年代投入应用之后,经过了近几十年的发展,现在移动通信技术已经成熟,应用范围广泛,已经得到了普及。
1.1 GSM系统
GSM系统是GSM数字蜂窝移动通信系统的简称,符合GSM的相关技术规范,是一种主流的移动通信系统,在通信技术中具有重要作用。一个完整的GSM系统主要由基站子系统BSS(Base Station Sub—System)、网络交换子系统NSS(Network Switching sub—system)、操作维护子系统OSS(Operation sub—system)和大量移动台MS(Mobile Station)等组成。
系统的业务种类多样,主要业务有:1)电信业务,主要包括GSM短消息业务、电话业务和紧急呼叫,其中,紧急呼叫应该算电话业务中的一种,短消息业务主要有点对多广播消息和点对点消息2种短消息业务;2)承载业务,承载业务和基本电话业务要分开使用,因为使用承载业务时移动台需要占用其中的一个话音通道;3)补充业务,用户可以根据需要改变GSM业务。
GSM系统具有以下特点:1)由分系统组成,各个分系统的接口设计生产符合一定的要求,各分系统可以和不同厂商的GSM系统设备和公众通信网相连;2)业务种类丰富;3)具有鉴权和加密的功能,可以保证网络和用户的安全;4)可以提供国际漫游,所有的GSM用户均可以进入GSM系统;5)组网结构方便灵活,可以满足用户的要求;6)通信的质量好,抗干扰能力强。
1.2 GSM短消息
GSM短消息业务是GSM系统中电信业务的一种,简称SMS(Short Message Service),它主要是移动台之间进行一定长度的文本信息的发送和接收的一种业务。SMS是GSM网内采用分组方式的一种数据业务,采用公共信道信令,可以和其他业务同时使用。SMS使用存储转发的模式,SMS发送后先储存在短消息中心(SMSC),然后根据找到的目标移动终端的路由信息再将信息发送给该目标移动终端。SMS业务分为点对点和点对多两种,文中设计的雨量RTU采用点对点SMS业务,利用AT指令集进行通信。SMS业务的协议有6层:短消息应用层(SM-AL)、短消息传输层(SM-TL)、短消息中继层(SM—RL)、连接管理子层(CM)、移动管理子层(MM)和无线管理子层(RRM)。其中,SM-TL为SM—AL提供服务;SM—RL为SM-TL提供服务。保证SM-TL能向对端实体TPDU并接收IPDU和请求发送TPDU的相关报告;MM、CM和RRM组成控制管理子层,控制管理子层为SM—RL提供服务。SMS的发送过程大致是当一个移动用户(MS)想发送一条短消息时,要预先正确设置好SMSC的电话号码、编辑短消息、输入被叫用户电话号码、将短消息发出。MSC(移动交换中心)收到短消息后,查询VLR(访问定位寄存器)获得正确信息,检查短消息参数和目的地址无误后,将短消息经由SMSC-IWMSC送往SMSC。SMSC-GMSC(短消息中心网关)接收到来自SMSC的短消息后,检查参数的正确性、查询HLR(归属位置寄存器),然后根据获得的路由信息将短消息传送到MSC。MSC收到短消息后,查询VLR获得位置区域地址信息,最后将短消息发送到目的地MS。
2 雨量RTU系统
2.1 概述
文中设计的雨量RTU的主要作用是测量远程现场的雨量参数数据、温度、电压和地理位置并存储、分析和处理,然后由通信模块将短消息通过GSM发送到指定手机或者GPRS上传到指定网站。该雨量RTU主要是由铝合金的RTU主体和连接电源、天线和传感器的电缆组成。其中,铝合金的雨量RTU主体内主要包含RTU电路、SIM卡、U盘、显示器和键盘。雨量RTU的示意图如图1所示。
2.2 通信模块
2.2.1 通信模块的选择
通信模块在雨量RTU系统中具有举足轻重的作用,通信模块的性能在很大程度上影响RTU系统的性能。现在通信方式有很多种,如移动通信、卫星通信、激光通信、光纤通信,而且市场上通信模块也多种多样。该系统通信模块的选择依据主要考虑到以下几点:通信方便简洁、通信效率高、稳定性好、适应能力强、功耗低、价格合适。
经过初步比较和筛选,有两款通信模块可以应用于该雨量RTU,即西门子公司的MC55和芯讯通公司的SIM900A,现将两者的部分特点进行比较和分析:
1)软件:MC55和SIM900A,两款通信模块都采用移动通信,同样都采用AT指令集实现通信,都内含TCP/IP协议。
2)硬件:MC55尺寸为35x32.5x2.95 mm,重量是5.5克,适用于欧洲和亚洲的3个频段(1 900、1 800和900 MHz)。MC55有50个插针型引脚,按功能可以分为4个功能模块:双非平衡的异步通信端口、电源充电管理、SIM卡接口和双音频接口。SIM900A尺寸为24x24x3 mm,重量是3.4克,适用于两个频段(EGSM900MHz和DCS1800 MHz),支持GPRSmulti-slot class 10/class 8和GPRS编码格式CS-1,CS-2,CS-3和CS-4。SIM900A有68个贴片焊盘,相较于插针式引脚安全性和可靠性更高,按功能可以分为五个模块:GSM基带、储存器、GSM射频、天线接口、其他接口(供电、串口、模拟音频接口、SIM卡接口)。SIM900A支持1.8和3.0V的SIN卡,和SIM卡之间有5个引脚连接,采用SMF05C进行静电保护。
通过以上分析和比较,可以看出SIM900A在体积、重量、以及引脚等方面较于MC55占优势,所以该雨量RTU系统的通信模块采用SIM900A。
2.2.2 SIM900A通信模块的连接
选定并分析SIM900A和研究其电气特性、引脚等性质后,就是其在雨量RTU系统中如何连接的问题了。SIM900A的供电电压和电流分别为3.2~4.8 V和2 A,其主要功能部分是GSM基带、存储器、GSM射频,天线接口、电源接口、和其它接口,连接SIM900A可以以功能部分为单位逐个连接。SIM900A的连接如图2所示。
当按照SIM900A的电气特性和需求连接完毕后,要特别注意RTS引脚和DTR引脚需要接地,否则容易出现关机关不了的问题。
3 GSM短消息在雨量RTU通信的实现
雨量RTU通信模块的通信分为GSM通信和GPRS通信,现在只讨论GSM短消息在该系统中的实现。实现GSM短消息通信前,需要对SIM900A进行设置和检测、绑定手机等。
3.1 AT指令集介绍
AT指令集是由Hayes公司最早使用于设置Modem参数的一套指令集,此后为几乎所有的Modem生产厂家所采用,成为设置Modem参数的一种通用方法。但是,由于Modem技术发展很快,除GSM07.07标准中规定的一些基本AT指令之外,各个厂家还定义、使用了一些扩展的AT指令,这些扩展AT指令差异很大,互不兼容。因此,这里只介绍和GSM短消息有关的部分AT指令语句,如表1所示。
3.2 调试工具介绍
本次使用的调试工具是Com Tool.串口工具.V1.31,如图3所示。其主要功能有:文件发送,根据波特率自动分批发送数据的频率和数量;数据存储,可以存储窗口的数据;指令存储,可以存储7x25条指令;接收窗口容量大,接收窗口可以显示几十兆数据;数据查找,可以对接收窗口数据进行查找;数据批处理,可以模拟设备对数据进行批处理。
3.3 SIM900A初始化检测
在电源断开的情况下,将有效的SIM卡放入卡座,打开串口调试工具,设置好串口调试工具的参数,接通电源开始测试SIM900A。因为短消息业务只是模块的部分功能,现在将SIM900A检测和短消息有关的部分说明一下,如表2所示。
3.4 GSM短消息的实现
将开通来电显示和有通信费用的有效SIM卡插入RTU硬件模型中,雨量RTU和调试工具——Com Tool.串口工具.V1.31连接。
和通信有关系的部分参数的设置。调试工具页面的设置:选择的串口为COM1;通信的波特率设置为9600,设置的语句为“AT+IPR=9600;&W”;数据位为8位;校验位为NO;停止位为1;发送数据为16进制;日志存储要选择,方便保存和查询;终端的类别为一个时间可以监控多种业务但只可以执行一种业务;模块使用的字符集为GSM,设置的语句为“AT+CSCS="GSM”;短消息的格式选择文本格式,设置的语句为“AT+CMGF=1”;编辑电话薄,存储号码,语句为“AT+CPBW=,”15380791059”,“guoyan””。
接收GSM短消息。发送语句“AT”,接收到“OK”,表示模块已经准备就绪。使用号码为15380791059的手机向模块发送短消息“Hello,welcome!”,此时串口调试工具的界面会返回“AT+CMGR=1”的语句,1表示接收到的短消息的位置是1;发送语句“AT+CMGR=1”就可以显示接收到的短消息,显示的语句为“+CMGR:”REC READ”,”+8615380791059”,”guoyan”,”12107112,20:00:48+32”HeHo,welcome!”。
发送GSM短消息。发送语句“AT”,接收到“OK”,表示模块已经准备就绪。使用“AT+CMGS=”+8615380791059””指令语句,模块向号码为15380791059的手机发送短消息。号码为15380791059的手机即可收到模块发来的短消息。
删除GSM短消息。由于内存有限,为了雨量RTU系统能够正常工作,所以短消息读取之后应该及时删除。删除短消息使用命令语句AT+CMGD =#,&”:&=0,表示删除指定位置为#的短消息;&=1,表示删除所有已经读过的短消息,保留原有的和未读的短消息;&=2,表示删除已经读过的和已经发送的原有短消息,保留未发送的原有短消息;&=3,表示删除已经读过和原有消息,保留未读短消息;&=4,表示删除所有短消息。试验中采用&=2的情况。
在编辑短消息时需要注意,如果编写汉字需要先将汉字转换成unicode编码,因为系统的液晶显示器支持的是GB2312简体汉字,而手机支持unicode编码的简体汉字;如果采用短消息修改系统的时钟信息,需要将修改的时刻提前20 s,因为GSM短消息本身存在时延,再加上环境的影响短消息由手机发送到雨量RTU系统大约需要20 s,修改系统时钟信息的精确地方法是采用系统键盘输入修改的方式。
3.5 GSM短消息实现结果的分析
通过试验,GSM短消息在雨量RTU系统中可以进行通信。现在就通信的成功率和实时性进行分析。
在试验中发现,通信的成功率能达到98.65%,短消息发送/接收失败的情况主要出现在节假日,平时基本上不存在发送/接收失败的情况,这是因为节假日使用GSM短消息业务的太多,短消息业务使用太频繁导致GSM网络拥挤,从而出现短消息发送/接收失败的情况。短消息发送/接收失败,还有其他原因比如移动台欠费呼叫被限制、移动台关机、移动台的内存已满、短消息过期等。
试验中短消息发送/接收的耗时长短也存在不同,耗时的长短有多种原因,对于同一个系统主要有短消息的长度、SMSC的处理能力和GSM网络的拥挤情况等原因。在SMS中,短消息的发送/接收需要经过SMSC存储与转发,增重SMSC处理负荷。SMSC的处理能力和GSM网络的拥挤情况对短消息的影响容易理解。短消息的长度是由于GSM短消息传送时的字节长度为70个汉字或者140个ASCII码,所以当短消息的长度超过最大长度时需要分批传送,从而增加时延。
通过实验发现,短消息从发送到到达雨量RTU系统最短需要20 s的时间,因此通过短消息方式改变雨量RTU系统的时钟参数时需要将时间推后20 s,而且最好是在短消息业务不忙的夜深的时候。改变系统时钟参数的精确地方式是通过键盘输入。
实验结果和性能分析的效果还比较符合实际应用应该达到的效果,也符合雨量RTU系统的要求,也可以符合实际的使用要求。
4 结束语
系统通信模块硬件围绕SIM900A芯片和有效SIM电话卡设计,软件主要采用AT指令语句通过串口调试工具,以GSM短消息的方式完成通信功能。通过实验发现,系统通信虽然存在这一定的误差,但是符合实际要求,完全可以应用在无人值守的没有市电的环境恶劣的野外。在试验中GSM透出它的优点,如更安全、更有效,可以双传送信息,可以支持更多的用户;但是也存在着不足,如短消息长度受限,虽符合要求但是实时性不强,存在时延而且不可避免。在后续工作中可以减小GSM短消息的时延现象,增强时效性,进一步提高系统的通信质量。