李成华,程学森,陈贵刚,陈代鑫,陈 伟
(中航工业成都飞机工业(集团)有限责任公司,成都 610092)
航空制造业中工艺文件自动编号系统的设计与实现
李成华,程学森,陈贵刚,陈代鑫,陈 伟
(中航工业成都飞机工业(集团)有限责任公司,成都 610092)
在航空制造业中,质量控制尤其严格。零件的整个生命周期中有许多与零件图号相关的工艺文件,每一项文件都将进行编号,文件编号将作为文件的唯一标识。目前采取在纸质账本上编号记录的办法,既麻烦也不便于查询、汇总以及各单位之间的协调,导致文件管理困难。为了解决这些现有问题以便严格控制零件的质量状态,开发了工艺文件自动编号系统,通过系统可以快速的查找文件号,汇总项目文件清单等,相对于人工记录而言,此系统极大方便了大量文件的管理,最终保证了生产质量的控制、提高了生产效率。
工艺文件;自动编号;ACCESS;Excel;二次开发;管理;汇总;数据导出
随着国防航空工业的发展,航空制造业中不仅生成任务繁重,生产过程复杂,而且产品质量要求越来越严格,为了提高工作效率公司引进PDM,CAPP等系统,提高了公司的信息化水平及生产力。工艺工作也都基本在PDM系统上完成,员工编制的所有的工艺文件最后都需要提交PDM系统,在提交文件时候需要给文件输入唯一的文件编号,编号作为文件的唯一标识。以后查看文件时只需要在PDM系统的搜索框中输入文件编号即可查找到文件,如果对文件编号不清楚,那么查找文件将变得困难,因此有效的管理好文件编号将显得尤为重要。
目前通过纸质账本进行编号,不仅操作麻烦,容易出错,而且难于查找和汇总,文件编号查询的矛盾日益突出,无法适应当前的形式。当前文献大多阐述文件编号的通用规范[1~3],对具体实现编号的算法很少涉及。本文在分析文件编号规则的基础上结合数据库等知识,提出一种自动编号的算法。在此基础上开发工艺文件自动编号系统用以解决企业在文件编号方面的突出问题。
公司目前在制机型30余项,工艺文件包括:零件状态交接单,工具订货单,工装订货单,拼装单,问题释疑单等共计40余项,合计零工艺文件编号种类达到1200余项。由于编号量大,采用纸质账本编号的方式存在大量问题,例如:纸质编号本占据大量的物理空间;编号前总会到处寻找相应的账本,文件编号不方便;查询编号只能通过人工逐条查找,耗时耗力;无法高效汇总项目文件编号清单等等。由于编号方式落后,造成在文件编号相关问题上耗费了大量精力,严重影响工作效率。
针对上述问题,结合公司文件管理的需要,开发工艺文件自动编号系统,解决目前在编号方面的问题。系统功能需求主要包括以下四方面:
1)自动编号功能,编号时只需要输入相关信息系统就能自动生成唯一编号;
2)查询功能,方便对文件编号查询;
3)数据批量导入接口,新机研制是可通过项目清单批量导入编号,提高效率;
4)提供数据输出接口,数据可输出到Excel中进行分类汇总。
2.1 编号规则剖析
文件编号通常包含:机型,单位,文件类别,年代,序号共5种信息,但是由于机型的不同,执行的文件编号标准也不一样,这五种信息的表示方式以及连接符号的选择都不同,造成零件编号的样式繁多。文件编号对比如图1所示。
文件编号中的序号是以1为公差递增的等差数列,第一个该类型的文件的序号为“001”,第二个为“002”,以此类推。
2.2 基于规则定义的编号方法
从对文件编号规则的分析,要使自动编号系统能够实现自动编号,我们需要在后台程序中定义相应的文件编号规则,规则确定之后,还需要程序在当前数据库中查找当前机型文件下最后一个文件的序号,然后在此序号的基础上加1,即为当前文件的序号,以上两步完成之后将规则和序号组合即实现文件的编号。编号实现的流程图如图2所示。
图1 文件编号对比
图2 编号实现流程图
以上的算法能够实现文件的编号,但是由于机型和文件的数量都比较大,加上具体格式的差异,在进行规则定义时将面临相当多的分支选择,程序编制麻烦,况且定义编号规则的标准文件并非一层不变,标准文件一旦改动,则必须更改程序后台源码,程序适应性,健壮性差。
2.3 基于字段拆分的编号方法
由前面分析可知,虽然从整体上讲零件的编号规则类型数量大,但是针对同一机型的同类文件编号的差异却很小,除了文件序号呈递增关系外,其余完全一样。因此,可以将文件编号以序号为分界线拆分为编号规则部分和序号部分,在程序中将对两部分数据采取不同的处理方式,编号规则依次复制,序号则依次加一。此种方式避免了在程序中对规则进行定义,只需要在编制第一条文件编号时,弹出对话框让用户输入编号规则,以后每次编号时候都复制这个规则。后续使用过程中如果需要添加新的机型、文件类型或编号规则变更的时候,只需要用户输入新的规则即可,程序后台源码不用修改,程序的适应能力更强。编号拆分示意图如图3所示。
图3 编号拆分示意图
3.1 Access简介
Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。Access的用途体现在两个方面:
1)用来进行数据分析。Access有强大的数据处理、统计分析能力,利用Access的查询功能,可以方便地进行各类汇总、平均等统计。并可灵活设置统计的条件[4]。
2)用来开发软件。Access支持Visual Basic语言,它是一个面向对象的编程语言,可以引用各种对象,包括DAO,ActiveX数据对象以及许多其他的ActiveX组件。可以用于快速的开发应用软件。
3.2 表结构的设计
通过前面对编号算法的分析,自动编号系统采用基于字段拆分的编号方法。从编程的便利性角度考虑,将编号规则字段和序号字段作为普通列置于编号本数据表中。为了使表中记录便于快速索引,设置数据类型为“自动编号”的ID字段作为表的主键,编号时为了使最后一条记录为序号最大的行,表数据按“ID”列递增排序即可。除了满足自动编号的需求外,后续还将对编号数据按类别进行分类汇总,因此添加“类别”列,作为后续分类汇总的关键字。依据按机型分类管理文件的原则,一个机型对应一个数据表,数据表名为机型名。数据表结构图如图4所示。
3.3 主窗体的设计
以编号流程为主线来分析窗体的设计。编号时首先会选择机型,然后选择文件的类型,输入零件图号及文件的说明信息,最后得出当前的文件编号。因此窗体设置相应的下拉列表框及文本框作为基本数据的输入。当选择机型后,数据表格会将数据源限制为当前机型的文件编号;选择文件类型后,将对数据列表中数据进行筛选,显示为当前机型,当前文件类型下的文件编号;输入图号和说明信息;点击“新添”按钮生成文件编号。编号以当前最后一条记录为基准实施递增编号,如果当前编号为空,那么会依次弹出对话框让用户输入“编号规则”和“序号”,如果由于文件规则改变或跨年等原因造成编号规格变更,用户只需要选中“人工干预”复选框,重新定义“编号规则”和“序号”即可。编号流程图如图5所示,主窗体如图6所示。
图4 数据表结构图
图5 编号流程图
图6 主窗体
窗体数据筛选的伪代码如下:
3.4 批量导入文件编号
在新机研制的时候需要编制大量同类型的工艺文件,为了提高效率,可以预先依据项目清单在Excel模板中利用填充句柄批量编制文件编号(模板结构与数据库中表的结构一致),然后将数据一起导入自动编号系统中。数据导入利用SQL追加查询将Excel数据导入Access中,追加查询伪代码如下:
3.5 数据导出
自动编号系统将所有文件编号信息存储在数据库中,后续工作中将会对某些类文件进行分类汇总等,因此需要将数据导出至Excel文件中。由于Access具有强大的数据查询和导出功能,系统导出数据不再采用遍历数据库中所有记录依次写入Excel文件的方式,而是预先在数据库中建立需要导出数据的查询[5],然后利用SQL查询语句将系统查询导出到Excel文件中。数据导出的核心伪代码如下:
本文从工艺文件编号管理困难的实际问题出发,基于Access开发工艺文件自动编号系统,系统不仅实现了将编号由传统的人工编号向系统自动编号方式的转变,而且还具备编号查询,数据导入,导出等功能,免去了人工查找,分类汇总文件编号的麻烦,大大提高了工作效率。
[1] 马英萍.对技术文件编号改进的思考与探索[J].航天标准化,2002(2);8-12.
[2] 刘世江.谈谈工艺文件成册和编号的问题[J].航天标准化,1999(5);25-26.
[3] 华吉鹏,陈永莲.设计文件编号管理系统的功能与实施[J].CAD/ CAM与制造业信息化,2003(6):28-31.
[4] 米红娟,李海燕.Access 2007数据库应用教程[M].北京:科学出版社,2012.
[5] 张婷,余健.Access 2007课程设计案例精编[M].北京:清华大学出版社,2008.
图6 软件总体流程
参考文献:
[1] 万里瑞.太阳能电池自动跟踪系统的设计[J].机械工程与自动化,2008,(3):156-158.
[2] 李永霞,李战,刘畅,等.基于STC单片机的太阳能电池板自动追日系统[J].计算机应用,2013,33(S2):331-332,335.
[3] 张晓霞,殷盼盼,张国,孙常生,朱建衡.基于C8051F的太阳能电池自动跟踪系统[J].沈阳建筑大学学报(自然科学版),2009,25(4): 767-771.
[4] 罗维平.基于欧姆龙PLC的太阳能电池板自动跟踪系统的研究[J].可编程控制器与工厂自动化,2009,35(9):138-140.
[5] 高磊,谢玲玲,卓浩泽,舒鹏飞.基于步进电机细分驱动的太阳能自动跟踪系统的设计[J].电子元器件应用,2011,(12):11-16.
[6] 李珺,宋文龙,王禹淇.太阳能电池板自动跟踪电路设计[J].节能技术,2013,31(4):310-312.
[7] 王国龙.基于单片机的双轴太阳能跟踪系统的设计[J].电子设计工程,2013,21(15):171-173.
[8] 张常年,赵红怡,吕原.太阳能电池自动跟踪系统的研制[J].电子工程师,2001,27(12):26-27.
[9] 赵涛,周兵,薛晖,汤杰.基于CAN总线太阳能电池自动跟踪控制器的设计[J].制造业自动化,2012,34(23):105-108.
[10] Riyad Abu-Mallouh, Salah Abdallah, Iyad Muslih. Design, construction and operation of spherical solar cooker with automatic sun tracking system[J].Energy Conversion and Management,2011,52(1):615-620.
[11] 秦冲.基于单片机的太阳能跟踪发电控制系统的设计[J].机械制造与自动化,2012,41(1):139-141.
[12] Safa Skouri,Abdessalem Ben Haj Ali, Salwa Bouadila, Mohieddine Ben Salah, Sassi Ben Nasrallah. Design and construction of sun tracking systems for solar parabolic concentrator displacement[J]. Renewable and Sustainable Energy Reviews,2016,60:1419-1429.
The design and application of process documents automatically numbering system in aviation manufacturing industry
LI Cheng-hua, CHENG Xue-sen, CHEN Gui-gang, CHEN Dai-xin, CHEN Wei
TP391
B
1009-0134(2016)12-0109-03
2016-09-01
李成华(1989 -),男,重庆人,工程师,硕士研究生,研究方向为机械制造、加工工艺、企业管理信息化、CATIA和Access二次开发等。