一种基于云超实时仿真平台与硬件在环的实时决策方法转让专利

申请号 : CN201710233149.8

文献号 : CN106940533B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 戴文斌关新平

申请人 : 上海交通大学

摘要 :

本发明公开了一种基于云超实时仿真平台与硬件在环的实时决策方法,涉及一种工业自动化控制系统软件方法领域,包括读取输入值,将输入值写入第一控制器和第二控制器,第一控制器和第二控制器分别执行逻辑运算得到第一输出变量值和第二输出变量值,对比第二输出变量值与故障树,如果判断存在故障则强制向第一控制器写入第三输出变量值并进入下一步,如果判断不存在故障则直接进入下一步;判断第一输出变量值与第二输出变量值是否相同或者判断第三输出变量值与第二输出变量值是否相同,相同则返回起始步骤,不同则根据情况将第二输出变量值赋值为第一输出变量值或第三输出变量值,并返回起始步骤。

权利要求 :

1.一种基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,包括以下步骤:

步骤(100)读取输入值;

步骤(200)将步骤(100)中读取的所述输入值写入第一控制器的输入变量内存和第二控制器的输入变量内存;

步骤(300)根据步骤(200)中写入的所述输入值,所述第一控制器执行运算逻辑得到第一输出变量值,所述第二控制器执行运算逻辑得到第二输出变量值;

步骤(400)对比步骤(300)得到的所述第二输出变量值与故障树;

步骤(410)根据步骤(400)的对比结果判断是否存在故障:如果存在故障,则进入步骤(500),如果不存在故障,则进入步骤(600);

步骤(500)根据步骤(410)中的判断结果,强制向所述第一控制器写入第三输出变量值,并进入步骤(600);

步骤(600)根据步骤(410)比较所述第一输出变量值与所述第二输出变量值,或者根据步骤(500)比较所述第三输出变量值与所述第二输出变量值;

步骤(610)判断步骤(600)中的所述第一输出变量值与所述第二输出变量值是否相同,或者判断所述第三输出变量值与所述第二输出变量值是否相同:如果所述第一输出变量值与所述第二输出变量值相同,或者所述第三输出变量值与所述第二输出变量值相同,则返回步骤(100);如果所述第一输出变量值与所述第二输出变量值不同或者所述第三输出变量值与所述第二输出变量值不同,则进入步骤(700);

步骤(700)根据步骤(610)的判断结果,如果所述第一输出变量值与所述第二输出变量值不同,则将所述第一输出变量值复制到所述第二控制器中,并将所述第一输出变量值输送至执行器,则返回步骤(100);如果所述第三输出变量值与所述第二输出变量值不同,则将所述第三输出变量值复制到所述第二控制器中,并将所述第三输出变量值输送至执行器,则返回步骤(100);

所述第一控制器是工业控制器,所述第二控制器是虚拟控制器,所述第二控制器是云超实时仿真平台为所述第一控制器建立的虚拟控制器镜像。

2.如权利要求1所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述步骤(100)中的所述输入值是通过工业现场总线中读取的所有输入值,所述第一控制器和所述第二控制器同时读取所述输入值。

3.如权利要求2所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述第一控制器与所述第二控制器同时与输入设备建立闭环连接,且所述第一控制器与所述第二控制器定时读取所述输入值。

4.如权利要求1所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述步骤(300)中所述的运算逻辑为所述第一控制器的实际工作逻辑,所述第二控制器根据所述输入值运用所述运算逻辑对下一个或者多个更新周期进行模拟。

5.如权利要求1所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述步骤(410)中所述的故障包括造成系统停机、过程停止的问题。

6.如权利要求5所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述步骤(500)中向所述第一控制器写入第三输出变量值是实时进行的,通过所述云超实时仿真平台向所述第一控制器发送强制改写指令完成。

7.如权利要求1-6中任一项所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述决策方法基于的系统包括云超实时仿真平台、传感器与执行器、工业控制器和工业系统设备,所述云超实时仿真平台和所述工业控制器通过工业以太网连接,所述工业控制器和所述传感器与所述执行器通过工业现场总线连接,所述传感器与所述执行器连接至所述工业系统设备。

8.如权利要求7所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述云超实时仿真平台包括通讯模块,虚拟控制器运行栈和决策辅助管理器,通讯模块通过工业现场总线和传感器与执行器读取输入值,并将所述输入值写入虚拟控制器运行栈中;虚拟控制器运行栈包含一个或者多个虚拟控制器运行环境,每个虚拟控制器运行环境独立运行,完成处理所述输入值后,所述虚拟控制器将生成的所述第二输出变量值推送到决策辅助管理器;所述决策辅助管理器将收到的所述第二输出变量值与云超实时仿真平台数据库预先设定的故障树数据进行对比,根据对比结果来判断故障是否发生,所述决策辅助管理器从数据库中查找相应故障的解决方案并写回到工业控制器中。

