PERA.SimCube多学科异构集成平台

概述

随着航空航天、通信、汽车等领域产品复杂程度的不断攀升,产品研发过程中的工程仿真和多学科软件集成技术正面临全新挑战。由于复杂系统的研发设计需要采用多种仿真工具,往往涉及来自结构、流体、电磁等不同工具的协同;而在项目实施前,系统工程师,也必须对不同开发阶段以及不同概念层面上的系统性能提前进行全面系统的验证……可以说企业产品研发过程中异构问题和协同集成需求从未如此紧迫过。

仿立方PERA.SimCube提供了这样一个协同集成的框架,为不同仿真工具间的协同应用提供统一接口,将不同学科异构设计仿真软件通过仿函连接在一起,实现协同仿真分析和设计验证。PERA.SimCube通过Automation支撑产品研发全过程的流程固化、数据管理、高性能计算资源调用;通过SimEditor提供仿函编辑器,用于编写调试脚本代码;通过SimViz实现2D和3D后处理实时显示,为研发设计人员工程仿真过程提供多学科集成、快速脚本调试和可视化等便捷应用。

SimCube界面

PERA.SimCube采用跨平台开发框架C++/Qt,使其可在Windows、Linux等多种操作系统中运行。产品架构分为:基础支撑层、功能层与应用层。在基础支撑层中提供数据可视化技术、流程定制、数据库、工作流技术、软件驱动器等基础功能接口。在功能层实现了基础层中的各种接口,提供了各个模块的具体功能。在应用层中调用功能层中提供的具体模块功能组合形成三个不同的应用。

应用层包含的自动化Automation,可视化SimViz,编辑器SimEditor三个应用,可独立应用,也可相互协作。自动化应用可无缝集成可视化应用,编辑器应用也可为自动化软件提供JavaScript脚本编辑功能。

在PERA.SimCube的各个应用中,采用了一致的开发基础库,所有的应用采用相同的基础模块进行组合,提高了软件中各个模块的重用率和软件的运行效率,也使得三个软件的界面外观、操作习惯具备一致性,提升了用户体验。


PERA.SimCube架构图



相关模块

协同集成的框架SimCube分为三个应用,自动化Automation,可视化SimViz,编辑器SimEditor。自动化应用主要完成自动化流程的搭建,以及软件集成和数据集成;SimEditor主要为脚本方式集成仿真软件提供方便的开发调试环境;SimViz可以导入数据,以表格方式显示数据结果,并可对数据进行可视化。

Automation

  • 流程建模

提供不同的流程建模模式,包括粒子群优化计算模式、装配计算模式、并行流程计算模式、串行流程计算模式、循环流程计算模式、分支流程计算模式、总线流程计算模式等,通过流程计算模式能够快速地搭建出复杂的仿真流程。

 

PERA.SimCube建立流程

  • 软件集成

系统支持异构设计仿真软件集成,方便地集成商业软件和自编软件,并支持联合仿真过程中的整体调试和验证。

 

PERA.SimCube集成不同的软件

  • 数据集成

系统支持FMI2.0标准,可以用于不同软件之间传递数据参数。系统支持的数据类型包括组、整型、双精度浮点类型、布尔类型、字符串类型、文件、整型数组、双精度数组、布尔数组、字符串数组、表、复合型,并可通过组参数对其逻辑归类。

系统还通过参数链接实现数据传递。链接可以是简单的数据传递如:a=b;也可以是一个复杂的JavaScript表达式如:a=100*b+Math.sin(c)。

 

PERA.SimCube数据集成图

  • 流程执行和监视

采用总线调度模式控制流程的执行。对于复杂的流程关系可以统一的管理和调度。提供可视化监控技术,运行过程中实时监视流程的运行状态,以及分布在各个计算节点的任务项;实时监视计算的结果数据,如曲线图、曲面图等。

  • 流程调试功能

通过单步执行、调试执行、自动化执行三种不同的执行方式,可以对单个仿函、整个流程进行不同层次的错误检查。


SimEditor

  • 脚本编写调试环境

针对仿真软件的脚本代码,PERA.SimCube提供仿真脚本的开发环境SimEditor,支持脚本语言的关键字着色、脚本库管理、自动完成、调试运行等功能,避免低级错误。


SimViz

  • 数据可视化

导入或生成数据以表格形式呈现,可对表格中的各列绘制各类图形,图形拥有丰富的配置选项。

Automation可无缝集成SimViz,在流程计算过程中实现计算数据实时可视化,可以快速监测计算的正确性,便于对计算流程进行及时调整。

 

PERA.SimCube数据实时显示

特色功能

  • 支持GUI和脚本两种方式建模

对于简单的流程可以通过GUI方式建立模型,对于复杂的模型可以通过编写JavaScript脚本的方式建立,用户仅需要简单的编程基础,即可省去大量的鼠标操作。

 

PERA.SimCube建立流程的两种方式

  • 动态更改模型

模型在运行过程中,也可以动态地创建、修改、删除仿函,可以针对特定需求解决特定问题。

  • 支持FMI2.0标准

FMI是一个不依赖于工具的接口标准,FMI2.0版本更高程度的兼容性,这样可以更好地支持不同厂家和供应商的模型数据交互。

  • 粒子群优化算法

