一种基于开源架构的半实物仿真系统及方法与流程

文档序号:16525220发布日期:2019-01-05 10:17阅读:499来源:国知局
一种基于开源架构的半实物仿真系统及方法与流程

本发明涉及计算机应用领域,尤其涉及一种基于开源架构的半实物仿真系统及方法。



背景技术:

半实物仿真(hardware-in-loopsimulation),是指在仿真实验系统的仿真回路中接入部分实物的实时仿真,可应用于国防、能源、水利、工业等工程领域和非工程领域,也可应用于产品研制的方案论证、设计分析、生产制造、试验评估、人员训练的全过程。半实物仿真内容主要包括仿真模型的建立,实物的接入,仿真环境的生成和系统仿真试验等内容

目前,比较主流的半实物仿真系统均来自国外,主要有dspace、rt-lab、xpc和ni等商业系统。dspace是基于matlab/simulink的解决快速控制(rcp)应用和半实物仿真的一体化解决平台,它包括能够高速计算的硬件系统和实现代码生成/下载和试验/调试的软件环境。rt-lab是基于模型的,可实现工程项目的设计、实时仿真、快速原型与硬件在回路测试的分布式计算方案。xpc采用的采用了“宿主机-网络或者串口连接-目标机”的技术途径,宿主机控制目标机,目标机计算仿真对象模型,通过各种i/o卡连接物理设备(人机接口、plc、虚拟显示设备等)完成半实物仿真。ni主要由crio实时控制器(内置嵌入式处理器)、可重配置fpga、及模块化i/o构成,它可以访问底层硬件资源。上述几种半实物仿真平台都是基于pc机系统,支持simulink仿真模型,具有高度的集成性和模块化,但是缺点也尤其明显,其价格非常昂贵。国内半实物仿真研究一般也采用simulink搭建仿真模型,采用xpc建立目标机,采用rtx建立实时进程,与国外思路较为一致,适用范围较窄。现有技术一般都是直接采用国外商业软件系统,或者是在其基础上所做的研究开发,始终摆脱不了对现有商业体系和技术框架的依赖。



技术实现要素:

鉴于以上所述现有技术的缺点,本发明提供一种基于开源架构的半实物仿真系统及方法,以解决上述技术问题。

本发明提供的基于开源架构的半实物仿真系统,包括:

仿真控制模块,用于对加载仿真模型的实时进程与硬件接口进行协同控制,并根据控制指令对仿真模型进行计算,输出实时状态量数据,形成半实物仿真模型;

实时进程模块,用于将仿真模型加载在实时进程上进行计算,控制仿真时间尺度;

仿真模型模块,用于对待虚拟对象进行仿真模型转换,维持所述半实物仿真模型;

硬件接口模块,用于提供通讯协议,与外部设备进行连接。

进一步,所述仿真模型模块包括功能样机接口标准子模块和功能样机接口求解器,所述功能样机接口标准子模块用于对输入的仿真模型进行转换,所述功能样机接口求解器用于将不同类型的仿真模型转换为统一的fmu模型。

进一步,还包括显示模块,所述显示模块与仿真控制模块连接,所述仿真控制模块通过控制实时进程的启停和交换时间步,以及通过硬件接口模块与外部设备连接,维持所述半实物仿真模型,并通过所述显示模块对所述半实物仿真模型进行动态更新显示。

进一步,所述待虚拟对象至少包括机械设备本体、控制系统或传动系统中的一种或几种的组合。

进一步,多数仿真模型和实时进程为一个或多个,多个仿真模型和实施进程由同一仿真控制模块进行控制。

本发明还提供一种基于开源架构的半实物仿真方法,包括:

将待虚拟对象虚拟化为仿真模型;

将所述仿真模型加载到实时进程中,并通过硬件接口模块与外部设备连接,形成完整的半实物仿真模型;

对待虚拟对象进行仿真模型转换,维持所述半实物仿真模型;

接收仿真控制模块发送的过程数据,驱动三维模型实现实时动态更新显示。

