基于GPRS的水表远程抄表系统设计
2015-12-17任亚军赵明朱文革王英
任亚军,赵明,朱文革,王英
(1.辽宁装备制造职业技术学院,沈阳 110161;2.北方重工集团 盾构机分公司,沈阳 110027)
0 引言
目前中国居民用户的水表抄表、收费方式多采用人工入户抄表,随着高层、高档住宅小区的兴起,传统的手工抄表方式暴露出日益严重的质量和效率问题。该方式给用户和抄表工作人员带来很多的困难,且不利于管理。近年来,随着计算机和通讯技术不断提高,采用先进的抄表技术和抄表方法是解决这一问题的关键。采用水表数据户外计量的自动化抄表方式,在节约人力资源、利于管理部门及时掌握确切的数据信息、综合统计分析等方面有诸多优势[1]。本文介绍了一种水表远程自动抄表系统。该系统具备GPRS网络抄表功能和USB集中抄表功能。
1 系统总体方案设计
远程集中抄表系统主要由3大部分组成,分别是脉冲水表装置、楼宇抄表装置和后台抄表管理装置。其系统框图如图1所示。其中,楼宇抄表装置由数据采集器和数据集中器组成,数据采集器的功能是接收脉冲水表的信号,并进行处理、存储;数据集中器是自动抄表系统中的关键设备,它通过RS-485总线抄收采集器的用水量数据,并通过GPRS网络与后台抄表管理装置进行通信,可根据后台抄表管理装置的指令要求查询任意一个水表的相关数据,此外还可以定时将采集器的数据传送至后台抄表管理系统。
2 楼宇抄表装置硬件电路设计
楼宇抄表装置由数据采集器和数据集中器两部分组成。其中,CPU处理器选择Silicon Laboratories公司的C8051F340,该处理器具备USB功能,并提供USBXpress开发套件。
数据采集器的硬件电路设计主要包括CPU及其外围电路的设计、脉冲信号采集电路及数据存储模块电路的设计。
图1 远程集中抄表系统框图Fig.1 Remote concentrated meter reading system block diagram
图2 楼宇抄表装置硬件电路框图Fig.2 Building meter reading device for hardware circuit diagram
数据集中器的硬件电路主要由CPU电路、RS-485电路、时钟接口电路、GPRS/GSM电路、数据显示电路、键盘等组成。其中,GPRS/GSM模块选用BENQ M23,在控制数据收发方式上。该模块内部采用了支持多种通信方式的通用AT指令方式,此外,该模块内嵌TCP/IP协议,免除了复杂的上网通信协议编写过程,减少了程序数量,缩短了程序编写周期。在集中器上设置USB接口,可以在GPRS/GSM网络故障的情况下由工作人员通过电脑或其他移动式抄表设备进行数据的抄读。楼宇抄表装置的硬件框图如图2所示。
3 水表远程抄表系统软件设计
水表远程抄表系统软件设计主要包括用于数据及状态显示的LCD液晶显示程序、进行时间信息处理的实时时钟程序、采集器的数据采集与处理程序、集中器的按键识别与防抖处理程序以及通信程序设计。本文重点介绍GPRS通讯程序设计和USB通讯程序设计。
3.1 GPRS通讯程序设计
3.1.1 AT指令
AT指令是指从终端设备向终端适配器或从数据终端设备向数据电路终端设备发送的指令。通过发送AT指令来控制移动台的功能,与GSM网络业务进行交互[2]。本系统中应用到的AT指令,如表1所示。需要注意的是,AT+CMGS指令需要知道目标终端的号码,即接收端的手机号。
表1 系统应用的AT指令Table 1 System AT directive
表2 USB器件API函数Table 2 USB Device API functions
3.1.2 M23模块TCP/IP协议
M23模块内嵌TCP/IP协议,简化了上网通信协议的程序编写。在进行GPRS通讯时,只需要根据GPRS通讯流程图(如图3所示)按步骤逐条执行TCP/IP协议指令即可。首先进行APN的初始化,采用的指令是AT+CGDCONT=1,IP,CMNET;然后就可以登录验证信息了,指令格式为AT%CGPCO=1,PAP,1,PAP;接下来执行“XXXX.XXXX.XXXX.XXXX”,1,1234指令,进行IP地址与端口设置;当最后一条指令ATD*97#完成拨号后,在上述指令正确执行后M23模块会通过串口通信方式向CPU返回OK字符,GPRS通讯的设置成功,这时就可以发送拟传输的数据内容了。
3.2 USB通讯程序设计
USB通讯程序主要介绍C8051F340单片机的USB通信。Silicon Laboratories公司提供的USBXpress开发套件提供了10个USB器件API函数[3],其函数名称及函数功能如表2所示。可以利用API函数来实现C8051F340单片机的USB通信。
图3 GPRS通讯程序流程图Fig.3 GPRS Traffi c fl ow chart
在设计C8051F340单片机的USB通讯程序时,首先进行单片机的初始化配置I/O及应用程序的调用,然后就可以方便地调用USB器件的API函数USB_Clock_Start()、USB_Init(),USB_Int_Enable()、Block_Write()、USB_Disable(),进行USB总线时钟的初始化、USB数据的写入及USB数据接口的打开和关闭等,最终实现USB通讯功能,其通讯流程图如图4所示。
4 结束语
图4 单片机的USB通讯流程图Fig.4 The USB communication fl owchart
本方案把GPRS网络应用到水表抄表工作中,实现了远程数据传输功能。文中分析了系统的组网方式,对楼宇抄表装置的硬件组成、AT指令的实现及通讯程序的设计进行了较详细地探讨。该系统具有现场查询显示、利用USB接口进行数据传输,并能通过GPRS/GSM网络实现按选定的地址进行读取数据,按设定的时间自动读取数据等功能,可以实现当前住宅小区的自动抄表及数据的网络化管理。
[1]吴小所,郭存鸽.远程智能监控系统的研究与设计[J].中国新技术新产品,2010,23:9-10.
[2]李高平.一种基于USB接口的IPC远程控制模块开发[J].科技资讯,2010,32:17-18.
[3]赵明.基于GPRS的水表远程集中抄表系统研究[D].沈阳:沈阳理工大学,2008:27-39.