粒子群优化算法是通过模拟鸟群觅食行为而发展起来的一种基于群体协作的随机搜索算法。通常认为这种算法速度比较快而且可以得到比较好的结果。

  • 模型调试、运行

支持单步执行、暂停/恢复,调试执行、自动化执行。通过这三种不同的执行方式,可以对单个仿函、整个流程进行不同层次的错误检查,从而帮助用户快速方便地建立正确的模型。

  • 总线控制

对于复杂的仿真流程,仿函之间往往存在错综复杂的条件约束,需要对它们进行统一管理和调度,通过总线控制方式,可以很好地解决这一问题。

  • 模型数据提取

对于已经计算完成的模型,程序提供统一的接口,通过编写脚本提取计算模型的结果数据,提取的数据可作为另一个流程的输入,也可输出为文本文件,甚至可以直接写入到其它数据库中。

  • 数据可视化

在流程执行过程中,对结果数据实时进行可视化,支持多种后处理类型,比如曲线、曲面、云图等。

  • 自动化的控制台程序

提供自动化控制台程序,可读入模型文件并运行。通过这个接口,其它程序可以很方便地集成PERA.SimCube软件。

  • 仿真脚本开发环境

通过仿函集成有限元软件时,会编写修改仿真软件的脚本代码,PERA.SimCube提供仿真脚本的开发环境SimEditor,方便用户对代码进行编写、调试,从而快速方便地对软件进行集成。

 

PERA.SimEditor编辑环境界面

  • 仿函库定制

通过JavaScript脚本定义插件,用户可以建立自己的仿函库,定制的仿函与Automation原生仿函在流程定义,执行,调试等等方面没有区别。

  • 图形用户界面定制

集成Qt设计师软件,可以使用鼠标拖拽方式创建图形界面文件,然后使用JavaScript脚本加载图形用户界面。

  • office支持
提供JavaScript脚本接口支持读写Word,Excel文件,本机无需安装这些软件,利用这些功能可创建各类计算报告。

客户价值

  • 价值1:快速建立复杂的流程模型

对于大型复杂的流程,通过鼠标拖放方式需要花费大量的时间和操作,PERA.SimCube提供基于JavaScript脚本的方式,方便用户快速方便地建立流程。

  • 价值2:统一的运行调度环境,真实反映业务场景

对于流程中复杂的条件约束,采用总线控制方式进行统一管理和调度,从而让系统按照业务场景进行仿真。

  • 价值3:强大的集成开发调试环境,让错误消失在萌芽阶段

通过SimEditor编辑调试环境、Automation运行调试功能,能最大限度地定位问题所在,排除错误,增强运行的稳健性。

  • 价值4:实时地监视运行,在运行状态下也能够修改流程

实时地监视流程运行的状态,实时查看计算的结果数据。在流程运行过程中也可以实时地修改流程,并能实时反映到结果中。

  • 价值5:方便集成到用户研发信息化体系中

通过自动化控制台程序,使系统可以快速与用户其他研发信息化系统集成,避免企业“信息孤岛”的不断产生。

典型应用

  • 项目背景

项目来源于国家重点基础研究发展计划,项目要求实现某国防领域相关学科领域的多种商业软件和自编程序算法的集成;实现自编程序与商业软件的输入、输出的数据类型集成;实现模块之间的数据传递,并能在迭代的过程中从下游流程反馈到上游流程中,即可以逆向传递数据;实现数据在仿真过程的实时可视化,可查看各种物理量的变化趋势,在流程运行结束后也可查看各个参数的变化趋势,提供曲线图与云图绘制功能。

 

某项目业务流程图

  • 解决方案

1、PERA.SimCube的自动化应用Atuomation提供仿函封装各种商业软件和自编程序算法,提供复合仿函解决通用的流程模式,如序列、并行、分支、循环、总线等;

2、仿函有各种输入、输出参数,通过参数封装项目中的各种数据类型;

3、提供参数之间的链接达到数据的传递功能;

4、提供参数的数据可视化,使用多线程技术在流程运行过程中对数据实时可视化;

5、提供流程多种执行模式:单个仿函的执行、单步调试执行和自动化执行;

6、提供报告生成功能;

7、应用的框架基于插件开发,具备很好的可扩展性,仿函、参数都可按业务需求使用框架进行二次开发;

8、另外,仿函与参数的编辑器同样可基于插件扩展;实现模型数据提取仿函提取另一个流程的计算结果数据,利用这个仿函便于多个流程之间的衔接,便于对流程按业务模块进行分层设计实现。

  • 应用效果

PERA.SimCube获得项目单位的高度赞扬,认为其在复杂工业品的研发中,尤其是集成自研程序的过程中,可提供极高的应用价值。其中流程建模、流程执行、数据可视化等功能可帮助研发人员节省大量时间;尤其是实时可视化功能,非常有利于研发过程初期仿真流程的调试,提高仿真效率。

虽然源于某项目单位课题,但实际上因为系统在架构设计上做了充分全面的考虑,包括在通用性与业务相关功能上做了很好的抽象,所以使PERA.SimCube具有优秀的实用性和扩展应用价值,可灵活响应和满足研发设计单位协同仿真、多学科集成等迫切需求,快速解决企业困扰。