4 管理软件设计
4.1 管理软件功能
通信程序解决了水表读数的工作,但实现计费等工作还需要管理其它信息,如:水表对应的房屋号、房屋号对应的客户等。设计的管理软件完成以下功能:
① 客户管理
管理客户基本信息、房屋号基本信息,并将客户绑定到房屋号,房屋号绑定到水表。
②计费管理
调用通信程序,抄收水表实时数据或者月末数据以及水表、采集器和集中器工作状态;设置用户水表各初始化参数及计费设置(水的单价、折扣等);根据各个水表本次示数和上次示数计算差额,形成月帐单;客户付费时打印为结清的帐单。
③历史数据查询
查询特定用户某月示数、某月帐单,自动生成打印报表。
④设备管理
集中器注册管理;采集器、集中器初始化(初始化内容包括采集器、集中器时钟设置等)。
4.2数据库设计
根据系统所处理的数据量,数据库管理系统选择了MS Access 2000。所设计的数据库对象主要包括表、视图和约束。表负责存储底层数据,主要设计了存储水表设置、采集器设置、集中器设置、水表月末数据和水表当前数据等信息的表。根据需要增加了约束,例如,记录水表月末数据的表增加了一个用户约束,即月末数据不能重复录入。视图则主要针对常用查询和报表而设计。例如,为生成每月客户的帐单,设计了基于水表月末数据的视图,计算两个月之间水表读数的差额。
4.3 程序和报表设计
管理软件设计采用Visual Basic6.0为设计工具 ,设计数据输入界面、查询界面,并完成数据计算。与数据库的连接则利用ADODC控件完成。程序示例三给出了查询集中器设置信息的代码片段,其中Adodc0为Adodc控件,通过它连接到Access数据库,
为数据库中的一个表的表名,存储了集中器设置信息。
程序示例3:
()
“
“
“ 采集器数目,”&
“ 结算日,”&
“ 日期和时间,”&
“ 集中器安装位置,”&
“ 备注”&
“ ”
上述查询返回的结果通过一个DataGrid控件显示。
报表设计采用Crystal Reports7.0为设计工具。帐单、月报表和年报表等都用Crystal Reports设计,在管理程序中通过VB调用。用它设计的报表,还准备在基于Internet的查询系统中作为网页直接调用浏览。
5 结束语
系统的实施能够实现用户水表的远程计量。采集器与集中器通信基于RS-485通信方式,传送距离为1.2km左右,适合于智能小区的范围使用。集中器与计算机则借助于公用电话网进行远程数据传送。
在实际开发中,第一期设计和开发针对一所特定楼宇进行。所开发系统通过了实验室运行和楼宇试运行。系统中使用了两个集中器,一个与计算机物理位置相同,直接通过RS-232与计算机连接;另一个通过Modem拨号方式与计算机连接。下一步的优化工作则主要包括增加从集中器端向计算机端自动拨号的功能及客户基于Internet查询帐单的功能。