APP下载

低压居民抄表集中器通讯协议测试软件的设计与实现

2016-08-02王和栋许棋樟黄亚志

广东科技 2016年11期
关键词:测试软件集中器测试人员

文/王和栋 许棋樟 黄亚志



低压居民抄表集中器通讯协议测试软件的设计与实现

文/王和栋 许棋樟 黄亚志

0 引言

随着城市化进程的加速及无线通讯技术的发展,我国居民的居所朝集中化方向发展。而无线通讯技术的发展为居民的用电计量工具——表计的计量数据自动化采集提供了技术基础。为此,各大电力公司加大对低压居民表计自动采集研究的投入。作为自动抄表的一部分,低压居民抄表集中器主要的功能是采集电表的计量数据传送至自动抄表主站系统。由于集中器由不同的设备供应商提供,在设备入网前需针对其通讯协议传输报文进行检测,确保数据传送的正确性和完整性。此前没有专门针对集中器的通讯协议报文进行测试的软件,主要依靠测试人员使用自动抄表主站系统进行测试,该系统结构复杂,进程较多,安装不便,且该系统面向的是业务应用人员,对通讯部分的测试问题定位和分析带来很大的困难,为此,需开发一套专门针对低压居民集中器设备通讯协议的测试软件,提高测试的准确性和效率。

基于以上情况,我们在微软的.net平台上开发了一套基于C/S模式的插件式低压居民抄表集中器通讯协议测试系统。该系统以C/S模式为基础,通过主流的可视化开发工具,采用插件技术,使用面向对象的开发方法开发基于多线程的单进程系统软件。针对业务需求,考虑开发的系统软件易用性和面向测试人员的专业性。

1 测试软件需求

低压居民抄表集中器的测试由测试人员发起,通过手工方式向测试软件发送通讯协议测试指令,由测试软件将指令转化成通讯协议规定的报文发送至集中器,再由集中器返回指令应答,最终显示在测试服务服务器上展现报文和分析结果。集中器设备与测试软件通讯的报文分为:档案参数设置、电表档案增删改、电表拉合闸控制、数据召读等。测试软件主要对通讯报文返回的及时性、正确性做初步分析,在测试完成后提供测试结论录入、导出测试结论报表的功能。应用场景如图1所示。

图1 测试业务场景

2 系统架构设计

框架设计是软件设计的核心部分,决定了软件的质量。根据测试系统的应用需求以及被测试设备的特性,系统主要分成三个层次:第一层为通讯层,与低压居民抄表集中器进行无线连接的通讯、解析报文的部分,这部分主要通讯主要通过GPRS/CDMA以及串口等与集中器保持连接状态,当集中器登录至测试软件后,由测试软件采集集中器的数据,并将报文进行初步的解析;第二层为调度层,任务调度的主要功能是在进行多集中器同时测试时由测试人员从界面层或者数据库定时任务发起指令,任务调度模块在接收到相应测试指令后,通过把指令组合,将指令传送通过通讯层传送至被测集中器,并负责将通讯返回的报文通过通讯层解析后,传送至数据处理层;第三层为数据处理层,数据处理层包括界面展现及数据库两个部分。界面展现部分主要对测试的数据进行实时的展示,并提供查询功能。数据库负责存储系统的参数、测试过程中产生的数据以及结论等的保存和管理。系统的架构如图2所示。

图2 系统逻辑架构图

3 系统模块设计

根据低压居民抄表集中器的需求,在功能上,将系统划分为7大模块,如图3所示。

图3 测试软件关键的功能模块

各个模块的主要功能:

(1)系统管理模块。

系统配置模块包括系统日志的输出路径管理、菜单项的管理、用户登录账号和密码的管理、数据库连接管理等。设计时考虑可视化,相比之前应用系统的数据文件的手工设置的方式,简单易用。

(2)通讯资源管理模块。

该模块主要提供测试软件所在服务器的一些参数的管理功能,包括IP地址、端口号、串口参数、通讯方式(GPRS/CDMA)等,由测试人员根据测试的环境设置到系统中。

(3)测试档案管理模块。

该模块包括低压居民抄表集中器、与集中器相级联的配变终端的对象建立、参数设置、测试完成后的档案删除、终端参数的查询功能。

(4)手工测试模块。

