e-works数字化企业网  »  文章频道  »  产品创新数字化(PLM)  »  PDM/PLM

模板式通用BOM系统的开发与研究

2017/6/7    来源:互联网    作者:赵亮  王元勋  徐靖      
关键字:BOM  模板式  VB  属性  自动提取  自动更新  
目前汽车夹具制造企业的BOM表标准不一且互不兼容,因此汽车夹具设计企业必须手工生成BOM表,这就导致BOM的转化效率降低且出错几率增加。针对这一难题,提出开发的模板式通用BOM系统,以制造企业提供的参考BOM表为基础,根据VB开发编写应用程序,实现对零件信息的自动提取,自动生成符合企业标准的BOM表,从而实现兼容不同企业BOM标准的目的。该系统还具有BOM自动更新的功能,使零件的属性信息与BOM表信息保持一致性。最后以某车身夹具为例,验证该系统的有效性。

    0 引言

    产品的BOM表(Bill of Material)是定义产品结构的重要技术文件,是一种描述产品装配关系的结构化零件表,其中包括设计过程中所有装配体、零件、原材料等信息的清单。BOM反映了一个产品所有零件的数量关系和零部件的构成层次关系,在产品由设计过程向制造过程的转化中,BOM起着非常重要的作用,它是连接产品设计过程和制造过程的信息纽带。

    BOM表在信息传递的过程中具有重要的作用,但是在汽车夹具设计行业还没有得到统一,各制造企业提供的参考BOM表各不相同,这就为BOM表的自动化生成增加了难度,阻碍了企业间的信息交流与合作。在总结了大部分制造企业提供的BOM表样式中不难发现,BOM表需要填写的内容较多,是BOM表制作的主要内容。汽车夹具零件的属性项有:零件编号、零件名称、材料、数量、重量、版本、术语、备注,而各企业的BOM表主要内容项是这几种属性项的简单组合,这就为设计通用BOM系统提供了可能。

    模板式的通用BOM系统的构想:根据制造企业提供的参考BOM表制作BOM表输出模板,用VB编程工具开发编写应用程序,遍历零件的属性信息,将零件的各属性项输出到BOM模板的表行中,最终生成符合企业要求的BOM表。

    1 CATIA的二次开发环境

    访问CATIA的对象有很多种不同的方式,对于其他程序或脚本,CATIA具有OLE自动化对象服务器的功能。一些程序或脚本能够对COM对象进行访问,那么也能访问CATIA的对象并对其进行操作。访问CATIA对象有以下的方法:

    1)进程内的脚本

    编程脚本和CATIA如果同时运行在同一进程环境下,称作进程内的脚本。脚本类型有:

    VBScript脚本、CATScript脚本、VBA脚本。

    2)进程外的脚本

    编程脚本和CATIA如果没有运行在同一进程环境下则称进程外的脚本。编程脚本不再由CATIA环境来调用,CATIA还具有另外一个功能,即OLE自动化对象服务器,进程外的脚本通过CATIA软件的COM接口访问CATIA内部的对象。脚本类型有:

    VB或VBA访问CATIA、Windows Scripting Host访问CATIA、嵌入到网页中。

    进程内编程访问CATIA对象具有以下主要特点:占用内存少,运行效率高,操作简便。但是编写的程序在实现的功能上受到了很大的限制,比如VBScript脚本不能交互操作,VBA脚本不能编译等缺点,这就降低了编程的实用性。本研究采用进程外编程方式访问CATIA对象,运用VB编程语言编制出装配体BOM表自动生成程序,设计交互界面,便于人机操作,将产品的零部件属性信息自动输出至外部Excel清单文件中,实现BOM表的聚类输出,便于制造件的加工制造和外购件的采购,方便装配过程中零部件的统计和核对,进而提高了工作效率。

    2 BOM系统的设计

    2.1 系统的功能

    模板式通用BOM系统设计的主要目的是能够兼容不同制造企业的提供的BOM表之间的差异性,模板式通用BOM系统在传统BOM系统的基础上,设计的系统具有如图1所示的功能。

    1

    图1 BOM系统的功能图

    1)根据提供的参考BOM表用户配置BOM表输出模板,由输出模板关键字驱动程序遍历产品属性树;

    2)初始化BOM模板,根据BOM模板的关键字,对BOM模板自动进行初始化操作,为输出零件属性做准备;

    3)为使设计者了解要提取零件的哪些属性项,BOM系统具有属性提示功能;

    4)判断零件是否对称,控制零件数量;

    5)向BOM模板写入属性信息;

    6)更新BOM模板中提取的属性信息。

    根据系统的设计的功能,通用BOM系统的功能界面如图2所示。

    2

    图2 通用BOM系统功能界面

    2.2 系统的设计

    从已经检索的来文献看,传统BOM系统提供的BOM表输出功能单一,并不具有兼容性,不能满足不同企业对BOM表的差异化需求。而有学者设计的通用BOM系统,虽然能够满足BOM表的兼容性,但是由于设计规则的限制,用户在使用过程中需要熟悉模板制定规则且要保证制作的模板的正确性,给用户的使用带来了不便。

    模板式通用BOM系统可以很好的解决BOM表输出功能单一,操作复杂的问题,前期设计者利用CATIA的宏程序批量的处理零件的属性信息,为后期BOM表的输出做准备,在BOM表输出之前,只需对BOM输出模板定义系统默认的属性项关键字,就可以向BOM表中写入零件属性信息,具有适应性强,定义规则简单,输出快捷的特点。模板式通用BOM系统在操作流程上和传统BOM系统具有明显的不同,对比效果如图3所示。

    3

    图3 BOM系统流程图

    对比现行BOM系统和模板式通用BOM系统可发现,虽然传统BOM系统可以生成BOM表,但是生成的BOM表明显的不能满足不同客户提出的的BOM格式要求,还需要后期手动修改,这就降低了BOM的生成效率,同时还容易出现错误等缺点。根据设计经验提出的通用BOM系统在总结现行BOM系统特点的基础上,做了大量的思考和总结,设计的模板式通用BOM系统较传统BOM系统具有明显的优势。

    模板式通用BOM系统在设计上采用多个功能模块,使模块之间在信息共享和管理上得到提高,系统采用了三层系统结构:交互层、支撑层和核心层。

    交互层用于处理窗体功能与CATIA系统的建立功能关联,VB程序通过COM接口来访问CATIA内部的对象,来完成零部件属性的提取,BOM表的生成和更新等功能;支撑层主要是VB程序访问CATIA零件的实体对象,通过遍历算法来读取零件的属性信息,为数据的存取做准备;核心层用于将提取的零件的属性信息存入在数组中。

    4

    图4 BOM系统结构

    3 BOM系统的关键技术

    3.1 模板技术

    模板技术是通用BOM系统的核心技术,在通用BOM系统中扮演着举足轻重的作用,BOM模板表的规格直接关系到输出BOM表的形式和属性信息的合理配置。BOM模板表包括两部分:表头和表行。对每个设计项目来说,区别最大的部分是BOM表表头。因企业不同而不同,对于单个项目来说表头内容又具有高度的相似性,在项目设计中只需制作好一个BOM表的表头内容便可在设计中借用该模板;表行内容是BOM表统计的核心内容,是统计的重点,BOM系统设计的关键是输出零件的详细属性信息到BOM表中。

    定义BOM表属性项关键字是制作BOM模板的重中之重,关键字定义的正确与否直接关系到零件属性提取的成功与否。通用BOM系统定义的属性关键字如表1所示。

    表1 属性项关键字

    5

责任编辑:张纯子
本文来源于互联网,e-works本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供,并以尽力标明作者与出处,如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