掌桥专利:专业的专利平台
掌桥专利
首页

一种多软件封装运行方法、计算机程序产品及终端设备

文献发布时间:2024-01-17 01:27:33



技术领域

本发明属于软件封装方法,具体涉及一种多软件封装运行方法、计算机程序产品及终端设备。

背景技术

传统的复杂产品研制模式,通常包括总体、分系统和部件等多个层次,涉及到流体、结构、控制、信息等多个学科,需要根据各分系统、各学科之间相互联系和相互制约关系,进行大量的方案对比,进行多轮从简至繁的设计循环,才能完成设计。因此,目前的设计方式存在离散、孤立、不系统的问题,设计过程不规范,工具软件没有集成,数据流也没有打通,而且没有设计规则和方法库引导各个设计环节的工作,造成设计过程中人工重复性劳动较多。

由于专业软件的应用类似于手工作坊模式,使用多种工具软件时,各工具软件的使用过程均较为复杂,工作效率低,对人员的要求高,且软件不能充分共享,价值无法被充分发挥。多种工具软件在在没有进行集成的条件下,各工具软件对应的设计环节需要不同专业学科的人员来操作,而且每个工作节点的计算结果也需要人工进行手工处理,才能代入到下个关联工作节点。这样的工作方式往往会影响各工作节点的工作效率和工作难度,而且存在上个节点的差错被带入到下一个工作节点的隐患,无法保证产品研制成果的准确性。

另外,由于商业软件接口和数据的隔离,产品之间的研制经验也无法复制和参考,容易造成功能的反复开发,无法有效保证研制工作的效率和质量。各专业设计模型的关系松散,缺乏关联,方案更改和设计协调的工作量大,难以实现各专业的快速设计迭代,也难以对设计方案进行综合优化。

发明内容

本发明为解决目前传统的复杂产品研制模式中,需要利用多种工具软件进行设计,但由于多种工具软件没有进行集成,各工具软件均需要配置相关的专业人员进行操作,对该软件对应工作节点的计算结果进行处理,使得各软件对应工作节点的工作效率低、工作难度高,且无法保证产品研制成果的准确性,再者,方案更改和设计协调的工作量大,难以实现各专业的快速设计迭代,也难以对设计方案进行综合优化的技术问题,提供一种多软件封装运行方法、计算机程序产品及终端设备。

为实现上述目的,本发明提供如下技术方案:

一种多软件封装运行方法,其特殊之处在于,包括以下步骤:

S1,构建仿真流程

将多个软件分别进行封装,得到多个对应的组件,将多个组件按照指定逻辑顺序连接成一个流程,形成仿真流程;

S2,构建仿真流程中各组件参数的映射关系

S2.1,将仿真流程中各组件的输入和输出按照XML标准定义,形成结构化管理,并将其储存于parameterJson文件中;

其中,所述输入包括输入文件和输入数据,所述输出包括输出文件和输出数据;

S2.2,基于XML构建各组件间输入和输出之间的映射关系,并将映射关系存储于mappingJson文件中;

S3,执行仿真任务,输出仿真结果

S3.1,根据任务要求,构造运行所需的输入,根据输入执行任一个组件,对该组件执行后的输出进行结构化保存,存入parameterJson文件中;

S3.2,解析mappingJson文件获取所述映射关系,再解析parameterJson文件,获取所述指定逻辑顺序中下一个组件执行所需的输入,以及上一个组件的输出;

采用上一个组件的输出替换下一个组件执行的输入执行该组件,将执行后的输出进行结构化保存,存入parameterJson文件中;

或者,调整下一个组件执行的部分或全部输入执行该组件,将执行后的输出进行结构化保存,存入parameterJson文件中;

S3.3,重复执行步骤S5,直至执行到所述仿真流程中的最后一个组件,解析parameterJson文件,得到最后一个组件执行后的输出,作为执行任务输出的仿真结果。

进一步地,步骤S3.1中所述执行任一个组件和步骤S3.2中所述执行该组件,均是通过bat和shell命令控制启动组件。

进一步地,所述通过bat和shell命令控制启动组件具体为:

