APP下载

基于机器视觉的三轴机械臂分拣装置设计

2022-12-23姜超群张爱华赵佳冉娄成龙李建军

物联网技术 2022年12期
关键词:上位传动坐标系

姜超群,张爱华,赵佳冉,娄成龙,李建军

(中原工学院 电子信息学院,河南 郑州 450007)

0 引 言

《中国制造2025》规划指出加快新一代信息技术与制造业的深度融合,实现制造业由大变强的历史跨越[1]。机器视觉是完成该规划的一项重要技术之一,机器视觉综合数字视频、图像处理、传感器、自动控制等技术,现已成功运用在部分工业领域[2-3]、农业领域[4-5]、日常生活领域[6]。

虽然机器视觉得到了广泛的应用,但目前市面上主流的视觉分拣平台一般面向具体行业应用。唐媛红、刘月云将机器视觉技术应用到采摘机器人的分拣作业中[7]。王鹏、曹现刚等人设计了一种基于机器视觉的多机械臂煤矸石分拣机器人系统[8]。此类平台操作复杂,移植难度较大,不适用于基础人群学习和使用。宋东亚、淮妮等人分别采用DSP作为运动控制平台设计机械臂[9-10],成本较高,普通的设计爱好者难以承担。针对目前存在的这些问题,本文设计了一款低成本、易移植、易操作的三轴机械臂分拣装置。

1 物体识别分拣方案

系统分为传动模块、运动控制模块、视觉处理模块、吸取模块。系统结构以及模块之间的关联如图1所示。其中,PC机作为本系统的数据处理单元进行数据处理与任务发布,传动模块控制物体的运动速度,图像采集模块负责采集物体信息,运动控制模块负责机械臂的运动与控制,抓取模块负责物体的抓放。

图1 基于视觉的三轴机械臂分拣装置系统框图

本装置采用.Net Framework平台进行软件系统的开发,编程语言为C#语言。工作流程:系统开始运行后进入待机状态,当光电传感器检测到有物体经过时,PC读取此刻摄像头采集的图像数据及物体的传动速度,通过灰度重心法计算出物体的中心坐标,通过传动速度推断中心点的运动轨迹。PC机通过以太网通信将物体坐标信息发送给运动控制模块,同时,通过USART通信模块将位置信息发送至抓取模块。最后实现物体的分拣。软件流程如图2所示。

图2 基于视觉的三轴机械臂分拣装置软件流程

2 系统模块设计

2.1 传动模块设计

传动模块选用铝型材作为支架,采用两相四线式86步进电机作为动力源。采用STM32F407ZET6作为传动模块控制核心,辅以外部电路,通过配置该芯片的寄存器,使能定时器输出PWM波作为驱动源,控制步进电机的传动速度。上位机通过USART串口通信向STM32发送包含运行速度和运动方向的指令,实现对传送装置运动速度和运动方向的调节,同时,上位机可以实时获取传送带的速度信息和方向信息。传动模块操作窗口如图3所示。

图3 传动模块操作窗口

2.2 抓取模块设计

本文采用成本较低的气泵加吸盘的组合方式设计抓取模块。其运行原理:使用小型气泵作为吸气源,其吸气口与三通电子阀门相接。抓取模块包括STM控制板、PWM数字开关、三通电子阀门、气泵和吸盘。三通电子阀门和气泵分别连接PWM数字开关,并由STM32控制板控制,通过上位机控制定时器产生的PWM频率精确实现对物体的吸放操作。小型气泵作为吸气源,其吸气口与三通电子阀门相接,当三通电子阀门打开时,2、3口相通,吸盘与气泵连通,进行物体吸取;当三通电子阀门关闭时,1、3口相通,吸盘进行物体放置。抓取模块设计简图如图4所示。

图4 抓取模块设计简图

2.3 图像模块设计

系统中的图像处理模块利用单目摄像头作为图像采集端,采用欧姆龙光电传感器作为图像采集开关。在无物体通过时,系统处于休眠状态;有物体通过时,光电传感器返回一个低电压信号,控制板收到信号后传递给PC端,PC控制摄像头进行图像采集并进行图像数据处理。

(1)手眼标定

本系统共有摄像头所处的相机坐标系、相机成像后的图像坐标系、相机采集数据的像素坐标系、本装置所在的世界坐标系、抓取部分的机械臂坐标系。由于摄像头采集的数据单位为像素,与现实世界的单位不同,故需要执行像素坐标系与机械臂坐标系的转换,即手眼标定。

如图5所示,空间中某点在世界坐标系下的坐标表示为(xw, yw, zw)、在相机坐标系下的表示为(xc, yc, zc)。考虑相机畸变模型,通过相机坐标系、图像坐标系和像素坐标系的转换,得到像素坐标系和世界坐标系的对应关系式:

图5 坐标系示意图

式中:s表示比例因子;u、v为图像坐标系X轴、Y轴坐标值;(cx, cy)为基准坐标;fx和fy是单位为pixel的相机焦距;R为相机的旋转矩阵;T为偏移向量矩阵。

机械臂坐标系和世界坐标系之间的关系为:

