用于大规模层次化控制系统的控制性能验证方法与流程

文档序号:19569725发布日期:2019-12-31 18:47阅读:220来源:国知局
用于大规模层次化控制系统的控制性能验证方法与流程

本发明涉及复杂装置控制系统领域,是一种适用于大规模层次化控制系统的控制性能验证方法。



背景技术:

复杂装置控制系统尤其是激光装置控制系统一般采用层次化的控制架构实现控制系统的集成与监控。控制系统中存在大规模的硬件被控对象和复杂的业务控制逻辑,需要在不同计算机上部署不同的控制软件以实现控制系统的集成,尤其是在装置运行过程中会产生大量的实验数据和装置运行数据,软件层次化架构和控制软件部署的合理性对于对控制系统的可靠性、控制精度、稳定度和实时响应速度有较大的影响。

早期国外采用网络化仿真工具确保计算机网络带宽满足控制要求,或通过接口模拟器实现上层控制功能的逻辑实现和快速仿真,但较难解决业务流程多变的控制场景性能测试需求。例如若需要组建一个大规模的复杂装置控制系统,其控制系统架构设计和控制软件资源部署的合理性是否能满足现场的需要,因成本和对现场的要求,故无法直接购买所有设备进行组建系统,以论证控制场景性能是否是能满足需要,进而使得控制系统的可实施性和合理性受到影响。



技术实现要素:

本发明的一个目的是解决至少上述问题和/或缺陷,并提供至少后面将说明的优点。

本发明还有一个目的是提供一种用于大规模层次化控制系统的控制性能验证方法,其能够根据控制性能的指标要求,通过参数化配置搭建大规模层次化控制系统,从而快速判断大规模层次化控制系统控制性能及软硬件资源是否满足要求,极大的提升了大型复杂装置控制系统的控制性能验证效率。

为了实现根据本发明的这些目的和其它优点,提供了一种用于大规模层次化控制系统的控制性能验证方法,包括:

步骤一,搭建控制性能验证的总体架构;

步骤二,建立硬件设备的测试模型;

步骤三,建立控制逻辑可重构的软件测试模型;

步骤四,根据控制性能的指标要求,建立待验证硬件设备以及与其对应业务流程的仿真对象,对与待验证硬件设备相关的软硬件进行参数化配置,进而搭建根据控制需求配置和部署的验证用层次化控制仿真系统;

步骤五,采用层次化控制仿真系统进行控制性能指标的自动化验证测试。

优选的是,其中,在步骤一中,所述总体架构被配置为通过搭建对应的硬件环境以及与其相配合的层次化控制模型以实现;

所述硬件环境被配置为包括:

被控硬件设备;

用于安装和集成被控硬件设备对象驱动的前置计算机;

用于实现前置计算机的资源监控,并对被控硬件设备对象进行远程部署、启停及监控的控制台计算机;

按照内存、cpu、硬盘空间、操作系统类型生成虚拟机,以对控制台计算机进行启停或布署的服务器,其中,所有计算机上均已安装部署和软件启停服务;

所述层次化控制模型被配置为包括:

被控硬件设备;

用于对不同被控硬件设备封装为服务,以实现真实运行及仿真模式切换的设备对象;

用于实现流程业务组合的系统服务软件;

用于实现软件部署、管理及性能测试的集中控制工具,其被配置为包括用于配置控制系统规模、层次化、软件部署及监控的参数配置工具,用于在服务器内根据内核、内存、网络带宽、操作系统相关要求进行参数化配置,并创建虚拟计算机模板、修改计算机硬件配置参数、对计算机启停进行操作的计算机监控工具,用于根据配置参数远程部署控制软件的软件部署工具,用于通过远程实现控制软件的启停及计算机资源监控的设备服务启停工具,以及设备模拟器和系统服务模拟器。

优选的是,其中,在步骤二中,所述硬件设备的测试模型的建立被配置为包括:

根据不同被控硬件设备对计算机资源需求的不一致性,设备模拟器通过json配置文件配置硬件设备功能,以建立不同的仿真测试模型。

优选的是,其中,在步骤三中,所述控制逻辑可重构软件测试模型的建立被配置为包括:

对硬件设备进行批量控制,并根据函数名称、控制功能、输入参数类型及被控对象列表创建相关函数,在客户端调用函数时实现设备批量控制功能的设备控制软件;

实现业务流程控制,并根据dag模型,建立业务功能实现点,并建立业务功能点之间的逻辑,通过流程执行引擎执行相关控制流程,实现串并行及闭环操作的流程控制软件;

对批量被控硬件设备属性进行监控,并根据被控硬件设备的属性名称、设备列表,周期性轮询设备的状态信息,并将上述属性信息以事件机制发布给客户端的设备状态监控软件。

优选的是,其中,在步骤四中,所述待验证硬件设备以及与其对应业务流程仿真对象建立是通过控制软件仿真设备以实现;

其中,所述控制软件仿真设备根据可能影响硬件被控对象性能的因素,建立类似于可动态配置硬件对象功能、响应时间、数据吞吐及cpu占用率相关因素与函数功能之间的硬件对象仿真模型,进而与控制软件性能验证的响应时间、数据传输及资源占用相匹配,实现控制系统的功能和性能仿真,所述控制软件仿真设备被配置为采用括硬件设备仿真器和系统服务仿真器。

优选的是,其中,所述控制软件仿真设备将被控硬件设备分解为被控对象和业务控制逻辑;

其中,所述硬件设备仿真器将控制系统中的被控硬件设备抽象为对计算机资源的需求模型,通过对硬件对象进行功能和性能测试,一一建立硬件设备的仿真对象;

所述系统服务仿真器将业务逻辑层抽象为可动态配置和控制逻辑重构的流程控制仿真对象模型,根据业务逻辑动态配置分系统控制功能。

优选的是,其中,所述硬件设备仿真器根据不同硬件设备对于计算机硬件配置、内存、cpu、io、响应时间及硬件驱动对计算机资源需求或网络需求的不一致性,通过对硬件设备进行功能测试及性能测试,可以确定各硬件设备相关限制性因素,以根据相关限定因素对多个被控硬件设备的计算机资源需求或网络需求进行分配。

优选的是,其中,所述系统服务仿真器根据不同分系统的业务逻辑具有的差异性,而从控制业务流程建模的角度具有的一致性,通过控制流程建模的方式实现控制业务逻辑的快速重构;

其中,基于各分系统的业务逻辑的并行性和流程化,建立控制流程配置执行模型,通过控制流程引擎提供的并发、串行及简单闭环的逻辑控制节点,及硬件设备调用实现不同系统的业务流程实现建模及仿真功能。

优选的是,其中,所述控制性能的指标要求被配置为包括函数响应时间、状态更新时间及图像采集时间;

其中,所述控制性能的指标要求与业务控制逻辑、硬件设备性能、并发性、控制规模及层次化架构设计方式高度相关,并与控制软件框架的接口调用方式性能及事件接收方式能力紧密耦合。

优选的是,其中,在步骤五中,通过所述自动化验证测试实现控制性能指标的自动监视及架构的调整,将性能测试数据以可视化形式展示,并将测试数据保存到sqlite中;

通过所述自动化验证测试检测各个计算机及其控制软件的cpu使用率、内存使用大小及硬盘使用大小、网络通讯状态和性能指标等判断是否满足要求,并通过参数化配置软件部署、启停工具等动态调整软件部署方式及控制功能,以快速验证层次化控制系统的能否满足控制性能指标的要求。

本发明至少包括以下有益效果:其一,本发明的方法与现有技术相比,能够快速验证复杂装置的大规模层次化控制架构能否满足控制性能指标的要求,及时发现影响控制系统的可靠性、控制精度、稳定度和实时响应速度的潜在可能,从而在控制系统设计阶段确保控制系统设计的合理性。

其二,本发明的控制性能验证方法,通过参数化配置完成其控制系统的快速搭建,通过控制性能指标如函数响应时间、状态更新时间及图像采集时间等,验证的方式确保控制系统架构设计和控制软件资源部署的合理性,并为后期控制系统研制提供一个集成化的仿真测试环境。