通过cmd命令编写调用各组件的命令、各组件执行所需的文件路径命令,以及各组件执行方式命令,将所有命令封装至bat文件中,通过进程方式执行bat文件,运行bat文件中的命令,触发各组件的启动。

进一步地,步骤S1中所述多个软件包括UG、ICEM、CFX、Ansys、Fluent和ABAQUS。

进一步地,所述将多个软件分别进行封装,其中UG的封装具体为:

配置环境变量,选择prt文件,读取prt文件获取其中作为参数变量的数据,并对作为参数变量的数据进行标记,使用GUID代替经标记的所述参数变量的数据,更新prt文件,对使用GUID代替前参数变量的数据和GUID进行结构化,并将结构化的结果存储于parameterJson文件中。

进一步地,所述将多个软件分别进行封装,其中ICEM的封装具体为:

配置环境变量,选择rpl文件,通过文本编辑器解析rpl文件数据,对解析的所述rpl文件数据进行矩阵式分析,记录各行各字符的长度,并储存于parameterJson文件中。

进一步地,步骤S3.1中所述执行任一个组件和步骤S3.2中所述执行该组件,其中执行UG组件具体为:

根据parameterJson文件和mappingJson文件获取UG组件的输入,替换prt文件中的GUID,运行prt文件。

进一步地,步骤S3.1中所述执行任一个组件和步骤S3.2中所述执行该组件,其中执行ICEM组件具体为:

根据parameterJson文件和mappingJson文件获取UG组件的输入,再根据获取的输入中行、开始位置、参数变量长度定位rpl文件的位置,进行逐个替换,生成替换的rpl文件,运行所述替换的rpl文件。

本发明还提供了一种计算机程序产品,包括计算机程序,其特殊之处在于,该程序被处理器执行时实现上述方法的步骤。

另外,本发明还提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特殊之处在于,所述处理器执行所述计算机程序时实现如上所述方法的步骤。

与现有技术相比,本发明的有益效果是:

1.本发明多软件封装运行方法,将多个软件按照逻辑顺序连接成一个流程,用于处理某一类问题,对多个软件分别进行封装,并建立各组件之间的映射关系,使各软件通过本发明的方法,能够自动执行并输出任务结果。在使用时,用户只需根据任务要求输入,即可从任一个组件开始执行仿真流程,每个组件执行完成后的输出结果可根据映射关系,作为仿真流程中下一个组件的输入,使下一个组件启动执行。

2.本发明可应用于复杂产品研制模式中,需要利用多种工具软件进行设计时,本发明的方法构建了标准化的接口管控机制,通过梳理多个组件之间的关联关系,创建了仿真运行环境,从而解决了多软件中各软件之间接口和数据的隔离。

3.本发明的方法能够根据实际使用需求,在已有仿真流程中增加软件,只需调整仿真流程和映射关系即可,使用灵活性高。

4.本发明的方法在各仿真组件执行过程中,用户还可根据上一个组件的输出文件,调整下一个组件的输入文件,及时根据需要对软件运行进行干预,提供了一种灵活的运行方法。

具体实施方式

下面将结合本发明的实施例,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例并非对本发明的限制。

本发明通过封装多个软件,研究相关软件中各软件执行前后的依赖关系,构建标准化的接口管控机制,梳理各软件之间的数据关联关系,将链接产品研制过程中所需的多个软件,通过规定每个软件的输入,采集对应的输出,并将输出自动传递给下个相关软件,创建了支持联合仿真的运行环境,从而解除了各软件接口和数据的隔离。将链接产品研制过程中所需的多个软件,通过规定每个软件的输入,采集对应的输出,并将输出自动传递给下个相关软件。

如下以流体布局优化设计及流体特性分析的相关软件为例,对本发明的方法进行说明:

在自动化流体布局优化设计及流体特性分析中,封装的设计软件包含UG、ICEM、CFX、Ansys、Fluent和ABAQUS等,对各软件进行封装后,形成与各软件对应的多个组件,各组件根据输入和参数化驱动脚本文件调用相应的软件,得到非结构化数据的计算文件和结构化数据的输出,各组件之间互相联系,组件之间产生的文件和数据可无缝连接,上一个组件生成的文件和数据可自动传递到下一个相关组件节点。

