APP下载

发动机混装生产线防错系统设计

2019-01-08费晓东赵转萍黄开元

机械制造与自动化 2018年6期
关键词:光电开关开发板流水线

费晓东,赵转萍,黄开元

(南京航空航天大学 机电学院,江苏 南京 210016)

0 引言

混合装配生产线是指在一条生产线上,通过改变装配零部件的型号来生产不同种类的产品[1]。混装生产线一方面由于每个工位装配零部件的不同加大了工人操作的难度与强度;另一方面经常在流水线更换产品时发生错装、漏装等问题。而防错系统可以有效地减小上述错误的发生,提高产品的合格率[2]。

防错系统的运用在国外发展得很成熟,不同的公司都有适合本公司生产特点的防错控制系统。国外的通用性防错系统价格昂贵,并且对于国内大量的企业都不适用。目前国内制造商在防错系统上处于刚刚起步阶段,没有成熟的防错控制系统[3]。

某公司目前生产2个系列24个型号的发动机,急需一套防错装置来提高产品的合格率。防错装置要适应装配线上发动机的混线生产,因此整个装置因尽可能小巧,并且识别判断时应使用非接触式传感器。针对上述需求,设计一套基于嵌入式的混装生产线防错系统,并采用机器视觉系统。嵌入式控制系统体积小,占用空间不大,相机作为非接触式传感器可以准确地采集防错特征以便系统识别判断。该生产线上不同型号的后壳,其挺住安装孔直径不同,因此选取挺住安装孔作为后壳的防错识别特征;不同型号的挺住,其与挺住安装孔之间的间隙不同,因此选取挺住与其安装孔之间的间隙作为防错识别特征。系统采用机器视觉来识别不同型号的零部件,视觉识别可以有效地提取安装孔的直径以及挺住与安装孔的间隙信息。系统能够适应混合装配流水线生产的防错控制要求,从而保证零件与发动机型号的正确匹配或错误匹配的不流出。

1 防错系统控制原理和流程设计

系统通过采集发动机的型号数据和采集防错特征图像,由系统确定所对应的发动机型号和所装配的零部件型号,并和数据库中保存的正确匹配信息进行比对,来判断装配是否正确。如果装配正确则该零件流向下一个工位,否则重新装配直至装配正确,从而保证了错装产品的不流出。

防错装置要适应生产线的混线生产,并且不影响现有的装配流程。因此防错装置一次检测时间必须满足流水线的节拍要求。该公司的混合装配流水线的节拍为1min, 一个节拍的时间分配如图1所示。

图1 一个节拍的时间分配图

控制系统流程图如图2所示。

图2 系统工作流程图

1) 系统开机后,先进行自检,自检无误后进行下一步,否则报警提示系统异常并结束程序;

2) 等待光电开关信号,以此确定发动机是否到位,如果等待时间>5s无信号则报警提示光电开关异常并结束程序;

3) 等待按键信号,等待工人安装零部件并将发动机转到合适的安装位置,如果等待时间>5s无信号则报警提示按键异常并结束程序;

4) 扫描枪扫描二维码确定发动机型号,若成功则继续,否则如果等待时间>5s无信号则报警提示扫描枪异常并结束程序;同时机器视觉系统图像采集并处理,若成功则继续,否则继续采集并处理,如果采集次数>5次则报警提示机器视觉系统异常并结束程序;

5) 嵌入式控制系统确定是否匹配正确,若正确转6),否则转7);

6) 提示正确数据保存输出后进行判断是否继续检测,继续则等待光电开关信号,结束检测则程序结束;

7) 提示装配错误,气缸工作,数据保存并提示重新装配,之后等待按键信号。

2 防错系统硬件构成(图3)

防错系统所需硬件均需适应流水线的生产,因此需根据装配流水线的特点选择合适的硬件,所有硬件均不能与现有流水线的硬件发生干涉。

图3 系统硬件组成框图

1) 系统需要硬件发出启动信号来开始检测程序,选择发动机进入某工位时发出启动信号。该硬件要适应生产线的生产,因此体积要小,并且每次发动机到达检测工位后能及时发出启动信号。鉴于上述需求,选择光电开关,体积小,耐用,并且当发动机进入工位时会遮挡光电开关发出的信号,由此激发启动信号。

2) 系统采集发动机的型号数据,由于公司发动机型号数据有限,同时需要快速采集,鉴于每款发动机都有唯一的二维码与之相对应,因此选择扫描枪作为采集硬件,扫描枪体积小,可以快速采集数据。

3) 对防错特征采集须使用非接触式传感器,并且要快速准确,鉴于防错特征是直径的大小,选择相机作为采集硬件。

4) 系统所需的控制器不能与现有部件干涉,并且处理速度要快,环境要求度不能太高。因此选用嵌入式开发板作为控制处理单元以满足上述要求。