其三,本发明的方法,从功能和性能的角度模拟不同控制性能的软硬件设备和不同控制逻辑的系统服务,通过参数化配置搭建大规模层次化控制系统,从而快速判断大规模层次化控制系统控制性能及软硬件资源是否满足要求,极大的提升了大型复杂装置控制系统的控制性能验证效率。

本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。

附图说明

图1为本发明的一个实施例中层次化控制仿真系统构建的流程示意图;

图2为本发明的另一个实施例中控制性能测试软硬件环境示意图;

图3为本发明的一个实施例中层次化控制软件架构示意图;

图4为本发明的另一个实施例能源系统状态监控方案布局示意图。

具体实施方式

下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。

应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其它元件或其组合的存在或添加。

图1示出了根据本发明的一种用于大规模层次化控制系统的控制性能验证方法的实现形式,其中包括:

步骤一,搭建控制性能验证的总体架构,;

步骤二,建立硬件设备的测试模型;

步骤三,建立控制逻辑可重构的软件测试模型;

步骤四,根据控制性能的指标要求,建立待验证硬件设备以及与其对应业务流程的仿真对象,对与待验证硬件设备相关的软硬件进行参数化配置,进而搭建根据控制需求配置和部署的验证用层次化控制仿真系统;

步骤五,采用层次化控制仿真系统进行控制性能指标的自动化验证测试。在这种方案中控制性能验证总体思路是基于控制性能指标,通过在虚拟环境和半实物仿真环境中实现控制系统的功能和性能仿真,从而快速验证大规模层次化控制系统的控制性能,其与现有技术相比,能够快速验证复杂装置的大规模层次化控制架构能否满足控制性能指标的要求,及时发现影响控制系统的可靠性、控制精度、稳定度和实时响应速度的潜在可能,从而在控制系统设计阶段确保控制系统设计的合理性。

如图2-3,在另一种实施例中,在步骤一中,所述总体架构被配置为通过搭建对应的硬件环境以及与其相配合的层次化控制模型以实现;

所述硬件环境被配置为包括:

被控硬件设备;

用于安装和集成被控硬件设备对象驱动的前置计算机;

用于实现前置计算机的资源监控,并对被控硬件设备对象进行远程部署、启停及监控的控制台计算机;

按照内存、cpu、硬盘空间、操作系统类型生成虚拟机,以对控制台计算机进行启停或布署的服务器,其中,所有计算机上均已安装部署和软件启停服务;

所述层次化控制模型被配置为包括:

被控硬件设备;

用于对不同被控硬件设备封装为服务,以实现真实运行及仿真模式切换的设备对象;

用于实现流程业务组合的系统服务软件;

用于实现软件部署、管理及性能测试的集中控制工具(集中控制软件),其被配置为包括用于配置控制系统规模、层次化、软件部署及监控的参数配置工具,用于在服务器内根据内核、内存、网络带宽、操作系统相关要求进行参数化配置,并创建虚拟计算机模板、修改计算机硬件配置参数、对计算机启停进行操作的计算机监控工具,用于根据配置参数远程部署控制软件的软件部署工具,用于通过远程实现控制软件的启停及计算机资源监控的设备服务启停工具,以及设备模拟器和系统服务模拟器,在这种方案中,,控制性能验证总体架构硬件环境由控制台计算机、服务器、前置计算机及硬件被控设备如步进电机、plc、ccd、串口服务器等组成。所有计算机上均已安装部署和软件启停服务,其中控制台计算机上;虚拟服务器集群可以按照内存、cpu、硬盘空间、操作系统类型生成虚拟机;前置计算机实现硬件被控对象的驱动安装和集成。层次化控制模型由硬件设备、设备对象、系统服务及集中软件组成,其中设备对象实现对不同硬件设备的封装,可以实现真实运行及仿真模式切换,系统服务实现流程业务的组合,集中控制软件实现软件部署、管理及性能测试。

其中,控制系统的控制性能指标如状态响应时间、状态更新时间及图像采集时间等受函数执行时间、数据传输大小、cpu占用时间、调用次数、控制规模等因素的影响,验证框架通过设备模拟器和系统服务模拟分解上述性能指标;