各组件能够灵活地构建自动化流体布局优化设计及流体特性分析的整体流程,可按照产品研制的需求,自动开展进行外形设计、流体计算、仿真、优化,完成流体化布局和分析的整套研制工作。

对UG、ICEM、CFX、Ansys、Fluent和ABAQUS分别进行封装,得到UG组件、ICEM组件、CFX组件、Ansys组件、Fluent组件和ABAQUS组件,将仿真组件及三维建模组件按照一定的逻辑顺序连接成一个流程,这个流程可以实现一个仿真计算、优化、设计的业务,称这个流程为仿真流程。

仿真流程搭建的核心在于仿真组件之间的数据传递,打通所有仿真组件之间的数据关系,形成仿真组件数据的映射和传递逻辑。仿真组件数据传递的实现逻辑如下:

(1)对仿真组件实现参数化封装,每个仿真组件都有输入和输出,输入包含了输入文件(仿真组件执行时依赖的文件)和输入数据(控制仿真组件执行的数据),输出包含了输出数据(仿真组件执行产生的结果)和输出文件(仿真组件执行完成后产生的文件);

(2)对仿真组件的输入和输出进行结构化的持久化保存,存储在parameterJson文件中;

(3)构建仿真组件输入和输出的映射关系,例如,将仿真组件UG组件的输出与仿真组件ICEM组件的输入进行关联,将ICEM组件的输出与CFX组件的输入关联,形成映射关系。映射关系存储在mappingJson文件中;

(4)执行时,仿真流程中的任一个组件均可作为第一个仿真组件执行,可根据任务需求从任一个组件开始执行,第一个仿真组件执行分为三个部分:

1)第一部分,构造仿真组件运行所需的文件和数据。解析parameterJson文件,获取到仿真组件的输入文件和输入数据,构建仿真组件运行所需的文件和数据;

2)第二部分,执行仿真组件。通过bat、shell命令控制仿真组件的启动,实时监控仿真组件的运行状态;

3)第三部分,获取仿真组件执行完成后产生的输出文件和输出数据,进行结构化保存到parameterJson文件中,供下一个仿真组件使用。

(5)处于仿真流程中位于中间的仿真组件执行分为三个部分:

1)第一部分,构造仿真组件运行所需的文件和数据。解析mappingJson文件,获取仿真组件参数的映射关系,再解析parameterJson文件,获取到仿真组件的输入文件、输入数据,以及映射关系中上一个仿真组件的输出文件和输出,解析构建仿真组件运行所需的文件和数据。

2)第二部分,执行仿真组件。通过bat、shell命令控制仿真组件的启动,实时监控仿真组件的运行状态

3)第三部分,获取仿真组件执行完成后产生的输出文件和输出数据,进行结构化保存到parameterJson文件中,供下一个仿真组件使用。

(6)作为仿真流程中最后一个仿真组件的执行分为三个部分:

1)第一部分,构造仿真组件运行所需的文件和数据。解析mappingJson文件,获取仿真组件参数的映射关系,再解析parameterJson文件,获取到仿真组件的输入文件和输入数据和映射的上一个仿真组件的输出文件和输出,解析构建仿真组件运行所需的文件和数据。

2)第二部分,执行仿真组件。通过bat、shell命令控制仿真组件的启动,实时监控仿真组件的运行状态。

3)第三部分,获取仿真组件执行完成后产生的输出文件和输出数据,进行结构化保存到parameterJson文件中,作为仿真流程执行完成的输出结果。

(7)仿真流程执行完毕,解析parameterJson文件,将最后一个仿真组件的输出文件和输出数据展示给用户。

仿真流程执行过程中,各仿真组件的输出文件和输出数据也可展示供查看。

各软件需要通过参数化封装,才可以作为仿真组件,用于仿真流程中。封装后的仿真组件都有标准格式的输入和输出,如下是UG软件和ICEM软件的封装方法、UG组件和ICEM组件的执行方法,以及UG组件和ICEM组件的的输出:

