1 引言
随着仿真软件在机械产品仿真过程中的广泛应用,产生了海量的、非结构化的数据,如何对这些仿真数据进行有效的管理,是仿真工程人员面临的首要问题。目前,虽然有PDM系统通过扩展可以集成CAM和CAPP,使得一些产品数据得以集成、协调,产品研发过程也得以优化或重组,但其对仿真数据尚未实现有效的管理。如何规范、合理的管理这些仿真数据,实现仿真数据的交互,支持协同工作,已经成为机械产品仿真数据管理的一个技术瓶颈。要有效的管理仿真数据,就要认识仿真数据结构,合理的将仿真数据分类,然后根据分类的仿真数据,运用关系型数据库和Java内容仓库,设计出针对机械产品仿真数据管理的架构,实现仿真数据的有效管理。
2 机械产品仿真数据的特点和分类
在对机械产品进行仿真分析的过程中,不同的CAD、CAE软件会产生不同类型的仿真数据,这些仿真数据呈现出数据量大、种类繁多、结构复杂的特点。如何对这些数据进行规范、有效的管理,是机械仿真人员急切关注的问题。但是,目前在仿真分析数据的管理行业内,没有形成规范的行业标准,仿真工作人员仅凭个人习惯采用文档的形式管理仿真数据,极易形成数据信息的孤岛、错版甚至是数据文件的丢失。
对于机械产品仿真数据的分类,在目前来说,还没有形成统一的认识,分类方式也各不相同。因而根据仿真过程的遇到的—些数据类型,主要从仿真数据结构类型、仿真数据存在的形式、仿真学科和仿真分析过程等四个方面将机械产品仿真数据进行分类。
2.1 按数据结构类型分类
机械产品仿真数据按照数据的结构类型可以分为结构化数据和非结构化数据两大类。结构化数据是指以数字、字符或文字为载体进行记录或表达的数据,这类数据具有直观性。如机械产品的模型尺寸、材料属性、载荷值、应力值等,这类信息是使用数字或字符串组合来表达出机械产品的特性,具有直观性。非结构化数据是指不能以数字、字符或者是文字为载体进行记录或表达的数据,这类数据没有统一的层次或结构,不具备直观性。如文本文件、模型文件、图片、视频文件和报表等。这些仿真数据没有统一的格式,若要对它们进行操作就必须用专业软件进行解析,然后才能进行相关操作。
2.2 按仿真数据存在形式分类
仿真数据以其依附的载体不同,可以表现出不同的形式,如字符串、文本文件、XML文件等。机械产品仿真数据按其存在形式也可以进行分类,常见的数据存在形式有文本文件、图片文件、动画文件、二维模型文件、三维模型文件、仿真模型文件、仿真报告等。
2.3 按照仿真学科分类
在对机械产品进行仿真分析的过程中,主要涉及到力学、声学、热学等学科,因而产生的仿真数据各有特点,如对机械产品进行力学分析时,仿真数据应该包含静力学分析数据、多体动力学数据、冲击动力学数据等。
2.4 按仿真分析过程分类
机械产品仿真分析大致需要经过前处理、仿真计算以及后处理三个步骤。前处理中需要对模型进行简化、材料定义、属性定义、网格划分、约束设置、载荷施加等操作,每一个操作都会产生很多不同类型的数据、文本文件和临时文件;仿真计算过程主要是对前处理产生的数据模型进行仿真计算;后处理主要是对仿真计算产生的结果文件进行操作,获取某些重要的仿真数据,如应力值、应变值、应力云图和动画文件等。因此,按照机械产品的仿真分析过程,考虑到仿真过程中的实际问题,可将机械产品仿真数据分为原始模型数据、仿真模型数据、材料定义数据、属性定义数据、施加约束的模型数据、施加载荷后的数据、仿真结果数据后处理数据等八类。综上,机械产品仿真数据的分类方式多种多样,每—种分类方式都各有千秋。但就我个人而言,比较倾向于按照仿真分析过程进行分类。因为这种分类方式是面向仿真对象的,它根据仿真的不同阶段将仿真数据分类,基本可以囊括仿真过程中的所有数据,具有普遍意义。
3 关系型数据库和内容仓库
3.1 关系型数据库
数据库技术产生于20世纪60年代末70年代初,其主要目的是有效地管理和存取大量的数据资源。近年来,数据库技术广泛应用到机械工程领域中,解决了一些工程实际问题。特别是关系型数据库的发展,将数据组织成表的形式呈现给用户,极大的方便了工程人员对数据的查询。
关系型数据库,是指采用关系模型来组织数据的数据库。关系模型是在1970年由IBM的研究员EF.Codd博士首先提出,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为数据库架构的主流模型。目前,主流的关系型数据库有Oracle,Sybase,MSSQLServer,MySQL和DB2等。其中,MySQL是当前较为流行的开源数据库,可以存储大量的种类繁多的数据,并且提供服务以满足任何组织的需要。因而采用MySQL数据库并用Hihemate框架作为数据库持久层的解决方法,对数据库做了轻量级的封装,提供了从Java类到数据表之间的映射和数据查询和恢复机制,从而大大减轻了操作数据库的工作量。Hibemate工作原理示意图,如图1所示。通过Hibemate提供的HQL语句并配置XML格式的映射文件和配置文件即可为顶层的应用程序提供持久化服务。
图1 Hibemate工作原理示意图
3.2 Java内容仓库简介
JCR(JavaContentRepositoryAPI)规范由JavaCommunityProcess开发为JSR-170,目的就是满足weblogs和电子等公司对数据文件管理的日益普及需求。Java内容仓库是—个分级存储的关系型内容仓库,遵循JCR规范。采用JCR规范和Wadav协议来设计Java内容仓库,能够实现结构与非结构数据的读写操作、版本控制、访问控制权限、全文检索和事件监控等。Java内容仓库由单—仓库构成,有—个或多个工作区。每个工作区都包含—个项目树;项目既可以是节点也可以是属性。节点可以有零个或多个子节点以及零个或多个相关属性,实际的内容保存在子节点和属性中。每个节点都有且只有一个主节点类型。主节点类型定义了节点的特征,例如允许节点拥有的属性和子节点。内容仓库的结构,如图2所示。圆圈代表节点,矩形代表属性。节点A、B和C,它们都衍生自—个根节点。节点A有两个属性,即—个字符串“Kuok”和—个整数2010。
图2 Java内容仓库模型
3.3 关系型数据库和Java内容仓库的比较
关系型数据库的优势在存储数据信息,能够利用诸如Hibemate等实现了对关系型数据库的轻量级封装,快速方便的实现对数据的操作。Java内容仓库的优势在于能够存储海量的数据文件,同时也能够对相对应的数据信息以节点属性的方式进行存储,但操作不方便。因此,根据关系型数据库和Java内容仓库各自的优势,有必要在他们之间建立一个信息共享机制,共同去管理机械产品的仿真数据。
4 协同仿真环境中数据的管理
针对机械产品的仿真数据特点开发的协同仿真环境(Collaborative Simulation Environment,CSE)数据管理系统,采用关系型数据库MySQL和Java内容仓库协同工作。如图3所示,协同仿真环境中的仿真数据存储关系图。数据库服务器存储使用频率高、占用空间小的与用户、仿真流程相关的信息以及部分仿真参数,文件服务器(Java内容仓库)则存储使用频率低,占用大量存储空间仿真任务参数和仿真结果。
图3 协同仿真环境仿真数据存储方式
根据前面的仿真数据分类,在Java内容仓库中自定义数据子节点,编写持久化类,建立内容仓库的模型;三个主节点类型:[cseproject]、[csesystem]和[cseanalysisType]、[cseproject]设计有子节点类型[csesystem]、[csesystem]设计有子节点类型[cseanalysisType],[cseanalysisType]设计有节点类型[selOAdCase],里面包括子节点[cseOriginalModel](存放原始模型数据)、[cseSimulationModel](存放仿真模型数据)、[cseMaterialProperty](存放材料定义数据)、[csePropertyDefine](存放属性定义数据)、[cseConstrainSet](存放施加约束的模型数据)、[cseLoadSet](存放施加载荷后的数据)、[cseSimulationResult](存放仿真结果数据)和[cseResults](存放后处理数据)。根据仿真数据类型建立的内存仓库模型,如图4所示。
图4 Java内容仓库模型
建立好内容仓库模型之后,利用XML(可扩展标记语言)作为中间载体,建立起Java内容仓库和关系型数据库之间的信息共享机制,实现数据关系的双向映射,如图5所示。关系型数据库表表明了内容仓库节点下仿真数据类型属性名和属性值之间数据关系,属性名为数据库中的列名。属性值为数据库中某列的值,在列表中“name”和“Originalmodel”为内容仓库节点属性名和属性值,节点的仿真数据类型和数据库表之间的有着对应关系。
在机械仿真的过程中,首先将所有数据节点存放在关系型数据库表中,通过双向映射机制,动态的在Java内容仓库中生成对应的数据结构并存放相应的数据信息,利用WEBDAVI根据仿真数据的类型和路径,将海量的数据以节点的形式存入列内容仓库对应的位置上去,为验证系统的有效性和实用性,选取某动部件在协同仿真环境中进行分析。对该动部件进行静力学、动力学和模态分析等,其仿真数据量较为庞大,具有一定的代表性。如图6所示,从关系型数据库中获取的仿真数据信息和从Java内容仓库中获取的海量仿真数据在Web上的动态显示,左侧为项目树,反映了Java内容仓库的真实存储结构,右侧显示了仿真分析数据,包括文本文件,图片、视频文件和模型文件、仿真工作者根据需要可以随时浏览和下载。
图5 数据库中属性名和内容仓库中节点名对应
图6 机械产品仿真数据在web上的动态显示
5 总结
通过则机械产品仿真过程中产生的数据进行分类,利用关系型数据库对数据操作的优势,和java内容仓库对文件存储、操作的方便,根据仿真过程分类的方法,在Java内存仓库中建立相关数据类型节点,并将所有数据节点存放在关系型数据库表中,两者协同工作。在仿真工作完成后,将大量的仿真数据存储在Java内容仓库中,并在web上的动态显示,供仿真工作者随时查看和浏览。选取某动部件在协同仿真环境中进行分析,可以快速、准确地获得仿真分析相关数据,表明了这种数据管理系统的有效性和实用性。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/