根据不同的区分或者架构方式,总体架构也可以包括验证工具和验证环境,验证工具由参数配置工具、计算机监控工具、软件部署工具、设备服务启停工具、设备模拟器和系统服务模拟器等组成;验证环境由计算机服务集群及相关被控硬件设备组成,根据控制系统的控制性能指标要求,通过上述参数配置工具、计算机监控工具、软件部署工具、设备服务启停工具、设备模拟器和系统服务模拟器等验证工具,快速搭建层次化的控制系统,实现分布式控制系统的参数化配置、自动化部署和自动化测试;

进一步地,方案中控制性能验证总体架构将相关工具封装为服务,由控制系统集成工具和控制软件仿真设备组成。控制系统集成工具主要实现控制系统的参数化配置、自动化部署及监视功能,包括参数配置工具、计算机监控工具、软件部署工具、设备服务启停工具;控制软件仿真设备主要实现控制系统的硬件被控设备对象的仿真和业务控制逻辑的仿真,如硬件设备仿真器和系统服务仿真器。

其中,计算机监控工具可以在服务器内根据内核、内存、网络带宽、操作系统等要求参数化配置并创建虚拟计算机模板,修改计算机硬件配置参数,及计算机启停功能;软件部署工具可根据配置参数远程部署控制软件;设备服务启停工具可远程实现控制软件的启停及计算机资源的监控;参数化配置工具可以实现控制系统规模、层次化、软件部署及监控的配置,在这种方案中,控制性能指标的验证需要一系列辅助工具实现性能测试的自动化,本发明从配置、部署、管理和监控等角度配置参数化配置、自动化部署及监视功能,包括参数配置、计算机监控、软件部署、设备服务启停等辅助工具,在半实物或者虚拟仿真环境中,实现控制软件架构设计的快速调整及指标的快速验证。

在另一种实施例中,在步骤二中,所述硬件设备的测试模型的建立被配置为包括:

根据不同被控硬件设备对计算机资源需求的不一致性,设备模拟器通过json配置文件配置硬件设备功能,以建立不同的仿真测试模型。在这种方案中,硬件设备受硬件访问时间、并发性、数据传输大小和cpu占用时间的影响,且不同硬件设备对计算机资源需求不一样,本方法建立不同硬件设备仿真测试模型,通过json配置文件配置硬件设备功能,包括函数名称、函数类型、执行时间、数据大小、cpu占用时间及驱动是否共享等信息。设备模拟器根据执行时间设置执行延时,根据数据大小返回制定长度的数据,根据cpu占用时间设置对cpu占用率,根据是否共享设置硬件驱动是并发访问还是串行访问,配置文件格式定义如下:

功能列表//jsonmaplist

函数名称;//字符串

函数类型;//字符串,函数或者属性

执行时间;//整形,毫秒

数据大小;//整形,byte

cpu占用时间;//浮点型,百分比;

驱动是否共享;//布尔型

是否发布事件;//布尔型

以ccd为例,在windows下测试其不同功能的硬件访问时间、图像传输性能、并发性能,并根据上述测试数据建立ccd设备仿真对象。

在另一种实施例中,在步骤三中,所述控制逻辑可重构软件测试模型的建立被配置为包括:

对硬件设备进行批量控制,并根据函数名称、控制功能、输入参数类型及被控对象列表创建相关函数,在客户端调用函数时实现设备批量控制功能的设备控制软件;

实现业务流程控制,模型根据dag模型,建立业务功能实现点,并建立业务功能点之间的逻辑,通过流程执行引擎执行相关控制流程,实现串并行及闭环操作的流程控制软件;

对批量被控硬件设备属性进行监控,并根据被控硬件设备的属性名称、设备列表,周期性轮询设备的状态信息,并将上述属性信息以事件机制发布给客户端的设备状态监控软件,在这种方案中,建立控制逻辑可重构的软件测试模型,主要包括设备控制、流程控制功能和设备状态监控。设备控制功能实现对硬件设备的批量控制,模型根据函数名称、控制功能、输入参数类型及被控对象列表创建相关函数,当客户端调用函数时实现设备批量控制功能;流程控制功能实现业务流程控制,模型根据dag模型,建立业务功能实现点,并建立业务功能点之间的逻辑,通过流程执行引擎执行相关控制流程,实现串并行及闭环操作;设备状态监控实现对批量设备属性的监控,模型根据设备属性名称及设备列表,周期性轮询设备状态信息,并将上述属性信息以事件机制发布给客户端。