式中,Δxw,Δyw,Δzw分别为机械臂x、y、z轴原点与世界坐标系原点的距离差。

综合式(1)和式(2),即可完成手眼标定工作,为后续系统运行提供条件,手眼坐标系关系可表示为:

(2)基于EmguCV的物体质心坐标识别

本系统的图像处理利用计算机视觉库EmguCV实现。将摄像头采集的物体图像转换为RGB格式,并显示在上位机图像框中,光电传感器检测到物体时,将RGB图像转换成8位灰度图像,然后使用自适应阈值QTSU算法对转换后的灰度图进行自适应二值化处理,清除图像中的无用信息。提取物体形状的轮廓并将筛选过后的数据进行存储,利用轮廓多边形逼近函数ApproxPolyDp进行拟合,并判断物体形状。最后采用灰度重心法计算物体的重心,确定位置坐标。图像检测示意图如图6所示。

图6 图像检测示意图

2.4 运动控制模块设计

运动控制模块包括运动控制机构、三轴执行机构。运动控制机构采用STM32F107VCT6和XILINX XC6SLX9作为核心芯片,STM32通过以太网物理层收发器与上位机进行以太网通信,FPGA作为STM32的外围设备,通过8位地址线进行独立的片外空间寻址,实现对机械臂三个轴的分别控制。

如图7所示,FPGA运动控制模块主要包括脉冲产生电路、24位逻辑计数器、定位控制电路。脉冲产生电路负责输出脉冲OUTx和脉冲方向DIRx;24位逻辑位置计数器通过对输出脉冲的计数为定位控制电路提供定位依据;定位控制电路接入外部原点输入端口ORG,运动轴极限位置输入端口+EL、-EL,当外部输入EL信号时,定位控制电路直接阻止脉冲产生电路产生脉冲。经过测试,此设计脉冲产生稳定准确。

图7 运动控制机构框图

由于外部输入信号电压不定,I/O接口电路加入光电耦合开关进行系统保护。同时,为了系统设计轻量化,本装置采用软件回原点,将OUT0~OUT3分别作为3个运动轴的ORG端口输入,当定位控制电路收到上位机回原点命令的同时,OUT端口输出上升沿,对应逻辑位置计数器清零,即该轴当前位置设置为原点。

执行机构由三组丝杆、滑轨滑块、梅花联轴器、57步进电机组成,采用DM542驱动器作为电机驱动源。执行机构示意图如图8所示。

图8 运动控制模块执行机构示意图

3 系统测试与分析

本装置上位机主要分为2个窗口,分别是手动模式窗口和自动模式窗口。点击“手动模式”按钮进入手动控制操作窗口,此窗口可以通过鼠标或键盘手动控制机械臂的3个轴运动。点击“自动模式”按钮进入自动控制操作窗口,此窗口可自动进行物体的识别和分拣。系统上位机窗口如图9所示。三轴机械臂抓取装置说明示意图如图10所示。

图9 系统上位机窗口

图10 三轴机械臂抓取装置说明示意图

在自动模式下测试本装置物体识别率与系统响应速度,测试物体包括:橙色方形积木、黄色四边形积木、粉色圆形积木、绿色椭圆形积木、黄色三角形积木。在室内正常光照强度下,本装置在20 mm/s和30 mm/s的速度下分别做30次抓取实验。测试物体如图11所示。传动装置速度为20 mm/s时抓取成功率见表1所列,传动装置速度为30 mm/s时抓取成功率见表2所列。

表1 抓取成功率(速度:20 mm/s)

表2 抓取成功率(速度:30 mm/s)

图11 测试物体

系统运行上位机窗口如图12所示,系统运行实物如图13所示。

图12 系统运行上位机窗口

图13 系统运行实物

通过测试可证明,在传动装置运动速度为20 mm/s与30 mm/s的情况下测试结果相差不大,除黄色三角形积木外,其余形状均达到93%以上的抓取结果。其主要原因为:测试物体体积较小,且图像采集摄像头不能均在物体正上方采集,导致判断物体质心不准确。此现象在三角形物体上表现最为突出,三角形物体抓取示意图如图14所示。

图14 三角形物体抓取示意图

4 结 语

本装置基于机器视觉技术进行开发与实现,系统采用模块化设计,包括传动模块、运动控制模块、视觉处理模块以及抓取模块。对样机分别在20 mm/s、30 mm/s的运动速度下对不同形状和颜色的物体进行了测试,整体识别抓取结果符合预期。但由于丝杆螺距较大、气泵吸盘口较大、待分拣物体较小,导致部分物体会出现漏抓现象,三角形物体尤其明显,后续考虑精细化装置。该装置可以作为机器人等相关专业学生的实验设备,成本低,运行稳定,能为学生提供比较高的学习创作自由度。

猜你喜欢

上位传动坐标系
ABB传动
ABB传动
CeramicSpeed DrivEn全新传动体系
特斯拉 风云之老阿姨上位
解密坐标系中的平移变换
坐标系背后的故事
齿轮传动
基于重心坐标系的平面几何证明的探讨
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统