SCI论文(www.lunwensci.com)
摘要:基于高职院校电气自动化及电子信息技术类专业的综合实训教学需求,以嵌入式系统为核心设计了基于视觉的机器人物料分拣实训生产线平台。平台包括STM32主控系统、搬运机械手、OpenMV机器视觉模块3部分,通过Modbus协议RTU通信模式实现数据通信;其中主控系统控制生产线工作流程,协调机械手及视觉模块的运行;机器视觉模块负责识别需要分拣的物料,通过设定目标颜色阈值、相机采集图像、颜色二值化滤波、Blob寻找目标色块,将识别到的物料颜色结果发送到主控系统;五轴机械手采用数字舵机驱动,作为分拣的执行装置,预设了不同颜色物料的分拣搬运动作组,能够由主控系统的信号完成对应的动作过程。经样机试验,物料分拣生产线对目标颜色的识别与分拣准确度综合达到93%以上,采用Modbus协议有效保障通信连接的稳定性,整体运行情况良好。该实训生产线有利于培养学生的工程实践和创新能力。
关键词:物料分拣;STM32;OpenMV;实训平台
DesignofMaterialSortingTrainingProductionLineBasedonMachineVision
XiaoChengjun,PengMingzai,LuZhouhai,LiHaocheng
(SchoolofIntelligentManufacturing,GuangzhouVocationalCollegeofTechnology&Business,Guangzhou511442,China)
Abstract:Tomeetthecomprehensivetrainingneedsofelectricalautomationandelectronicinformationtechnologymajorsinhighervocationalcolleges,avisionbasedrobotmaterialsortingtrainingplatformisdesignedwithembeddedsystemsasthecore.Thetrainingproductionlinemainlyincludesthreeparts:theSTM32mastercontrolsystem,thehandlingrobot,andtheOpenMVmachinevisionmodule.DatacommunicationisachievedthroughtheModbusprotocolRTUcommunicationmode.Themastercontrolsystemcontrolstheworkflowoftheproductionline,coordinatingtheoperationoftherobotandthevisualmodule;themachinevisionmoduleisresponsibleforidentifyingthematerialstobesorted,andsendingtheidentifiedmaterialcolorresultstothemastercontrolsystembysettingthetargetcolorthreshold,capturingimageswithacamera,colorbinarizationfiltering,andblobsearchingfortargetcolorblocks;thefive-axisrobotisdrivenbyadigitalsteeringgearandservesasthesortingexecutiondevice.Itispresetwithsortingandhandlingactiongroupsformaterialsofdifferentcolors,andcanreceivesignalsfromthemaincontrolsystemtocompletethecorrespondingactionprocess.Afterprototypetesting,theaccuracyofthematerialsortingproductionlineinidentifyingandsortingtargetcolorshasreachedover93%.Modbusprotocolisusedtoeffectivelyensurethestabilityofcommunicationconnections,andtheoveralloperationisgood.Thetrainingproductionlineisconducivetocultivatingstudents'engineeringpracticeandinnovationabilities.
Keywords:materialsorting;STM32;OpenMV;trainingplatform
0引言
目前,高职院校的“三教”改革都围绕产教融合的思路开发项目化教学实训案例,将产业真实的工程案例引入课堂,以激发学生的学习兴趣及解决工程实际问题的能力。电气自动化类、电子信息类专业的综合性实训教学离不开理论实践一体化的实训装备,把工业级的自动化生产线直接引入实训教学存在设备资金投入大、操作安全性差、控制系统复杂难维护等问题,在涉及机器人、机器视觉以及嵌入式系统的综合性教学装置方面多数只能采用模拟仿真的方式开展教学,教学效果大打折扣。鉴于此,众多研究者设计了适合高职院校机器人与机器视觉技术集成应用的综合性实训装置。文献[1]依据“双元制”教学模式,基于AT89C51单片机设计了能够智能避障的实训小车。文献[2]模拟工业现场环境设计了基于工业机器人、数控机床、自动导航车AGV、立体仓库等设备的柔性制造实训系统。文献[3]为增强学生对搬运机器人和视觉技术的应用能力,根据企业实际生产需求,利用工业机器人、双目视觉及PLC控制器,设计开发了智能搬运机器人实验平台。物料分拣是工业生产中非常重要的组成环节,机器人能够大幅提高工件分拣效率,在对不同的物料进行分类拾取操作时,需要识别与定位,已经在工业生产中得到广泛应用,开发具有典型工作单元的机器人物料分拣系统具有重要的研究价值和应用前景。国内研究开发的基于视觉的物料分拣实训生产线仍缺少以嵌入式系统为核心进行集成应用的具体实例,尤其是对典型工业生产场景进行桌面小型化模拟的案例。
本设计借鉴工程应用中典型的物料分拣生产线[4-8],采用模块化设计理念,采用STM32作为生产线主控系统,设计了基于STM32的搬运机械手、OpenMV机器视觉识别模块、输送线单元等,具有功能可扩展、方便教学实训的优点,在不同的教学实训项目中,可对本系统进行二次开发和集成,能够应用于应用型本科和职业院校的课程综合实训及课外创新技能培养。
1总体设计方案
物料分拣实训生产线主要包括搬运机械手、机器视觉模块、主控系统、输送线单元、待分拣物料、安装底板等,生产线控制系统总体方案如图1所示。
主控系统选用STM32F103控制板,是物料分拣系统的运行大脑,其作用在于控制输送线运转、控制OpenMV机器视觉模块执行识别、LCD液晶显示屏显示操作信息、蜂鸣器的鸣响以及机械手控制板的运作,同时接收光电传感器、OpenMV机器视觉模块以及机械手控制板反馈的信息[9]。本设计中模块之间通过UART串口进行数据交互,运用Modbus协议RTU通信模式进行传输数据,在相同的波特率下,RTU模式比ASCII模式传送更多的数据,而且数据帧结构简单,便于操作[10-11]。OpenMV机器视觉模块主要实现待分拣物料的颜色识别[12]。机械手采用STM32F103控制板,负责接收主控板的运动控制指令以及反馈运动信息,控制舵机机械手的运作。TB6612电机驱动板用于驱动物料输送线中的直流电机转动。光电传感器用于检测物料是否到达机器视觉识别的区域。LCD液晶显示屏用于显示系统的工作状态,有利于故障的排查。制动按键采用防抖动按键,作为紧急停止按钮,中断整个系统的运作。有源蜂鸣器用于报警,当系统通信超时或系统停止运作时鸣响。
2重要控制系统设计
2.1主控系统
物料分拣主控系统控制流程如图2所示。首先进行主控系统(主机)与机器视觉模块(从机)及机械手(从机)的通信连接。开机系统初始化硬件配置;主机分别发送机器视觉模块及机械手的RTU检测数据,检查机器视觉模块及机械手是否正常工作和硬件配置是否初始化完毕;再接收从机的应答数据。当主机发送数据5s后仍接收不到从机返回的信息,则进行通信超时处理,重新发送指令以保证较高的通信成功率。
完成三者之间的正常通信初始化之后,启动光电传感器和输送带,将物料送往指定的视觉识别位置;当光电传感器识别到物料时,输送线停止,主控系统发送机器视觉识别指令,并接收机器视觉识别到的物料结果数据;发送机械手执行指令,控制机械手抓取物料放置到指定的位置上,并接收机械手执行完毕的反馈数据。如此循环反复,实现物料分拣的控制逻辑。
2.2机械手控制系统
机械手的关节采用TBS-K20数字舵机驱动,舵机的伺服系统由可变宽度的脉冲来进行控制,舵机旋转角度是由来自信号线的连续脉冲控制的,脉冲的宽度决定了转向器旋转的角度[13]。例如:1ms脉冲宽度伺服电机保持不动(0°)、1.5ms脉冲转到90°位置、2ms脉冲宽度转到180°位置。机械手由五个舵机同时驱动,根据舵机脉冲调制的原理,利用PC上位机在线调试,向每个舵机输入已设定好脉冲宽度的方波即可驱动舵机完成预设的动作组,进而控制机械手实现预先设定的动作及路径。
机械手控制板通过UART2串口与STM32主控板建立数据通道,采用Modbus协议进行数据通信,主控板发送执行指令数据帧至机械手控制板,通过I/O口控制五路舵机执行预设好的动作组。机械手动作执行完毕后则生成相应的RTU二进制数据帧并反馈给STM32主控板。机械手控制流程如图3所示。首先开机系统初始化,进入等待接收STM32主控板发送的RTU检测数据帧状态,并判断USART_RX_Over是否置1,即USART2是否接收完STM32主控板发送的RTU数据帧,若USART_RX_Over为0,则重新等待接收数据,若USART_RX_Over为1,则将USART_RX_Over置0,避免下次调用该变量时出错,同时校验Receive_Master_Data数组存放的RTU数据帧是否正确,若校验错误,则清除Receive_Master_Data数组中存放的数据,系统恢复到等待接收STM32主控板发送的RTU检测数据帧状态,若校验成功,则解析Receive_Master_Data数组里的数据。判断操作类型,若操作类型为“CHECK”,则清除Receive_Master_Data数组里的数据,系统恢复到等待接收STM32主控板发送的RTU检测数据帧状态,若操作类型为“ROBOT_EXECUTE”,则进一步判断执行动作组类型,若为“DATA_GREEN”,则控制机械手抓取物料,并将其放入到绿色存储区,若为“DATA_RED”,则控制机械手抓取物料,并将其放入到红色存储区,若为类型为“DATA_OTHER”,则机械手不执行任何动作。机械手执行完毕后,将动作执行完毕数据帧发送回STM32主控板上,清除Receive_Master_Data数组中存放的数据,系统恢复到等待接收STM32主控板发送的RTU检测数据帧状态,如此循环,实现机械手对物料进行抓取和分拣放置。
2.3机器视觉识别系统
机器视觉识别系统采用OpenMVCam3M7视觉模块,其搭载了STM32F765VIARMCortexM7处理器和OV7725摄像头芯片。该模块用Micropython脚本语言处理高级机器视觉运算算法的输出,利用外部终端可以方便地触发运行算法或拍摄,并利用算法的结果控制IO-Pin,简化了视觉识别开发的流程,提高机器视觉应用效率,故选择其作为本物料分拣系统的视觉处理模块[14]。镜头采用手动变焦镜头,焦距范围为2.8~12mm,可以根据实际情况设定相机安装高度并调整好焦距,保证良好的图像识别区域范围和成像质量。
物料分拣的对象包括红色物块、绿色物块、蓝色物块及其他颜色物块,通过设定目标物块的颜色阈值、颜色二值化滤波、Blob寻找目标色块及色块面积比较来识别和判断不同颜色的物块[15]。采用Lab颜色模型来表达物块颜色,在Lab颜色空间中,每个颜色用L、a、b3个数字表示,如:设定红色物块red_threshold=(0,100,21,101,-12,74),元组里面的数值分别是照度L、红色至绿色的范围a及蓝色到黄色的范围b的最小值和最大值[16]。利用颜色特征进行二值化滤波,函数img.binary([white_thresholds])可以去除环境中非目标色区域的影响,如图4所示。通过find_blobs()函数寻找色块,其中须设定的重要参数包括:thresholds需查找颜色的阈值,area_threshold面积阈值、pixels_threshold像素个数阈值,根据blob.code()返回一个16bit数字,即可得知查找色块的颜色结果。
STM32主控板发送执行RTU数据帧至OpenMV视觉模块,控制其执行拍照和识别。OpenMV视觉模块则将识别到的物料颜色数据转化为RTU二进制数据帧并反馈给STM32主控板,实现了物料识别的整体功能。机器视觉识别系统控制流程,如图4所示:首先开机OpenMV系统初始化,判断是否接收到STM32主控板发送的RTU检测数据帧,若接收不到数据帧,则继续等待接收数据,如果接收到数据帧,则校验data数组存放地RTU数据帧是否正确,若校验数据出错,则系统返回等待接收STM32主控板发送的检测指令状态,若校验数据成功,则将接收到的RTU检测数据帧发送回STM32主控板上,并清除data数组里的数据,判断是否接收到STM32主控板发送的RTU识别数据帧,若接收不到数据帧,则继续等待接收数据,若接收到数据帧,则校验data数组存放的RTU数据帧是否正确,若校验数据出错,则系统返回等待接收STM32主控板发送的识别指令状态,若校验数据成功,则将接收到的RTU检测数据帧发送回STM32主控板上,并清除data数组里的数据,等待10ms保证STM32主控板进入接收数据状态。
OpenMV模块识别物料,并将识别到的颜色数据打包成RTU数据帧发送回STM32主控板上,等待接收STM32主控板发送的响应指令状态,若校验成功,则解析data数组存放的RTU数据帧,并判断RTU数据帧中是否存在OK数据,若不存在OK数据,证明STM32主控板接收识别颜色数据出错,则清除data数组里的数据,视觉模块恢复到识别颜色状态,重新发送识别颜色数据。若存在OK数据,则清除data数组里的数据,视觉模块恢复到等待接收STM32主控板发送的识别指令状态,如此循环,实现对物料的颜色识别。
3调试与结果分析
基于机器视觉的物料分拣教学实训生产线样机如图6所示。完成系统硬件连接后,对其进行运行调试,先对机械手及视觉模块上电完成初始化,再对主控系统上电初始化,启动运行后,主控板(主机)与机械手控制板(从机)和机器视觉控制板(从机)建立ModbusRTU通信连接测试,当主机发送数据5s后仍接收不到从机返回的信息,则至多执行重新发送操作指令5次,直至出现通信超时,LCD液晶显示屏显示通信故障信息。此时须断电重启系统各模块,等待通信正常,再自动启动输送线。其上摆放的物料在经过光电传感器时触发信号,输送线停止,并触发相机拍照进行视觉检测,若识别到红色、绿色的物料,则通知机械手进行抓取分拣,其他颜色的物料则不执行抓取。机械手动作完成后,输送线再次启动,如此循环往复。
为了验证物料分拣实训生产线的视觉识别准确度及自动分拣流程的稳定性,选取红色、绿色、蓝色及白色的圆柱形与长方体物块进行分拣试验,对4种不同颜色和形状的物块各手动累计上料25个,即每次累计分拣100个物块,上料顺序随机,每次试验保持生产线持续自动运行直至试验结束,共进行3次试验,分别统计对各种颜色物块的分拣准确率,如表1所示。
4结束语
本文设计了基于机械手与机器视觉的物料分拣实训生产线,以STM32控制器作为系统主控,通过ModbusRTU协议与机械手控制器及OpenMV机器视觉模块进行数据通信,其中OpenMV机器视觉模块负责识别不同颜色的物料,并将识别到的结果发送到STM32主控板,机械手根据主控板的指令抓取物料并放入指定的位置。搭建了物料分拣实训生产线的样机,利用不同颜色不同形状的物块开展重复分拣试验,结果表明,该实训生产线控制系统采用Modbus协议通信成功率高、机器人执行动作稳定、机器视觉识别准确度综合可达93%以上,视觉的颜色识别主要受环境光线、物块本身的颜色色差及表面污渍的影响较大,生产线整体运行高效、可靠。
本设计以嵌入式系统为核心开发了典型工业分拣生产线的微缩化实训教学生产线,可在此基础上进行扩展及二次开发,能够方便地用于实训教学,对培养学生的工程实践能力与创新能力具有重要作用,满足自动化类专业的人才培养要求。
参考文献:
[1]王敏,王辉,陈金阳,等.基于单片机的智能避障实训车教学设备的研制[J].机电工程技术,2020,49(3):46-47,111.
[2]芦红霞,周成侯,李志远.智能制造车间实训柔性制造系统方案设计[J].机电工程技术,2021,50(9):165-169.
[3]李超,邓小宝,史运涛,等.工业无线网络的智能搬运机器人实验平台设计[J].实验室研究与探索,2019,38(12):79-82.
[4]李超新,丛帅,张耀,等.基于机器人和视觉系统的残次品分拣实验台设计[J].实验室科学,2019,22(6):178-181.
[5]李祺,曾明,卢向哲,等.基于机器视觉的智能垃圾分类实验平台设计[J].实验室研究与探索,2022,41(4):68-73.
[6]陶杰,吴尧才,朱熙豪,等.基于3D视觉的水泵生产线零部件无序抓取研究[J].机电工程,2022,39(5):604-611,640.
[7]张卫芬,汤文成.基于机器视觉的物料自动分拣系统研究[J].组合机床与自动化加工技术,2019(6):34-37.
[8]黄树琳,张锋.基于视觉识别的物料分拣机器人设计[J].自动化与仪表,2019,34(11):36-38,55.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网! 文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/ligonglunwen/77367.html