APP下载

中小型企业产品图纸版本管理的研究

2013-08-22于晓楠杨志兵

制造业自动化 2013年23期
关键词:图纸结构产品

于晓楠,杨志兵

(北京理工大学 机械与车辆学院工业工程研究所,北京 100081)

0 引言

随着制造业信息化的发展,计算机辅助设计等技术的广泛应用,数字化电子图文档的数量与日俱增,然而电子图文档管理水平的滞后,却难以满足管理的需求[1]。在管理过程中,经常出现图纸与实际设计不符或缺失、图纸数据丢失或不全和新老版本数据混淆等现象[2],这种情况在中小型企业中表现的尤为突出。

中小型企业信息化水平不高,没有形成完善的图纸管理体系。调研发现,中小型企业现行的图纸管理方法极其简单,没有涉及到版本的内容。以NIMAK为例,对已经投入使用的图纸,当确定发生变更时,如果原图纸不再使用,那么新图纸将代替原图纸,原图纸号继续沿用;如果原图纸还继续使用,那么变更过的图纸将被赋予一个新的图纸号,新的图纸号和原来的图纸号之间没有直接的联系。这种方法无法追踪变更的历史,给企业的图纸管理增加了难度,同时变更过程中图纸资料的丢失,对企业也是一个重大损失。为了解决类似于此类问题,本文将从设计变更的角度,对图纸管理加入版本的概念,研究中小型企业的图纸版本管理问题。

1 版本管理的基本模型

目前,版本管理的基本模型有线性版本关系管理模型、树状版本关系管理模型和有向无循环图版本关系管理模型[3,4]。

线性模型是一种最简单的模型,它以版本生成的先后次序进行排序,每个版本最多有一个父版本和子版本。在这种管理模型中,新产生的版本只能插入版本链上最后一个版本的后面,因此,在版本链上的两个相邻版本,不一定是父子关系。这种模型的缺点是无法反映不同版本之间逻辑上的关系。

树状模型以版本繁衍过程为依据,其版本号反应了各版本之间的从属、并列或继承关系。在这种管理模型中,每个父版本可能有多个子版本,但是每个子版本仅存在唯一的父版本。该模型的缺点是不能表示多个版本合并成一个新版本的情况。

有向无循环图模型弥补了树状模型的缺点,即一个父版本可能有多个子版本,同时一个子版本也可能有多个父版本。这种模型能够描述每个版本的历史信息,还可以表示多个版本合并成一个新版本的过程。在该模型中,只能用版本序号来描述版本产生的层次和根源。该模型的缺点是无法表示版本之间的关联关系。

以上三种模型面向的是单一对象,反映了同一对象不同版本之间的演化关系。然而对于一个完整的产品来说,我们关心的不只是某一张零件图纸的版本,更重要的是一个产品所包含的所有部件、零件图纸的版本,这就需要结合产品结构,更深入的讨论产品图纸的版本管理问题。

一般一个产品都由三级结构组成,即产品、部件和零件,这种结构关系同样反映在产品图纸上,即产品图纸也分为产品级图纸、部件级图纸和零件级图纸。产品级图纸可以分解形成部件级图纸,部件级图纸可以分解形成零件级图纸,而且各级图纸之间存在一定的结构和功能的关系。面向单一对象的版本管理模型无法满足这种复杂的产品图纸关系,因此,本文提出了产品图纸版本管理的二级管理模型,该模型主要解决的是产品设计开发完成后,对已经存在的产品结构系统中,由于发生设计变更所引起的图纸版本变化的问题。

2 基于设计变更的图纸版本管理

在日益激烈的市场竞争中,产品设计变更几乎是无法避免的,会贯穿于整个产品生命周期。设计变更并非只是作用于单个零件的设计更改,由于产品零部件本身存在的结构与功能上的关系,在大多数情况下,会引发产品上其他零部件的更改,即设计变更的传播[5]。当设计变更确认发生时,变更执行人员就要更改变更对象。因此,对于产品的零部件图纸来说,也会相应的发生连锁式的更改,如何记录、追踪、查找和存储这些图纸的更改,就涉及到图纸版本管理的问题。

2.1 设计变更原因分类