9.如权利要求8所述的基于云超实时仿真平台与硬件在环的实时决策方法,其特征在于,所述系统开始部署工业自动化控制程序时,控制代码将同时被上传到所述工业控制器和所述虚拟控制器中。

说明书 :

一种基于云超实时仿真平台与硬件在环的实时决策方法

技术领域

[0001] 本发明涉及一种工业自动化控制系统软件方法,尤其是一种基于云超实时仿真平台与硬件在环的实时决策方法。

背景技术

[0002] 在工业自动化控制系统中,系统仿真多数遵循模型-视图-控制器模式(Model-View-Controller,MVC),模型指针对控制对象的物理特性描述与功能行为特征,在仿真过程中保存控制对象的状态;视图指用户可视化界面,在仿真过程显示模型状态,且允许用户输入参数并传递给控制器;控制器提供控制算法,响应用户操作更新算法参数。当控制算法发生改变时,改变的状态将被发送给模型。当模型收到请求后,通过物理模型对状态改变计算得到更新的行为特征,并返回给控制器。
[0003] 系统仿真方法主要有闭环仿真与在环仿真两种方式。在闭环仿真方式中,模型与控制器均为软件模拟,通过部署在计算机、服务器或者云端实现实时或超实时仿真。在环仿真则是通过部署控制器到相应的物理设备上,通过以太网、USB或者工业现场总线方式实现与运行在计算机上的模型进行数据交换。
[0004] 目前的工业自动化控制系统在长时间运行过程中,系统硬件往往出现无预兆的突发性故障,即使系统通过长时间的闭环仿真验证,也无法完全避免未知软件错误与极端情况下的未知错误。另外目前在环仿真方案采用的是全软件模拟仿真方法,建立模型时间周期长,成本高,准确率低,仿真结果与真实结果差异大;而且仿真平台多都是以离线的方式进行超实时仿真,无论是硬件在环仿真方法还是全软件模拟仿真方法,都无法实现根据离线仿真结果对在线系统进行实时干预以避免故障发生。

发明内容

