发表于:2008-01-28 14:07:00
楼主
基于TR800的远程监控系统
0. 引 言
以往的远程监控系统一般是利用公共电话网,通过MODEM拨号,配合相应软件来实现监控。它明显的缺点是只有拨号后才能通信,不能同时“点对多点”通信。实现远程通信的其它方式是采用卫星、微波、光纤或电台。这种方法不仅设备投入耗资巨大,而且伴随着较高的采购成本和运行维护费用。而基于B/S架构的GPRS远程监控系统不但具有B/S架构的系统易维护性、可扩展性和安全性,而且具有GPRS通讯的所有优点。
GPRS(General Packet Radio Service)是通用分组无线业务的简称,是在GSM基础上发展起来的一种分组交换的资料承载和传输方式。基于GPRS的远程监控具有以下特点:
1)快速登录,永远在线,覆盖面广;
2)安全性高,系统在数据传输过程中加入了加密机制,资料可以在公网上安全地传输;
3)可靠性强,系统具有纠错、重发机制,从而确保资料的完整性和正确性。其次,系统具有自动恢复功能,在GPRS网络状态不稳定的情况下,保证系统稳定工作,而无需人工干预;
4)多用户的业务复用,不同的网络用户共享同一组GPRS信道,但只有当某一个用户需要发送或接收资料时才会占用信道资源。系统依托相应的软件,可以灵活同时实现点~点、点~多点的数据传输;
5)节电功能,在不发送资料的时间里设备可以处于待机状态,定时或资料触发登录网络。
目前,我国移动推出的GPRS业务日趋成熟,而且用户可以根据自己的需要,以月租、包月等多种形式进一步降低GPRS通信的费用。因此,GPRS作为目前和将来大规模发展的一种组网方式,具有分布式、集散型、网络化、开放式特点,在工业控制、环境保护、水利水文监测、报警等行业中必将得到愈来愈广泛的应用。
1. GPRS远程监控系统
GPRS远程监控系统由智能控制器,GPRS模块、中国移动通信网路(GPRS网络)、Internet 公共网络、数据服务器、企业局域网及其计算机设备等组成。图1是GPRS系统的网络结构。
图1 GPRS系统网络结构图
首先,智能控制器采集到现场参数,并进行加密、压缩处理后,以数据流形式通过串行方式接到GPRS通讯模块上,与中国移动基站进行通信,基站SGSN再与网关支持节点GGSN进行通信,GGSN对分组资料进行相应的处理。TR800模块以GPRS资料包的形式通过GPRS网络把资料发送到中国移动的内部网(CMNET),然后由中国移动通过GPRS服务节点(GSN),把资料发送到Internet上,并且去寻找在Internet上的一个指定IP地址的服务器。由于GPRS网络工作方式是以IP地址寻址为基础的,所以公网上的Internet数据服务器只需要简单接入Internet,并具备公网分配的IP地址即可。数据服务器端利用WINSOCK编程,实现网络资料的收发,并转发到内部网络的数据库上去。数据库方便数据维护和WEB Server调用。系统同时也可以实现资料、指令的反向传输,以达到远程控制的目的。工作站通过Internet访问WEB服务器,就可以浏览到各监测点的详细信息了。
基于GPRS的远程监控系统依靠移动通信网路,在现场参数采集完毕后,只需要开发GPRS终端的通讯程序和服务器端相关软件,用户只需运行浏览器就可进行远程监控。
2. GPRS远程终端的实现
目前GPRS模块中IWOW公司推出的TR800内嵌完整TCP/IP协议,可以直接使用相应AT指令进行开发工作,下面就以TR800模块为例介绍GPRS通讯。
TR800主要特性如下:
1.频段支持:四频(GSM850/EGSM 900 / DCS 1800 / PCS 1900)
2.高速GPRS传输: Multi-Slot Class 10和 Device Class B; 速率可达到 85.6kbps/Sec
3.内嵌协议: TCP/IP、 WAP、 MMS及Push-To-Talk
4.工作温度: -20~+55摄氏度; 扩展工作温度: -40~+85摄氏度
5.内存: 内含3M bytes可应用于客户应用程序
6.包含2UART,1个SPI总线
7.包含1路数字及2路模拟音频接口
8.3.0至5.5伏工作电压
9.低功耗,优化的电源管理系统
10.尺寸: 紧凑的尺寸设计41.2 (长) x 36.0 (宽) x 3.0 (高) mm
11.重量: 8.3克 (包括屏蔽罩)
GPRS远程终端的硬件框图如图2:
图2 GPRS远程终端硬件框图
GPRS远程终端主要由智能控制器和GPRS模块构成。首先,各种传感器采集到工业现场参数,智能控制器分析处理采集到的资料,一方面在现场显示,另一方面要发送给GPRS模块,控制GPRS模块本身的操作,包括启动和关闭服务,建立和关闭连接,资料与命令模式的转换等,并在资料模式下把经过加密和容错处理后的资料发送给数据服务器。
智能控制器与GPRS模块之间的通信协议是串口协议,智能控制器可以是单片机系统,也可以是PLC,若为单片机系统,可以结合嵌入式操作系统,开发出监控点有自己的WEB服务并可在线升级firmware的产品。若为PLC,有两种方法,一种是通过RS指令;一种是采用232模块,PLC只需读写232模块的指定缓冲区即可。每个指令以“AT+”开头,以回车符结尾。每个命令执行成功与否都有相应的返回。其它一些非预期的信息(如有人拨号进来、线路无信号等),模块将有对应的一些信息提示。
智能控制器通过串口来对GPRS模块进行设置,在建立数据信道之前的设置指令如下:
AT$APNSRV="CMNET"
说明:初始化网络会话,在模块上建立一个资料账号,接入到中国移动GPRS网络。
返回:OK。
AT$TCPSRV=0,"218.79.163.201"
说明:设置218.79.163.201为服务器端IP地址。
AT$TCPPORT=60000
说明:设置TCP服务器端口。
AT$CONNSTART
说明:建立GPRS连接。
返回:OK_Info_GprsActivation表明成功连上GPRS网络。
AT$TCPOPEN
说明:建立TCP连接。
返回:Ok_Info_WaitingForData表明成功连上TCP服务器。
建立连接后,TR800进入GPRS数据状态,智能控制器即可发送和接收数据了。在该模式下,智能控制器要判断服务器下达的指令,包括为对远程终端的通用指令和智能操作的操作指令,分辨出配置指令和操作指令并进行相应的处理。
3. 远程监控系统的B/S架构
B/S应用系统一般可以分成三个层:交互层、业务层和数据库层,交互层不但包括接口如何组织和布局还包括功能模块如何集成以及操作流程如何安排,业务层集成具体应用工作,数据库层则负责有关数据的操作。B/S应用系统不必像服务器端、客户端模式那样去低效率升级众多的客户端软件,同时在浏览器中比较方便做到友好方便的操作接口。为了满足用户对软件系统的频繁升级要求,节省软件维护方面的时间、费用,所以我们在本远程监控系统中采用B/S架构。
3. 1 服务器端
在基于GPRS的远程监控系统中,数据服务器端通过基于TCP/IP协议的SOCKET套节字,进行与GPRS终端的资料收发,通过开发的在服务器运行的软件对资料进行处理,然后更新到SQL数据库中,若为Windows系统,则启动IIS(Internet Information Server)应用,若为Linux,则启动Internet服务,让合法用户可以在任何时刻、任何地方通过浏览器查看资料。浏览器通过因特网查看远程设备刚刚更新到数据库中的信息,达到现场数据分析、显示等功能。
3. 2 浏览器端
浏览器端不需要特别的软件,系