基于GPRS的远程监控系统总体设计与实现
2010-05-09陈昕刘中晅韩兆福
陈昕 刘中晅 韩兆福
中国人民解放军装甲兵工程学院 北京 100072
0 引言
城市电力,热力,气象,以及河流污染管理等行业,因监控站点之间距离远、分布分散,往往需要布置大量的人力、物力用于管理、监控及与中心管理站的联络,少数实现自动化管理的城市多基于电话线、MODEM,或是无线电台办法,成本高、效率低,而且对于无法铺设电话线的苛刻环境,又需要定时监控上报数据的单位,依靠已往的办法难以实现。GPRS无线数据通信网络的出现,为上述实现提供了可能。
通用分组无线业务(General Packet Radio Service,GPRS)。GSM网络覆盖范围广并且通信可靠,GPRS网络在现有的GSM网络的基础上引入分组交换功能,支持TCP/IP协议,可以与分组数据网(Internet等)直接互通,随时在线,而且计费采用比较合理的按流量计费方式,特别适合于需频繁传送小流量数据的应用场合。如城市电力,热力,气象,以及河流污染管理等行业。
本文设计的远程监控系统,是以89C58单片机和PIML GPRS-MODEM(GPRS模块)为核心的,能够实现了传感器数据采集,本地实时显示,基于Internet的远程监控等功能。本文侧重论述系统的总体设计,分系统的组成功能。
1 总体设计
系统总体由四部分组成:一是基于89C58单片机为核心的嵌入式前端采集系统、二是基于GPRS模块的通信系统、三是基于Internet的监控中心、四是远程执行单元。
图1 远程监控系统框图
系统结构如图1,整体工作过程是:以嵌入式微控器为核心的采集前端对分布式站点多路传感器信息(辐射度、污染、报警信号、光、磁、温度、气压、流量、速度等)实时采集,编码;通过GPRS信道将实时监测数据编码,然后发送到WEB服务器(固定IP地址或有固定域名的网站),监控中心接收包含时间、站点编码、数据等信息;同时嵌入式微控采集前端实时接收监控中心发送来的前端重启、立即上传数据、更改上传周期、时间校准、控制执行某种动作等命令,根据命令做出响应。例如:前端接收到更改数据上传周期命令,由原来的一小时,改为3分钟,则嵌入式微控采集前端将按照新的周期时间每隔3分钟上传一次采集数据。
2 各分系统组成及功能
2.1 前端采集系统
前端采集系统的设计是整个系统的核心,单片机采用ST89C58,扩展了8路数码管显示,A/D转换,D/A输出的接口电路,日历时钟芯片,SRAM,与GPRS模块通信的RS232接口等功能(如图2)。
图2 前端采集系统结构图
本系统采用多量程、8通道、12位高精度A/D转换器MAX197芯片,实现对对传感器电压信号的采集。单片机将采集到的各路数据按固定格式编码,编码数据再加上由日历时钟芯片DS12C887提供年、月、日、时、分、秒数据,和站点序号标识进一步混合编码,形成固定格式的上传数据。根据监控中心的命令要求,定时上传数据。SRAM用于存储远程监控中心的IP地址,用于掉线重播。
2.2 通信系统
GPRS通信模块选用PIML GPRS-MODEM模块,双频GSM/GPRS引擎,支持数据、语音、SMS和传真传输,网络通信支持基于TCP协议或UDP协议的数据传输。本系统采用TCP协议通信。单片机通过MAX232接口芯片实现与GPRS-MODEM模块的电气连接,使用AT命令实现与GPRS模块的通信,实现将混合编码传向监控中心,或是接收监控中心的命令数据。图3为单片机与GPRS模块接口的电路图,接口采用MAX232芯片,实现单片机与GPRS模块串口的电平转换。
图3 单片机与GPRS的RS-232接口电路
2.3 监控中心
基于WEB的监控中心,实现对数据的接收,并向前端采集系统发布控制命令。监控中心的服务程序是基于VC++6.0编程环境的,采用Socket套接字编程技术实现对远程数据的收发处理。Socket网络编程要重点处理好套接字的建立(Socket())、绑定(Bind())、监听(Listen())、接收(Accept())和读(Recv())写(Send())等几个函数的使用。监控中心发送自定义的8条命令,控制远程前端采集。这8条命令为:①系统重新启动命令;②数据立即上传命令;③系统时间校准命令;④数据上传频率更改命令;⑤停止上传数据命令;⑥继续上传数据命令;⑦改变输出电压值命令;⑧强制关闭GPRS—MODEN模块命令。
如:③系统时间校准命令
命令格式:CMD+TIME 2007/05/08,19:24:30
命令作用:校准DS12C887实时时钟芯片的时间后,上传加有准确时间的数据串。
其他命令格式与上述类似,实现不同的功能。
图4为监控中心测试远程数据收发的试验程序。
图4 监控中心试验服务程序界面
2.4 远程执行单元
远程执行单元一般为电机,电动阀门等执行单元,前端采集系统接收到监控中心的执行命令处理后,经D/A单元输出相应的电压或电流信号,控制执行单元工作。
3 结论
本文侧重论述了基于GPRS的远程监控系统的总体设计,与各分系统的结构功能,对于单片机与GPRS模块通信实现、前端采集系统软硬件设计、监控中心服务程序实现、采用软硬件滤波技术实现抗干扰、数据编码、掉线重拨、前端采集数码显示等详细技术解决方案,将在后续的文章中加以论述。
基于GPRS的远程监控系统,充分的发挥了GSM网络覆盖广的优势与GPRS数据传输服务的优势,可以广泛的应用到城市电力,热力,气象,以及河流污染管理等行业当中,提高相应的自动化管理水平,大大降低运行成本,具有广阔的应用前景。
[1]钟章队等.GPRS通用分组无线业务.北京:人民邮电出版社.2001.
[2]朱洪波等.通用分组无线业务(GPRS)技术与应用.人民邮电出版社.2004.
[3]戴佳等.51单片机C语言应用程序设计.电子工业出版社.2007.