设计变更的原因直接关系到图纸版本的变化。从签订订单、需求分析、产品设计、工艺编制,直到制造装配销售使用维护和最终产品回收的产品全生命周期中,会有大量的原因导致设计变更的产生[6]。设计变更的原因分为三类:依次是外部原因、内部原因和传播原因。外部原因和内部原因是引起变更的触发因素,传播原因是导致关联图纸发生变更的主要因素。变更原因分类如表1所示。

外部原因和内部原因统称为触发因素,本文定义由一个触发因素引起的一系列变更称为一次变更。通过这个定义,就可以划分出图纸变更存储的时间节点。当一次变更确认发生时,就要对这次变更的类型进行判断,关于变更类型的划分,从对质量的影响程度和是否引起变更的传播角度给出定义,即把设计变更划分为微小变更、一般变更和重大变更。

微小变更:对质量影响较小的变更。

一般变更:对质量的影响程度一般且会引起简单的变更传播的变更。

重大变更:对质量有重大影响或者会引起复杂的变更传播的变更。

通过对变更类型的判断,决定了零件图纸的变更方式。微小变更和一般变更为小更改,小更改图纸进行版本升级存储;重大变更为大更改,大更改图纸进行更改图纸号存储。

表1 变更原因分类表

2.2 图纸版本管理方法

本文的图纸版本管理采用图纸号加版本号的方法,对于某一零件图纸号的最初版本,存储的内容为该零件的图纸,而对同一图纸号的升级版本,采用存储原图加变更通知单的存储方式,即图纸内容不发生变化,对于变化的部分以变更通知单的方式进行记录存储。采用这种存储方式最大的优势就是能简化版本存储的管理模型。

产品结构一般分为三级,产品级、部件级和零件级。所以映射到产品图纸上应该存在的也是三级结构,产品级图纸、部件级图纸和零件级图纸。采用原图纸加变更通知单的存储方式,部件级图纸将不发生变化,因此三级结构将简化为产品级图纸和零件级图纸二级结构,简化了结构关系,便于存储管理。

3 产品图纸版本管理模型与流程

每个产品都是由一系列的零部件按照一定关系组成的,这种关系同时也表现在零部件图纸上。本文采用版本管理的线性管理模型,结合产品结构特点,提出产品图纸版本管理的二级管理模型,即将版本分为两个级别,产品级版本和零件级版本,产品级版本分解形成零件级版本。产品图纸版本的二级管理模型如图1所示。

图1 产品图纸版本的二级管理模型

产品号和产品级版本号共同决定着一个产品的所有结构关系,即所有零部件图纸。该模型中分别将产品号和产品版本号、零件图纸号和零件级图纸版本号分隔开来,构成产品图纸版本管理的二级结构,一级结构为一个产品号可以有多个产品级版本号,二级结构为一个零件图纸号也可以有多个零件级图纸版本号。因此,一张具体的图纸由产品号、产品版本号、零件图纸号和零件图纸版本号共同决定,其具体的变化流程如图2所示。

图2 产品版本管理流程图

对于一个新开发的产品,首先确定其产品号和产品版本号,根据产品结构关系,输入各零件图纸号和零件图纸版本号,这样依据产品的BOM结构,建立了一个产品所有图纸的关联关系。当发生设计变更时,判断该次变更的类型,以确定零件图纸发生升级图纸版本号还是变更图纸号,具体的方法在2.1节作了详细介绍。一次变更中,有可能一张图纸发生变化,也有可能几张图纸同时发生变化,无论几张图纸发生变化,其中只要有零件图纸发生变号,那么产品号就发生变号;如果所有变化的零件图纸均发生升级,那么无论几张图纸发生变化,产品号都发生升级;当零件图纸号和零件图纸版本号都不发生变化,而产品BOM结构发生变化时,产品号发生变号。

4 实例验证

NIMAK公司为典型的中小型企业,主要以生产电焊钳为主,有大量的电焊钳图纸需要存储管理。电焊钳结构极其复杂,为简化叙述,仅以电焊钳铅臂结构验证上述理论。

