基于GPRS/3G的远程通信实验系统组网方案实现

2015-01-10 00:25冯晓星毛云祥
无线电通信技术 2015年4期
关键词:短消息网络连接IP地址

冯晓星,毛云祥

(电子工程学院,安徽合肥230037)

基于GPRS/3G的远程通信实验系统组网方案实现

冯晓星,毛云祥

(电子工程学院,安徽合肥230037)

针对远程通信实验对于系统组网的要求,提出了一种基于GPRS/3G技术的系统组网方案。系统设有多个外置的GSM模块,中心和远程设备通过串口控制各自的模块,以实现网络连接和SMS通信,传递实验数据和各设备定位信息。对方案中GSM模块、GPS模块及其附属电路、GPRS网络连接和短消息编码方式等关键技术进行了介绍,并给出了软件流程图和VC实现的部分代码。

通用分组无线服务;全球定位系统;短信息;C语言

0 引言

远程实验是在Internet(或者Intranet)上采用远程数据及图像(声音采集)、远程控制技术、计算机仿真技术和虚拟现实等技术,使实验者可从异地计算机设备上进行实验操作和观察,所得到的结果与本地得到的数据结果完全等价,如同真实操作实验设备一样。这些系统,不仅通信质量要求高,而且涉及的终端数量大、地域跨度大、布线和组网环境复杂。如何可靠高效组网通信是该类系统面临的首要问题。随着网络技术的日臻成熟,利用无线技术进行网络连接已经成为现实[1,2]。

目前,组网方案研究方法有以下几类:自主架设相应的通信设备搭建地域通信网的组网方案安全可靠,但是成本过高。若在一个小范围区域内进行系统的研发与测试,选择无线局域网络组网也不失一个经济实用的办法。

1 系统组成

远程通信实验系统主要由定位传输设备、复杂通信信号环境模拟器、远程监控与指挥管理中心及数据通信网络等构成,如图1所示。

图1 远程实验系统原理框图

其中,定位传输设备主要完成对应仪器仪表工作数据及运行参数的采集、记录、传输及接受管理中心的指挥控制等任务,内置GPS模块;管理中心负责信息收集,完成态势感知和可视化,工作数据统计分析,资源调度与管理,计算机辅助决策;完成数据存储、检索、归类、报表与报告等功能。

2 系统组网方案的实现

远程实验系统有最关键的2个装置:定位传输设备和复杂通信信号环境生成器,它们都涉及到与管理中心的远程通信需求。目前,采用方案是通过GPRS实现网络互连,完成数据的安全传输。同时,这2部分都涉及到GPS接收机的数据处理与时统校时的要求。下面主要论述系统中通用的通信模块的开发及其软件实现设计方案。

2.1 嵌入式通信模块开发设计

系统中存在监控中心与定位传输设备、监控中心与通信信号环境模拟器之间的远程通信功能。也就是GPRS通信与GPS通信。本系统综合考虑通信需求,设计开发了嵌入式GPRS/GPS通信模块。选用SIM300模块作为GSM模块,选用GSTAR作为GPS接收机。其模块功能如下所述:

①SIM300模块

SIM300是具有三频段的GSM/GPRS模块,可在全球范围内的EGSM 900 MHz、DCS 1 800 MHz和PCS 1 900 MHz这3种频率下工作,能够提供GPRS多信道类型多达10个,并且支持CS-1、CS-2、CS-3 和CS-4这4种GPRS编码方案。其内部集成了TCP/IP协议栈,同时扩展了TCP/IP AT指令,用户能够简单而方便地利用该模块开发数据传输设备。通过使用AT指令,开启GPRS功能,连入Internet网络,实现数据的无线传输[3,4]。

②GPS模块

GPS模块采用GStar系列的GS-89,具有高精度、低电压和自动导航等特点,支持标准的NMEA0183语句(美国国家海洋电子协会制定的导航通信标准语句)和SiRF二进制协议。通过软件解析GPS模块返回的定位数据,提取出经纬度、时间和速度等重要定位导航数据信息,利用现有百度地图服务商提供的地图API开发包,实现导航定位功能。

SIM300与GPS模块的硬件原理图分别如图2和图3所示。开发出的嵌入式GPRS模块使用串口通信的方式与上位机软件进行通信,能够很好地完成各项功能,具有SMS短信服务,能够使用GPRS网络连接监控中心。同时,GPS模块能够接收GPS数据包提供给用户进行使用。

图2 SIM 300通信模块电路原理

图3 GPS通信电路原理

2.2 串口收发短消息(SMS)功能实现

2.2.1 SMS编码方式

系统研究设计中,由于选用了中国电信3G网络作为监控管理中心的网络服务,其IP地址为动态分配的,系统中各定位传输设备及环境模拟器无法预先知道监控管理中心的IP地址,所以采用开机汇报登录查询的方式,来获取监控管理中心的IP地址,从而进一步实现网络连接,完成远程通信功能。

