法律状态公告日
法律状态信息
法律状态
2020-04-14
授权
授权
2019-03-26
实质审查的生效 IPC(主分类):G05B19/418 申请日:20181207
实质审查的生效
2019-03-01
公开
公开
技术领域
本发明属于工业控制系统信息安全技术领域,具体涉及一种基于FPGA虚拟DCS的工业控制系统信息安全实现方法。
背景技术
工业控制系统,包括DCS(分布式控制系统)、SCADA(数据采集与监控系统)、PLC(可编程逻辑控制器)等,广泛应用于国民经济各行业各领,如电力、核能、水利、石化、冶金、交通、医药等,是国家诸多工业和社会基础设施的运行控制中枢,与国家整体安全战略息息相关。随着工业自动化、运行数字化和管理信息化的高度融合,工业控制系统走上了开放式互联网的技术发展应用快车道,大量采用了通用的处理器技术、网络通信技术、操作系统技术等。与此同时,工业控制系统面临安全漏洞不断增多、安全威胁加速渗透、攻击手段复杂多样等严峻挑战。
现有技术中,所有的工业控制系统信息安全的实现方法,均是从计算机网络信息科学技术成果角度出发,采取划分边界、隔离、认证授权、物理防护、配置管理等方法,设计安装各种网关、网闸、工业防火墙、杀毒软件等硬软件设备等来应对。所以迫切需要一种从工业控制系统内部研发成果角度出发的交叉性技术实现方法,根本上解决工业控制系统信息安全面临的问题。
工业控制系统中的DCS,除了具有数量庞大的传感器执行器接口和网络化的人机界面之外,还具有在分布式处理器中运行的复杂的逻辑控制功能,广泛应用在设备集约的流程工业大型工厂之中,如核电厂、火电厂、石化厂、钢铁厂等。由于其产业管理和控制功能集约化,实现工业控制系统信息安全更具有现实意义和典型性,也是采用新方法的突破口。
虚拟DCS(Virtual DCS),是相对于真实DCS(Real DCS)而言的,虚拟DCS是要在非DCS计算机系统上再现DCS的计算机系统,具体地说,就是要在非DCS系统的通用平台上,尽可能真实地由软件再现建立在实时工业平台上的DCS系统(冷杉.论虚拟分散控制系统技术[J].中国电力,2003,36(2):53-56.)。虚拟DCS的特点,是控制参数和算法来源于从DCS工程师站下载的组态文件,使用与真实DCS系统相同的控制算法、模块、时间片、位号等,能够随着真实DCS系统的修改同步进行更新,能完成复杂的仿真控制应用功能,虚拟DCS的功能逼真度和可信度很高。此前虚拟DCS多建立在Windows平台之上,应用于设计验证和运行操作人员培训。
FPGA是“现场可编程逻辑门阵列”的简称,FPGA通过配置可编程的逻辑组件及端口接线等资源来实现组合逻辑功能及时序逻辑功能,是以最终烧入全硬件方式实现接口协议、数据处理、控制逻辑等完整的功能模块,从而解决了CPU技术必须包含操作系统及应用软件的不足。对于相同的应用需求,采用FPGA来实现功能模块的复杂度比采用CPU来实现功能模块复杂度要低,从而降低了出现软件共模故障的概率及验证和确认的困难程度。
目前工业控制系统特别是作为流程工业大型工厂控制核心的分布式控制系统DCS系统,大多采用基于CPU和软件的实现模式,增加了操作系统和应用软件等多个中间层次,使得当工业控制系统网络被攻击、被误导、被阻断时,或当工业控制系统和网络出现软件共模故障时,运行操作人员无法进行真伪判定。
发明内容
本发明解决现有技术中存在的上述技术问题,提供一种基于FPGA虚拟DCS的工业控制系统信息安全实现方法。
为解决上述问题,本发明的技术方案如下:
一种基于FPGA虚拟DCS的工业控制系统信息安全实现方法,包括以下步骤:
步骤1,按照虚拟DCS系统应用的要求,所有的算法块功能块等都基本由FPGA芯片组实现,成为实体上的大规模数字逻辑电路集合;
步骤2,FPGA芯片上的虚拟DCS与真实DCS同步并行进行计算;
步骤3,判断FPGA芯片上虚拟DCS与真实DCS控制系统运行结果是否一致:
运行结果不一致时,判定系统不安全;
运行结果一致时,判定系统安全。
由于FPGA技术运算的机理采用数据查询表的方式执行,并不直接包含相对“高层”、“通用”的程序语言,因此网络黑客攻击手段会被FPGA芯片识别,从而拒绝执行。FPGA平台可以通过硬件开关等措施提高系统被随意侵入的门槛,因此FPGA相对于通用的CPU技术有更好的安全性。
FPGA通过配置可编程的逻辑组件及互联线等资源来实现组合逻辑功能及时序逻辑功能,以全硬件方式实现接口协议、数据处理、控制逻辑等完整的功能模块。由于DCS具有在分布式处理器中运行的复杂的逻辑控制功能,在FPGA平台上运行经过相关虚拟模块开发和软件编译的虚拟DCS系统,完全再现DCS的设计功能,可以获得内生主动式安全监视模块的正确参照结果,能够对DCS的网络安全进行监控与保障。
优选地,所述步骤1之前还包括预备步骤,具体包括:
步骤0.1,将真实DCS编译成虚拟DCS软件系统;
步骤0.2,根据FPGA等专用集成电路设计环境要求,编制相关软件,实施虚拟DCS编译。
优选地,所述步骤0.1中,虚拟DCS的额控制参数、算法和关联等来源于从DCS工程师站下载的组态文件,或根据DCS控制设计图独立绘制组态图及编码等,使用与真实DCS系统相同的控制算法、模块、接口、时间片、位号等。
优选地,所述步骤0.2中,选择虚拟DCS软件系统中对于工业控制安全最为关键的分布式处理器或控制功能单元,实施虚拟DCS编译。
优选地,所述步骤1的具体包括:
步骤1.1,按照虚拟DCS控制应用的要求,FPGA开发环境上对算法库中的所有算法块接口进行统一定义,输入数据和输出数据寄存器长度根据具体的算法块自动调正,从而适用于不同的算法块,所有的算法块都基本由FPGA芯片实现,成为实体上的数字逻辑电路功能块;
步骤1.2,按照虚拟DCS控制应用的要求,对所有影响工业控制安全的最为关键的分布式处理器或一些控制功能单元取得编译结果,所有算法块功能块实例和关联计算都由FPGA芯片组实现,成为实体上的大规模数字逻辑电路集合。
优选地,所述步骤1中,对FPGA芯片上的虚拟DCS进行安全控制功能测试,观察其动作结果是否与真实DCS控制组态设计相一致。
优选地,所述步骤1中,根据安全运行控制要求,筛选出对安全运行极大影响的可能拒动点与误动点,在FPGA芯片上设置安全监视模块;所述安全监视模块用于判断FPGA芯片上虚拟DCS与真实DCS控制系统运行结果是否一致。
优选地,所述步骤3中,判定系统不安全时,报警并通知进入手动操作。
相对于现有技术,本发明的优点如下,
本发明提供了一种稳定可靠并且可最终信赖的基于FPGA硬件平台运行虚拟DCS的内生主动式网络安全实现方法;该方法能够对分布式控制系统DCS的网络安全进行监控与保障,当工业控制系统网络被攻击、被误导、被阻断,或当工业控制系统和网络出现软件共模故障,而运行操作人员无法进行真伪判定时,本发明提供的方法能够根据不受网络安全威胁的虚拟DCS的正确控制逻辑运算结果做出系统安全与否的判定。
附图说明
图1为本发明所述的基于FPGA的虚拟DCS工业控制系统信息安全实现方法流程图;
图2为3COMM控制器发电厂锅炉主燃料跳闸条件2组态图;
图3为基于FPGA平台的虚拟DCS软件程序对应的控制逻辑电路图;
图4为基于FPGA平台的虚拟DCS软件中算法模块DON程序的控制逻辑电路图。
具体实施方式
实施例1:
基于FPGA的虚拟DCS控制工业控制系统信息安全实现方法,其包括如下具体步骤:
第一步:将各种真实DCS编译成虚拟DCS软件系统,虚拟DCS的额控制参数、算法和关联等来源于从DCS工程师站下载的组态文件,或根据DCS控制设计图独立绘制组态图及编码等,使用与真实DCS系统相同的控制算法、模块、接口、时间片、位号等。
第二步:选择虚拟DCS软件系统中对于工业控制安全最为关键的分布式处理器或一些控制功能单元,根据FPGA等专用集成电路设计环境要求,编制相关软件,实施虚拟DCS编译。
第三步:按照虚拟DCS控制应用的要求,FPGA开发环境上对算法库中的所有算法块接口进行统一定义,输入数据和输出数据寄存器长度根据具体的算法块自动调正,从而适用于不同的算法块,所有的算法块都基本由FPGA芯片实现,成为实体上的数字逻辑电路功能块。
第四步,按照虚拟DCS控制应用的要求,对所有影响工业控制安全的最为关键的分布式处理器或一些控制功能单元取得编译结果,所有算法块功能块实例和关联计算都由FPGA芯片组实现,成为实体上的大规模数字逻辑电路集合。
第五步:对FPGA芯片上的虚拟DCS进行安全控制功能测试,观察其动作结果是否与真实DCS控制组态设计相一致。
第六步:根据安全运行控制要求,筛选出对安全运行极大影响的可能拒动点与误动点,在FPGA芯片上设置的安全监视模块。
第七步:FPGA芯片上的虚拟DCS与真实DCS同步并行进行计算。
第八步:安全监视模块判断FPGA芯片上虚拟DCS与真实DCS控制系统运行结果是否一致。
第九步:当安全监视模块判断FPGA芯片上虚拟DCS与真实DCS控制系统运行结果不一致时,判定系统不安全,报警并通知进入手动操作。
第十步:当安全监视模块判断FPGA芯片上虚拟DCS与真实DCS控制系统与运行结果一致时,判定系统安全。
实施例2:
如图1所示,本发明所述的基于FPGA的虚拟DCS工业控制系统网络安全实现方法,其实施步骤如下:
第一步:获取工业控制系统DCS的控制功能设计。
第二步:获取工业控制系统DCS的控制功能设计对应的DCS系统组态图,如图2,是3COMM控制器发电厂锅炉主燃料跳闸条件2组态图。
第三步:装载工业控制系统DCS系统组态图,实现DCS系统可运行。
第四步:实施虚拟DCS设计,获取虚拟DCS软件程序。
第五步:或实施DCS组态虚拟编译,获取虚拟DCS软件程序,与图2对应的虚拟DCS模块程序如下:
第六步:对虚拟DCS实施FPGA编译,获取基于FPGA平台的虚拟DCS软件程序如下:
第七步:生成基于FPGA平台的虚拟DCS软件程序对应的控制逻辑电路图,如图3。
第八步:生成基于FPGA平台的虚拟DCS软件中算法模块DON程序的控制逻辑电路图,如图4。
第九步:按照虚拟DCS系统应用的要求,所有的算法块功能块和关联信号连线等都由FPGA芯片组实现,成为实体上的大规模数字逻辑电路集合。
第十步:FPGA芯片上的虚拟DCS与真实DCS同步并行进行计算,如图1。
第十一步:安全监视模块判断FPGA芯片上虚拟DCS与真实DCS控制系统运行结果是否一致。
第十二步:当安全监视模块判断FPGA芯片上虚拟DCS与真实DCS控制系统运行结果不一致时,判定系统不安全,报警并通知进入手动操作。
第十三步:当安全监视模块判断FPGA芯片上虚拟DCS与真实DCS控制系统与运行结果一致时,判定系统安全。
需要说明的是上述实施例仅仅是本发明的较佳实施例,并没有用来限定本发明的保护范围,在上述基础上做出的等同替换或者替代均属于本发明的保护范围。
机译: 基于FPGA实现虚拟机操作的方法和装置
机译: 具有触摸屏的显示器的手动设备,其具有实现虚拟键盘的用户界面以由用户输入击键的能力,基于手动设备中的触摸屏的系统用户界面(UI),使用基于手动设备中拇指优化的触摸屏的IO(IU)。系统用户界面(UI)虚拟触发拇指进入由拇指驱动的虚拟用户界面信息系统的搜索,以选择在便携式设备的触摸屏显示器上显示的虚拟网页中的可选项目。具有显示触摸屏的手动设备,该触摸屏具有执行虚拟键盘以输入用户击键的能力。实现输入选择的方法用户在手持设备的触摸屏上显示的项目以及键盘用户虚拟界面与具有手动显示触摸屏的显示设备上的网页进行交互的方法
机译: 基于基于单个摄像头的三维图像分析的虚拟现实界面实现方法,基于基于单个摄像头的三维图像分析的虚拟现实界面实现设备