黄树琳,张 锋
(广东石油化工学院 电子信息学院,茂名 525000)
随着电子信息地高速发展,视觉识别逐渐被运用到各行各业的方方面面,乃至人们的日常生活,而这也为更加智能化的自动分拣系统的诞生提供了可能。自动分拣这一概念最早是从美国、德国这些国家提出来的,之后被各行各业所认同,成为流水线智能分拣的一个重要环节,也被人们所需要。
目前,虽然已有机器人分拣技术,但仍存在许多不足,如不可移动、操作单一、适应面窄、无法智能分拣等。针对这种需要重复性分拣、耗费大量人力的现象,在此根据机器人物料分拣系统所需要的技术要点,包括图像获取和预处理、智能识别、坐标变换、通信等,研究设计了一种基于视觉识别的物料分拣机器人,可用于多场景的智能分拣作业中,也可用于教学和实验应用[1]。
基于模拟情景的要求,物料分拣机器人分为3个部分:动力装置、抓取装置、识别装置,如图1所示。
图1 机器人系统整体构成Fig.1 Overall composition of robot system
该物料分拣机器人采用通用的前置双电机驱动,能够适应绝大多数复杂路况,从而抵达指定地点进行物料分拣;在机械臂设计中采用3D建模,具有可塑性,可依照分拣物料的形状特点进行手爪设计,实现安全可靠的物料抓取;设计中还通过摄像头获取外界图像,配合距离传感器,实现对物料形状、大小及颜色的智能判断,最终实现安全可靠、高性能地智能分拣。
该机器人系统选用星瞳科技提供的openMV机器视觉模块和openMV程序设计软件openMV-IDE。该机器视觉模块以STM32F427为内核,以OV7725为图像采集模块,具有高分辨率、低功耗等优点。使用openMV-IDE,实现了对图像的采集及失真校正和图像的处理及分析,完成物料分拣机器人的视觉识别。
openMV机器视觉模块的程序设计中,采用视觉识别算法[2],其原理是通过对外界环境的颜色特征和形状特征的提取,利用图像滤波、二值化、膨胀和腐蚀等算法对摄像头采集的图像进行预处理,并使颜色特征和形状特征检索结果相结合,根据情景需要设置权重,求得所需分拣物料特征符合度D为
式中:q为摄像头所获取的实时图像;t为所需分拣物料图像;Dc为基于颜色直方图的颜色特征相似度;Ds为基于形状轮廓的形状特征相似度;ωc,ωs分别为根据情景需要所设置的颜色加权、形状加权,实现所需分拣物料的智能识别。
辅以工件坐标定位算法[3],依靠感光点构成的分辨率,并以顶角建立关于x,y的直角坐标系,获取所需分拣物料的坐标,并进行路径规划,实现对工件坐标定位与跟踪[4]。工件坐标定位算法如图2所示。
图2 工件坐标定位算法Fig.2 Workpiece coordinate positioning algorithm
系统的硬件设计采用ATMEGA 328P单片机为核心控制器,通过与openMV机器视觉模块、电机驱动模块、机械臂和过电流保护电路构成。其硬件整体框图如图3所示。
图3 硬件设计整体框图Fig.3 Hardware design overall block diagram
设计中,作为主控芯片的ATMEGA 328P单片机,是以AVR为内核的8位高性能、低功耗芯片,能够满足众多数场合的需要,并且Arduino是市售常用的单片机,具有众多的软件库,可大大缩短开发者进行软件设计的开发时间。
设计中,采用openMV作为机器视觉模块,以实现设计中所需的视觉识别及图像处理。openMV集成OV7725摄像头和STM32F427单片机,采用Python编程,可以满足设计要求。
设计中,采用SolidWorks3D设计软件进行机械臂设计,以应对不同场合的对机械臂的物理结构要求,满足不同场合的需要。机械臂由双维度的机械臂及手爪构成,并通过LD-2015双轴数字舵机实现机械臂的高精度控制。
系统软件采用模块化设计,使用arduino-IDE编程软件实现主控MCU-ATMEGA 328p对各个模块的控制,包括openMV视觉识别模块、电机驱动模块、舵机模块及电源工作状态的控制;采用open MV-IDE软件完成openMV机器视觉模块的软件设计,包括图像识别、物料颜色特征识别、物料形状特征识别及所需分拣物料的坐标定位。
该机器人在进行物料分拣时,首先根据需要被分拣的物料及物料分拣的工作环境(场地)的颜色及形状特征,进行RGB校准与图像检索初始化。随后根据用户需求,选择进入2种工作模式:①定时定量分拣(挡位设定);②立即进行物料分拣。程序还设有看门狗及状态响应检查(自检程序),以保证物料分拣机器人在意外情况发生时如突然掉电、状态错误等,仍能保证物料分拣正常,避免因意外死机造成的不可预估的损失。
机器人系统的程序流程如图4所示。
图4 系统程序流程Fig.4 System program flow chart
设计中,将产业分拣车间等比列缩小,物料分拣机器人不拘于固定的行走路线,可根据实际情况,更快速、更准确地完成某一项的工件分拣,智能执行该工件分拣的最优方案,实现更高效的物料分拣。
设计时的模拟要求以下:机器人最大质量≯5000 g;禁止无线通讯;尺寸(长×宽×高)不得超过400 mm×400 mm×500 mm; 场地大小为2400 mm×2400 mm,出发区为(白色)400 mm×400 mm,物料投放区为(黄色)300 mm×300 mm,储存区为(绿色)400 mm×400 mm;以带颜色的小球作为需要被分拣的工件;根据实际要求快速、准确地夹取规定颜色的小球,并且不能有收集球的行为。
为此,设计时需尽量减轻车身重量、缩小尺寸,使车身结构简单与轻便。采用重量较轻的电木板取代金属钢板搭建车身骨架;采用open MV替代传统的摄像头模块,且保证摄像头有良好的视野;采用3D建模完成机械臂设计。物料分拣机器人实物如图5所示。
图5 机器人实物Fig.5 Robot object
目前,所设计的物料分拣机器人结构结实、稳定,程序运行流畅,重量小于2 kg,体积符合模拟情景的预期规定要求,能很好地实现对物料(小球)的抓取,并投放至储存区,利用对摄像头的升降控制实现了对物料位置的精准识别。整套机器人装置成本低廉,综合性能好,运行速度尚有待优化,夹球准确度还有待提高,整体基本完成设计需求。
在测试试验中,使用多种颜色的小球作为分拣对象,按用户所需求定量夹取规定颜色的小球,在不改变环境光照的条件下通过多次试验,统计的分拣测试结果见表1。
表1 多次夹取试验的统计数据Tab.1 Clip the experimental data sheet several times
数据统计结果显示,在450次的物料分拣中,该物料分拣机器人最终正确夹取物料并投放的准确率为99.3%,其中防错夹、漏夹判断的检错机制起作用共21次,达成高效率、高准确性和智能化的物料分拣机器人设计,完成了该设计的预期要求。
实践结果表明,本文设计实现了预期的设计要求和设计目标,成功地以物料分拣机器人替代人力资源,实现对物料的智能分拣,大大节约了人力资源,提高了自动化分拣水平和质量,为分拣场景的多样化需求提供了新的设计思路和解决方案,具有现实意义。
然而,设计中仍存在一些可改进空间以适应更多分拣场合的需要。例如,增设语音控制功能,以实现更便捷地控制;增设显示模块,可为用户更直观地显示已分拣物料数量等相关数据;增加上位机功能,令用户可直接地通过上位机远程查看或控制物料分拣机器人的当前状态。
在基于视觉识别的物料分拣机器人系统的软硬件设计中,物料分拣机器人通过视觉识别算法,实现了对所需分拣物料的精准判断和辨别,并通过自定义坐标的建立,实现了对所需分拣物料的锁定和最优路径规划,而且可以根据分拣场所的不同,实现对不同物料的夹取和归类投放,最终实现整个机器人分拣系统的高效率、高准确性的智能化自动分拣。