所以,若采用3G网络,系统开机初始状态存在短信通信的过程。因此,在系统软件开发过程中,针对已开发完成的嵌入式GPRS通信模块,需要来实现通过串口收发短信的功能。本小节着重讲解SMS短信在通信系统中的软件开发应用。

SMS短消息是Short Message Service的英文缩写,是通过移动网络用手机接收和发送有限长度文本信息的一种通信体制。文本信息可以是汉字、数字、字母或符号以及它们的组合。GSM的协议规范规定,一条短消息最多可以包含160个英文字母的7 bit编码或是70个汉字等Unicode编码[5,6]。

由ESTI制定的SMS规范中,一共有3种方式来发送和接收SMS信息:Block Mode、Text Mode和PDU Mode。3种方式的区别在于:

Block Mode已是昔日黄花,目前很少用;Text Mode是纯文本方式,可使用不同的字符集主要用于欧美地区,从技术上说也可用于发送中文短消息,但国内手机基本不支持;PDU Mode被所有手机支持,可以使用任何字符集,这也是手机默认的编码方式。

PDU串表面上是一串ASCII码,由0~9、A~F这些数字和字母组成。它们是8位字节的十六进制数,或者BCD码十进制数。PDU串不仅包含可显示的消息本身,还包含很多其他信息,如SMS服务中心号码、目标号码、回复号码、编码方式和服务时间等。发送和接收的PDU串,结构是不完全相同的[3]。

2.2.2 串口编程实现SMS

软件对系统中的嵌入式GPRS模块的操作主要是通过串口向SIM300模块写AT指令,来实现对模块的操作。

本系统软件开发是基于Windows XP系统,VC++6.0平台的。在Windows系统环境下,对串口的操作除了利用MSComm控件和现有的第3方串口类外,也可以简单地调用Windows API来实现。使用Win32 API函数来操作串口,主要具有操作简单、方便直接等特点。对于SIM300的控制,综合考虑,采用了Windows API函数来完成,最主要的2个函数为:WriteComm()和ReadComm(),其中,WriteComm()为写串口函数,ReadComm()为读串口函数。部分参考代码如下所示:

∥返回:实际写入的数据长度

intWriteComm(void*pData,int nLength)

{

DWORD dwNumWrite;∥串口发出的数据长度

WriteFile(hComm,pData,(DWORD)nLength,&dwNumWrite,NULL);

return(int)dwNumWrite;

}

∥返回:实际读出的数据长度

int ReadComm(void*pData,int nLength)

{

DWORD dwNumRead;∥串口收到的数据长度

ReadFile(hComm,pData,(DWORD)nLength,&dwNumRead,NULL);

return(int)dwNumRead;

}

使用串口处理SIM300来接收与发送短信息,主要是对PDU串进行编码与解码,其中,PDU串具有7 bit、8 bit和UCS2 3种编码方式。

定义短消息参数结构体如下:

typedef struct{

char SCA[16];∥短消息服务中心号码(SMSC地址)

char TPA[16];∥目标号码或回复号码(TP-DA 或TP-RA)

char TP_PID;∥用户信息协议标识(TP-PID)

char TP_DCS;∥用户信息编码方式(TP-DCS)

char TP_SCTS[16];∥服务时间戳字符串(TP_ SCTS),接收时用到

char TP_UD[160];∥原始用户信息(编码前或解码后的TP-UD)

short index;∥短消息序号,在读取时用到

}SM_PARAM;

依照GSM07.05通信协议,发送短消息用AT+CMGS命令,阅读短消息用AT+CMGR,列出短消息用AT+CMGL命令,删除短消息用AT+CMGD命令[7,8]。所以软件设计中编写通用发送、接收和删除短消息函数如下:

int gsmSendMessage(SM_PARAM*pSrc){}

int gsmReadMessage(SM_PARAM*pSrc){}

int gsmDeleteMessage(int index){}。

2.2.3网络连接与在线检测设计

(1)GPRS网络连接功能实现

GPRS通信主要完成与监管中心的数据通信,可以实现接收监管中心的控制命令,向监管中心上传监测结果数据包以及GPS数据信息,接收监控管理中心的信号生成预案等。

①GPRS通信是通过外置的GSM模块来实现的。装置软件通过AT指令控制GSM模块,连接网络,实现远程的数据传输功能。GPRS通信连接需要有外网IP地址,对于监控中心的动态IP地址,设计装置软件时是无法按照固定的IP地址来连接中心的,因此采用一种基于GSM的短消息的方式完成数据的交换,即通过短信来传递IP地址,定位传输设备根据接收的短消息,解析出监控中心提供的服务IP地址与服务端口PORT,然后通过串口写AT指令,连接到目标地址,实现网络的互联[9,10]。为系统完成通信连接的流程如图4所示。