[0005] 有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是对在工业自动化控制系统运行中遇到突发性故障时进行自我诊断,提升系统故障诊断的速度,实现在故障发生前对故障预判能力,对工业自动化控制系统进行实时干预,自我修复避免故障发生。
[0006] 为解决所述问题,本发明提供一种基于云超实时仿真平台与硬件在环的实时决策方法,包括以下步骤:
[0007] 步骤100读取输入值;
[0008] 步骤200将步骤100中读取的所述输入值写入第一控制器的输入变量内存和第二控制器的输入变量内存;
[0009] 步骤300根据步骤200中写入的所述输入值,所述第一控制器执行运算逻辑得到第一输出变量值,所述第二控制器执行运算逻辑得到第二输出变量值,通过云计算执行所述第一控制器或所述第二控制器的运算逻辑;
[0010] 步骤400对比步骤300得到的所述第二输出变量值与故障树;
[0011] 步骤410根据步骤400的对比结果判断是否存在故障:如果存在故障,则进入步骤500,如果不存在故障,则进入步骤600;
[0012] 步骤500根据步骤410中的判断结果,强制向所述第一控制器写入第三输出变量值,再进入步骤600;
[0013] 步骤600根据步骤410比较所述第一输出变量值与所述第二输出变量值,或者根据步骤500比较所述第三输出变量值与所述第二输出变量值;
[0014] 步骤610判断步骤600中的所述第一输出变量值与所述第二输出变量值是否相同,或者判断所述第三输出变量值与所述第二输出变量值是否相同:如果所述第一输出变量值与所述第二输出变量值相同,或者所述第三输出变量值与所述第二输出变量值相同,则返回步骤100;如果所述第一输出变量值与所述第二输出变量值不同或者所述第三输出变量值与所述第二输出变量值不同,则进入步骤700;
[0015] 步骤700根据步骤610的判断结果,如果所述第一输出变量值与所述第二输出变量值不同,则将所述第一输出变量值复制到所述第二控制器中,并将所述第一输出变量值输送至执行器,则返回步骤100;如果所述第三输出变量值与所述第二输出变量值不同,则将所述第三输出变量值复制到所述第二控制器中,并将所述第三输出变量值输送至执行器,则返回步骤100。
[0016] 进一步地,所述步骤100中的所述输入值是通过工业现场总线中读取的所有输入值,所述第一控制器和所述第二控制器同时读取所述输入值。
[0017] 进一步地,所述第一控制器是工业控制器,所述第二控制器是虚拟控制器,所述第二控制器是云超实时仿真平台为所述第一控制器建立的虚拟控制器镜像。
[0018] 进一步地,所述第一控制器与所述第二控制器同时与输入设备建立闭环连接,且所述第一控制器与所述第二控制器定时读取所述输入值。
[0019] 进一步地,所述步骤300中所述的运算逻辑为所述第一控制器的实际工作逻辑,所述第二控制器根据所述输入值运用所述运算逻辑对下一个或者多个更新周期进行模拟。
[0020] 进一步地,所述步骤410中所述的故障包括造成系统停机、过程停止的问题。
[0021] 进一步地,所述步骤500中向所述第一控制器写入第三输出变量值是实时进行的,通过所述云超实时仿真平台向所述第一控制器发送强制改写指令完成,以阻止故障发生。
[0022] 进一步地,其特征在于,所述决策方法基于的系统包括云超实时仿真平台、传感器与执行器、工业控制器和工业系统设备,所述云超实时仿真平台和所述工业控制器通过工业以太网连接,所述工业控制器和所述传感器与所述执行器通过工业现场总线连接,所述传感器与所述执行器连接至所述工业系统设备;所述系统包括至少一个所述传感器、至少一个执行器和至少一个所述工业控制器。
[0023] 进一步地,所述云超实时仿真平台包括通讯模块,虚拟控制器运行栈和决策辅助管理器,通讯模块通过工业现场总线和传感器与执行器读取输入值,并将所述输入值写入虚拟控制器运行栈中;虚拟控制器运行栈包含一个或者多个虚拟控制器运行环境,每个虚拟控制器运行环境独立运行,完成处理所述输入值后,所述虚拟控制器将生成的所述第二输出变量值推送到决策辅助管理器;所述决策辅助管理器将收到的所述第二输出变量值与云超实时仿真平台数据库预先设定的故障树数据进行对比,根据对比结果来判断故障是否发生,所述决策辅助管理器从数据库中查找相应故障的解决方案并写回到工业控制器中。
[0024] 进一步地,所述系统开始部署工业自动化控制程序时,控制代码将同时被上传到所述工业控制器和所述虚拟控制器中。
[0025] 本发明提供了一种基于云超实时仿真平台与设备混合在环的在线实时决策方法,具体为使用工业自动化控制系统软件实现超实时仿真,并根据仿真结果提前判断设备故障,通过实时在线监控手段实现自我防护,并具有以下优势:
[0026] 1、本发明提供了一种工业自动化控制系统故障预判方法,使得工业自动化生产过程停机时间大幅度减少,提升生产效率,减少由于系统故障造成的经济损失以及工业原材料浪费;
[0027] 2、本发明以云平台作为仿真以及决策辅助计算资源,用户能够根据不同工业控制系统的需求定制云平台计算能力,大幅度减少仿真过程中的时间、资源、能耗浪费;
[0028] 3、本发明提出的超实时仿真技术使用与实际情况相同的控制器与代码,省去了建立仿真模型的时间,大幅节省了系统开发与测试时间,提升仿真效率。
[0029] 4、本发明提出的超实时仿真技术通过结合工业控制器与虚拟控制器闭环超实时仿真与在线实时验证的手段,达到提前预判系统故障的效果。
[0030] 以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。

附图说明

[0031] 图1是本发明的决策方法一个优选实施例的流程图;
[0032] 图2是本发明的决策方法相关系统一个优选实施例的结构示意图;
[0033] 图3是本发明的决策方法一个优选实施例的云超实时仿真平台与其他模块的工作关系示意图。

具体实施方式