设备控制列表//jsonmaplist

函数名称://字符串

控制功能;//字符串

输入参数类型://字符串

被控对象列表;//字符串列表

流程控制;//jsonmap

逻辑关系:节点名称,下一节点名称//字符串列表

节点配置参数://jsonmap

节点名称://字符串

节点参数://json,具体参数配置信息

节点功能:设备名称,函数名称,输入参数等。

以光路准直控制为例,将准直过程分解为若干节点功能,并建立节点之间的逻辑,最终实现多个设备的流程控制过程。

在另一种实施例中,在步骤四中,所述待验证硬件设备以及与其对应业务流程仿真对象建立是通过控制软件仿真设备以实现;

其中,所述控制软件仿真设备根据可能影响硬件被控对象性能的因素,如计算机配置对软件接口调用、硬件驱动对于调用方式、被控对象创建与计算机内存、软件调用对cpu占用及相应时间等因素,建立类似于可动态配置硬件对象功能、响应时间、数据吞吐及cpu占用率相关因素与函数功能之间的硬件对象仿真模型,进而与控制软件性能验证的响应时间、数据传输及资源占用相匹配,实现控制系统的功能和性能仿真,所述控制软件仿真设备被配置为采用括硬件设备仿真器和系统服务仿真器,在这种方案中控制软件的实现逻辑、层次化架构、监控方式、部署方式对控制系统的性能指标有影响。通过硬件设备仿真对象实现对控制系统硬件被控对象的功能和性能仿真,系统服务仿真器实现对不同业务功能逻辑的仿真后,重点考虑层次化架构、部署方式对控制系统控制性能指标的影响,具体来说,控制系统的软硬件参数化配置及快速搭建,根据层次化控制需求配置和部署验证模型。以能源系统状态更新时间指标为例,其验证模型图如图4所示,能源上层软件需要监控48*180个能源设备的电压电流状态,判断能否满足1hz的状态更新频率要求。配置流程如下:根据能源设备硬件被控对象特点测试其功能特性及硬件访问时间,并建立与能源硬件设备等效的对象仿真模型;配置系统服务的状态监控参数,如设备对象名称、属性名称、以及状态刷新频率;通过python服务部署接口向控制系统中注册48个系统服务和48*180个设备服务,并配置能源设备仿真对象和能源系统的参数;通过python服务启停接口实现上述对象的启动;最终通过性能监视客户端订阅能源系统事件。

在另一种实施例中,所述控制软件仿真设备将被控硬件设备分解为被控对象和业务控制逻辑;

其中,所述硬件设备仿真器将控制系统中的被控硬件设备抽象为对计算机资源的需求模型,通过对硬件对象进行功能和性能测试,一一建立硬件设备的仿真对象;

所述系统服务仿真器将业务逻辑层抽象为可动态配置和控制逻辑重构的流程控制仿真对象模型,根据业务逻辑动态配置分系统控制功能,在这种方案中,从控制系统功能和性能角度出发,将控制系统中的被控对象分解为硬件被控对象和业务控制逻辑。将控制系统中的硬件设备抽象为对计算机资源的需求模型,如计算机硬件配置、内存、cpu、io、响应时间及硬件驱动等,通过对硬件对象进行功能和性能测试,一一建立硬件设备的仿真对象;将业务逻辑层抽象为可动态配置和控制逻辑重构的流程控制仿真对象模型,根据业务逻辑动态配置分系统控制功能,最终在半实物或虚拟仿真环境中通过相关工具快速搭建大规模层次化控制系统,并验证其控制性能指标。

在另一种实施例中,所述硬件设备仿真器根据不同硬件设备对于计算机硬件配置、内存、cpu、io、响应时间及硬件驱动对计算机资源需求或网络需求的不一致性,通过对硬件设备进行功能测试及性能测试,可以确定各硬件设备相关限制性因素,以根据相关限定因素对多个被控硬件设备的计算机资源需求或网络需求进行分配,在这种方案中,通过测试或输入得到不同设备对计算机资源需求或网络占用需求的限制性因素,使得其系统在对其业务流程进行匹配分工时,可根据限制性因素进行区别对待,以保证系统的正常稳定运行。

