一种对模拟仿真软件业务逻辑的外部接口实现方法技术

技术编号:36543856 阅读:23 留言:0更新日期:2023-02-01 16:50
本发明专利技术适用于模拟仿真软件开发技术领域,提供一种对模拟仿真软件业务逻辑的外部接口实现方法,本方法通过对外部接口业务拦截,然后在业务处理功能中将处理接口脚本化,定义在管理后台前端,最后使用外部接口与数据模型对接,实现外部接口对数据模型的托管。本发明专利技术不仅实现了仿真判断逻辑的全面解耦,提升了虚拟仿真系统对仿真对象的模拟深度,而且极大提高了仿真服务器的扩展性,提高了仿真服务器的运行效率,此外,将业务逻辑从封闭模式升级成对用户界面敞开的开放模式,极大提升了虚拟仿真业务对用户服务的定制化和灵活性。业务对用户服务的定制化和灵活性。业务对用户服务的定制化和灵活性。

【技术实现步骤摘要】
一种对模拟仿真软件业务逻辑的外部接口实现方法


[0001]本专利技术属于模拟仿真软件开发
,尤其涉及一种对模拟仿真软件业务逻辑的外部接口实现方法。

技术介绍

[0002]随着VR、AR、5G等技术逐步发展普及,以及虚拟仿真领域的快速发展,虚拟仿真的应用面越来越广。在教育、工业、商业及游戏领域,均涌现出大量的虚拟仿真应用。并且随着软硬件性能及网络技术的发展,虚拟仿真产品的复杂度、精细度与性能均有显著提升,呈现出复杂化、精细化的发展趋势。
[0003]而当前的虚拟仿真技术,普遍面向具体的仿真对象或场景实现其数据模型。例如对某船舶操作的虚拟仿真,主要实现方法有如下步骤:1,实现船舶完整操作的I/O表;2,将每一项I/O操作的判断条件、触发机制与处理结果在代码/算法层面复现;3,前端软件/硬件应用实现I/O操作。因此,目前对于仿真对象的仿真算法,会体现出专门性强、扩展性弱、成本高而复用性差的特点。即每一个虚拟仿真产品,均须专门实现对象的全部数据模型,并且其实现效果与虚拟仿真深度,非常依赖于其软件项目规模与开发资源。
[0004]传统的虚拟仿真软件往往立足于表现层,使用[业务功能

前端界面]架构,通过大量的软件编程模拟仿真对象的内部功能逻辑。对于结构相对简单、交互功能少、业务层级浅的仿真对象,例如简单的场景体验(常见于建筑、装修等行业)、交互操作(工业、游戏等行业)等,这样的软件架构及其算法体现出软件体量小,开发成本低的优点。但是当仿真对象高度复杂时,传统虚拟仿真软件就具有如下局限性:1,性能瓶颈:对于复杂系统的仿真模拟,尤其是支持多用户联机的虚拟仿真场景,仿真服务器既要处理大量的信号、状态更新,又要保持高性能的网络通信,有时仿真对象中单个状态的更新就要联合上百不同层级逻辑的处理。尤其是在虚拟仿真软件中,要实现包括仿真对象自带的操作系统(如船舶、车辆、以及复杂动力装置的操作系统),对仿真服务器的性能要求很高。2,维护困难:因为仿真对象高度复杂,需要实现包括机械结构、电气系统、操作软件等多层级复杂的状态管理,业务逻辑不可避免地高度耦合,导致维护升级成本高昂。3,功能固定:传统虚拟仿真软件往往需要在需求分析阶段沉淀项目的全部功能和业务判断逻辑,并通过仿真服务器的代码层面实现其内部状态管理逻辑。当需要向虚拟仿真软件升级导入更新的仿真算法时,就需要对整个虚拟仿真软件的代码层面做整体升级,而结合维护困难的局限性,更加导致了虚拟仿真软件一经完成,难以快速升级迭代的局面。例如:针对某大型船舶开发的虚拟仿真软件版本a,当投入使用后,该型船舶上某一设备更换为更先进的型号,使某方面的机械性能得到提升。在这种情形下,虚拟仿真软件就需要对其内部做相应的修改。即使版本a的软件结构合理,软件工程设计规范,也需要对软件本体做升级至版本b,才能符合新的船舶状况。
[0005]因此传统的虚拟仿真软件中业务功能的实现方法,开发成本较高,扩展性不强,且软件耦合度高,仿真深度明显影响虚拟仿真软件的复杂度,存在软件性能与规模上的瓶颈。

技术实现思路

