一、概述
MTE-Framework工业数字化设计与仿真平台框架是专业用于进行CAD/CAE/CAM等CAX软件定制开发和集成的框架,是公司经过近十年工程经验打造而成的,具有自主知识产权的框架产品。MTE-Framework平台框架的基本信息如下:
【名称】:工业数字化设计与仿真平台框架
【版本号】:V 2.0
【运行环境】:
-
软件环境
- 操作系统:Windows 7 64bit及以上
- 运行时环境:.Net Framework 4.0 VC++ 2012 Redist
- 数据库(可选):SQLite 3/MySQL 5.5
-
硬件环境
- 普通计算机即可;
二、框架架构及模块介绍
MTE-Framework聚焦工业Cax软件开发需求,拥有丰富的工业软件定制开发所需的通用底层数据结构模块、通用功能和标准接口模块、三维构型与展示模块、以及高集成能力为一体的集成开发框架,为工业软件开发提供了基础,使知识经验得到了稳定的延续,大幅降低重复功能开发所造成的资源浪费,有效缩短定制开发周期;具备对第三方软件和算法的高集成能力,有效解决复杂工业软件开发工作的协同和融合问题。
MTE-CaxFrame多学科仿真集成框架主要包括基础组件包、基础框架包和核心模块包,具体如下:
[1] 基础组件包:框架中包含的基于“组件”设计思想积累形成的底层基础组件,可用于进行软件、平台的开发和利用;
- a) UI界面&控件库:基本UI界面母版和基础控件库,统一界面风格和提示信息;
- b) 表格及图像组件库:通用的表格数据和图片数据的展示和操作控件库;
- c) 商用软件接口库:常用的商用软件数据和文件的接口库,如MATLAB、Ansys、Modtran等;
- d) 三维显示组件库:在通用的开源引擎OpenCasCade、VTK、OSG等基础上进行封装后的三维显示及操作组件库,可以方便的进行模型的展示、操作,以及后处理(云图、向量图、切面图等)展示等功能;
- e) 报告生成组件库:提供基于Dom技术的报告自动生成库;
- f) 基础算法库:提供基本的数字算法、矩阵计算、实验设计算法、代理模型算法、优化设计算法等的算法库;
- g) 通用数据接口库:提供对常用的文本文件、XML文件、mat文件等,以及数据库的通用操作类和库;
[2] 基础框架包:基于软件设计与开发的最佳实践形成的各类可复用的、具有独立功能的模块,比如日志体系、撤销/回退框架等;
- a) 日志体系框架:在平台安装部署运行后,提供运行状态的日志记录功能;
- b) 数据处理框架:提供一些数据的清洗、分析和计算功能(如FFT变换等);
- c) 自动更新机制框架:在软件部署后进行自动更新的功能;
- d) 撤销/回退机制框架:基于备忘录模式构建的操作撤销/回退基础框架;
- e) Key-Value缓存框架:提供了可配置(基于XML文件)的Key-Value框架;
- f) 报告自动更新框架:在报告自动生成组件基础上构建的基于报告模板的自动更新框架;
[3] 核心模块包:主要是围绕着核心数据结构及数据容器的定义为主,提供数据的定义、读取/保存之类的持久化功能,同时提供一些通用的属性展示、二维/三维展示组件和界面等。
- a) 基础数据结构库:以仿真分析涉及的前后处理及仿真分析元素为基础,构建了基础的数据结构,包括节点、单元、组、各类特性(材料、剖面等)、各类载荷(边界条件)、仿真算法、结果、图表、报告等;
- b) 数据存储模型库:提供了对基础数据结构进行管理和存储的默认机制,提供了基础的XML、文本格式的持久化方式,当然也可以定制使用其它存储格式和机制;
- c) 流程自动化引擎库:提供了基于模型(模块、应用)驱动的图形化流程自动化框架和机制,可以通过拖拽操作和连线来组织和定义流程;
- d) 平台配置管理库:基于Key-Value缓存框架,对于系统或平台中的配置项提供了预制的一些定义,包括仿真程序的路径及参数定义、系统三维显示颜色及灯光配置定义等;
- e) 核心展示组件库:提供了些通用的界面和展示组件,主要包括属性展示窗口、消息输出窗口、定制化二维表格窗口、定制化三维表格窗口(云图、向量图、切面图、流线图等),可以在具体项目中直接进行应用。
三、框架特色及价值
1、国内软件公司自主知识产权的软件框架产品;
2、框架SDK提供了C++、C#版本,同时可以与算法开发商共享源代码;
3、框架提供了底层数据结构、基础软件框架、数据管理框架、前后处理组件等丰富的库,可以大大简化CAX软件开发的难度和成本;
4、框架提供了多种对仿真与设计方法进行集成的接口和方法;
5、框架提供了典型的集成案例,方便开发参照学习;
四、 框架与仿真程序集成典型过程
1、首先沟通确定集成需求及相关事项,并初步确定合作模式;
2、确定框架中需要的模块和组件,并根据需求构建定制化菜单和界面;
3、定义框架与仿真程序的接口(通常采用文件方式);
4、快速完成整体工作流程的运转,并进行沟通确认;
5、针对具体详细功能进行细致的开发;
6、进行单元测试、集成测试和系统测试,并使用JIRA记录下Bug;
7、修改bug,并进行回归测试;
8、找意向单们进行试用,并修改试用过程中的问题;
9、打包发布正式版本,并制作相关配套宣传册等;
10、正式进行市场推广,并根据反馈迭代升级版本。