[0034] 以下结合附图对本发明涉及的一种基于云超实时仿真平台与硬件在环的实时决策方法的优选实施例做了详细描述,但本发明并不仅限于该实施例。为了使公众对本发明有彻底的了解,在以下本发明优选实施例中详细说明了具体的细节。
[0035] 实施例1
[0036] 如图1所示,一种基于云超实时仿真平台与硬件在环的实时决策方法,包括以下步骤:
[0037] 步骤100读取输入值,该输入值是通过工业现场总线中读取的所有输入值,第一控制器和第二控制器同时读取该输入值,第一控制器与第二控制器通过工业现场总线定时读取输入值;工业自动化系统控制程序初始化时,控制代码被同时上传到第一控制器与第二控制器中,用于读取并处理第一控制器与第二控制器中的数据;
[0038] 步骤200将步骤100中读取的输入值写入第一控制器的输入变量内存和第二控制器的输入变量内存,该第一控制器是工业控制器,该第二控制器是虚拟控制器,且该第二控制器是云超实时仿真平台为第一控制器建立的虚拟控制器镜像;第一控制器与第二控制器同时与输入设备建立闭环连接,该输入设备为传感器与执行器;
[0039] 步骤300根据步骤200中写入的输入值,第一控制器执行运算逻辑得到第一输出变量值,第二控制器执行运算逻辑得到第二输出变量值;通过云计算执行第一控制器或第二控制器的运算逻辑,第一控制器和第二控制器执行的运算逻辑为第一控制器的实际工作逻辑,第二控制器根据输入值运用运算逻辑对下一个或者多个更新周期进行模拟;通过云计算执行所述第一控制器或所述第二控制器的运算逻辑;
[0040] 步骤400对比步骤300得到的第二输出变量值与故障树,该步骤虚拟控制器通过对下一个或者多个更新周期后的输出值与故障树的结果比较来对故障进行预判;
[0041] 步骤410根据步骤400的对比结果判断是否存在故障:如果存在故障,则进入步骤500,如果不存在故障,则进入步骤600;该故障包括造成系统停机、过程停止的问题;
[0042] 步骤500根据步骤410中存在故障的判断结果,云超实时仿真平台向第一控制器发送强制改写指令向第一控制器实时写入第三输出变量值,再进入步骤600,以阻止故障发生;
[0043] 步骤600根据步骤410比较第一输出变量值与第二输出变量值,或者根据步骤500比较第三输出变量值与第二输出变量值;
[0044] 步骤610判断步骤600中的第一输出变量值与第二输出变量值是否相同,或者判断第三输出变量值与第二输出变量值是否相同:如果第一输出变量值与第二输出变量值相同,或者第三输出变量值与第二输出变量值相同,则返回步骤100;如果第一输出变量值与第二输出变量值不同或者第三输出变量值与第二输出变量值不同,则进入步骤700;
[0045] 步骤700根据步骤610的判断结果,如果第一输出变量值与第二输出变量值不同,则将第一输出变量值复制到第二控制器中,并将第一输出变量值输送至执行器,返回数据100;如果第三输出变量值与第二输出变量值不同,则将第三输出变量值复制到第二控制器中,并将第三输出变量值输送至执行器,返回步骤100。
[0046] 如图2所示,一种基于云超实时仿真平台与硬件在环的实时决策方法的系统包括云超实时仿真平台、传感器与执行器、工业控制器和工业系统设备,云超实时仿真平台与至少一个工业控制器通过工业以太网连接,每个工业控制器通过工业现场总线连接至少一个传感器与至少一个执行器,至少一个传感器与至少一个执行器连接至工业系统设备。如图2中所示,该系统包括3个传感器与3个执行器、3个工业控制器。工业现场总线通常以固定频率更新所连接的输入设备和输出设备,当每个循环周期开始时,第一控制器或第二控制器会根据所有通过工业现场总线读取的输入值进行逻辑计算,更新第一控制器或第二控制器总线的输出值并将输出值传输至执行器。
[0047] 如图3所示,云超实时仿真平台包括通讯模块,虚拟控制器运行栈和决策辅助管理器,通讯模块通过工业现场总线和传感器与执行器读取输入值,并将输入值写入虚拟控制器运行栈中;虚拟控制器运行栈包含一个或者多个虚拟控制器运行环境,每个虚拟控制器运行环境独立运行,完成处理输入值后,虚拟控制器将生成的第二输出变量值推送到决策辅助管理器;决策辅助管理器将收到的第二输出变量值与云超实时仿真平台数据库预先设定的故障树数据进行对比,根据对比结果来判断故障是否发生,决策辅助管理器从数据库中查找相应故障的解决方案并写回到工业控制器中,实现故障预判与自我保护功能。
[0048] 系统开始部署工业自动化控制程序时,控制代码将同时被上传到工业控制器和虚拟控制器中。
[0049] 硬件在环,即是硬件在回路(Hardware-in-the-Loop),分为下面三种情况(如果将实际控制器的仿真称为虚拟控制器,实际对象的仿真称为虚拟对象,可得到控制系统仿真的3种形式:)
[0050] ①虚拟控制器+虚拟对象=动态仿真系统,是纯粹的系统仿真;
[0051] ②虚拟控制器+实际对象=快速控制原型(RCP)仿真系统,是系统的一种半实物仿真;
[0052] ③实际控制器+虚拟对象=硬件在回路(HiL)仿真系统,是系统的另一种半实物仿真。
[0053] 实施例2
[0054] 实施例2采用与实施例1相似的方法和系统,其中仅将超实时仿真计算采用的云服务器用本地服务器代替,使用本地服务器能够减少网络延时,但是本地服务器相对计算能力较云服务器弱。
[0055] 实施例3
[0056] 实施例3采用与实施例1相似的方法和系统,其中故障树能够替换为任意自定义格式文本或者数据定义的故障,但是使用任意自定义格式文本或者数据定义的故障替代后,系统无法进行信息分享,对输出数据分享、挖掘造成困难。
[0057] 以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就能够根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验能够得到的技术方案,皆应在由权利要求书所确定的保护范围内。