何薇
(中航沈飞民用飞机有限责任公司 工程研发中心,沈阳 110179)
民用飞机规范EBOM的生成方法及工具研究
何薇
(中航沈飞民用飞机有限责任公司 工程研发中心,沈阳110179)
飞机行业的工程物料清单(EBOM)是飞机工程设计部门提供给制造、采购等部门作为生产控制及采购的依据,因此EBOM应具备信息全面、格式规范、简单易读等特点。以某民用飞机项目中实际应用的较为规范的EBOM格式为蓝本,以Excel电子表格为应用平台,定制EBOM所需包含的属性信息,利用Excel提供的功能定制一套生成规范的EBOM的方法及工作流程,通过Excel开发平台及VBA语言、函数的运用将EBOM的排版过程进行程序化,实现了规范EBOM的自动生成。
工程物料清单;清单报告;物料清单;VBA语言;排版工具
为了保证飞机数字化设计制造过程中产品数据的一致性、完整性和可追踪性,飞机行业普遍应用物料清单(Bill of Material,简称BOM)[1-2]。航空型号项目中有许多不同阶段的BOM[3],其中,工程物料清单(Engineering Bill of Material,简称EBOM)是上游设计单位从产品功能设计的角度出发,建立的产品零部件结构树,是产品数据的源头,影响着整个项目的成本计算[4]。EBOM应给出物料清单和父子组成关系,在企业管理中表现为产品明细表[5]。通常,在企业实施ERP的过程中,对产品BOM的整理是手工操作完成的,进度缓慢且准确率不高。郭林源[6]利用计算机从AutoCAD工程设计图纸中提取出有效的产品结构信息,自动生成了BOM;同时,基于ActiveX方法,实现了Excel文件的导入导出。飞机设计行业普遍使用CATIA三维设计软件,产品设计完成后可通过 CAD、CAPP 自动生成 EBOM 和PPBOM等多种EBOM类型[7-8]。目前,CATIA软件提供的命令可以实现物料清单(BOM)和清单报告(Listing Report)两种形式的产品明细表,将模型信息导出到文件,实现了模型与数据表的无缝对接。但两种表格的可读性均不高,BOM数据架构散乱,Listing Report格式粗糙且缺少必要的信息,无法满足各公司飞机设计部门和生产部门对于规范化EBOM的实际需要;而手动规范化费时费力,长期的维护则更为不便。另外,各行业也竞相开发相应的数字化研发平台以实现EBOM 的生成与发送[9]。例如,某汽车公司利用Oracle数据库和Java工具开发的EBOM软件系统模块[10],实现了研发平台与数据管理系统一体化。然而,各公司的研发体系不同,平台的开发成本极高,应用普遍性与独立的设计软件相比较差,设计灵活性也大幅降低。
在图纸化的时代,美国波音公司使用自动零件表(Automatic Parts List,简称APL)系统来完成工程零件的管理工作。转换到PDM系统后,原安装件转换为模块(Modules),产品结构树分为上下两部分,模块中零部件关系表(Modules Parts List,简称MPL)来自产品结构树的上部,零件表(PL)来自产品结构树的下部[11]。在MPL表中只能看到基本模块的组成,使得供应商的责任划分及制造内容更加清晰,但对于整个工程来说,产品的结构关系却更加分散。国内现行的某民用飞机项目使用MPL表来实现部门之间的数据传递,在模块细化以实现扁平结构树的情况下,这只是EBOM的另一种表现形式。无论以何种形式体现,规范EBOM的格式及内容、使产品关系清晰易读对于航空产业的发展都具有深远意义。
针对目前飞机行业对EBOM的生成与维护越来越高的需求,本文旨在研究出规范EBOM的生成方法及工具。首先,需从模型中提取零/组件的原始属性,对比分析CATIA生成的两种EBOM格式的优缺点,选择合适的格式作为原始数据;然后,在Excel应用程序中利用VBA(Visual Basic for Applications)编程语言进行开发,实现EBOM排版任务的自动化。
工程要求定制EBOM的内容需要涵盖:工程所需的零/组件属性项、零/组件的下一级装配件、零/组件装配等级数以及零/组件的数量信息等。而且,格式上最好按各零/组件的装配等级数展开,使每一个零/组件关系清晰、独立、数量明确。规范的EBOM格式如图1所示。
(a) 1级显示
(b) 1级展开 图1 规范的EBOM格式示例Fig.1 Example of standard EBOM
规范EBOM的简化结构如表1所示。
表1规范EBOM的简化结构
Table 1Simplified structure of standard EBOM
生成规范的EBOM的方法包括两部分工作流程:①利用CATIA中提供的命令提取原始数据;②按照规范的EBOM格式进行排版。
2.1原始属性的提取
在CATIA中用Bill of Material命令选择需要的属性项,分别生成BOM格式和Listing Report格式的原始数据。其中Listing Report格式只能存为文本格式,需要拷贝到Excel表格中待用。生成的两种表格分别如图2~图3所示。
BOM格式包括两部分:第一部分将该BOM中的所有装配件分块顺序排列,每个分块顺序列出该装配件的所有组成元素,若组成元素中有子组件,则在下一个分块中继续展开,直到所有组成元素均为零件,所有元素的下级装配件信息在每个组件分块的题头里;第二部分是摘要说明,显示每一个零件的总数量。Bill of Material的零/组件关系如表2所示。
图3 Listing Report格式Fig.3 Format of Listing Report 表2 Bill of Material的零/组件关系 Table 2 Organization of Bill of Material
Listing Report格式将0级组件中所包含的组成元素逐级列出,每一个组件都层层分解到最小的零件等级。零/组件的下级装配件由零件级数结合显示顺序来识别,如图4所示。
图4 Listing Report的零/组件关系Fig.4 Organization of Listing Report
将上述两种格式的原始数据进行对比,其结果如表3所示。
表3 两种格式的对比
从表3可以看出:①Bill of Material格式将所有的属性信息全部并列展开,而Listing Report格式将所有的属性信息在同一列顺序列出;Bill of Material可存为Excel电子表格,从生成到排版之间可以省略一个步骤,说明Bill of Material的排版更方便直接。②Bill of Material将所有组件分块显示,以级数为排序基础,无法立即看到每一个组件的组成元素,属于单层BOM存储结构,不直观;而Listing Report将每一个组件层层展开,以组件为排序基础,组件及其组成元素联系紧密,属于多层BOM存储结构[12],符合规范的EBOM的显示顺序。此外,Listing Report还可显示每一级零/组件的级数,该级数是EBOM中所要求的信息项,配合该零/组件的上下行关系,可直接看出在装配树中该零/组件的结点位置,组成十分清晰。③两种格式都没有下级装配件的信息,需要添加。Bill of Material虽然在尾部的零件表中体现了零/组件的总数量,但要从其他地方提取,相比之下并不方便。综上所述,Listing Report格式更能满足EBOM的定制要求,且更易于排版,因此采用Listing Report方法生成原始数据。
2.2排版方法
得到Listing Report格式的原始数据后,将进行排版工作。排版EBOM的流程如图5所示。
图5 排版流程图Fig.5 Flowchart of typesetting
排版工具将飞机设计中常用的22项典型属性项作为设计对象(如图6所示),根据主要设计对象实现自动化、规范化排版EBOM的功能。若有更多需求的属性项,可向高度用户化的程序中添加。
图6 排版工具的设计对象Fig.6 Design object of typesetting tool
生成规范的EBOM的工作流程如图7所示,图中虚线框中的步骤是工具的主体功能部分,即将整个排版流程(如图5所示)集成到该虚线框中的步骤一步实现。
图7 生成规范的EBOM的工作流程简图Fig.7 Brief work flowchart of making standard EBOM
4.1开发平台的选择
Microsoft Excel(电子表格)是微软公司的办公软件Microsoft Office的组件之一,可以进行各种数据的处理、统计分析和辅助决策操作,它应用广泛、使用便捷。行业内EBOM表通常选择Excel电子表格的形式。
针对类似于EBOM格式的文件,微软公司还开发出了一种可以与应用程序共享的、通用的自动化语言——VBA(Visual Basic for Application),它是非常流行的应用程序开发语言VB(Visual Basic)的子集,实际上它也是寄生于VB应用程序的版本[13]。通过VBA,开发者可以创建自定义的工作表函数,进而简化公式和计算。Excel是一款高度可编程的软件,是开发基于电子表格的应用程序的最佳选择[14-15],Excel自带的嵌入功能Visual Basic编辑器便是利用VBA语言提供给客户进行二次开发的应用。
本文选用Excel平台所提供的VBA语言和函数开发图7中工具的主体功能。将工具主体功能集成于Excel中,使原始数据在Excel后台直接进行处理,最终得到规范的EBOM表格。利用Excel中易于访问的控件,设置友好界面,一键实现所需功能。应用上述开发方法,EBOM的自动排版可以方便地实现,达到自动操作的目的。
4.2提取下级装配件(NHA)
Listing Report中没有下级装配件的信息,需要结合上下行级数和显示顺序进行识别。若要提取EBOM表中每行零/组件的下级装配件,假设全表共j行,则程序流程如图8所示(图中,i、m为整型变量,表示表格行号)。提取结果如图9所示。
图8 提取下级装配件流程图Fig.8 Flowchart of getting NHA
图9 提取下级装配件的结果Fig.9 Result of getting NHA
4.3计数
Listing Report中重复列出了每个零/组件,有多少个就显示多少次(如图9所示),故需要使每个组件中只保留一个重复出现的零件,并将所包含的每种零件在其组件区域内出现的数量累计。
需要注意的是:单个零/组件不能全表计数,需要在下级装配件中区域计数;若有级数大且其下级装配件在表中重复出现的零/组件,其数量需按下级装配件出现的次数进行倍除,如图10所示,从零/组件号列来看,B组件的总数为2,C组件的总数为2,D零件的总数为4;但C组件是B组件的子部件,则C组件的数量应记为:C总数/B总数=2/2=1,即每个B组件中只包含一个C组件。同理,每个D零件是C组件的子部件,则D零件的数量应记为:D总数/C总数/B总数=4/2/1=2,即每个C组件中只包含两个D零件。
图10 计数问题示例Fig.10 Example of counting problem
计算表中所有零/组件的数量,假设全表共j行,则程序流程如图11所示(图中,i、m、mt为整型变量,表示表格行号)。
图11 计数程序流程图Fig.11 Program flowchart of counting
以某装配件为例,简要说明工具的应用过程。
Step 1从CATIA中提取出装配件的Listing Report报告清单,如图12所示。
图12 Listing Report界面Fig.12 Listing Report interface
Step 2将Listing Report全选并粘贴到工具Excel文件中,如图13所示,应注意Listing Report报告清单要从Excel工具文件的第一个单元格开始粘贴。
Step 3点击工具文件中的“生成EBOM”命令按钮,执行后台排版程序。
Step 4得到排版后的EBOM表格,如图14所示。
图13 Excel待排版界面Fig.13 Interface of Excel before formatting
图14 排版完成的EBOM表Fig.14 EBOM after formatting
EBOM是航空型号项目研制过程中的核心BOM 形式,是工程设计部门提供给制造、采购等部门的一项重要文件,需要定期的跟踪和维护,即使在产品的试制阶段也需要利用EBOM定期提取模型信息。在PDM 系统中,EBOM可能以其他方式存在并发挥作用,但EBOM所表达的数据结构是PDM 生成产品数据的基础之一。EBOM的格式是否方便易读、生成方法是否简单快速对工程部门的工作效率和制造部门的成本计算具有显著影响。
本文总结出一套满足一般飞机项目需求的规范的EBOM格式,它具有比CATIA自带命令提供的EBOM更为清晰的组织架构;分析得到了快速生成和排版EBOM的流程,解决了相同零件号在不同组件号中的独立计数等问题;所开发的VBA工具实现了自动排版EBOM的功能,在很大程度上提高了工程部门的工作效率,改善了EBOM工程文件的质量,为民用飞机工程的各项交付物的编制开辟了程序开发和参数化控制的方向,具有较强的指导意义和实用价值。
[1] 于勇, 范玉青. 飞机构型管理研究与应用[J]. 北京航空航天大学学报, 2005, 31(3): 278-283.
Yu Yong, Fan Yuqing. Study and application of aircraft configuration management[J]. Journal of Beijing University of Aeronautics and Astronautics, 2005, 31(3): 278-283.(in Chinese)
[2] 代菊英, 孙蕾. 基于EBOM的民机单架次潜在备件集生成研究[J]. 科技信息, 2010(20): 26-27.
Dai Juying, Sun Lei. Potential spare part sets of civil aircraft based on EBOM[J]. Science & Technology Information, 2010(20): 26-27.(in Chinese)
[3] 戴晓. BOM模型的研究与应用[D]. 南京: 南京工业大学, 2006.
Dai Xiao. Research and application of BOM module[D]. Nanjing: Nanjing Tech University, 2006.(in Chinese)
[4] 高小岗. 物料清单(BOM)对产品标准成本的影响[J]. 现代经济信息, 2010(14): 60-62.
Gao Xiaogang. Impact of BOM on products standard costs[J]. Modern Economic Information, 2010(14): 60-62.(in Chinese)
[5] 韩晓宇. 航空飞机研制全生命周期多BOM管理[J]. 企业技术开发, 2012(9): 59-61.
Han Xiaoyu. Multi-BOM management in lifecycle of research and manufacturing of aircraft[J]. Enterprise Technology Development, 2012(9): 59-61.(in Chinese)
[6] 郭林源. 基于AutoCAD的产品结构数据管理研究[D]. 无锡: 江南大学, 2008.
Guo Linyuan. Research of product structure data management based on AutoCAD[D]. Wuxi: Jiangnan University, 2008.(in Chinese)
[7] 李强, 梁工谦. 基于军机全寿命周期BOM的质量信息数据库模型[J]. 航空制造技术, 2011(8): 62-65.
Li Qiang, Liang Gongqian. Quality information database model based on military aircraft life-cycle BOM[J]. Aeronautical manufacturing technology, 2011(8): 62-65.(in Chinese)
[8] 张海军, 闫琼. 面向航空复杂产品的大数据制造[J]. 河南科技学院学报: 自然科学版, 2016, 44(1): 68-73.
Zhang Haijun, Yan Qiong. Big data manufacturing for aviation complicated products[J]. Journal of Henan Institute of Science and Technology: Natural Science Edition, 2016, 44(1): 68-73.(in Chinese)
[9] 杨伟, 赵锁珠. 飞机研发中的精益设计与敏捷管理[J]. 航空工程进展, 2010, 1(1): 6-11,16.
Yang Wei, Zhao Suozhu. Lean design and agility management of the aircraft research and development[J]. Advances in Aeronautical Science and Engineering, 2010, 1(1): 6-11,16.(in Chinese)
[10] 朱明晖. 一个汽车公司EBOM软件系统的设计与实现[D]. 长春: 吉林大学, 2015.
Zhu Minghui. Design and realization of EBOM software system of a vehicle corporation[D]. Changchun: Jilin University, 2015.(in Chinese)
[11] 杨玺, 范玉青. APL表及其在飞机制造中的应用[J]. 航空制造技术, 1999(5): 19-22,32.
Yang Xi, Fan Yuqing. APL and its usage in aircraft manufacturing[J]. Aeronautical Manufacturing Technology, 1999(5): 19-22,32.(in Chinese)
[12] 谷秋实, 闫崇京, 陆鹏. 基于存储过程的单层BOM到混合BOM的自动转化算法[J]. 机械设计与制造工程, 2016, 45(2): 17-20.
Gu Qiushi, Yan Chongjing, Lu Peng. An algorithm of conversion from single BOM to hybrid BOM based on store procedure[J]. Machine Design and Manufacturing Engineering, 2016, 45(2): 17-20.(in Chinese)
[13] 李旭玮, 罗璇. 应用VBA实现EXCEL自动化[J]. 科技资讯, 2007(31): 122.
Li Xuwei, Luo Xuan. Automation of EXCEL with application of VBA[J]. Science & Technology Information, 2007(31): 122.(in Chinese)
[14] John Walkenbach. 中文版Excel 2010高级VBA编程宝典[M]. 冉豪, 崔婕, 金太阳, 译. 北京: 清华大学出版社, 2012.
John Walkenbach. Excel 2010 power programming with VBA[M]. Translated by Ran Hao, Cui Jie, Jin Taiyang. Beijing: Tsinghua University Press, 2012.(in Chinese)
[15] 罗刚君. Excel VBA程序开发自学宝典[M]. 2版. 北京: 电子工业出版社, 2011.
Luo Gangjun. Excel VBA programming self-study bible[M]. 2nd ed. Beijing: Publishing House of Electronics Industry, 2011.(in Chinese)
(编辑:马文静)
Research on the Tool for Making Standard EBOM of Civil Aircraft
He Wei
(Research & Development Center, AVIC SAC Commercial Aircraft Company, Ltd., Shenyang 110179, China)
EBOM (Engineering Bill of Material) applied in aircraft field is deliverable which design department of aircraft engineering should provide to procurement, methods and project department as the basis of purchasing and manufacturing controlling. Whether the information is ample or deficient, whether the format is standard or nonstandard, whether it is easy to read or not, they all represent the work quality of design department to some extent. Taking the relatively standard EBOM practically applied in one civil airplane project as the original version, and the Excel tables as applying platform, the necessary property information has been customized, and one set of method and workflow has been customized by use of the functions of Excel and VBA(Visual Basic for Application). The workflow of formatting EBOM has been programmed, which realize the automatic generation of standard EBOM.
EBOM; Listing Report; Bill of Material; VBA; tool of typesetting
2016-04-13;
2016-05-13
何薇,he.wei@sacc.com.cn
1674-8190(2016)03-374-08
V222
A
10.16615/j.cnki.1674-8190.2016.03.017
何薇(1982-),女,硕士,工程师。主要研究方向:机身结构设计。