进一步,通过功能样机接口标准子模块对输入的仿真模型进行转换,并将不同类型的仿真模型转换为统一的fmu模型。

进一步,通过控制实时进程的启停和交换时间步,以及通过硬件接口模块与外部设备连接,根据接收的控制指令或发送的仿真过程数据,维持所述半实物仿真模型,并通过所述显示模块对所述半实物仿真模型进行动态更新显示。

本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如任一项所述方法。

本发明还提供一种电子终端,包括:处理器及存储器;

所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如上述任一项所述方法。

本发明的有益效果:本发明中的基于开源架构的半实物仿真方法,引入fmi协议和求解器,具有专业间协同仿真,专业内模型封装的优势,因而存在更好的保密特性,更大的应用范围和更高的模型重用效率;采用rt-linux硬实时操作系统可同时胜任实时和非实时等复杂任务,通过osg图形显示内核提高了的三维仿真模型实时动态显示效果;本发明关键环节均采用开源架构,摆脱了对现有商业体系和技术框架的依赖。

附图说明

图1是本发明实施例中基于开源架构的半实物仿真系统的原理示意图。

图2是本发明实施例中基于开源架构的半实物仿真方法中物理设备平整机的结构示意图。

图3是本发明实施例中基于开源架构的半实物仿真方法的流程示意图。

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实时本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公职的结构和设备,以避免使本发明的实施例难以理解。

如图1所示,本实施例中的基于开源架构的半实物仿真系统,包括:

仿真控制模块,用于对加载仿真模型的实时进程与硬件接口进行协同控制,并根据控制指令对仿真模型进行计算,输出实时状态量数据,形成半实物仿真模型;

实时进程模块,用于将仿真模型加载在实时进程上进行计算,控制仿真时间尺度;

仿真模型模块,用于对待虚拟对象进行仿真模型转换,维持所述半实物仿真模型;

硬件接口模块,用于提供通讯协议,与外部设备进行连接。

本实施例中的仿真控制模块能够将加载仿真模型的实时进程与硬件接口进行协同控制,接受控制面板发出的硬件指令,启动实时进程完成对仿真模型的计算,同时输出实时状态量数据更新三维模型的虚拟显示。

实时进程模块,可将仿真模型加载在基于rt-linux实时进程上进行计算,使得仿真时间尺度与现实世界(如控制面板、传感器)的时间尺度一致,从而实现半实物仿真的根本特点

仿真模型模块,采用fmi(functionalmock-upinterface,功能样机接口标准)协议,包括功能样机接口标准子模块和功能样机接口求解器,所述功能样机接口标准子模块用于对输入的仿真模型进行转换,所述功能样机接口求解器用于将不同类型的仿真模型转换为统一的fmu模型,通过将来自不同学科领域的,或者不同商业仿真软件的模型转换为可供fmi求解器计算的fmu模型;然后采用fmi求解器,完成仿真过程。

硬件接口模块,将主流的工业硬件通讯协议(如modbustcp、profinet和ethernetip等)作为选项以供配置,并加载到通用接口程序包中,从而实现不同类型的硬件与实时机的无缝连接。

三维显示模块,采用osg图形显示内核,将仿真模型导入到三维视窗中,通过不断接收来自仿真控制模块发来的实时状态量数据,完成模型的实时动态显示。

在本实施例中,仿真模型模块将真实主机设备虚拟化为合适的仿真模型,在仿真模型复杂度满足实时仿真要求的基础上,尽可能保持模型可接受的工程精度。实时进程模块将仿真模型加载到实时进程中,并通过硬件接口模块与外部的控制面板(或者传感器)连接,形成一个完整的半实物仿真模型。仿真控制模块管理控制着实时进程的启停、交换时间步,通过硬件接口模块接收控制指令或者发送仿真过程数据,维持整个半实物仿真过程。三维显示模块接收来自仿真控制模块发送的过程数据,驱动三维模型实现实时动态更新显示。从而实现了半实物仿真的全过程。

