关键词:核电站;N一层体系结构;概率安全分析;可靠性数据
Application of.NET technique in the invalid report system of nuclear power plant equipment
XU Li ,ZHENG Wei,LI He ,HAo Bao—shui ,WANG Qi
(1.Beijing Information Technology Institute,Beijing 100085,China;
2.Guang Dong Dayabay Nuclear Power Station,Shenzhen of Guangdong Prov.518124,China;
3.China Istitute of Atomic Energy,Beijing 102413,China)
Abstract:The paper gives a description to the design of an invalid report system of nuclearpower station equipment based upon.NET.This system possesses the characteristicsof easy expansion and lower cost of maintenance due to the application developed frommodule,and furthermore improves the efficiency for the collection of the running data ofnuclear power plant devices and the statistic analysis,as well as the administrative levelof nuclear safety.
Keywords:nuclear power plant;N—leve lsystem structure;probability safety assessment;reliable data
由于核事故后果的严重性,各国的核能开发无不把核安全放在首位。根据我国的核安全法规,对不同核设施的建造和运行实行严格的许可证制度,核电站的选址、设计建造、运行直到退役均置于国家核安全当局的严格监督管理之下[1]。美国三里岛核电站事故后,概率安全分析(probability safety assessment一PSA)方法得到了广泛应用。随着PSA 技术在核电站的深入应用,涌现出Living PSA、Risk Monitor、RCM (Reliability Centred Maintenance)等PSA应用研究成果。Living PSA是在PSA的基础上,及时反映核电站当前设计及运行的特征和参数的一种PSA研究[2]。当核电站运行一段时间以后,原来的PSA模型中使用的可靠性数据需要根据积累的设备失效记录进行相应的更新。为了保证核电站运行期内的各种信息的完整性和可追溯性,避免重复劳动,节约人力资源,提高工作效率及核安全管理水平,我们根据以往为PSA研究中做可靠性数据采集报告的经验,采用现代计算机技术、数据库技术和网络通讯技术来研究开发设备失效报告系统,从而改进以往的设备运行可靠性数据采集、存储、分析及传输方式。
目前我国核电站的企业信息网,由于受当时软件技术的限制,很难解决异质系统间的通信问题,实现真正意义上的网络信息共享,形成了若干个数据孤岛。
. NET是微软针对未来互联网推出的一个设计架构。这项技术,实现了为不同的环境和设备开发应用程序,克服了软件行业的一个最大的难题[3]:在以不同语言、为不同环境编写的应用程序和设备之间进行无缝数据交换。因此,使用.NET技术开发“设备失效报告系统”,可以更有效地利用网络资源,避免数据孤岛,实现网络信息高度共享。
1 系统设计目标
设备失效报告系统是基于核电站内部网络的分布式数据库应用系统,主要目的是快速而准确地为PSA提供设备可靠性参数,并生成可靠性数据采集报告所需的报表。同时,为核电站的安全评价、预防性维修、事故预测、备品备件优化管理等活动提供数据。
该系统由设备管理、运行管理、可靠性数据统计、可靠性参数计算四大功能模块组成,其中:
设备管理模块:主要完成设备类信息的维护与查询,设备类失效模式维护与查询,定期试验(简称PT)规程维护与查询,设备维护与查询,电站系统信息查询等。由于电站设备的可靠性参数计算是按设备类进行的,设备类信息是系统最基础的数据。
运行管理模块:主要完成操作员日志数据日常维护与查询,定期试验数据维护与查询,24h事件描述查询与维护,按要求下载操作员日志报表、定期试验报表和24 h事件报表,以便加入到可靠性报告中。该模块管理的数据是进行可靠性数据统计的原始数据。
可靠性数据统计模块:主要根据操作员日志、定期试验和24 h事件,定期将设备的运行数据换算为设备类的年度累计可靠性数据。统计的设备可靠性数据分别是:设备类年度累计运行小时数、设备类年度累计需求次数、设备类年度累计运行失效次数、设备类年度累计需求失效次数,并把统计结果保存到数据库中,供生成设备类失效趋势图及计算可靠性参数时用。
可靠性参数模块:在可靠性工程中,可靠性参数有两类统计推断方法,即传统的统计推断方法和贝叶斯方法。本模块提供根据特有数据的特征及专家意见,自动或手动选取合适的估算设备类各故障模式下运行失效率和需求失效概率的方法,并把计算结果保存到数据库中,供以后查询、浏览用;同时提供按设备类生成可靠性报告所需统计报表功能。生成的报表有:失效模式清单、可靠性数据统计结果、可靠性数据综合表、先验数据表、Bayes计算结果、经典计算结果。
2 系统结构
该系统实施中采用了N一层体系结构,系统结构如图1所示。
表现层为应用客户端部分,它负责与用户进行交互。该层包括设备管理模块、运行管理模块、可靠性数据统计模块和可靠性参数模块的界面。表现层的作用只是一个对输入的浅处理,也就是只处理一些有效性规则,输人事件的描述。具体的插入等操作,是由业务逻辑层中的对象来处理的。
业务层也被称为中间层。在这一层,把复杂的业务关系,细分为多项功能单一的服务,每项服务都可执行一项特殊任务,这些服务可以用相对独立的服务组件来实现其功能。通过分布这些组件,可以平衡数据处理负载,协调逻辑关系,调整业务规模和规则。这一层可部署在网络的任何地方。在该系统中,我们把业务层又细划出逻辑层和数据访问层。
逻辑层主要包括如下组件:
1)LOGICBASE:业务层所有对象的基类,在此类中提供了一个数据访问层对象,一个连接字符串变量,以及一个DataSet对象,此对象作为中间层数据存储对象,在未提交到数据库之前,所有对数据的增、删、改操作结果都将存储在此中间层对象中,提交数据更新后,再进行与数据库的接连。这样可在很大程度降低数据库服务器负荷,更多地利用客户端计算机资源。
2)EQUIPGROUP:封装了所有关于设备类的操作。几乎整个程序的所有功能模块都有使用到此类的地方。
3)EQUIPMENTL:封装了所有关于设备数据的操作。
4)EVENTLIST:封装了所有关于24h事问件信息的操作。
5)EXPER:封装了所有对于定期试验的操作。
6)OPERATORLOG:封装所有对于操作员日志的操作。
7)PTRULEL:封装所有关于PT规程的操作。
8)Statistics:封装所有关于统计操作的代码。
9)ToExcel:封装所有对于Excel文件的输出操作,为输出操作员日志、24 h事件、定期试验数据等提供支持。
数据访问层完成与数据库的交互。此层中只包含一个组件SQLSERVER,它封装了所有对于SQL Server数据库的访问,包括填充DataSet,执行特定的存储过程,将对数据的修改更新到数据库等。
数据层是后台数据库。本系统的后台数据库是SQL Server数据库。
将独立的应用分离成不同的层或者部分,
可以增加应用的可扩展性,并且减少整个应用的复杂性[4]。使得系统具有易扩展、低维护成本的特点。
3 软件开发
该数据库应用系统使用Visual Studio. NET2003为开发工具,C#(读作C Sharp)为编程语言。
Visual Studio .NET 是为建立.NETFramework应用而设的一个集成开发环境(IDE),它包含了很多关键技术,对于创建安全、可扩展和高可用性的web应用和web服务来说,它简化了开发、部署和维护过程。C#是从c/c++发展出来的,具有简单、现代、面向对象和类型安全机制等特征的新的编程语言,它结合了VB的高效率和C++强大的功能,使开发者快速、简单地为微软.NET平台建立解决方案。
3.1 开发方法
软件开发采用了基于组件的开发方法,即以一组或多组组件为基础创建应用程序。它使传统的面向对象提高到一个新的层次,在一个组件中实现一个服务,提高了组件的可重用及易维护性。而Visual Studio.NET集成开发环境提供了丰富的工具支持.NET Framework组件的开发,使组件的开发变得非常容易。
3.2 软件设计中的关键技术
1)逻辑层对象的基类。由于系统所有逻辑层对象,都要使用数据访问层对象及数据集对象DataSet,如果把定义数据访问层对象和传递连接字符串统一放在一个基类中,则整个系统的逻辑结构的可扩展性会大大增强,因此,在设计逻辑层时,编写了一个公共的基类对象,主要程序如下:
public abstract class LogicBase:System.ComponentM ode1.Component
{//定义基类为抽象类,不可以直接实例化此类
protected SQLSERVER dataSource;//保护类型的数据访问层对象,这样继承此类的子类也可以访问这个保护成员。
private static string strConn;//私有静态成员,用来保存连接字符串。
protected DataSet mData//保护成员,此成员是逻辑中用来保存中间层数据的数据集对象。
public DataSet LDATASET//公有方法,此方法返回对数据集的引用
{ . . }
public static string ConnectionString //公有静态属性,通过此属性可以访问用于保存连接字符串的私有变量strCon
{ . . }
public LogicBase()
{//基类的构造函数,创建数据库连接对象,并实例化数据集对象
dataSource— new SQLSERVER (str—Conn);
this.mData=new DataSet(); }
}
保存数据连接字符串的变量被定义为静态,这是因为无论创建多少个继承基类的子类,都将使用同一个连接字符串,而且这样做也方便在程序启动时及数据库配置模块时,进行数据库连接字符串的设置。
2)设备类失效次数的年度趋势图设计。在这里使用了一个名为Infragistics NetAdvan—tage的第三方组件,它专门提供了一个win—Chart组件,可以完美地显示图表,而且支持. NET里的数据绑定。这个控件的设置基本是向导方式,使用非常简单。
3)在数据录入时及数据统计计算前,使用数据有效性校验可保证数据存储及统计的准确性。例如,在添加操作员日志及从其中统计可靠性数据时,都先检查日志中可能出现的记录错误。如在记录中同一个设备出现连续两次都是启动或都是停止的情况,说明记录有错误,这时系统会自动提醒用户。
4)数据库存在检查。如果服务器没有启动,或是服务器位置有变,应该在程序启动时给予用户提示。数据库的启动检查的代码放置在主窗体的加载事件中。由于在检查时,要经过10s的超时检查,在此期间又不能让程序处于未响应状态,所以在此处创建了一个新的线程,来进行数据库连接的检查。
3.3 开发环境
1)硬件要求。与Internet相联的计算机若干台,每台计算机的最低配置:Pentium II类处理器,450 MHz;256 MB物理内存;安装驱动器上至少3.5GB空余空间。
2)软件要求。Windows2000或WindowsXP;Visual Studio.NET专业版;SQL Server2000。
4 应用与结论
可靠性设备失效报告系统是建立在信息技术基础上,以系统化的管理思想,为核电站管理人员提供电站运行期间的设备可靠性数据管理平台。该系统不仅可以提供设备的运行历史记录和原始特性参数,还可以提供用于核电站的PSA分析的设备可靠性参数;不仅能快速、准确地为核电站设备可靠性数据采集报告生成数据报表,还可根据设备失效趋势分析结果,指导核电站的核安全管理。
用该系统对某核电站循环水系统(CRF)泵类19970101/2001 1231的历史运行数据进行统计计算,部分计算结果见图2和图3所示。
参考文献:
[1]孙造占,郁祖盛.数据库系统在核安全中的应用前景[J] 核科学与工程,1998(3).
[2]Development of M eth0d010gies for Optim ization of Surveillance Testing and M aintenance of Safety Related Equipment at NPPs[-z] IAEA Working Material,Vienna,A ustria,1997.
[3][美]微软公司,著.杨志鹃,李朋朋,等译.用VisualBasic.NET和Visual C#.NET开发XML Web服务与服务器组件[M].北京:清华大学出版社,2003:2—10.
[4]程晓琳,宋苗云,等编著.Visual Basic.NET数据库高级教程[M].北京:清华大学出版社,2004:296—325.
[5](美)阿奇(Archer,T.).马朝晖,译.C# 技术揭秘(第二版)[M].北京:机械工业出版社,2004.