在另一种实施例中,所述系统服务仿真器根据不同分系统的业务逻辑具有的差异性,而从控制业务流程建模的角度具有的一致性,通过控制流程建模的方式实现控制业务逻辑的快速重构;

其中,基于各分系统的业务逻辑有较强的并行性和流程化等特点,可建立控制流程配置执行模型,通过控制流程引擎提供的并发、串行及简单闭环的逻辑控制节点,及硬件设备调用实现不同系统的业务流程实现建模及仿真功能,在这种方案中,通过控制流程对分系统中业务逻辑进行重构,有利于对整个待验证控制系统运行的合理性进行综合考虑,对其业务流程进行分流或排队式处理,以保证系统之间运行的平稳性,不会发生业务冲突。

在另一种实施例中,所述控制性能的指标要求被配置为包括函数响应时间、状态更新时间及图像采集时间,其原因在于验证架构重点的在于测试函数响应时间、状态更新时间及图像采集时间等控制性能指标;

其中,所述控制性能的指标要求与业务控制逻辑、硬件设备性能、并发性、控制规模及层次化架构设计方式高度相关,并与控制软件框架的接口调用方式性能及事件接收方式能力紧密耦合,在这种方案中复杂装置控制系统的控制性能如在一定规模下,需要保证控制系统的控制性能如状态响应时间、状态更新时间及图像采集时间等满足要求,而这些控制性能指标可以根据需要进行逐层分解,以解决现有技术中函数响应时间、状态更新时间及图像采集时间等控制性能指标验证的问题。

在另一种实施例中,在步骤五中,通过所述自动化验证测试实现控制性能指标的自动监视及架构的调整,将性能测试数据以可视化形式展示,并将测试数据保存到sqlite中;

通过所述自动化验证测试检测各个计算机及其控制软件的cpu使用率、内存使用大小及硬盘使用大小、网络通讯状态和性能指标等判断是否满足要求,并通过参数化配置软件部署、启停工具等动态调整软件部署方式及控制功能,以快速验证层次化控制系统的能否满足控制性能指标的要求,在这种方案中,控制性能指标的自动化测试,实现控制性能指标的自动监视及架构的调整。将性能测试数据以可视化形式展示,并将测试数据保存到sqlite中,以便后续分析。通过检测各个计算机及其控制软件的cpu使用率、内存使用大小及硬盘使用大小、网络通讯状态和性能指标等判断是否满足要求,并通过参数化配置软件部署、启停工具等动态调整软件部署方式及控制功能等,以快速验证层次化控制系统的控制性能指标。

本发明控制性能验证总体思路是通过在虚拟环境和半实物仿真环境中实现控制系统的功能和性能仿真,从而快速验证大规模层次化控制系统的控制性能,其是基于待验证控制系统性能指标的要求,从功能和性能的角度模拟不同控制性能的软硬件设备和不同控制逻辑的系统服务,即将控制系统中的被控对象分解为硬件被控对象和业务控制逻辑,以通过验证工具的配合,通过参数化配置搭建大规模层次化控制系统,从而快速判断大规模层次化控制系统控制性能及软硬件资源是否满足要求,极大的提升了大型复杂装置控制系统的控制性能验证效率,同时确保控制系统架构设计和控制软件资源部署的合理性,为后期控制系统研制提供一个集成化的仿真测试环境,及时发现影响控制系统的可靠性、控制精度、稳定度和实时响应速度的潜在可能,从而在控制系统设计阶段确保控制系统设计的合理性。

以上方案只是一种较佳实例的说明,但并不局限于此。在实施本发明时,可以根据使用者需求进行适当的替换和/或修改。

这里说明的设备数量和处理规模是用来简化本发明的说明的。对本发明的用于大规模层次化控制系统的控制性能验证方法的应用、修改和变化对本领域的技术人员来说是显而易见的。

尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用。它完全可以被适用于各种适合本发明的领域。对于熟悉本领域的人员而言,可容易地实现另外的修改。因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1