UG软件是一个交互式CAD/CAM(计算机辅助设计与计算机辅助制造)工具软件,实现各种复杂实体及造型的建构,是模具行业三维设计的一个主流应用。对UG软件实现参数化封装,UG仿真组件通过调动UG软件,读取参数化驱动模型和输入并计算,输出运行的结果文件。

1.UG仿真组件的封装逻辑如下:

(1)配置环境变量,cmd和shell调用UG软件执行时需要引入环境变量,环境变量为UG组件核心的输入数据;

(2)选择prt文件,prt文件是UG二次开发生成的模型文件,主要由软件工程师根据业务需求使用C++语言开发或者使用UG录制生成的文件,prt文件是UG运行必须的模型文件;

(3)参数化模型文件,prt文件是参数化的模型文件,我们将prt文件读取,获取prt文件中作为参数变量的数据,然后对参数变量数据进行标记,使用GUID代替参数数据,更新prt文件;

(4)模型参数提取,在上一步参数化模型文件的时候,获取到了prt文件参数变量和替换参数变量的GUID,把参数变量和GUID结构化之后存储在parameterJson中。

2.UG仿真组件的执行:

(1)根据mappingJson文件和parameterJson文件来获取UG组件的输入;

(2)更新prt模型文件,将上一步获取到的输入,循环输入,逐步替换prt模型文件中的GUID,将GUID更改成最新的参数数据;

(3)构造执行UG的命令,使用输入中的环境变量和特定的UG启动命令来运行prt模型文件,UG软件会自动在后台静默运行;

(4)生成结果,UG软件执行完毕后会自动关闭,生成了最新的三维模型wrl文件,同时UG组件监控到UG软件的进程结束,执行下一部操作。

3.输出封装,UG软件执行完毕后,UG组件会将UG软件的生成结果进行封装,为仿真流程中下一个仿真组件做准备,输出封装包含以下方面:

(1)将UG软件生成的wrl模型文件和更新后的prt模型文件进行保存,同时将保存的路径存入parameterJson文件中;

(2)wrl模型文件可以直接展示在程序界面上,作为模型的展示结果;

(3)UG组件执行结束。

ICEM为专业的前处理软件,为CAE软件提供高效可靠的分析模型,拥有强大的CAD模型修复能力、自动中面抽取、独特的网格“雕塑”技术、网格编辑技术,以及广泛的求解器支持能力。ICEM组件通过借助组件调用本地或者远程的软件ICEM,根据指定的参数文件或者脚本文件,执行网格化划分及网格编辑,输出结果文件和网格质量结果文件。

对ICEM软件实现参数化封装,ICEM仿真组件通过调动ICEM软件,读取参数化网格脚本和输入并计算,输出运行的结果文件。

1.ICEM仿真组件的封装逻辑如下:

(1)输入的封装,ICEM仿真组件输入主要包含了以下几个方面:

(2)配置环境变量,cmd和shell调用UG软件执行时需要引入环境变量,环境变量为ICEM组件核心的输入数据;

(3)选择rpl文件,rpl是参数化的网格划分脚本,通常由CAE工程是根据业务编写或者使用ICEM软件进行录制产生的网格脚本文件;

(4)参数提取,使用文本编辑器解析rpl文件数据,对数据实行矩阵式的分析,CAE工程师可以对rpl中的参数数据实行第N行、第S个字符、L长度的记录,记录的数据存储在parameterJson文件中;

(5)ICEM组件通常作为UG组件之后的仿真流程组件,参数映射上需要与UG组件的多个参数进行关联。

2.ICEM组件执行,ICEM组件执行包括以下几个方面:

(1)根据mappingJson文件和parameterJson文件来获取ICEM组件的输入;

(2)更新rpl网格脚本,将上一步获取到的输入,根据参数量的行、开始位置、参数变量长度来准确定位rpl网格脚本参数变量的位置,进行逐个的替换,最后更改成最新的网格脚本;

(3)构造执行ICEM的命令,使用输入中的环境变量和特定的ICEM启动命令来运行rpl文件,ICEM软件会自动在后台静默运行;

