APP下载

核安全级仪控仿真系统的接口设计

2019-07-25张旭徐海燕王恺叶佩鑫彭浩刘全东

现代计算机 2019年17期
关键词:模拟机指令通讯

张旭,徐海燕,王恺,叶佩鑫,彭浩,刘全东

(中国核动力研究设计院核反应堆系统设计技术重点实验室,成都610213)

1 背景

核安全级仪控仿真系统(S-DCSFSS)是核电厂全范围模拟机(FSS)的重要组成部分,核安全级仪控仿真系统与全范围模拟机中的其他部分需要特定格式的接口进行数据或指令的交互。在接口的实现方式上,通常指令接口采用调用动态链接库(*.dll)的形式,数据接口采用共用数据点表的形式,与硬件的接口采用通过虚拟与实体的接口设备实现的形式。合理的接口设计将为全范围模拟机的调试与维护带来极大的便利。

2 核安全级仪控仿真系统接口的设计

核安全级仪控仿真系统接口包括核心部分与辅助部分的接口,如与调试软件的接口、与工程师站的接口;仿真系统的对外接口,如与全范围模拟机其他部分的接口、与虚拟测试装置的接口;仿真系统核心部分内部接口,如仿真数据及管理服务与虚拟控制站的接口、虚拟控制站与虚拟主控单元的接口、仿真控制站之间的接口。

2.1 与调试软件接口

调试软件作为仿真系统的人机界面,承担了机箱界面仿真模拟、项目运行状态管理、主控卡模式切换、工况保存与回调、设置仿真故障、超控仿真数据、数据赋值与查询监视等功能。调试软件与仿真系统的节口众多,包括连接仿真系统接口(Connect)、项目配置信息的数据接口(SelectProject)、主控卡状态设置接口(Set-Mode)、超控数据接口(SetOverwriteStatus)、设置故障接口(SetMalStatus)、保存和回调工况接口(SaveIC、Reset-IC)等。

2.2 与工程师站接口

工程师站是仿真系统进行算法编译下装、变量监视维护等功能的重要途径。在仿真系统的虚拟控制站与工程师站的通讯过程中,虚拟控制站作为服务端等待工程师站的连接。热备配置模式下,虚拟控制站包含的主从虚拟主控单元均需对应一个IP,即每个虚拟控制站会建立两个与工程师站的通讯服务端。每个虚拟控制站初始化时启动用于工程师站连接的Socket Server,包括运行模式的维护数据Server 及下装模式的文件传输Server。

图1 仿真系统与工程师站接口

(1)下装

下装是指,将逻辑算法、设备组态、参数变量等信息由上位机传输至下位机的过程。仿真系统的下装功能的主要作用是根据接收工程师站数据的主控卡槽位设置,将接收到的数据保存至对应目录下的相应文件。在下装功能实现方面,仿真系统需要与工程师站建立连接。该过程需要能够完成Socket 端口连接(Connect)或断开(Disconnect)、发送文件(SendFile)操作的接口。

(2)监视与维护强制

工程师站调用通讯库接口,通讯库连接仿真系统的维护端口,仿真系统作为服务端,工程师站作为客户端,建立Socket 连接。通讯库收集仿真系统数据并组包,发送给工程师站,工程师站对数据包进行解析,由此实现监视功能。在监视功能下,工程师站将强制数据组成强制数据包,发给通讯库,再由Socket 连接发送至仿真系统。具体实现过程涉及连接事件接口与数据事件函数接口。仿真系统接收工程师站维护端口连接事件函数,其主要作用是保存该连接的数据发送接口函数并设置维护数据接收事件函数。然后仿真系统接收工程师站数据事件函数,其主要作用是根据接收工程师站数据的虚拟主控单元的槽位设置,将接收到的数据拷贝至相应的虚拟COM 卡接收端口数据缓冲区内。由此实现强制功能。

2.3 与全范围模拟机其他部分的接口

核安全级仪控仿真系统是全范围模拟机的一部分,因为存在与全范围模拟机其他部分的众多接口。包括接收教控台仿真调度指令的接口、接收来自教控台操作指令的软件接口、与过程模型进行数据交互的接口、通过“虚拟-实体”转换接口装置与主控室的接口等。

(1)调度指令接口

仿真系统在全范围模拟机中由教控台发送调度指令。常用的调度指令包括:启动、运行、冻结、步进、停止。上述指令中,启动、运行、冻结、停止不需要参数,步进指令需要指定步进步长作为参数。

(2)软件接口

仿真系统与全范围模拟机其他部分的数据接口包括各种对数值的操作,具体包括设置变量值(SetVariableValue)、批量设置变量值(SetListValues)、获取变量值(GetVariableValue)、批量获取变量值(GetListValues)、保存工况(SaveIC)、重置工况(ResetIC)等。

图2 仿真系统与全范围模拟机其他部分接口

(3)数据接口

仿真系统与全范围模拟机中的过程模型的数据交互由双方共同维护的I/O 点表实现。仿真系统与过程模型按周期分别读写该I/O 点表,实现更新本方的输入值,并将本方最新的计算输出值送至对方。安全级仿真系统应送往非安全级仪控系统的数据通过网关站与非安全级仪控系统接口。

(4)硬件接口

