赵金婵,后 接,刘 烨,徐海霞,赖 伟,李炳营
(1.中国科学院上海应用物理研究所 嘉定园区,上海 201800;2.中国科学院大学,北京 100049)
反应堆仪控系统由专门的控制系统和各类复杂的测量仪表构成,测量仪表负责基本参数的监测和采集,控制系统负责数据的收集,分析和可视化。控制系统对反应堆工况的调节,联合操作员的专业操作,保证了反应堆在非正常工况甚至故障的情况下能安全稳定运行。其为反应堆的“中枢神经系统”[1]。反应堆仪控系统的点数较多,以AP1000为例,单元机组安全级平台中开关量、模拟输入输出及设备接口点约3500点,非安全级各类设备接口约 14 000 点[2]。再加上硬件平台与软件信息紧密相关的特点,给实际工程管理中带来了很多不便。在反应堆仪控系统的工程管理中有必要建立便于使用的数据库系统进行项目管理。
当今国内外都极其重视核电厂数据库的建立。如日本核情报信息中心、美国核电运行研究所等,都建立了核电运行信息系统,实现了核电站的运行经验反馈。国内也开展过相关的研究,如全寿期电缆敷设数据库、CRP1000核电站NC-DCS平台数据库、核电厂热交换器信息管理系统、核电厂D-RAP数据库等[3-6],为核电厂数据管理提出了方案。本文以诸多反应堆数据库的研究成果为基础,以TMSR-SF0(thorium molten salt reactor nuclear energy system,SF0)项目为依托,结合控制系统内部复杂的结构以及大量的输入输出接口信号数据本身相关性的特点,把相互关联的软硬件信息进行整理与结合,在关系型数据库上开展仪控系统工程数据管理平台的设计研究,通过计算机软件技术完成系统开发。
缩比仿真堆(TMSR-SF0)是以10 MW固态燃料钍基熔盐实验堆(TMSR-SF1)为原型进行1∶3缩比的实验装置,主要开展与TMSR-SF1相关的设计验证实验[7]。反应堆集散控制系统(digital control system,DCS)集成了反应堆的各功能模块,为工程人员的操作和维护提供了统一的界面[8]。其架构设计与TMSR-SF1相同如图1所示,以实物信号为基础,辅以部分仿真信号,集成实现TMSR-SF1的仪控仿真。
图1 TMSR-SF0 仪控系统总体结构
TMSR-SF0的仪控系统涉及现场设备层、过程控制层及监控管理层的所有硬件设备及软件设计[9]。其中硬件平台体系由主控制器、并行工业总线、智能型I/O单元组成。各功能单元通过微处理器,独立进行数据采集和处理,产生数据。其软件部分由操作系统、通信接口程序、功能板卡驱动程序等周期性的执行用户应用软件[10]。其中监控管理层采用了基于EPICS(experimental physics and industrial control system)的软件架构,通过人机交互界面对被控设备的参数信息进行监测和控制、运行模式管理、运行参数优化、数据的存档、报警处理等[11]。由高速并行总线完成主控制单元和机箱内智能型I/O板卡间的数据交换。
仿真堆仪控系统总点数约3000点,比实际反应堆仪控系统而言规模较小,但二者拥有相似的功能和架构。硬件连接与信号关系如图2所示,驱动信号、温度信号、压力信号、流量信号由现场设备层产生,通过缆线连接传输到本地设备柜,或由接线箱传送给子系统DCS控制柜中,其中有部分的现场测试信号,按照功能不同直接连接到不同DCS控制柜上。全系统的信号通讯复杂,交织成网状,一个设备信号中常常有多个信号线汇总并连接到DCS控制柜。DCS机柜内部由许多不同类型的功能模块组成,一个功能模块对应一个子卡,一个子卡有不同的通道,这些通道连接着缆线,传输信号变量,得以实现硬件缆线与控制柜接口的关联关系。DCS控制柜对现场设备信号进行逻辑处理,由监控层监测运行状态、控制启动停止和维护功能[12]。操作员由EPICS提供的友好界面访问控制系统的所有参数[13]。
(1)反应堆各子系统设备的安全运行保障了反应堆的安全可靠性。反应堆仪控系统包括数据的测试元件,电气元件,电缆线等。各种参数信号通过电气元件的采集,由设备的缆线进行传输,数据的变化会直接影响到下一级的数据处理。反应堆各设备系统的数据是底层设备采集信息的主要来源,包括:设备清单、设计图表、测试数据、实验数据、定值管理数据等。各子系统设备种类较多,产生的信号包括数字信号,模拟信号,开关量等不同类型的信息。只有对这些数据进行合理的分类、处理和分析,才能为系统的安全可靠运行提供有效的保障。建立合理设备管理平台,来对仪控系统的数据进行底层的多方面的质量鉴定,保障系统能够在性能、功能和适应环境方面符合要求。
图2 仪控系统缆线与信号关系
(2)由于数字化仪控技术采用微处理器及配套的软件和输入输出组件等,经过逻辑设计将硬件和软件联系起来共同实现预设功能。这种复杂的处理方式会产生大量相互关联的软硬件信息[14]。并通过不同的形式存储在文件或者程序中。在使用过程中,工程人员往往需要查阅大量的电子表格。由于数据量大,数据关系复杂,增加了人因出错的概率。在工程的设计、安装、集成、测试、调试、分析中这些数据的可靠性要求极高,只有进行合理的分类管理,才能提高工程管理的效率。
(3)随着时间的推移,设备的运行工况也会日益下降,工程人员在纠错和配置过程中不可避免的会出现误操作等。强化仪控系统设备的故障管理,在故障发生、故障维修和维修结果确认几方面进行故障处理的流程监督,保证故障的及时处理,确保硬件设备的高效运作,也是保证系统安全运行的重要保障。
(4)为评价仪控系统在设计、调试及安装运行阶段是否符合既定标准,往往需要对不同时期产生的设计图、安装图、电路设计、原理设计、明细表等进行更新。这些文件大多是文件或者图片方式存储,并包含有不同时期的版本信息,如果管理不当会造成文件的丢失、冗余或者不同步的问题,对这些数据的高效管理能够提高工程人员在查阅文档时的效率。
(5)在仪控系统的安全监控及故障维护过程中涉及的人员较多。往往由不同的人员监控管理某一模块的数据内容,而对其它数据没有操作的权限。例如,设计人员进行图纸的设计并负责版本管理,站点工程师负责某站点数据的维护,维修人员负责故障信息管理。设计合理的用户及权限管理可以提高系统的安全运行,使数据控制在合理的使用范围内。
根据TMSR-SF0仪控系统的结构及运行原理,在不同阶段不同用户的管理需求,将软硬件数据及文件关联起来,设计合理的数据库并通过界面实现相应的功能,对整个仪控系统数据的科学管理有积极的作用。
根据需求分析设计数据库系统的管理功能,包括仪控系统数据管理、软硬件信息查询、故障维修管理、系统文件管理和用户信息管理几方面。
(1)仪控系统数据管理:把不同类型的数据按照标签分类管理,通过关系表的形式显示,具备操作权限的管理人员根据标签选择数据类型,点击相关按钮对数据进行增加、修改、删除、查询等操作。
(2)软硬件信息查询:从控制柜信息、硬件连接信息、信号信息3个方面切入。控制柜信息查询反映硬件连接与软件信号的对应关系,用户通过选择控制柜→板卡类型→通道号→设备编码→设备详情从而实现软硬件信息一体化查询的显示机制。硬件连接查询反映现场设备与控制柜的缆线连接,以及所经过的接线箱或本地设备柜信息。信号信息是软件信息部分,统计数据处理、数据日志、数据存储、数据报警、仪控系统自诊断和大屏幕显示信息等。并对查询的详细信息实现打印功能。
(3)故障维修管理:从故障的分类、故障的记录、故障维修及维修确认方面展开。具备权限的工程人员对系统故障进行分类管理,增加、修改、删除分类标签。记录故障信息时选择分类、记录故障的时间、故障描述等并提交,在维修之前可以对描述进行修改操作。维修人员查看故障列表,记录维修结果、维修时间等信息等待管理员确认。管理员对维修单进行审核并提交确认信息。
(4)系统文件管理:主要包括权限用户通过新建文件夹进行分类管理,并上传相关设计文件,记录文件的版本号,文件详情信息。选择需要共享的文件进行共享,文件显示在共享文件中。
(5)用户信息管理:是管理员对用户进行管理,包括对用户的基本信息管理,用户权限的设置、分配与修改,用户操作日志的查询和删除等,监管系统的使用情况。通过用户信息管理保证系统在安全合理的范围内使用。
数据库的概念设计是把现实世界的信息抽象化,存储在数据库中。通过对数据进行合理的建模,设计出真实的,充分反映现实和数据之间联系的,易于理解,易于更改,易于转换的模型。数据关系模型是应用设计的重要环节,对上层应用开发起着关键作用。
在TMSR-SF0设计阶段把控制系统相关的信息收集起来。硬件连接包括现场设备与接线箱、本地机柜、控制柜连接,因此与硬件连接相关的数据包括设备信息表、控制柜接线表、接线箱表、本地机柜表等,并以设备编码作为外键关联;设备信号最终连接到DCS控制柜,控制柜对设备信号进行逻辑处理,提供给工程师站、操作员站、主控室,因此与信号相关的数据包括控制柜信号表、控制柜测点信号表、EPICS信号表、屏幕显示信息等,信号通过信号变量名作为外键关联;通过分析数据之间的关系得到主要数据表的关系图。如图3所示。
图3 数据库表关系
逻辑结构设计是将概念结构设计阶段完成的概念模型,转换成能被选定的数据库管理系统(DBMS)支持的数据模型,把关系图转化成具体的表,把不同的参数转化为不同的属性列存储在数据库中,实现把电子表格数据转化到关系数据库的转换,并通过完整性约束保证数据的完整性和一致性。经过分析和整理得到数据库中主要存储见表1,包括基础数据表、硬件连接表、信号表、故障记录表、文件列表、用户表、权限表等。
系统采用流行的B/S软件开发结构,开发环境采用Windows10操作系统,以PHP+MySQL+Apache作为开发平台,包括数据模型的建立,数据前后端的传输及处理,视图层显示的设计。系统的总体开发架构如图4所示。
概要设计阶段完成功能模块数据接口类的设计。系统采用典型的MVC模式的开发框架thinkPHP,按照前后端分离方式进行程序设计,程序设计原理图如图5所示。核心思想是前端页面通过Ajax调用后端的API并使用Json数据进行交互。将功能模块化,实现了代码重用和功能扩展,提高系统的灵活性、复用性和可维护性。把系统的开发按模块展开,每个功能模块包含模型层、控制器层、视图层的设计。
表1 DCS数据库相关
图4 总体开发架构
图5 前后端分离模式
在模型层根据数据库表建立模型,控制器层设计前端数据请求与数据库模型层的交互操作,完成数据的获取与传递,是系统的后端设计。关系到系统的稳定性,数据的一致性和错误处理的规范。视图层设计界面的展示效果和与控制器进行交互的数据接口,是系统的前端设计。关系到界面的美观,易用和流畅性。
按照框架开发的基本原理,在不同层完成相应的处理。
模型层建立数据模型,完成字段的验证功能,使用$_validate验证字段的基本信息,约束字段的长度等。写Dtime()方法生成当前时间,并通过自动完成$_auto实现自动创建功能。通过继承父类RelationModel实现关联模型的查询定义,在子类中通过定义$_link字段获取相关数据。
控制器层是模型层和视图层的中间层,由控制器层接收前端传递的数据,选择数据模型完成基本业务的操作。数据交互根据功能主要从数据的新增,修改,删除和查询展开,包括add,edit,delete等操作方法的编写。在数据查询时,通过获取前端关键字信息$keyword=I(“get.keyword”)作为数据查询的条件,在数据库中进行筛选,调用分页类Page()进行分页显示;在新增数据时,通过创建数组$data=array();接收前端数据,创建模型D(‘Model’)选择数据表,调用create()方法完成数据库中数据的创建,完成数据的添加;在修改处理时,首先通过传递当前记录的编号$id=I(′get.id′,″);获取当前记录信息,对修改以后的数据调用save()进行保存;在数据删除时,系统跳出弹窗提醒用户的操作并确认删除,进行数据的软删除;在操作时进行权限验证,对于不符合操作权限的用户进行提示。在数据交互时调用数据模型进行字段验证,验证失败的字段会提示相应的信息。如果通过验证并完成操作则提示操作成功。
视图层使用Jquery函数库定义界面显示,接收用户的操作请求,调用AJAX异步传输方式,使用POST或者GET方式与后端进行数据传输。经过数据模型的验证,对于不符合规则的数据弹出提示框。如果校验成功,完成封装,把数据封装成数据对象传递给逻辑处理层进行数据的处理。并把获取到的数据展示在前端界面。
按照系统的功能实现,设计整体的功能测试方案,主要包括用户管理,基础数据管理,软硬件信号查询,故障维修及系统设计文件管理的测试,见表2。其中工程人员泛指具有系统使用权限的人员,其他用户角色由管理员设置并分配相应的权限。系统的测试主要包括权限内用户的操作使用和非权限用户的操作使用,分别进行测试。
表2 系统功能测试方案设计
以控制柜的软硬件信息查询为例展示系统的操作使用情况。用户登录系统,点击导航栏控制系统进入控制柜信息查询管理模块,浏览控制柜信息,点击控制柜编号查询时,弹窗显示控制柜模型的矢量图,如图6所示。进一步点击图形模块的编号,弹窗显示模块的通道信息,点击通道的设备码,弹窗显示设备的连接及信号详情。
图6 控制柜信息效果
在导航栏选择硬件连接查询,并点击主界查询设备的缆线连接详情,查询结果如图7所示。
图7 硬件连接查询效果
在导航栏选择信号查询,主界面显示信号的基本属性字段如图8所示,点击详情按钮查看全部字段描述。
图8 信号信息效果
测试时首先对各个功能模块进行单独测试,记录测试过程中出现的问题,及时进行修改和调整。模块的独立测试通过后,再进行整体测试,检查系统是否稳定运行不出现异常情况。经过多次操作,系统完成相应功能并稳定运行。
兼容性是影响用户体验时的关键因素之一,从分辨率的兼容性和浏览器的兼容性两方面开展。本系统选择在windows操作系统下的Firefox,Chrome,IE等常用的浏览器进行测试,打开相同的界面对比分析功能和界面显示都能良好处理,并且对分辨率有自适应性,符合用户的使用规范。
本文首先分析了TMSR-SF0仪控系统的结构特点和数据之间的关联关系,为了反应堆仪控系统数据的便捷管理,本文结合了仪控系统缆线连接复杂交织成网状并与软件信号紧密关联的特点,从几个不同的角度探讨了核电厂仪控系统的工程管理需求。其次,设计了用户管理,基础数据管理,软硬件信号查询,故障及维修记录,设计文件管理几个功能模块。从功能设计出发并根据数据的关联关系,设计了数据库的模型,并应用计算机技术完成了系统的开发。最后,通过测试数据管理平台的功能,实践验证该系统解决了工程管理中复杂关联的数据查找时效率低下的问题,降低了数据的冗余,提高了资源的利用,为工程人员的管理带来的便捷。今后仪控系统投入运行将产生大量数据,种类也更加繁多,数据库管理系统需要进一步改进和完善。