(3)生成结果,ICEM软件执行完毕后会自动关闭,生成了最新的网格文件rpl、以及网格质量结果文件,同时ICEM组件监控到ICEM软件的进程结束,执行下一部操作。

3.输出封装,ICEM软件执行完毕后,ICEM组件会将ICEM软件的生成结果进行封装,为仿真流程下一个仿真组件做准备,输出封装包含以下方面:

(1)将ICEM软件生成的最新的网格文件rpl和网格质量文件进行保存,同时将保存的路径存入parameterJson文件中;

(2)网格质量结果文件可以作为中间产物,供CAE工程师检查网格质量是否达标,同时也可以解析后作为chart图展示在软件界面上;

(3)ICEM组件执行结束。

根据任务要求,需要调用某一组件时,组件启动后,按照参数设定,读取运行所需数据,结合脚本文件开始运行,运行的结果存储入working路径下,供其他组件执行调用。使用cmd命令来编写调用组件的命令,同时写入组件执行所需要的文件路径以及组件执行方式,将命令封装到bat文件中,平台通过进程方式执行bat文件,从而运行bat文件中的cmd命令,触发组件的执行。组件执行完毕后,结果文件和临时中间文件都会保存在working路径下,按照经验得知结果文件的名称,平台解析结果文件,获得结果文件的数据。按照已经定义映射关系,将执行完毕的结果文件解析得到的数据作为参数,写入下一个即将执行的组件所依赖的文件中。重复cmd命令的逻辑调用组件,从而形成一个打通不同组件之间数据流的仿真流程。

需要说明的是,上述仅是以流体设计和特性分析相关软件为例,对本发明的方法进行说明,本发明的方法也可以应用于其他任何相关领域,只要多个软件之间有逻辑关系即可。

尤其是对于通用工业设计软件进行封装,采用本发明的方法便捷高效,可封装多学科工业设计软件,构建工业设计仿真流程,分析各类工业设计软件中参数化建模方法,封装多类多学科工业软件,得到多类对应的组件,使其具备标准、统一的调用、启动文件、输入、输出文件、输出等调用接口。工业设计软件通过调用命令,进行运算前,先解析启动文件与输入的对应关系中,从而获取实际运行参数并结合启动文件进行运算;工业设计软件运算结束后计算结果存储在输出文件中,通过解析输出文件与输出的对应关系,从而获取运算后的参数结果。将多个组件按照可定制化、灵活的指定逻辑顺序连接成一个流程,形成符合工业设计中多学科多型号产品仿真需求的流程。

另外,本发明方法中,位于仿真流程中间的仿真组件执行时,解析mappingJson文件获取所述映射关系,再解析parameterJson文件,获取所述指定逻辑顺序中下一个组件执行所需的输入,以及上一个组件的输出,此时,用户也可人为调整下一个组件执行的输入,这种情况下,该仿真组件执行时按照最后接收到的输入执行。

另外,本发明的封装方法还可以应用于终端设备,终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,处理器执行所述计算机程序时实现本发明融合方法的步骤。此处的终端设备可以是计算机、笔记本、掌上电脑,及各种云端服务器等计算设备,处理器可以是通用处理器、数字信号处理器、专用集成电路或其他可编程逻辑器件等。

本发明的封装运行方法也可作为计算机程序产品,包括计算机程序,程序被处理器执行时实现上述封装运行方法的步骤。

以上所述仅为本发明的实施例,并非对本发明保护范围的限制,凡是利用本发明说明书所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均包括在本发明的专利保护范围内。

相关技术
  • 一种LED产品封装结构及其封装方法
  • 一种业务软件开发方法、装置及终端设备
  • 一种穿戴产品定制方法、系统及终端设备
  • 用于在电信网络与电信终端设备之间传输参数数据且用于在电信终端设备上激活和/或改变和/或停用通过参数数据限定或表示的通信配置文件的方法、用于传输参数数据的系统、用于传输参数数据的电信终端设备、计算机程序以及计算机程序产品
  • 用于对家用电器的运行进行远程监控的方法、便携式通信终端设备和计算机程序产品
技术分类

06120116224918