专业的流量仪表资料网
|
远传水表抄表系统设计与实现2004年9月(1) 摘要 从系统的结构、通信程序和管理软件设计的要点,介绍了一种远传水表系统的设计和实现。物业公司的计算机系统经集中器、采集器可以读取各个水表的实际数据,并且由管理软件实现客户注册、计费、生成帐单等功能,建立完整的数据库。 关键词 远传水表 采集器 集中器 计费 生成帐单 数据库 0 引言 随着电子通信与计算机网络技术的发展,远程抄表技术在水、电和煤气计量方面得以推广应用。远程抄表技术的应用能够有效提高计量管理水平和工作效率。 为适应这个发展方向,在研制出有线远传水表及其数据采集器的基础上,开发了专用的数据集中器,并设计和实现了远传水表抄表系统。系统的用户主要是物业管理公司。利用这个系统,物业管理公司可以在管理终端远程采集水表数据,再结合使用计费管理软件统一完成数据处理、费用结算、打印帐单等功能。 由于系统采取水表、采集器和集中器三级结构、集中器和计算机又可以通过公用电话网远程通信,因此系统具有良好的伸缩性,其规模可以针对单独的楼宇或者住宅小区。 1 系统组成 远程水表抄表由水表、采集器、集中器和计算机组成,见图1。
图1 远程水表抄表系统组成示意图 在系统中,水表可以是传统的分散安装形式,采集器可以按照楼层或者单元来分配安装,为便于安装和日常维护,一般固定在弱电竖井的集线箱内。集中器物理位置根据采集器的布局决定,计算机的物理位置通常为物业管理公司。 图1中沿着自下向上的方向,水表通过RS-485接口挂接到采集器;采集器通过RS-485接口挂接到集中器;集中器(内置Modem)则通过公司电话网与计算机连接。 物业管理公司在计算机端运行通信程序,可以读取并存储来自各个集中器的数据,从而获得各个水表的读数;再借助于管理软件实现客户注册、计费和生成帐单等功能。由此实现了一个完整的远传水表抄表系统。 2 系统硬件构成 2.1 核心设备 系统的核心设备包括水表、采集器、集中器和计算机。这些设备连同附加的通信设备构成一个网络。 选用的远传水表,与一般常规水表不同的是具有密封在水表内的采集计数工作单元。 水表连续到采集器,一个采集器最多连接16只水表。采集器为一个完整的单片机系统,其程序用汇编语言开发,包括有自检、初始化、测量(定期采集水表数据,包括工作状态和各个水表的读数)、显示(8位LCD显示,循环显示挂接的水表读数及状态)和通信(RS-485接口)功能,并负责向水表供电。参数设置则通过参数设置开关完成,也可以通过其RS-232通信接口与计算机连接并利用程序来完成。 采集器连接到集中器,一个集中器最多连接64个采集器。集中器为单片机系统,定期读取采集器数据,包括工作状态和采集器数据,并负责向采集器供电。为了与计算机或者手持抄表器通信,集中器带有RS-232接口,并集成内置Modem(集中器与计算机通过Modem建立远程连接有两种方式,一种是专线连接,另一种是拨号连接。系统中采用了拨号连接。 这些设备互连形成一个网状系统。在系统实施的时候,根据节点的多少采集器和集中器的数目,保证了系统具有扩展和备用能力。另外,提供手持抄表器作为可选设备,在需要时可以在手动方式下工作:即直接用手持抄表器从集中器读取数据,把手持抄表器携带回物业管理公司,再在计算机中运行通信程序读取手持抄表器中的数据。 2.2运行描述 系统运行时,首先需要初始化。初始化工作包括:水表在其连接的采集器中注册(即用采集器的参数设置开关设置水表数目、水表在采集器内地址等,也可以通过计算机连接采集器进行设置);采集器在其连接的集中器中注册(即通过计算机或者设置开关设置采集器数目、采集器在集中器内的地址、读取采集器时间、月末结算日和故障记录等);集中器则注册 到运行在计算机上的管理软件中。经过以上初始化工作,保证每一台水表、采集器和集中器在系统中都被唯一标识。 初始化完成后,采集器负责水表读数;集中器则根据设置的读取时间读取采集器数据,并存储读取的实时和月末数据。计算机端运行通信程序,在其支持下读取并存储集中器数据。 3 通信程序设计与实现 水表与采集器、采集器与集中器之间的通信由相应的单片机系统作了处理。系统中还需要处理计算机与集中器的通信、计算机与采集器的通信;另外,使用手持抄表器读取集中器数据时,也需要通信程序支持使得计算机能够读取手持抄表器内的数据。 3.1 通信规约 采集器、手持抄表器通过RS-232串行接口与计算机通信;集中器与计算机通信则存在两种方式,其一是通过RS-232串行接口连接;其二是计算机通过Modem拨号到集中器,计算机作为主站发起,集中器作为从站、这时还需要相应的拨号程序。 以下示例是计算机读取集中器的参数时的约定: 计算机发送一个连接码AAH,集中器回送AAH,则连接成功;计算机继续发送一个功能码BIH(表示将读取集中器参数,一共14个字节),集中器回送14个字节。 在串行通信时,主要参数设置为:波特率2400bps、无校验、8个数据位、2个停止位。 3.2 串行通信实现 当计算机通过Modem连接到集中器的时候,首先利用拨号程序建立远程连接。利用程序设计语言编写拨号程序需要使用AT指令集。以下程序示例一给出拨号及挂断的程序片断,其中8307为集中器端的电话号码,使用的Modem为拨号式Modem,程序设计工具为Visual Basic6.0,Comml为手工串行通信的MSComm控件。 程序示例1: ()
′打开端口
′向Modem发出拨号指令ATDT
′向Modem发出挂断指令ATHO Comml.Output=“ATHO”&vbCrLf
建立远程连接后即可以与集中器通信。以下的程序示例二给出计算机读取集中器数据时的通信程序片段: 程序示例2 Private Function cmdShaking click() Dim av As Variant ′PC发送功能码AAH,JZQ返回AAH OutByte(0)=&HAA Comml.Output=Outbyte ′读取一个字节 If Comml.InBufferCount>0 Then av=Comml.Input InByte=(0)=av(0) ′比较
“AAH通信错误。” GoTo errl
: ′错误处理 ……
完整的通信程序的框图如图2所示。如果需要拨号连接,应先调用拨号程序。
图2 通信程序框图 通过通信程序读取的数据可以保存在文本文件或者管理软件的数据库中。 |
无锡求信流量仪表有限公司 |