手工测试模块是测试系统的核心模块,提供居民低压抄表集中器的上行所有通讯协议的测试。由测试人员制定测试方案以后,在该模块提供的测试功能上进行测试,主要包括电表档案的增删改查、终端参数的设置、终端密码设置等协议内容,集中器相应测试软件的指令后,根据通讯协议的规定,对报文进行解析,并判断报文存在的问题,提供给测试人员使用。

(5)测试结论管理模块。

该模块根据通讯协议的每一项测试内容的测试结果,分为通过和不通过两个选择,在测试人员完成测试后,在系统的这个功能模块进行测试结果的录入和修改。提供测试结果导出报表功能,根据测试报告的需求,可调整导出报表的格式,输出报告的结果。

(6)报文显示模块。

该模块提供测试软件与集中器之间的按照通讯协议传输的报文的展示,包括集中器登录、心跳、收发任务等过程的实时报文显示,在点击报文时,可根据通讯协议将报文按照通讯协议的规定转换成明文,提供给测试人员做进一步的分析。

(7)数据查询模块。

该模块提供测试的历史记录给测试人员备查,包括已完成测试的集中器档案、报文、报文解析后的结果、测试结论等。

4 实现的关键技术

(1)插件技术。

测试软件使用插件技术,这样方便开发期间的代码管理,保持各个模块的独立性,为后期需求变更的维护带来很大的方便。程序分为宿主程序及插件程序。宿主程序:构建系统框架的主程序,提供各种接口和基本功能用以支持插件程序的运行。插件程序:根据系统框架所提供的接入标准,运行在系统框架上的子程序,具有一定的独立性。

(2).net可视化开发平台。

.net是一个工作平台,它是一个开发环境的基底,能够编写单机桌面窗口程序、web网页程序,还可以生成安装程序。特点是编写代码过程中,相比其他语言的开发环境,有很好的编辑,纠错提示等功能。系统采用的编程语言C#是由微软公司专门为.net平台设计的语言,它可以让程序员移植到.net上,且采用了几种主流语言最优秀的特点,并加入了其自己的特性。C#是事件驱动的,完全面向对象的可视化编程语言,我们可以使用集成开发环境来编写C#程序。使用IDE,程序员可以方便地建立、运行、测试和调试C#程序。

(3)数据库。

软件开发项目使用的数据库主要有Oracle、Sybase、SQL Server等数据库。由于测试系统的存储数据量以及经济角度考虑,系统选用数Sqlsever2005。SQL Server 2005与微软的操作系统有较好的兼容性。测试软件连接数据库采用ODBC技术,ODBC使用层次的方法来管理数据库,在数据库通信结构的每一层,对可能出现依赖数据库产品自身特性的地方,ODBC都引入一个公共接口以解决潜在的不一致性,从而很好地解决了基于数据库系统应用程序的相对独立性。

5 系统运行

图4 检测软件功能展示图

根据以上所述的系统设计以及选取的技术进行开发,目前该软件系统已经正式应用到某电网公司的集中器入网测试中,该系统运行稳定可靠,为该公司现场运行的集中器质量提供良好的前提保障。图4为测试软件系统的截图。

6 结语

基于.net技术开发的低压居民抄表集中器检测软件,使用了主流先进的计算机技术进行并行的开发,不但降低了开发的成本,也为电网公司提供了专业化的测试软件,改变了测试人员初期使用业务系统进行测试带来的困难。该系统上线至今,运行稳定、可靠,大大降低了测试人员定位问题,分析问题的难度,也为后期通讯协议的修订提供了数据支撑。

作者简介:王和栋(1984-),男,工程师,硕士研究生,任职于广州粤能电力科技开发有限公司,研究方向为电能计量自动化、企业管理;许棋樟(1987-),男,助理工程师,本科,任职于广州粤能电力科技开发有限公司,从事电能表检测与研究工作;黄亚志(1985-),男,助理工程师,本科,任职于广州粤能电力科技开发有限公司,从事电气工程自动化与研究工作。

猜你喜欢

测试软件集中器测试人员
移动应用众包测试人员信誉度复合计算模型研究
网络自适应测试软件运行方法设计
低压集中器采集调试和维护问题分析
自动化检测EPU10A板卡系统设计与实现
浅析软件测试中的心理学应用
谈低压集中器及表计在线故障快速排查方法
集中器常见死机原因分析及解决方法探究
远程开放教育学生自主学习能力评价的研究
一款重型包装抗压系统控制软件的设计与开发
犯罪心理测试人员素质要求分析