人机协作分选系统及其作业方法转让专利
申请号 : CN202010438648.2
文献号 : CN111570332B
文献日 : 2021-12-24
发明人 : 莫卓亚 , 罗海城
申请人 : 广东弓叶科技有限公司
摘要 :
权利要求 :
1.一种人机协作分选系统的作业方法,所述人机协作分选系统包括用于输送工件的传送带、用于获取工件的图像的相机、用于显示所述图像并接受选择操作的显示器、处理装置及用于抓取被选中工件的机器人,其特征在于,所述人机协作分选系统的作业方法包括:工件数据发送步骤,具体为:
将在所述显示器中被选中且位于相机视野内的工件数据写入预先定义的视野内工件队列;
实时计算所述视野内工件队列中各工件的坐标,将实时坐标处于相机视野外的工件数据从所述视野内工件队列中移除并写入预先定义的视野外工件队列;
将所述视野外工件队列中的工件数据发送给所述机器人进行工件抓取;及工件数据接收步骤,具体为:
通过异步接收线程接收所述工件数据,并将所述工件数据解析后写入工件缓冲区;
通过主线程判断所述工件缓冲区中是否存在工件数据,若是,执行:暂停所述异步接收线程的工件数据接收,取出所述工件缓冲区中的工件数据并写入工件抓取队列以抓取工件;若否,触发所述相机拍照。
2.如权利要求1所述的人机协作分选系统的作业方法,其特征在于,所述工件数据发送步骤中,在将所述视野外工件队列的工件数据发送给所述机器人之后,还执行:清空所述视野外工件队列。
3.如权利要求1所述的人机协作分选系统的作业方法,其特征在于,所述工件数据发送步骤还包括:
预先定义一所述视野内工件队列和一所述视野外工件队列。
4.如权利要求1所述的人机协作分选系统的作业方法,其特征在于,所述工件数据接收步骤中,在取出所述工件缓冲区中的工件数据之后,还包括:重启所述异步接收线程的工件数据接收。
5.如权利要求1所述的人机协作分选系统的作业方法,其特征在于,还包括:实时跟踪被选中的工件在每一帧图像中的坐标,并标记该被选中的工件。
6.如权利要求5所述的人机协作分选系统的作业方法,其特征在于,所述“标记该被选中的工件”具体为:在每一帧图像圈中该被选中的工件。
7.如权利要求5所述的人机协作分选系统的作业方法,其特征在于,所述“实时跟踪被选中的工件在每一帧图像中的坐标”具体为:标定机器人和传送带,获得传送带坐标转换成机器人坐标的第一转换矩阵M0,其中,传送带上设有用于记录传送带坐标的编码器;
标定相机和传送带,获得相机像素坐标转换成传送带坐标的第二转换矩阵M1及传送带坐标转换成相机像素坐标的第三转换矩阵M2;
依据下式获得工件在当前帧图像的坐标P:P=(P’*M1+△d)*M2;其中,P’为工件在上一帧图像中被选中时的对应坐标,△d为当前编码器值与上一帧图像锁存的编码器值的平移矩阵,所述编码器值由第一转换矩阵M0和编码器发送的传送带坐标获得。
8.一种人机协作分选系统,包括传送带、相机、显示器、处理装置及机器人,其特征在于,
所述传送带用于承载和输送工件;
所述相机用于采集工件的图像;
所述显示器用于显示所述图像和接受选择操作,并将选中的工件数据发送至所述处理装置;
所述处理装置执行:接收所述显示器发送的工件数据;将位于相机视野内的所述工件数据写入预先定义的视野内工件队列;实时计算所述视野内工件队列中各工件的坐标,将实时坐标处于相机视野外的工件数据从所述视野内工件队列中移除并写入预先定义的视野外工件队列;将所述视野外工件队列中的工件数据发送给所述机器人进行工件抓取;
所述机器人包括控制系统和机械臂,所述控制系统执行:通过异步接收线程接收所述工件数据,并将所述工件数据解析后写入工件缓冲区;通过主线程判断所述工件缓冲区中是否存在工件数据,若是,执行:暂停所述异步接收线程的工件数据接收,取出所述工件缓冲区中的工件数据并写入工件抓取队列;若否,触发所述相机拍照;所述机械臂依据所述工件抓取队列抓取对应的工件。
9.如权利要求8所述的人机协作分选系统,其特征在于,所述处理装置还实时跟踪被选中的工件在每一帧图像中的坐标,并标记该被选中的工件。
10.如权利要求9所述的人机协作分选系统,其特征在于,所述“标记该被选中的工件”具体为:在每一帧图像圈中该被选中的工件。
说明书 :
人机协作分选系统及其作业方法
技术领域
背景技术
集工件的图像,处理装置对图像进行处理后由显示器显示,显示器接受分选工人的操作并
将选中工件的信息传送至处理装置,而处理装置(工控机)将显示器传送的工件数据进行处
理后需要发送给控制系统,控制系统再依据工件数据控制机械臂进行工件抓取。
的工件数据。但是,在工件数据的发送频率(选中操作频率)过高时,由于前后两工件数据间
隔时间极短,若机器人的网络硬件或者网络优化设计较差,控制系统可能会同时收到处理
装置前后发送的两个工件数据,将无法正常进行数据解析,导致无法进行工件抓取。
图6所示。由图6可知,机器人作业过程中,主要存在等待拍照完成信号及等待显示器发送工
件数据两个耗时等待。等待拍照完成信号的时间极短,相对于一帧图像的时间基本可忽略。
而等待显示器发送工件数据时,由于会受分选工人操作影响,具体耗时长短则变得未知;在
此过程中,控制系统将一直处于等到状态,也就使得相机不会进行下一帧图像的拍摄。这就
导致了显示器上前后两帧图像之间的时间间隔变得随机,造成卡顿现象,导致分选工人难
以适应操作,且作业效率低下。
发明内容
流的方式(高速的图片流)显示图像。
像并接受选择操作的显示器、处理装置及用于抓取被选中工件的机器人。所述人机协作分
选系统的作业方法包括工件数据发送步骤和工件数据接收步骤。其中,所述工件数据发送
步骤具体为:将在所述显示器中被选中且位于相机视野内的工件数据写入预先定义的视野
内工件队列;实时计算所述视野内工件队列中各工件的坐标,将实时坐标处于相机视野外
的工件数据从所述视野内工件队列中移除并写入预先定义的视野外工件队列;将所述视野
外工件队列中的工件数据发送给所述机器人进行工件抓取。所述工件数据接收步骤具体
为:通过异步接收线程接收所述工件数据,并将所述工件数据解析后写入工件缓冲区;通过
主线程判断所述工件缓冲区中是否存在工件数据,若是,执行:暂停所述异步接收线程的工
件数据接收,取出所述工件缓冲区中的工件数据并写入工件抓取队列以抓取工件;若否,触
发所述相机拍照。
于记录传送带坐标的编码器;标定相机和传送带,获得相机像素坐标转换成传送带坐标的
第二转换矩阵M1及传送带坐标转换成相机像素坐标的第三转换矩阵M2;依据下式获得工件
在当前帧图像的坐标P:P=(P’*M1+△d)*M2;其中,P’为工件在上一帧图像中被选中时的对
应坐标,△d为当前编码器值与上一帧图像锁存的编码器值的平移矩阵,所述编码器值由第
一转换矩阵M0和编码器发送的传送带坐标获得。
件的图像;所述显示器用于显示所述图像和接受选择操作,并将选中的工件数据发送至所
述处理装置;所述处理装置执行:接收所述显示器发送的工件数据;将位于相机视野内的所
述工件数据写入预先定义的视野内工件队列;实时计算所述视野内工件队列中各工件的坐
标,将实时坐标处于相机视野外的工件数据从所述视野内工件队列中移除并写入预先定义
的视野外工件队列;将所述视野外工件队列中的工件数据发送给所述机器人进行工件抓
取;所述机器人包括控制系统和机械臂,所述控制系统执行:通过异步接收线程接收所述工
件数据,并将所述工件数据解析后写入工件缓冲区;通过主线程判断所述工件缓冲区中是
否存在工件数据,若是,执行:暂停所述异步接收线程的工件数据接收,取出所述工件缓冲
区中的工件数据并写入工件抓取队列;若否,触发所述相机拍照;所述机械臂依据所述工件
抓取队列抓取对应的工件。
长,因此发送前后两次选中的工件数据的时间间隔较长,这就使得机器人的控制系统可以
依照工件数据发送的先后顺序依次收到工件数据,进而确保了控制系统能够正常进行工件
数据解析以进行工件抓取,能够适应于选中操作比较频繁的情形;同时,也有效减轻了以太
网网卡的负担。而机器人的控制系统接收处理装置发送的工件数据时,是采用异步接收线
程进行接收,主线程再读取异步接收线程的数据,大大减少了主线程的等待时间,进而也减
少了相机的等待时间,提高了作业效率。即是,本发明的工件数据发送方式和接收方式使得
处理装置和机器人可以适应前后两帧图像之间时间间隔非常短的作业需求,从而可以在显
示器以视频流的方式(高速的图片流)显示图像,更好地模拟工件在现场的真实环境,图像
显示也更加顺畅,分选工人可以更好地进行操作。
附图说明
具体实施方式
仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技
术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范
围。
51和机械臂52,控制系统51与处理装置3通信连接,传送带1、相机2、机器人5设置在分选车
间现场,显示器4设置在分选车间现场之外。其中,传送带1用于承载和输送工件。相机2用于
采集工件的图像。显示器4用于显示图像和接受选择操作,并将选中的工件数据发送至处理
装置3。处理装置3执行:接收显示器4发送的工件数据;将位于相机视野内(相机2当前时刻
可以拍摄到工件)的工件数据写入预先定义的视野内工件队列;实时计算视野内工件队列
中各工件的坐标,将实时坐标处于相机视野外(相机2当前时刻已拍摄不到工件)的工件数
据从视野内工件队列中移除并写入预先定义的视野外工件队列;将视野外工件队列中的工
件数据发送给机器人5进行工件抓取(如图5所示)。控制系统51执行:预先创建一异步接收
线程和一主线程;通过异步接收线程接收工件数据,并将工件数据解析后写入工件缓冲区。
与此同时,通过主线程判断工件缓冲区中是否存在工件数据,若否,直接触发相机2拍照;若
是,执行:暂停异步接收线程的工件数据接收;接着,取出工件缓冲区中的工件数据,将工件
数据写入工件抓取队列,并清空工件缓冲区;接着,重启异步接收线程的工件数据接收,然
后触发相机2拍照;接着,判断是否有接收到相机2发送的拍照完成信号,若是,记录传送带1
的当前编码器值,退出回调函数(如图7所示)。机械臂52依据工件抓取队列抓取对应的工
件。
实施例中,相机2横跨在传送带1之上,相机2通过一支撑架6支撑,机器人5则设置在传送带1
的一侧,且机器人5的底部设有多个车轮53,当机器人5受到移动驱动力时,车轮53将相对地
面移动,使得机器人5的位置调整方便省力(如图3所示)。在一些实施例中,相机2和机器人5
均横跨在传送带1之上,相机2和机器人5集成在一起并通过同一支撑架6支撑(如图4所示)。
人10的手指触控显示器4,手指触控到图像中的哪一工件,该工件即被选中。当然,显示器4
也可以仅具有显示功能,具体实施中还可以通过鼠标点选显示器4的显示屏来选中欲抓取
的工件。
图像中出现。但是,采用本发明将前后两帧图像之间的时间间隔非常短(视频流的方式,即
高速的图片流,每秒大致能闪过24张图片,人眼感受不到停顿)时,为了保证流畅性,无法再
进行人为干预相机2的拍照范围,因此,同一工件会在前后多张图像中出现。当工件比较堆
积的时候现场的分选工人可能会在多次选中前后帧图像中的同一工件。
件已经在前一帧图像中被选中过,防止分选工人多次选中同一工件,进而避免机器人5多次
抓取同一工件(空抓),保证作业效率。
设置在分选车间现场,显示器4设置在分选车间现场之外。人机协作分选系统的作业方法包
括工件数据发送步骤和工件数据接收步骤。其中,工件数据发送步骤具体为:将在显示器4
中被选中且位于相机视野内(相机2当前时刻可以拍摄到工件)的工件数据写入预先定义的
视野内工件队列;实时计算视野内工件队列中各工件的坐标,将实时坐标处于相机视野外
(相机2当前时刻已拍摄不到工件)的工件数据从视野内工件队列中移除并写入预先定义的
视野外工件队列;将视野外工件队列中的工件数据发送给机器人5进行工件抓取(如图5所
示)。至于如何计算工件的实时坐标是否处于相机视野内,参阅下述“实时跟踪被选中的工
件在每一帧图像中的坐标”的具体实现方式。工件数据接收步骤具体为:预先创建一异步接
收线程和一主线程;异步接收线程实时等待接收工件数据,并判断是否接收到工件数据;若
是,则将工件数据解析,并将解析的工件数据写入工件缓冲区。与此同时,主线程实时判断
工件缓冲区中是否存在工件数据,若否,直接触发相机2拍照;若是,暂停异步接收线程的工
件数据接收;接着,取出工件缓冲区中的工件数据,将工件数据写入工件抓取队列,并清空
工件缓冲区;接着,重启异步接收线程的工件数据接收,然后触发相机2拍照;接着,判断是
否有接收到相机2发送的拍照完成信号,若是,记录传送带1的当前编码器值,退出回调函数
(如图7所示)。
包括工件的实时坐标和工件类型(可通过手势或者接入外设的方式获取,此部分为现有技
术,在此不再赘述)。
坐标;然后将实时坐标处于相机视野内的工件数据写入视野内工件队列,将实时坐标处于
相机视野外的工件数据写入视野外工件队列,并从总工件队列中删除该处于相机视野外的
工件数据。进一步的,在该实施例中,还定时清空视野内工件队列和视野外工件队列。
像中出现。但是,采用本发明将前后两帧图像之间的时间间隔非常短(视频流的方式,即高
速的图片流,每秒大致能闪过24张图片,人眼感受不到停顿)时,为了保证流畅性,无法再进
行人为干预相机2的拍照范围,因此,同一工件会在前后多张图像中出现。当工件比较堆积
的时候现场分选工人可能会在多次选中前后帧图像中的同一工件。
分选工人该工件已经在前一帧图像中被选中过,防止分选工人多次选中同一工件,进而避
免机器人5多次抓取同一工件(空抓),保证作业效率。
转换成机器人坐标的第一转换矩阵M0,由转换矩阵M0可以准确知道编码器转一圈对应传送
带1真实移动距离为多少;标定相机2和传送带1,获得相机像素坐标转换成传送带坐标的第
二转换矩阵M1及传送带坐标转换成相机像素坐标的第三转换矩阵M2(即M1的逆矩阵),由转
换矩阵M1可以准确知道传送带1走过1mm时对应相机2走过几个像素;依据公式P=(P’*M1+
△d)*M2获得工件在当前帧图像的坐标。其中,P为工件在当前帧图像的坐标,P’为工件在上
一帧图像中被选中时的对应坐标,△d为当前编码器值与上一帧图像锁存的编码器值(即工
件在传送到的实时坐标)的平移矩阵,而编码器值由第一转换矩阵M0和传送带1的编码器发
送的传送带坐标获得。通过机器人5来间接获取编码器数据从而实现传送带1跟踪,无需额
外增加硬件成本。
不再赘述。
间较长,因此发送前后两次选中的工件数据的时间间隔较长,这就使得机器人5的控制系统
51可以依照工件数据发送的先后顺序依次收到工件数据,进而确保了控制系统51能够正常
进行工件数据解析以进行工件抓取,能够适应于选中操作比较频繁的情形;同时,也有效减
轻了以太网网卡的负担。而机器人5的控制系统51接收处理装置3发送的工件数据时,是采
用异步接收线程进行接收,主线程再读取异步接收线程的数据,大大减少了主线程的等待
时间,进而也减少了相机2的等待时间,提高了作业效率。即是,本发明的工件数据发送方式
和接收方式使得处理装置3和机器人5可以适应前后两帧图像之间时间间隔非常短的作业
需求,从而可以在显示器4以视频流的方式(高速的图片流)显示图像,更好地模拟工件在现
场的真实环境,图像显示也更加顺畅,分选工人可以更好地进行操作。