- 广州子锐机器人技术有限公司
- 服务热线:020-82000787(8:30-17:30)
- 联系手机:15889988091(非工作时间)
- 座机:020-82000787
- 传真:020-32887675
- 邮箱:gz@zr-robot.com
- 广州市番禺区东环街金山谷创意八街1号109
- 当前位置:首页 > 机器人资讯 > 工业机器人分拣技术的实现
工业机器人分拣技术的实现
工业机器人分拣技术的实现
0引言
分拣作业是大多数流水生产线上的一个重要环节。基于机器视觉的机器人分拣与人工分拣作业相比,不但高效、准确,而且在质量保障、卫生保障等方面有着人工作业无法替代的优势;与传统的机械分拣作业相比,基于机器视觉的机器人分拣则有着适应范围广、随时能变换作业对象和变换分拣工序的优势。机器人分拣技术是机器人技术和机器视觉技术的有机组合,日本以及欧美一些发达国家,在机械、食品、医药、化妆品等生产领域应用机器人分拣已经相当普及,而我国目前真正付诸实施的机器人分拣系统还几乎是空白。根据目前我国的市场需求状况和相关技术基础,研究、开发和应用机器人分拣技术有着十分重要的意义。
1机器人分拣实验系统的构成和工作原理
本文以MOTOMANUP6机器人为基础,研究并构建了一个基于机器视觉的机器人分拣实验系统(1)。该分拣实验系统可分为硬件和软件两大部分。硬件主要由机器人、Pc机、相机、像采集卡和传送带等组成。其中相机和机器人分别通过传输线和RS232与PC机相连。系统的软件由自开发的分拣控制平台和MOTOCOM动态链接库组成。机器人分拣实验系统的工作原理和工作过程为:当目标对象源源不断地进入分拣作业区时,在计算机的控制下,通过相机连续自动地获取作业对象像,然后由软件对采集到的像进行运算分析、变换目标对象坐标、识别目标对象分类信息、维护分拣目标的运动踪迹,最终控制机器人实现分拣动作,将目标对象分类拾取,放置到指定位置(2)。
1基于机器视觉的机器人分拣实验系统
2系统的工作原理和过程
2机器人分拣实验系统的硬件
由工业机器人系统、相机及镜头、PC机及像采集卡、传送带及分拣对象等组成的机器人分拣实验系统,其硬件部分的布置如3所示。
3机器人分拣实验系统的硬件组成
2.1工业机器人系统
工业机器人系统包括MOTOMAN.UP6机器人本体、YASNAC.XRC-UP6机器人控制柜、示教编程器以及支持与PC机进行数据通信的软件MOTOCOM32。其中机器人本体为6轴垂直多关节型,各关节由交流伺服电机驱动,重复定位精度达±0.08mm。机器人的末端执行器为CEH-40电磁吸盘。
2.2相机及镜头
本系统选择的相机是丹麦AVI公司生产的CVA11相机。相机线扫描频率为37.5kHz,其CCD总像素为659*494,相机信噪比大于56dB。其工作电压为12VDC±10%,镜头接口为C-mount接口。镜头为日本COMPUTAR公司的M0814-MP镜头,镜头焦距为f=8mm,焦点手动控制,成像适合本系统的要求。
2.3PC机及像采集卡
本系统选择的Pc机为联想ThinkCenter(IntelP43.0GHz,2G内存,WindowsXP操作系统)台式机。像采集卡是加拿大CORECO公司生产的PC2.Vision像采集卡。该像采集卡自带8M存储器用于像序列的存储,通过高速PCI总线可实现直接采集像到VGA显存或主机系统的内存,兼容RGB,RS-170/CCIR等视频格式,可采集标准彩色复合视频和RGB分量,能够同时采集6个黑白摄像头,2个RGB摄像头或2个双通道模拟摄像头像;支持外部事件出发输入,支持显示分辨率2048×2048,具有3个8位40MhzA/D转换器,可用软件平台是WindowsXP等。
2.4传送带及分拣对象
本系统选择的传送带为皮带输送机,其工作长度为1.5m,调速范围为:0~10m/s;分拣对象为螺母和垫圈。
3软件流程及软件要解决的问题
机器人分拣实验系统的软件主要流程如4所示,其工作流程可描述为:相机拍摄场景,将视频信号传输到像采集卡的视频输入端口,像采集卡将模拟视频信号逐帧转化为数字像,然后由计算机程序根据这些像计算目标的场景位置,接着由控制程序生成控制指令,通过RS232发送给机器人控制柜,机器人控制柜将控制指令解释为脉冲数并分别发送给6个交流伺服电机。其中的相机标定、目标检测与识别、动态目标跟踪是系统软件要解决的机器视觉技术问题,机器人的动作是系统软件要解决的运动控制问题。
4软件主要流程
3.1相机标定
相机标定是求解目标的像素坐标到场景坐标变换的过程心,对分拣系统在定位目标时具有重要作用。根据相机标定的结果,可以由目标在像中的位置计算出目标在机器人坐标系中的位置,相机标定的作用可由5来表述。本系统以小孔成像模型作为相机标定算法的模型。采用了直接线性法和张正友法作为相机标定方法。在Matlab上实现了直接线性法与张正友法标定后,用实验对标定结果进行了确认。该标定结果使得分拣系统可以较精确的定位场景中的目标,为后续的目标跟踪及机器人抓取提供了基础。
5相机标定的作用
3.2目标检测与识别
目标检测与识别是确定像中哪些部分是目标,以及是哪种目标的问题。解决这两个问题的方法很多,甚至有些方法可以同时解决两个问题。本系统采取了几种方法进行试验后,在深入研究了基于运动目标检测的基础上。选择并实现了基于背景减法与基于二值化的目标检测。并根据统计模式识别相关理论,选择了线性判别函数法进行目标识别。
3.3动态目标跟踪
视觉跟踪是指对像序列中的运动目标进行检测、提取、识别和跟踪并获得目标的运动轨迹,从而进一步处理与分析实现对目标行为的理解,以及完成更高一级的任务。在本分拣实验系统中,我们设计的目标将源源不断地进入相机的视野,系统则对每个目标进行识别、检测并记录结果。在实现该视觉跟踪过程中,本系统采用了GNN算法对目标进行跟踪。通常跟踪的目的是对目标状态的记录,并不估计目标将来时刻的状态。但作为动态分拣实验,本系统采用kalman滤波的估计功能来估计目标将来位置,为机器人抓取动态目标提供信息。
4机器人运动控制
在解决了目标像坐标系到机器人坐标系的转换、对象目标检测和识别,以及采用kalman滤波估计目标将来时刻的位置后,控制机器人的作业轨迹运动,实现搬运动态的对象目标则是本实验系统的最终目标。本系统利用MOTOCOM32控制UP6机器人,完成了搬运动态对象目标。以下简要介绍与机器人运动控制程序开发相关的几个问题。
4.1MOTOCOM32的应用方式
MOTOCOM32是日本安川电机公司为MOTO.MAN系列机器人提供的软件开发工具包,该工具包包含了数据文件传送、机器人控制、I/O信号读写等功能,可供用户根据需要开发自己的应用程序。Windows程序调用MOTOcOM32库函数实现程序对机器人控制的原理是:首先,Windows程序调用MOTOCOM库函数;然后,库函数通过串口或以太网向控制器发送指令;最后,机器人控制器执行指令(如控制机器人各关节运动、文件存取等)。MOTOCOM32本质上是一个动态链接库(DLL)。在VC中使用MOTOCOM32的方法与使用其它DLL相同。在项目设置对话框的对像/库模块输入框内加入MOTOCOM32.1ib后,将MOTOCOM32.h与MOTOCOM32.dll拷贝到工程目录内即可。其过程与在其它编译器中使用动态链接库的方法相似。
4.2建立PC机与控制器之间的通信