相应地,本实施例还提供一种基于开源框架的半实物仿真方法,如图3所示,包括:

将待虚拟对象虚拟化为仿真模型;

将所述仿真模型加载到实时进程中,并通过硬件接口模块与外部设备连接,形成完整的半实物仿真模型;

对待虚拟对象进行仿真模型转换,维持所述半实物仿真模型;

接收仿真控制模块发送的过程数据,驱动三维模型实现实时动态更新显示。

下面通过一个具体实施例进行进一步说明,如图2所示,以某平整机设备中,需要实现其半实物仿真系统过程,真实平整机中的的设备本体、板带来料、自动化系统和传动系统被虚拟化为仿真模型,控制面板和内部的plc控制器作为外部实物,通过半实物仿真获得轧制力、板带板形和延伸率的动态控制特性为例说明。

该平整机由上下工作辊、上下支承辊、牌坊、顶压下缸、下工作辊电机传动、液压压下传动、自动化控制系统构成,上下工作辊中间穿着来料板带,支承辊压向工作辊并提供足够刚度,液压系统向顶压下缸提供轧制力,压下缸压着支承辊建立接触关系并提供摩擦力,电机驱动下工作辊转动,使得板带在厚度受压的情况下向前运动,造成了板带的减薄和不平度现象。

实际内含的工作流程步骤如下:

a、仿真模型模块将平整机的设备本体、自动化系统、传动系统虚拟化为合适的仿真模型,在仿真模型复杂度满足实时仿真要求的基础上,尽可能保持模型可接受的工程精度。

b、实时进程模块将仿真模型加载到实时进程中,并通过硬件接口模块与外部的控制面板连接,形成一个完整的半实物仿真模型。

c、仿真控制模块管理控制着实时进程的启停、修改交换时间步,通过硬件接口模块接收控制指令或者发送仿真过程数据,维持整个半实物仿真过程。

d、三维显示模块接收来自仿真控制模块发送的过程数据,驱动平整机3d模型实现实时动态更新显示。

本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中的任一项方法。

本实施例还提供一种电子终端,包括:处理器及存储器;

所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行本实施例中任一项方法。

本实施例中的计算机可读存储介质,本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

本实施例提供的电子终端,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于进行通信,处理器和收发器用于运行计算机程序,使电子终端执行如上方法的各个步骤。

在本实施例中,存储器可能包含随机存取存储器(randomaccessmemory,简称ram),也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

注意,在实施例的对应附图中,用线来表示信号,一些线比较粗,以表示更多的构成信号路径(consituentsignalpath)和/或一些线的一个或多个末端具有箭头,以表示主要信息流向,这些标识不是想要进行限制,事实上,结合一个或多个事例性实施例使用这些线有助于更容易地接电路或逻辑单元,任何所代表的信号(由设计需求或偏好所决定)实际上可以包括可以在任意一个方向传送的并且可以以任何适当类型的信号方案实现的一个或多个信号。

除非另外规定,否则使用序数形容词“第一”、“第二”等来描述共同的对象,仅表示指代相同对象的不同实例,而并不是要暗示这样描述的对象必须采用给定的顺序,无论是时间地、空间地、排序地或任何其他方式。

说明书对“实施例”、“一个实施例”、“一些实施例”、或“其他实施例”的提及表示结合实施例说明的特定特征、结构或特性包括在至少一些实施例中,但不必是全部实施例。“实施例”、“一个实施例”、“一些实施例”的多次出现不一定全部都指代相同的实施例。如果说明书描述了部件、特征、结构或特性“可以”、“或许”或“能够”被包括,则该特定部件、特征、结构或特性“可以”、“或许”或“能够”被包括,则该特定部件、特征、结构或特性不是必须被包括的。如果说明书或权利要求提及“一”元件,并非表示仅有一个元件。如果说明书或权利要求提及“一另外的”元件,并不排除存在多于一个的另外的元件。

尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变形对本领域普通技术人员来说将是显而易见的。例如,其他存储结构(例如,动态ram(dram))可以使用所讨论的实施例。本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

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