5) 当装配出错时,由于流水线的运转会使得该发动机流向下一个工位。因此需要使用挡块来阻止问题发动机流向下一个工位,由于流水线是滚筒型的,每个滚筒之间有间隙,因此采用气缸作为挡块,在滚筒之间安装气缸,气缸伸出不会与流水线发生干涉,同时也可以很好阻挡问题发动机流向下一个工位。

6) 当工人装配完成或者想结束程序时,需要工人手动发送一个信号给控制系统,该硬件需操作简单,并易于控制器连接,因此选用按键开关作为信号发生装备。

工作站物理模型如图4所示,其中开发板、相机、扫描枪处于装配人员的对侧,从而不干涉生产线的正常生产;按键开关与工人处于同一侧,方便装配人员使用;气缸位于流水线下方;光电开关分别固定在流水线两侧。

1—开发板;2—相机;3—扫描枪;4—发动机;5—气缸;6—流水线;7—按键;8—光电开关;9—转盘图4 工作站物理模型

Mini2440嵌入式开发板只有1个USBhost接口,而系统中3个外设是通过USB与开发板相连的,因此使用USBhub进行扩展。

光电开关采用M12NPN型对射型光电开关,当发射端与接收端中间有物体遮挡时,接收端有信号输出,一般为低电平;反之输出高电平。由于输出的是模拟信号,需要通过AD转换器转换为数字信号以供读取。友善mini2440内置开发板,通过GPIO口引出了AD转换接口,故将光电开关的输出端接到开发板的AD转换口即可。

按键开关使用普通按键开关,通过USB接口与开发板相连。

扫描枪为自动感应条码扫描枪,此款扫描枪为自感式,既不需要人为按键即可扫描条形码。当有条形码出现在其感应区域内时,该扫描枪就可以自动扫描条形码。扫描枪通过USB口与开发板相连,扫描枪工作为键盘模式。

相机采用500万CMOS工业相机,搭配环形光源,通过对挺住和后壳的装配图拍摄并进行图像处理以识别装配情况。相机通过USB口与开发板相连。

气缸通过双控电磁阀来控制,双控电磁阀与开发板GPIO相连接,对该GPIO口输出高/低电平即可控制气缸进行往复运动。

3 防错系统软件设计

3.1 嵌入式Linux开发环境的建立

系统使用Mini2440作为开发工具,首先需要搭建交叉开发环境。宿主机为虚拟机中安装的红帽企业版6,目标机为开发板上所运行的嵌入式Linux系统。开发之前需对目标板进行系统移植:BootLoader的移植;Linux内核的移植;文件系统的实现。系统使用supervivi作为BootLoader,Linux内核通过配置去掉不必要的部分,使其占用空间更小,能耗更低;文件系统采用ext2文件系统。开发时首先在虚拟机Linux中编写程序,然后用arm-Linux-gcc交叉编译工具编译程序,再将编译好的程序拷贝到开发板上运行[6]。

3.2 驱动程序的编写

系统中外设均需驱动的支持,驱动均可以通过编写、移植或者配置内核以实现。

1) 光电开关输出的信号需要通过开发板上的AD转换器转换为数字信号,因此需编写ADC驱动程序,ADC设备在Linux中可以看做是简单的字符设备,也可以当做是一混杂设备(misc设备),系统中当做misc设备来实现ADC的驱动[7]。

2) 按键和扫描枪均可以工作为键盘模式,所以在编译嵌入式linux内核时需添加对键盘驱动的支持。具体步骤:makemenuconfigARCH=armCROSS_COMPILE=arm-linux- /DeviceDrivers/Inputdevicesupport/keyboards。

3) 相机采用CMOS工业相机,该相机支持UVC协议,所以在编译嵌入式linux内核时需添加对UVC相机的支持。具体步骤:makemenuconfigARCH=armCROSS_COMPILE=arm-linux- /DeviceDrivers/Multimediasupport/Videocaptureadapters/V4LUSBdevices/USBVideoClass(UVC)、UVCinputeventsdevicessupport。

3.3 系统应用软件设计

软件设计中,使用Linux系统软件进行开发,通过对驱动的编写对相机、接近开关和气缸进行控制。课题中需要采集扫描枪的信号,然后需要去数据库中查找相对应的零件型号,管理员可以更改数据库,同时需要采集相机的信号与数据库中查到的零件型号进行对比,另外还需要报警和控制气缸使活塞杆伸出。

系统应用软件主要包括以下模块(图5):用户登录、光电开关模块、二维码采集模块、按键模块、机器视觉算法、运动控制模块、显示输出模块、数据库管理模块。其中用户登录负责区分管理员与普通用户,管理员权限高,避免普通用户误操作;光电开关模块检测发动机是否到位;二维码采集模块采集发动机上的二维码信息以此来确定发动机的型号;按键模块通过检测是否有键按下来判断工人是否装配完毕;机器视觉算法负责对采集的图像进行处理,获取防错特征的具体信息;运动控制模块根据匹配情况来决定是否使气缸工作;显示输出模块对装配结果进行输出;数据库主要保存不同型号的发动机所对应的零部件尺寸与二维码信息,另外还需要保存防错系统检测结果:正确装配数量、错误装配数量,并可以人工清零。

