农村水电站计算机监控工程案例资源库建模与设计
2010-08-14徐金寿
徐金寿
(浙江同济科技职业学院,浙江 杭州 311231)
1 问题的提出
浙江省水利厅明确指出今后五年 (2009—2014年)把水电建设的重心从新建电站转移到农村水电站更新改造[1]。浙江省水利厅随之启动了农村水电站更新改造工程—即“千站改造惠农保安工程”[2]。该工程的最终目标是把浙江省4 000多座农村老水电站通过报废重建和技术改造2种途径进行更新改造。由于原来水电站都是常规控制,更新改造后必须采用计算机进行监控,这对水电站职工的技术水平提出了更高的要求,很多电站更新改造后要求浙江同济科技职业学院(水利部浙江省惟一定点培训单位)对其职工进行水电站计算机监控培训,为此我们投资130万元构建了“发电厂仿真实训中心”,该中心既可以进行教学又可以对电站的职工进行集中培训。为此作者牵头开发了农村水电站计算机监控工程案例资源库系统,并将其安装于“发电厂仿真实训中心”之中,为培养学生和提高电站职工的技能服务;同时该系统也可以安装在有条件的水电站的上位机培训工作站中,为电站职工提供长期的自我学习系统。现就该系统的功能、开发过程和应用情况等分述如下:
2 系统功能概述
农村水电站计算机监控工程案例资源库系统包括资源库管理、问题库管理、知识库管理、专家库管理等主要功能,这些主要功能的设立能够使得水电站计算机监控培训工作站的功能变得强大,并使工作站能够长期为学员服务。资源库管理为学员提供管理各类计算机监控数据资源的功能,包括计算机监控工程案例资源的添加、编辑、删除、分类、目录管理等功能。问题库管理保存了运行与维护过程中将可能出现的问题,包括案例问题的背景、问题的内容、问题的评析、拓展与研究等内容。知识库为运行人员提供了集思广益的空间,包括知识存入、知识修正、知识删除、知识查询等;知识库由问题评析形成,每个问题有1个或多个解决方案,每个方案形成知识库记录,记录中设立 “类别”字段,该字段存放问题的序号,使得问题与方案形成 “一对多”的关系。专家库为运行人员提供了解决实际问题的方案,包括专家库查询、优化知识存入专家库、专家库条目管理等功能。电站运行人员通过该系统的长期熏陶和经验积累,将不再停留在只懂计算机监控系统的“开停机”操作等低级水平上,将与工程运行、维护以及日常管理等实际问题结合在一起,不断地发现问题、提出问题、解决问题和获取经验,使自身的水平和素质不断地提高。功能结构如图1所示。
图1 功能结构图
3 开发过程综述
水电站计算机监控工程案例资源库系统的开发过程有别于水电站的常规控制软件系统[3]的编制,一般的常规控制软件系统开发流程如图2中(a)所示,主要注重于控制流程的编译和软硬件的协调。而水电站计算机监控工程案例资源库系统是基于水电站常规上位机系统之上,它不需要考虑底层装置的性能,而是考虑与上位机的接口问题,控制图的编制变为与上位机服务的历史数据库的链接流程编制。由于系统需要集成多个 (至少1个)开发商虚拟软件,因此需要考虑多个开发商之间的软件协调问题。该系统属于水电站计算机监控的高级应用软件,基于水电站计算机监控基本软件之上,故不涉及硬件的研制。系统的开发流程如图2中的(b)所示。系统的开发在一定程度上遵循了MIS系统的开发流程,主要分需求分析、UML统一模型建立、系统设计与开发,安装与调试等过程。
图2 开发过程辨析图
3.1 需求分析
软件的设计总是从需求分析开始的,因为只有理解了用户的需求,才能设计出令客户满意的软件。该系统的需求分析从调研开始,为此调研了浙江省的诸多更新改造单位,统计了各个电站利用哪种水电站计算机监控软件,哪个公司开发的,电站对本系统是否需要,需要哪些功能等。通过需求分析从水电站的要求中提取出软件系统能够帮助电站解决的业务问题,通过对电站实践问题的分析,规划该软件产品。这个步骤是对电站业务需求的一个升华,是一个把电站业务管理流程优化,转化为软件产品,这一步是否成功,直接关系到开发出来的软件产品能否得到电站的认可,能否真正运用软件提高水电站职工的技术水平。
按照软件工程对软件开发过程的描述,需求阶段可以细分为需求调研和需求分析2个小阶段,需求调研需要充分细致地了解客户目标,用户业务内容和流程等,这是一个对需求的采集过程,是进行需求分析的基础。对水电站计算机监控软件而言,开发人员需要到水电站进行调研,与运行人员进行沟通,了解计算机监控的对象、业务流程以及水电站运行人员的要求和操作习惯等方面。当已经了解并理解了用户的业务,才可以开始分析需求。软件系统的需求分析可以由产品工程师或系统分析员或两者分阶段合作完成。
3.2 UML统一模型建立
由于该软件的复杂程度比较高,故决定采用面向对象(OOP)的分析与设计方法,并采用面向对象的统一建模语言UML(Unified Modeling Language)建立模型。图3即为系统采用UML建模语言建立的用户登录身份验证顺序图,它反映了系统登录的动态行为过程。
图3 系统登录的动态行为过程图
该系统在采用UML建模语言建立模型时主要注意了以下几个方面,这将为以后同类的系统开发提供借鉴。现总结如下:
(1)软件界面的设计。在软件界面的设计中注重界面风格的统一和友好,使大部分界面具有相同的风格,其目的是能够使用户的操作简单、容易和实用[4]。在运行中,用户可以通过鼠标或键盘对界面进行操作,而且能够方便地对各个模块进行设置和控制。
(2)系统功能的设计。在软件的设计中将功能进行分类设计,例如可以把系统分为虚拟通讯模块、参数设置模块、虚拟控制调节模块、虚拟数据采集及处理模块、查询及报表打印模块、虚拟报警模块及负荷曲线模块等。同时将各个模块分别作为相对独立的模块编程实现,采用模块化设计有利于系统的扩展和维护。
(3)软件通用性的设计。由于软件开发时和实际的运行情况总有一些差异,所以,要保证该软件具有一定的通用性,尤其是参数设置部分和虚拟控制调节部分,保证了很好的灵活性和通用性。
(4)数据库访问的设计。由于系统主要涉及到历史数据的链接与访问,因此在对历史数据库的访问中注意了使用快速和简单的访问方法,保证数据的正确性和可靠性。
(5)错误处理的设计。程序的运行不可避免地会发生一些错误,有的是外部的错误,有的是程序本身的错误。所以,在系统的设计中注意了错误处理的设计,保证了只要有错误发生就要进行处理,使电站的计算机监控基本控制程序不受干扰,不影响电站的正常运行。
3.3 系统设计与开发
水电站计算机监控软件系统的应用软件种类繁多,一般采用按功能进行分类的方法,单独设计与开发各种功能软件和模块,然后采用集成化技术、接口技术、网络技术等技术对各个功能软件或模块进行集成,最后形成统一的软件系统。该系统的设计与开发采用了数据库重构技术、模块集成化技术和软件接口技术等。
(1)数据库重构技术。数据库重构技术是为了解决不同版本的历史数据库与该系统的数据库链接问题。设立1个配置文件 (pzdata.ini),该配置文件依据水电站计算机监控历史数据库的不同版本进行配置调整,在配置文件中设立条件语句,依据历史数据库的不同版本开发数据访问程序段,程序段中只包含所启用的存储过程或函数,而目标过程和函数体存放在工程案例资源库数据库系统中;其次,在工程案例资源库数据库系统中开发目标过程和函数体,这些存储过程与函数体采用某种可辨识的命名方式进行命名,例如可以采用监控系统的历史数据库版本号作为前冠进行命名,以便辨析;最后,采用高级开发语言开发执行模块,该模块首先读入配置文件信息,对历史数据库进行辨析,然后依据辨析的信息执行匹配的配置文件条件段,最后执行本系统数据库中对应的存储过程与函数体,把资源数据读入到本系统的数据库表中。通过数据库重构技术使不同历史数据库版本的数据资源统一到本系统的数据库中,形成可以统一访问的资源。
(2)模块集成化技术。模块集成化技术使功能模块形成一种递进的关系,资源库导出问题库,问题库产生知识库,知识库优化为专家库。每个库的功能开发为1个子模块,每个子模块集成为模块,模块与库之间为一一映射关系,模块之间的递进可以采用手工方式或推理机实现。手工方式通过界面的对话,由操作者选择执行条目,由前台操作完成递进。推理机方式采用后台自动执行推理程序完成。因此该系统的模块集成不但把子模块集成为模块,而且完成了模块之间的递进关系。虽然系统的推理机需要进一步完善和升级,但从集成化构架的角度是一种创新。
(3)软件接口技术。软件接口技术使系统的专家库模块可以与故障诊断处理系统实现资源共享,系统的接口程序采用XML Web Service方式,XML版本为V1.0,引用方式为:“ <?xml version=″1.0″encoding=″utf-8″? >”。 采用XML Web Service的优点在于它遵循国际统一的XML标准,同时它的访问机制更加开放,允许异构环境下的数据共享。
3.4 安装调试与维护
3.4.1 系统的安装
该系统安装要求计算机机房温度在 (23±2)℃,现地温度0℃以上,需要有防尘措施等,以免因环境等因素而影响监控系统的正常工作。
3.4.2 系统的调试
该系统的调试包括局部调试和整体调试。
3.4.2.1 局部调试
局部调试的内容举例如下:
(1)检查系统各功能是否完善。
(2)观察界面的显示是否正常,系统的界面是否合乎显示要求。
(3)观察数据的显示是否正确,精度是否合乎要求,观察棒图的指示是否正确,如不正确重新调整。
(4)检查变位登陆情况,模拟图上的状态画块指示情况,设备退出时画块颜色显示情况,观察系统的变位登陆与检测的中断情况等。
(5)用鼠标逐个点开出量定义至状变置位,检查对应节点的动作执行情况;对断路器虚拟操作、调速器及励磁虚拟调节、快速门虚拟操作等重要项目应仔细反复进行,并予以确认。观察对应节点状态的开入量是否正确。
(6)虚拟同期调试。虚拟同期调试包括虚拟同期装置的主机板调试以及主要参数的设定,现场设定导前时间。
(7)操作流程调试。操作流程调试步骤按设计的流程图进行,调试时监控开出量实际动作于部件需人工模拟外,其他条件完全等同于真机。
3.4.2.2 整体调试
局部调试结束后,即要进行系统整体试运行调试。按照运行程序的安排,列出系统的主要专项试验项目,如自动开停机操作、虚拟自动准同期并网操作等。确定机组LCU是否参与模拟控制。调试软件的监视机组开停机流程、空载运行情况、各部轴瓦温度、辅助设备运行情况、电压保护现地模拟量的显示与登录、模拟录的采集与显示、用户操作登录等工作。
3.4.3 系统的维护
系统安装调试完成后投入运行,但在软件运行的过程中不可避免会遇到一些问题与故障,这就需要对软件进行维护。例如有软件本身漏洞造成操作错误;病毒的侵入;功能的缺陷等。在维护过程中,如果是软件方面的原因,则应从软件上进行改动和升级,在软件中加人闭锁程序,告警,监控系统回路的监视程序等,使问题一旦出现,运行人员立刻便可知道故障产生原因和地点,从而使监控系统更具智能化。
4 系统应用综述
该系统在多期的技术培训服务中发挥了应有的作用,如浙江宁波皎口水库电站、浙江景宁英川水电站、遂昌周公源水电站等,并且应用效果和评价良好。例如皎口水电站在网上评价认为:“在此间培训过程中,广大电站员工通过工程案例资源库的认真学习、刻苦钻研、大胆提问,并对其中诸多复杂的设备操作及运行维护、故障排除等问题作了详细的记录,以备日后查用。经过这样严格、规范的培训与考核,电站的每位上岗职工已基本掌握发电厂计算机监控技术的应用与机电设备的日常运行维护,技能水平也上升了一个新高度,为保障电站机电设备的安全、经济运行奠定了坚实的基础。”
应用系统时首先输入电站的背景资料、导入工程各类图文资料,重构数据库表[5](采用Creat Table语句),导入历史数据库相关数据,形成资源库;通过资源库组建问题库,组建过程中必须要有电站工程师的参与,共同完成问题库的组建,包括工程问题的提出、故障的虚拟设定、实际问题的获取等环节。然后依据问题库提出解决方案,方案主要来源为:查阅专业资料、专家建议、实际经验等。最终经过直接筛选,或聘请专家对某些难以确定的方案进行审议,或经过多方探讨确定最优方案,形成专家库。
5 结 语
(1)该系统的成功开发不仅填补了国内农村水电站计算机监控专门化培训软件的空白,而且也是水电站计算机监控技术培训领域的一种创新。
(2)该系统所具有的通用性、可拓展性和开放性可以满足不同水电站的培训以及学校的教学需求。
(3)对该系统的研究进行综述,为以后同类产品的开发提供很好的借鉴,同时有利于在总结中提升开发技术,为以后的继续研究创造条件。
[1]浙江省水电管理中心.浙江省水电发展今后五年工作思路和二OO八年工作任务[J].浙江水利科技,2008(2):1-7.
[2]张仁贡.浙江省农村水电站更新改造运作机制的研究 [R].杭州:浙江同济科技职业学院,2009.
[3]徐金寿,张仁贡.水电站计算机监控技术与应用[M].浙江科学技术出版社,2007.
[4]李天科.以人为本的人机界面设计思想 [J].计算机工程与设计,2005,26(5):1 228-1 229.
[5]李建中,王珊.数据库系统原理[M].北京:电子工业出版社,1998.
[6]徐金寿.水电站计算机监控工程案例资源库系统的开发与应用[J].水利水电技术,2009,40(3):55-58.