[0006]鉴于上述问题,本专利技术的目的在于提供一种对模拟仿真软件业务逻辑的外部接口实现方法,旨在解决上述技术问题。
[0007]本专利技术采用如下技术方案:
[0008]一种对模拟仿真软件业务逻辑的外部接口实现方法,包括
[0009]步骤S1、构建并封装外部接口引擎;
[0010]步骤S2、建立业务数据模型和外部接口数据模型;
[0011]步骤S3、通过管理外部接口数据模型将外部接口对应脚本进行编辑和绑定,并将外部接口的脚本内容更新在外部接口数据模型中;
[0012]步骤S4、加载业务数据模型实现业务数据加载;
[0013]步骤S5、在业务数据模型的生命周期中检查并调用对应的外部接口,实现业务数据模型的二次加载;
[0014]步骤S6、更新业务数据模型参数并通过模拟器进行模拟;
[0015]步骤S7、基于对复杂系统物理结构的建模分析,在业务数据模型更新过程中调用对应接口,返回结果参数并加载到业务数据模型中实现业务数据模型的局部实时更新;
[0016]步骤S8、在仿真服务器端,对复杂系统中的电气或控制系统模拟,实现仿真对象自有的外部交互功能列表,并实现控制信号和物理层、数据库的交互。
[0017]进一步的,所述步骤S2中,所述业务数据模型用于实现虚拟仿真对象的业务数据,所述外部接口数据模型用于实现虚拟仿真软件中外部接口对应的执行权限、执行流程和脚本内容绑定逻辑,以及标定外部接口的业务数据处理范围、处理流程及对应脚本内容。
[0018]进一步的,所述步骤S4具体过程如下:启动模拟器后,模拟器从数据库中加载模拟器初始业务数据,生成初始化的业务数据模型。
[0019]进一步的,所述步骤S8中,通过在仿真服务器端中编写系统状态更新及操作条件检查,实现复杂系统的操作与状态管理功能。
[0020]本专利技术的有益效果是:本专利技术采用前端开放式接口,首先在通信网络通信协议层构建外部接口业务拦截,然后在业务处理功能中将处理接口脚本化,定义在管理后台前端,最后使用外部接口与数据模型对接,实现外部接口对数据模型的托管;本专利技术方法实现了软件开发接口向前台界面的“白盒”工作模式,用户可以直接在可视界面高度定制业务逻辑。
[0021]本专利技术不仅实现了仿真判断逻辑的全面解耦,提升了虚拟仿真系统对仿真对象的模拟深度,而且极大提高了仿真服务器的扩展性,提高了仿真服务器的运行效率,此外,将业务逻辑从封闭模式升级成对用户界面敞开的开放模式,极大提升了虚拟仿真业务对用户服务的定制化和灵活性。
附图说明
[0022]图1是本专利技术实施例提供的对模拟仿真软件业务逻辑的外部接口实现方法的流程图;
[0023]图2是本专利技术实施例方法实现的结构框图。
具体实施方式
[0024]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0025]为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。
[0026]如图1、2所示,本实施例提供的对模拟仿真软件业务逻辑的外部接口实现方法,包括下述步骤:
[0027]步骤S1、构建并封装外部接口引擎。
[0028]所述外部接口引擎可以通过外部接口对运行环境中前端通信拦截,与使用外部脚本对虚拟仿真业务逻辑的接管,外部接口支持JavaScript脚本、Python脚本、状态表等。
[0029]外部接口引擎的运行逻辑是,先实现业务代码数据处理,然后进行外部接口托管,最后返回业务代码,以实现对数据模型的动态更新。
[0030]步骤S2、建立业务数据模型和外部接口数据模型。
[0031]数据模型包括业务数据模型和外部接口数据模型。
[0032]其中业务数据模型实现了虚拟仿真对象的业务本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对模拟仿真软件业务逻辑的外部接口实现方法,其特征在于,所述方法包括下述步骤:步骤S1、构建并封装外部接口引擎;步骤S2、建立业务数据模型和外部接口数据模型;步骤S3、通过管理外部接口数据模型将外部接口对应脚本进行编辑和绑定,并将外部接口的脚本内容更新在外部接口数据模型中;步骤S4、加载业务数据模型实现业务数据加载;步骤S5、在业务数据模型的生命周期中检查并调用对应的外部接口,实现业务数据模型的二次加载;步骤S6、更新业务数据模型参数并通过模拟器进行模拟;步骤S7、基于对复杂系统物理结构的建模分析,在业务数据模型更新过程中调用对应接口,返回结果参数并加载到业务数据模型中实现业务数据模型的局部实时更新;步骤S8、在仿真服务器端,对复杂系统中的电气或控制系统模拟,实现仿真对象自有的外部交互功能...

【专利技术属性】
技术研发人员:胡载萍刘永亮侯林郎
申请(专利权)人:中船重工武汉凌久高科有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1