图5 系统软件结构图

4 防错系统可靠性分析

4.1 防错原理

发动机混合装配流水线复杂度高,系统中各个环节的可靠性共同决定其整体的可靠性。

RS=Rh×Rm

(1)

式中:Rs为整个系统的可靠度;Rh为人的可靠度;Rm为设备可靠度。其中Rh由各个工位上工人所装配零部件的准确度决定的。发动机由上百个零部件组成。在流水线上装配时,主体部分固定在流水线上,随流水线的移动而移动;各种零部件分布在不同的装配工位上,不断地添加到主题部分上,最终形成完整的发动机产品。

混合装配流水线的突出特征即装配工位上零部件的多样化。如图6所示,每个工作站上既有产品A的零部件,又有产品B的零部件,两种产品的零部件之间可能差距很小;同时也有通用的零部件。

图6 混合装配线产品物流

防错控制系统通过对装配结果的检测可以有效地减少各个工作站的错装率,提高Rh,从而提高整个系统的可靠度。

本文所设计的防错系统可能会发生故障,使其防错功能不能正常实现,甚至出现误判率很高的情况。因此需要对本系统可靠性分析并采取措施提高可靠性。

系统最终检测结果存在两种错误判断:

1) 漏判,将装配错误的情况判断为正确。

2) 误判,将装配正确的情况判断为错误。

防错系统可靠性是指在实际生产线上应用时,在一定的生产周期内,保证错误装配产品的不流出的能力。可靠性是一个与时间有关的概念,时间越长,可靠性越低[8]。防错系统是一个串联系统,系统总体的可靠性为各个元器件可靠性的乘积。

(2)

式中:Rs为总体的可靠性,Ri为每个元器件的可靠性。因此提高每个元器件的可靠性极为重要。

4.2 保证可靠性要求的措施

防错系统需保证在3个月内共检测约13万件不发生故障,并且漏判率和误判率要满足要求。

系统中所使用的硬件均采取以下措施提高其可靠性:1) 元件降额使用,例如:光电开关等使用时间为其额定寿命的1/4时更换新的光电开关;2) 元件筛选,例如:让扫描枪处于加温振动等模拟环境下,使得相对差的产品可以提前失效;3) 硬件冗余,如使用两个光电开关等,一个光电开关失效时另一个光电开关元件可以继续工作;4) 信息冗余,如条形码在制定时加入冗余位,同时对二维码进行多次采集,提高条形码扫描的可靠性。本系统设计一个安装平台,平台独立安装在地上,平台上再放置各种元件,可以降低振动对系统的影响。

对防错系统检查可以发现故障,极大地提高可靠性。自检技术分为离线自检与在线自检。离线自检为定期对防错系统进行检查,发现固定性故障,只有无故障才可以开始工作。在线自检为边工作边自检,可以发现偶然性故障。每次开机后进行自检,自检方法有重复自检、再生输入自检、输出自检、校验自检与全信息自检[9]。通过上述措施来保证其在3个月内不发生故障。

系统既需要满足3个月内共检测约13万件不发生故障的要求,也需要满足漏判率和误判率的要求。系统漏判或者误判关键在于机器视觉算法对防错特征识别的准确性,系统防错特征为圆的直径。由于实际采集图片时相机拍摄平面与待拍摄平面存在夹角,所以拍摄出的图像中特征已变成椭圆,拟采用椭圆识别算法对防错特征进行识别。椭圆识别算法可以准确地识别出图像中椭圆的长轴长和短轴长。有理论可以证明长轴长即为实际圆的直径。由于不同型号的零部件上作为防错特征圆的直径差距较大,已达到mm级,而系统所采用的相机的像元尺寸为2.2μm×2.2μm,理论上识别算法精度已达到μm级,实际中图像处理算法精度达到0.05mm,可以满足一定的漏判率和误判率要求。

5 结语

设计了一种基于嵌入式Linux、ARM微处理器和机器视觉系统的发动机混装生产线防错系统。系统地介绍了硬件构成与接口,阐述了软件系统的设计,最后对系统的可靠性进行了分析,系统可以实现防错功能。系统对于国内混装生产线防错系统的研究具有较大意义。

猜你喜欢

光电开关开发板流水线
一种积放光电开关镜头窗自清洁装置研制
基于STM32H7的FDCAN通信系统设计与实现∗
流水线
残疾人专用翻书机的设计
浅析单片机开发板的设计与制作
报废汽车拆解半自动流水线研究
ARM宣布mbed Enabled Freescale FRDM—K64F开发板通过微软认证
浅谈传感器在光电状况下的特性与应用
浅谈传感器在光电状况下的特性与应用
流水线生产杀死艺术