0 前言
随着制造业企业规模的逐渐扩大,企业对自身信息化战略的实施力度不断加强。PDM作为企业信息化实现的重要工具在这些规模快速成长的企业中得到了广泛的应用。版本管理作为PDM的一项重要的组成部分,具有十分重要的研究价值。现有的PDM软件的版本模型普遍是针对二维图纸或文档管理的,本文提出了针对结构复杂,具有整体性特点的三维图纸的版本管理技术,同时克服了原有版本模型中存在的一些问题。
1 版本管理的概念
人们在进行工程设计的时候,对同一个工程实体要进行反复的设计、试探、协商,这样就会对同一工程实体产生许多版本。工程设计又往往分阶段进行,也就是所谓的工作流,而每1个工作阶段都有可能因为修改、补充产生新的版本。在这个设计过程中,人们不能随便对原来的关于设计对象的数据进行重写或覆盖原来的设计,而必须把那些在不同设计阶段产生的数据都以不同版本的形式保存下来,以便设计人员在任何时间设计时都可追踪以前的设计版本,进行比较,优化。版本是一个对象在设计过程中某一时间点上有意义的快照。任何产品的设计都有从最初的概念设计到最后产品定型的过程,虽然不同的版本在质量和数量上包含不同的信息,但是始终保持同一性,都是朝着最终目标方向发展。版本管理是系统地处理版本对象的方法,不仅要管理一个设计对象的各个版本,还要管理它们之间的关联关系。
2 三维图纸的版本管理
近年来,国内外对产品设计的版本管理研究比较活跃,相当一部分涉及数据库和产品数据管理中的版本管理的研究。在产品设计中传统的版本管理主要是针对二维图纸,如对CAD图纸和CAXA图纸的管理,而很少有针对三维图纸来进行的版本管理。因为二维图纸更具代表性和普遍性,它包括了三维图纸的大部分功能,然而在实际工厂应用中,三维图纸具有它的特殊性,它具有整体性的特点。三维图纸的装配图与零件图和部件图是相互关联的,它的零件图、部件图、装配图是以一种整体的数据形式进行存储的,具有很好的一致性。当它的零件图发生修改时,其装配图和部件图的相应的零件也会自动修改。这样就产生了许多冲突:当三维图纸的零件图产生新版本的时候,它对应的部件图和装配图是仍然采用旧版本的零件图还是采用新版本的零件图?当三维图纸的装配图产生新版本的时候,它对应的哪些零件图和部件图需要升级版本?而二维CAD图纸的零件图、部件图、装配图是分开存储的,装配图中只有零件图和部件的简单标记,这样的问题就可以不用考虑。
以Solidworks为例,它的文件包括.SLDPRT,.SLDASM,.SLDDRW3种,.SLDPRT文件对应三维零件图,.SLDASM文件对应三维装配图,.SLDDRW文件对应二维工程图。这3种文件里,.SLDPRT文件描述单个零件的信息,是可以独立存在的;.SLDASM文件描述的是装配体信息,主要包含装配体由哪些零件组成及这些零件的位置关系等信息,它对组成装配体的各零件的.SLDPRT文件具有依赖性,.SLDASM文件必须与组成装配体的各零件的.SLDPRT文件放在同一个文件夹下才能正确的打开;.SLDDRW文件由某个.SLDPRT文件或.SLDASM文件产生,是三维图形的二维表示,它依赖于对应的SLDPRT文件或.SLDASM文件,没有对应的.SLDPRT文件或. SLDASM文件,它将不能正常打开。 .SLDASM文件与相关的.SLDPRT文件,.SLDDRW文件互相依赖,形成1个整体,它们的数据互相关联,必须保持一致性。例如用Solidworks画了1个部件a,包含2个零件p1和p2,则一共会产生a.SLDASM,a.SLDDRW,p1.SLDPRT,p1.SLDDRW,p2.SLDPRT,p2.SLDDRW6个文件,当修改p1.SLDPRT时,a.SLDASM,a.SLDDRW,p1.SLDDRW3个文件也会被修改。因此 如果对p1.SLDPRT升级版本,则a.SLDASM,a. SLDDRW,p1.SLDDRW3个文件也必须升级版本而二维图纸管理就没有这样的问题。
3 三维图纸的版本管理的实现
3.1 版本管理的数据对象
(1)计算机辅助设计(Computer Aided Design,CAD)数据 各种CAD系统(NX,Pro/E,AutoCAD,SolidWork等)对应的三维模型,二维图,装配体等数据对象。
(2)计算机辅助制造(Computer Aided Manufacturing,CAM)数据 不同应用系统生成的CAM数据。
(3)各种格式的文档数据doc,pdf,txt,ppt等。
(4)图片文件bmp,jpg等。
3.2 版本管理实现的环节
在工作流过程中,如图1所示,文件先以一个任务的形式下达给设计者,此时文件处于编辑状态。当设计 者完成设计后,提交给审核者,此时文件处于待审状态;如果未提交,文件恢复编辑状态。审核者如果审核通过设计者的设计,将文件提交给批准者,文件处于待批状态;如果不通过,将文件返回给设计者,此时文件变回编辑状态,此时审核者可以生成新版本。批准,变更等阶段也过程类似,具体实现过程见图1。
图1 工作流实现版本升级
3.3 三维图纸版本管理的数据结构
三维图纸版本管理的数据结构描述版本对象的各种属性、版本之间的关联关系以及应该包含的各种数据和对版本模型的操作方法,采用面向对象的方式,通过抽取广义版本对象的共性,定义以下类:(1)HCdoFile类描述文件对象,包括文件的属性、操作及文件进行工作流操作时的描述和生成新版本的操作。
classHCdoFile{
intFileID;∥唯一标识
CStringDescription;∥文件属性
intCurrent;∥版本状态,1表示最新版本,0表示老版本
CStringCurrentVersion;∥版本标识
HCdoFHContainer3mpFHCon;∥新老版本文件容器
HCap3DContainer3mp3DContainer;∥三维文件的容器
voidRaiseVersion();∥升级版本
voidDeclineVersion();∥降级版本
voidDBInsert();∥添加文件
voidDBSave();∥保存文件修改
voidDBRestore();∥从数据库读取文件信息
voidDBRemove();∥删除文件
CString,Tasker;∥工作流操作时,任务发布者
CStringTTimeStamp;∥工作流操作时,任务发布时间
CStringTComment;∥工作流操作时,任务发布的说 明或备注
……∥工作流操作时的其它过程与上面3项类似
}
(2)HCdoFHContainer类描述文件容器对象。文件容器是用来装同一实体对象的新老板本一种数据结构,实质上是用数据链将新老版本文件联系起来。它对装入自己的新老版本文件进行操作,本身没有属性,能对文件的数据库中的记录进行操作,但本身在数据库中没有记录。
classHCdoFHContainer{
intGetFileIDByVersion(HCenString&Version);∥通过文件的版本获得文件的标识
boolUpdateFHContainer(intNewFileID,HCenString&ver);∥更新文件容器
boolInsertNewFH(intNewFileID,HCenString&
ver,HCenString&Authority,intStatus);∥添加新的文件记录到文件容器
boolRemoveCurrentFH(intFileID)∥删除文件容器中1项文件记录
HCdoFile3GetFHistory(intn=0);∥通过文件的标识获得容器中文件的历史记录
CStringGetTopFHistoryVer();∥获得文件容器中最新版本文件的版本号
intGetNextFileID();∥获得文件容器中当前文件的下一个文件的标识
}
(3)HCap3D类描述三维图纸的对象,继承HCdoFile类。因为三维图纸的各类图具有整体性,它 的属性包括与它联系的其他图的属性。
ClassHCap3D{
int,FatherID;∥当前图上一级的部件图或装配图的标识
int,ChildID;∥当前图下一级的部件图或零件图的标识
……
}
(4)HCap3DContainer类描述三维图纸联系的容器。该容器装着作为一个整体的三维图纸的装配图、零件图、部件图。
classHCap3DContainer{
HCdoFile3FindNewPrtFile();∥获得三维图对应的二维图
HCap3D3Find3DByFatherID(intID);∥通过三维图上一级的标识获得三维图
HCap3D3Find3DByChildID(intID);∥通过三维图下一级的标识获得三维图
HCap3D3Find3DByID(intID);∥通过三维图的标识获得该三维文件
……
}
3.4 三维图纸版本管理实现的界面
在PDM系统中,文件资料是以树状结构表示的,类似操作系统中系统目录的形式。当进行三维版本管理操作时,以审批过程为例,先在树状表中选中要操作的文件,点击流程操作键,弹出,审批对话框,如图2所示。点击生成新版本,如果所选文件是装配图,弹出如图3所示对话框,左边文本框中将列出装配图下所有部件图、零件图,点击需要同时升级的零件或部件图,按添加选择键,将出现在右边可选子文件下的文本框,点击确定这些选中的零件、部件图随装配图同时升级, 否则,它们仍用老版本。
图2 审批过程图
图3 三维图纸的版本管理
4 小结
本文针对中小型企业的机电产品,研究了版本管理中三维图纸的管理。采用线性模型和三维图纸整体性相结合版本管理方法,能更有效地记录和使用早期设计过程中的知识内容,大大提高产品设计的效率和版本管理的水平。面向三维图纸的版本管理是对二维图纸管理的改进。数据组织灵活,占用空间少,数据整合算法简单;数据获取的效率高;安全控制更细致到位;能有效地支视图管理。该方案是改进PDM版本管理、强化信息集成平台作用行之有效的技术方案。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:PDM系统中三维图纸版本管理的研究