仿真系统通过与仿真主控室接口,可提供更加真实的运行环境。仿真系统与主控室的后备盘(BUP)、远程停堆站(RSS)、大屏幕等实体部分应实现软硬件交互的接口。该接口既可实现软件向硬件的转接,将仿真系统的信息投送至实体电子信息处理设备(如显示至大屏幕),又可实现传送至简单的硬件电路(如点亮报警灯)。

仿真系统与硬件设备的接口可通过软硬件转换设备实现,如NI 公司的主控卡与I/O 卡组成的简单的系统。仿真系统通过驱动该系统的输出卡实现对实体设备产生输出信号,实体系统通过向该系统发送输入信号实现向仿真系统发出输入信号。

2.4 与虚拟测试装置接口

虚拟测试装置可与仿真系统进行数据交互,达到在实体DCS 搭建完成前即可进行组态软件检查、通道一致性检查等目的。虚拟测试装置要求可对仿真系统变量赋值、读取变量当前值、读取仿真系统设备组态信息(包括卡件选型、信号通道设置)、读取仿真系统信号属性配置信息。

为实现上述功能,核安全级仪控仿真系统与虚拟测试装置的接口包括设置变量值接口、获取设备组态信息接口(GetDeviceConfig)、获取设备状态接口(Get-DeviceStatus)、获取各站点信息接口(GetStations-Info)等。

图3 仿真系统与虚拟测试装置接口

2.5 半实物仿真系统中的接口

在仿真系统的半实物仿真中,一种应用是使用与真实控制系统一致的实体控制系统作为控制器,使用计算机软件来仿真过程模型[1];另一种应用是在完整控制系统未全部生产完成时,如DCS 系统只生产了部分机柜实体时,可通过仿真出其余机柜的方法建立完整的控制系统,进行完整的信号流,便于对组态软件功能的验证。半实物仿真系统中的接口与2.3 小节(4)中涉及的接口类似,本质上是一种计算机软件与实体控制器硬件系统的接口,不再赘述。

2.6 仿真系统核心部分内部接口

对于采用虚拟下位机方式构建的仿真系统,其数据管理调度核心、虚拟控制站、虚拟主控单元之间存在接口。基于虚拟下位机技术路线的仿真系统架构如图4 所示。

图4 仿真系统核心部分内部接口

仿真数据及管理服务是仿真系统核心部分的调度中心,提供仿真项目管理、变量管理、数据及功能接口等功能。虚拟控制站负责虚拟现场控制站的行为,为虚拟主控单元提供通讯服务,具体包括模拟各类实体DCS 中的板卡的行为和输入输出通讯等。虚拟主控单元以软件的形式实现了实体主控单元的基本功能、加入了仿真系统特有的功能,能够脱离下位机的运行环境对算法逻辑进行运算。

(1)仿真数据及管理服务与虚拟控制站的接口

虚拟控制站作为客户端,通过Socket 连接与仿真数据及管理服务进行通讯。发送数据包括I/O 输出数据、状态数据等内容,接收数据包括I/O 输入数据、仿真数据指令(数据操作、故障设置等)、仿真操作指令(运行、冻结等)、退出指令等。I/O 数据采用定周期的方式进行接收和发送。输入数据包含所有的I/O 输入数据,即AI 和DI 等。输出数据包含所有的I/O 输出数据以及所有的模拟设备状态信息,包括虚拟主控的模式、闭锁状态、故障状态,虚拟板卡的故障状态等数据。

(2)虚拟控制站与虚拟主控单元的接口

虚拟控制站与虚拟主控单元采用共享内存的方式进行数据和指令交互。虚拟控制站发送数据给虚拟主控单元时,虚拟主控单元接收指定槽位的数据,将指定槽位共享内存数据拷贝至指定数据缓冲区。虚拟控制站接收虚拟主控单元的数据时,虚拟主控单元发送指定槽位的数据,将指定数据缓冲区的数据拷贝至指定槽位共享内存。热备配置模式的虚拟主控单元进程使用同一块共享内存作为实时数据缓存。以此实现虚拟控制站与虚拟主控单元的接口。

(3)仿真控制站之间的接口

各个仿真控制站之间采用TCP/IP 的通讯方式,先启动的仿真控制站作为服务端,后启动的仿真控制站作为客户端,建立TCP/IP 连接,进而实现通讯。一个虚拟控制站与其他虚拟控制站的站间通讯数据由虚拟主控单元进行管理,通讯模块定周期接收输入数据,发送输出数据,无需对数据进行判断或者处理。

3 结语

合理的接口设计对于仿真系统的架构建立以及与全范围模拟机的其他部分的对接具有重要意义。仿真系统未来的扩展工作也与接口设计有重要关系,良好的接口设计增强了仿真系统的可扩展性,为未来仿真功能的完善建立了基础。

猜你喜欢

模拟机指令通讯
《茶叶通讯》编辑委员会
《茶叶通讯》简介
卡拉奇核电厂全范围模拟机设计管理
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
《单一形状固定循环指令G90车外圆仿真》教案设计
新机研制中总装装配指令策划研究
美空军要造歼-20高仿模拟机
关于ARM+FPGA组建PLC高速指令控制器的研究
模拟机教学分析系统的设计与实现
国内首个AR通讯应用浮出水面