在Windows XP环境下选用Microsoft Office Access 2010作为开发工具,ACCESS支持Visual Basic宏语言,它是一个面向对象的编程语言,可以引用各种对象,包括DAO(数据访问对象)、ActiveX数据对象以及许多其他的ActiveX 组件。可视对象用于显示表和报表,VBA代码模块可以声明和调用Windows操作系统函数。因此,开发运行中小型企业系统的应用程序,ACCESS是一个较好的平台[7]。

实现该系统的核心的功能就是完成产品号版本的回溯功能,即查找某一版本的父版本,直到最初版本为止。完成该功能的核心代码如下:

Function VersionTrace(ByVal VerNo As Long,ByVal UpdateType As String) As Long

Dim rs As ADODB.Recordset

Dim cn As ADODB.Connection

Dim Number As Long

Dim Str As String

Dim tuzhihao As String

Set cn = New ADODB.Connection

Set rs = New ADODB.Recordset

Set cn = CurrentProject.Connection

rs.ActiveConnection = cn

rs.Open (“Select * from 版本信息 " & _

"WHERE 图纸号='[forms]![版本信息查询详单]![图纸号]' ")

tuzhihao = [Forms]![版本信息查询详单]![图纸号]

Number = VerNo

Str = UpdateType

Do While Str = “变更通知单"

Number=DLookup("父版本号", "版本信息回溯辅助", "版本号 =" & Number)

Str = DLookup("修改类型", "版本信息回溯辅助", "版本号=" & Number)

Loop

VersionTrace = Number

End Function

该函数的返回值作为查询零件图纸版本号的条件。实现版本回溯功能后,关键点为在ACCESS建立一个存储产品号版本关系的表,作为查询零件图纸版本号的数据源,表结构设计如表2所示。

表2 产品版本号关系表

该表中只存某次变更中,发生变化的零件图纸版本号,对于不发生变化的不进行存储。然后通过版本回溯的结果,查询出所有父版本发生变化的零件图纸版本号,更新替换到该产品号最初的版本号上,即得到当前产品版本号下所有零件图纸的版本号。在ACCESS中设计的界面如图3所示。

在产品号文本框中输入产品号,确定查询后,得到根据产品BOM结构的零件图纸关系。在产品版本号文本框输入要查询的产品版本号,即得到如图4所示的BOM详单。

图3 BOM结构界面

5 结束语

版本管理技术是工程图档管理系统的核心技术之一,合理有效的版本管理技术将提高企业工作效率、降低管理成本、提高制造企业竞争力。

首先,本文对设计变更原因的分类总结,提出了一次变更的概念,解决了版本管理过程中版本存储的时间节点问题。

其次,通过分析三种现存的版本管理的基本模型,结合产品结构关系,面向中小型企业,提出了产品图纸版本的二级管理模型,解决了面向产品结构的多对象的版本管理问题。

最后,详细阐述了版本管理的流程过程,并结合NIMAK公司,给出了具体的解决方案,验证了产品图纸版本的二级管理模型的可行性与实用性。

图4 BOM详单报表界面

[1] Lee S,Ahn J,Kim H. A Schema Version Model for Complex Objects in Object-Oriented Databases [J]. Journal of Systems Architecture.2006,52(10):563-577.

[2] Wang F, Zaniolo C. Temporal Queries and Version Management in Xml-Based Document Archives[J].Data &Knowledge Engineering.2008,65(2):304-324.

[3] 马建其,胡晓兵.工程图档管理系统中的版本管理技术[J].机械工程与自动化.2007(02):48-50.

[4] 谢士杰,冯学智.规划管理信息系统中的版本管理的研究[J]. 遥感信息.2005(02):39-43.

[5] 杨帆,唐晓青.基于特性关联的产品工程更改传播[J].北京航空航天大学学报.2012(08):1032-1039.

[6] 刘晓冰,孟永胜,邢英杰,等.制造领域工程更改管理系统的技术研究[J].中国机械工程.2005(15):1339-1344.

[7] Alison Balter. Access2007开发指南[M].谢晖,许伟译.北京:人民邮电出版社,2012.

猜你喜欢

图纸结构产品
《形而上学》△卷的结构和位置
浅谈汽车线束产品图纸管理
看图纸
论结构
模具图纸在全生命周期内的信息管理系统研究
论《日出》的结构
2015产品LOOKBOOK直击
创新治理结构促进中小企业持续成长
新产品
产品