发动机外协件装配线防错系统设计与实现
2015-11-28张吴波
张吴波
(湖北汽车工业学院电气与信息工程学院,湖北十堰442002)
随着汽车发动机排放标准要求越来越高,发动机的设计要求、零件加工和装配质量要求也越来越高。在汽车生产规模不断扩大、生产节拍不断提高的背景下,发动机装配大多己实现混流装配。由于不同型号发动机的共线生产,装配线上每天都要更换产品型号,而每种产品所搭配的零件物料及工艺要求各不同,使得发动机装配过程错综复杂[1]。
外协件装配是发动机的重要组成部分。虽然发动机装配线应用了在线自动装配、自动检测等技术功能,但如果采用人工目测、人工分检等传统的预防方法,当发动机大批量、连续混流生产时,操作者受视觉疲劳和劳动强度的影响、装配过程中分辨效率低下等原因而容易出错[2]。因此需要在发动机外协件的装配过程中采用一些防错技术,以有效地控制发动机的制造质量,保证发动机高精度、高效率、高质量的装配。
1 系统要求
发动机外协件装配线根据生产计划,将发动机装配所需的外购件按装配需求,输送到指定工位,并按照要求装配,如图1所示。
图1 发动机外协件装配线示意图
1#工控机位于发动机转配线的喷漆下线处,当发动机下线时,需要登记发动机的标识号,用以指示外协件库的物料管理员,按照下线的发动机型号将需要集配的零件装到物料小车。装车后的物料被送往外协件装配线,操作工人按照看板,选取相应零件进行集配。
在外协件装配中容易因人为因素导致发生错装、漏装:1)在选取集配零件时,操作工人可能将装车物料选错;2)在装配工位上,操作工人从物料小车中选取零件时,可能将零件选错;3)在装配时可能将零件装错,或者安装不到位。防错系统应对这些易出错的环节进行监控和管理。
2 系统设计
2.1 系统架构
外协件装配防错系统,开发采用基于.NET 架构的C#语言开发,采用C/S(客户端/服务器)模式,各个工控机作为客户端,完成数据的采集、显示;服务器端完成数据的存储。客户端开发工具采用VS2005,服务器端的数据库采用Sql Server 2000。根据系统要求,设计系统的拓扑结构如图2所示。
装配线上的各工控机通过局域网连接,数据库服务器通过交换机与MES 服务器交互,定时从MES系统提取发动机装配零件数据。1#工控机对下线的发动机条码进行扫描,并将发动机的条码与发动机型号对应,并保存在数据库服务器中。2#工控机和3#工控机根据装配的发动机标识号,提示操作工人正确选择装车的零件。当2 台集配小车上的零件全部扫面合格后,物料小车才能送往装配线。4#工控机安装在外装上线,用于比对物料小车的条码和发动机条码是否吻合。
图2 拓扑结构
2.2 系统流程
根据装配线要求,防错系统的处理流程设计如图3所示。系统定时从MES系统中下载机型信息以及BOM信息等,并将其保存到数据库服务器中,实现与MES系统的无缝连接。在1#工控机扫描完发动机条码后,从数据库服务器中提取发动机所属机型,操作员确认后,保存进数据库,并根据装配的先后顺序对待装配发动机进行排序。2#、3#工控机按照发动机的排序选择装配的发动机,然后提示发动机所需装配的零件。在将零件装车时,扫描零件的条码,并判断其是否符合发动机的装配条件。装车完毕后,打印发动机装车清单,扫描装零件的物料小车条码,建立小车与发动机对应信息。在4#工位扫描发动机条码、小车条码,如果发动机条码和小车条码匹配,进入工人装配环节,完成装配。
2.3 数据库设计
对系统需要处理的数据进行抽象、建模,设计出如图4所示的E-R图。
图3 系统流程
图4 系统E-R图
发动机型号表示装配线需要装配的发动机机型,具体装配的发动机具有唯一的条码,通过生产计划与发动机型号对应。每种类型的发动机机型都有一个物料装配清单BOM,指明生产实际使用的BOM,即实际生产按照什么样的工艺,需要哪些材料,在什么设备上生产,安排多少工人等等信息。具体安装在发动机上的零件具有唯一的条码,在安装完成后,每台发动机有一个具体的安装清单表。其中关键的物理表设计如表1~2所示。
表1 发动机表
表2 BOM表
2.4 功能设计
根据系统功能与系统流程图,系统设计的主要功能如图5所示。
图5 系统功能结构图
1)发动机BOM 数据管理 定时从MES系统下载机型数据,并保存到本地数据库服务器中。提供根据发动机型号,查询所需装配的零件、安装工位等信息。
2)发动机条码管理 完成对发动机的扫描,登记发动机所属的型号,并按照扫描顺序对发动机进行排序。将扫描的发动机条码推送到下一工位。
3)零件选取管理根据选择的发动机条码,完成对零件条码的扫描,并根据定义的发动机BOM 数据比对所选择的零件号和发动机型号,匹配成功的零件提示装入小车,不成功的提示错误,并记录发动机条码和零件号的对应。完成对已经装车完毕的小车条码扫描,并记录其和发动机条码的对应关系。只有所有需装配的零件装车完毕后才能对小车条码扫描,并送入下一工位进行装配,并打印所装配的零件清单以及装车号。
4)发动机装配管理 扫描发动机条码、小车条码,根据装配清单进行对比。比对成功的送入装配线进行装配。
3 系统实现
3.1 数据同步
防错系统中的核心数据——BOM 数据,是在其上游的MES系统中设计、管理,为了保证在装配过程装配零件的正确性,并指示操作工能正确选取装车零件,系统需提取MES系统中的BOM数据,并与其保持一致,因此需要定时从MES系统提取数据。定时任务使用Quartz.NET实现。
Quartz.NET是一个开源的作业调度框架,是OpenSymphony的Quartz API的.NET移植。它提供了巨大的灵活性而不牺牲简单性。
在Quartz.NET框架代码中,通过创建一个调度器构造工厂StdSchedulerFactory,并通过GetScheduler()函数构造调度器,定义任务(JobDetail)和触发器(trigger),在任务中指定需要定时执行类,触发器设定定时执行的时间。再将任务与触发器添加到调度器中,并启动调度器。SynJob是一个实现了IJob 接口和Execute()方法的数据同步类,在调度器的管理下按照定时器的时间设定,定时执行其实现的Execute()。
在SynJob中,首先连接MES系统的数据库,根据生产计划表,查找当天需要装配的发动机型号,根据发动机型号,将BOM 数据表中的相关记录下载到本地。根据物料号,在本地数据库的BOM 数据表中查询是否存在该物料的信息,如果存在则更新,如果不存在则将其插入到数据库中。
3.2 物料提取防错
在发动机装配中,存放各式零部件和物料,物料管理员需要根据装配的发动机要求,按需提取物料进行装配操作。物料的提取过程存在错拿、漏装等人为失误,这些人为失误将直接影响到发动机的装配效率品质。因此将仓库中的各个零件,打上不同条形码,其格式为“厂代码+零件号+流水号”,其中流水号为零件的唯一码,不可重复。系统通过条形码辨识具体的零件和发动机。
零件入库时,为每一个零件制作、打印、粘贴一个条码,用条码扫描枪对零件条码进行逐件扫描,读取扫描枪扫描的零件号,将其保存在数据库中。当发动机从喷漆线下来后,对发动机的条码进行扫描,发动机条码送入待装配的发动机排序表,并从数据库服务器的BOM表中,根据其发动机型号进行查找,得到需要装配的零件号、安装工位、数量和装配要求。物料管理员在待装配的发动机排序表中选择一台发动机后,工控机上显示该发动机需要装配的零件号和个数。管理员选取相应的物料小车,使用扫描枪扫描小车上的条码,将其与发动机的条码对应后,保存数据库中。在选取的零件中,逐一扫描零件上的条形码,根据条形码确定零件所属型号,判断零件是否属于BOM 数据表中提取发动机的零件装配清单中的零件,如果是提示正确,否则提示错误。系统根据扫描的零件型号,对装车零件数量进行计数。只有所有零件正确地装入物料小车后,物料小车被送往装配线装配。在装配线进行装配时,操作人员先对物料小车条码和发动机条码进行扫描,判断物料小车是否为在选料时发动机对应的小车条码,二者匹配才能进行装配。
4 结论
防错系统依托上游MES系统的BOM 数据,根据需要装配的发动机型号,指示操作工正确选择装车零件,并对装车零件进行有效判断,可以减少物料提取的错误;对装车的零件进行保存,可以有效地追溯零件,从而防止物料装配过程的失误。
[1]王建国.防错技术在发动机制造中的应用[J].汽车与配件,2014(19):72-75.
[2]黄谦.防错技术在发动机制程中的应用[J].装备制造技术,2014(1):189-191.
[3]李英婧.发动机总装的防错措施[J].现代零部件,2010(8):48-50.
[4]吴春其.典型防错技术在生产制造中的应用[J].科技视界,2012(35):137+150.
[5]王云,窦本虎.关键零部件装配防错及追溯技术[J].汽车工艺与材料,2014(7):51-53.
[6]张友兵,杨亚会,夏鹏涛.基于S-BOM的汽车状态数据管理系统研究与实现[J].湖北汽车工业学院学报,2012(1):38-41.