图4 基于GPRS/3G公网系统通信连接过程

②对于GSM模块的控制,则主要是以向串口写AT指令实现。GPRS网络数据无线传输的流程如图5所示,详细表明了GPRS无线数据传输系统的原理。其中,使用到得AT指令主要如下:

图5 基于GPRS/3G公网无线数据传输流程

AT+CIPCLOSE:关闭所有TCP/UDP连接;AT+CIPSHUT:关闭GPRS PDP环境;AT+CIPSTART:启动TCP或UDP连接;AT+CIPSTATUS:查询GPRS连接状态;AT+CIPSEND:通过TCP或UDP发送数据[4]。

(2)GPRS网络连接在线检测

系统网络连接是否正常关系到正常数据收发。监控中心建立3个基于TCP的Socket通信子服务,分别处理GPS定位数据、GPRS网络测试数据包和其他系统需要处理的数据。本系统使用了独立的服务端口接收网络测试数据包,若系统连接异常,则关闭现有连接,重新建立新连接,从而保障系统数据正常接收[11,12]。

3 结束语

利用现在成熟的移动通信基础设施,提出一种基于GPRS/3G公网的组网方案,是一个可以优先选择的方案。系统由于利用已有的移动通信基础设施,降低了开发的成本,并且使开发人员集中精力开发系统。成熟先进的无线数传技术使得传输更加可靠,目前,系统已投入使用,运行良好,各项指标均达标。

[1]黄周钊,黄文达.网络通信在互联网远程通用实验系统中的应用[J].计算机工程与设计,2004(7):1082-1086.

[2]陈海宴,徐玉滨.嵌入式通用远程多点无线监控系统[J].无线电工程,2003,33(4):20-23.

[3]张开玉,宋立新.基于GPRS的数据传输终端单元的设计[J].哈尔滨理工大学学报,2007,12(6):28-30.

[4]秦大兴,刘建,郑喜凤.基于GPRS模块MC351的监测系统设计[J].仪表技术与传感器,2007(2):20-22.

[5]赵立燕,许亮.基于GSM短消息的温室环境监测系统[J].电子设计工程,2009,17(7):29-31.

[6]王晓娟.基于SMS的企业信息发布平台[D].重庆:重庆大学,2004:25-33.

[7]汉泽西,吕飞.GSM网络AT指令仿真系统的研究与开发[J].现代电子技术,2005,28(17):9-11.

[8]曹尉青,韩冰.利用GSM短消息实现远程监控[J].无线电工程,2002,32(10):21-23.

[9]庞年华.基于GPRS的电源监控系统的研究与实现[D].北京:北京邮电大学,2009:40-45.

[10]赵陆文,于坚.一种基于GPRS的数据传输终端的设计与实现[J].军事通信技术,2006,27(2):43-46.

[11]王美霞,李章勇.基于GPRS的远程心电监护系统的研制[J].中国医学物理学杂志,2006,23(6):434-436.

[12]梁龙刚,姚远.基于GPRS的远程无线监控系统软件设计[J].无线电工程,2004,34(5):37-39.

Implementation of Networking Scheme for Remote Communication Experiment System Based on GPRS/3G

FENG Xiao-xing,MAO Yun-xiang
(Electronic Engineering Institute,Hefei Anhui230037,China)

According to the network requirements for remote communication experiment system,a scheme is presented based on GPRS/3G technology.The system has several external GSM modules.The center and remote devices control each module respectively through serial port to realize the network connection and SMS communication,and the transfer of experimental data and GPS information.This paper introduces the key technologies of GSM module,GPSmodule and its subsidiary circuit,GPRS network connection and shortmessage codingmethod,etc.At last it gives software flow chart and code implementation with VC.

GPRS;GPS;SMS;C Language

TP277

A

1003-3114(2015)04-96-4

10.3969/j.issn.1003-3114.2015.04.25

冯晓星,毛云祥.基于GPRS/3G的远程通信实验系统组网方案实现[J].无线电通信技术,2015,41(4):96-99.

2015-03-01

冯晓星(1982―),男,硕士研究生,讲师,主要研究方向:信号与信息处理。毛云祥(1973—),男,硕士研究生,讲师。主要研究方向:信号与信息处理。

猜你喜欢
短消息网络连接IP地址
铁路远动系统几种组网方式IP地址的申请和设置
个性化设置 Win10 的网络连接信息
运动想象的大尺度动态功能网络连接
试论电视新闻短消息的采写策略
浅谈广播短消息的采写
IP地址切换器(IPCFG)
基于SNMP的IP地址管理系统开发与应用
公安网络中IP地址智能管理的研究与思考
中小型网络组建技术
小灵通里的父爱