CN109079777A - 一种机械臂手眼协调作业*** - Google Patents
一种机械臂手眼协调作业*** Download PDFInfo
- Publication number
- CN109079777A CN109079777A CN201810865741.4A CN201810865741A CN109079777A CN 109079777 A CN109079777 A CN 109079777A CN 201810865741 A CN201810865741 A CN 201810865741A CN 109079777 A CN109079777 A CN 109079777A
- Authority
- CN
- China
- Prior art keywords
- mechanical arm
- target workpiece
- workpiece
- module
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种机械臂手眼协调作业***,能够提高机械臂的智能性。所述***包括:摄像装置、与所述摄像装置相连的上位机和与所述上位机相连的机械臂;其中,所述摄像装置,用于捕捉目标工件所处环境的视野图像和目标工件的姿态图像;所述上位机,用于获取所述摄像装置捕捉的环境视野图像和目标工件姿态图像进行目标检测,确定目标工件的位置和姿态,根据确定的目标工件的位置和姿态进行运动规划,生成运动消息队列控制所述机械臂进行作业。本发明涉及机械臂技术领域。
Description
技术领域
本发明涉及机械臂技术领域,特别是指一种机械臂手眼协调作业***。
背景技术
在机器人领域中,机械臂是使用最广泛的自动操作装置,它可以模仿人手臂的某些动作功能,按固定程序抓取、搬运物件或操作工具。尤其是多自由度机械臂,在制造、汽车、半导体、医疗、服务等多个领域有着广泛的应用前景。
第一代机械臂,在机械臂控制器的控制下,按事先示教的位置和姿态进行重复的动作的机械。它也简称为示教/再现方式的机械臂或是T/P方式的机械臂。这种工作方式只能按照事先示教的位置和姿态进行那个重复的动作而对周围环境毫无感觉的功能,智能性低,其应用范围受到一定的限制,主要应用于材料的搬运、喷漆、电焊等工作。
发明内容
本发明要解决的技术问题是提供一种机械臂手眼协调作业***,以解决现有技术所存在的第一代机械臂智能性低的问题。
为解决上述技术问题,本发明实施例提供一种机械臂手眼协调作业***,包括:摄像装置、与所述摄像装置相连的上位机和与所述上位机相连的机械臂;其中,
所述摄像装置,用于捕捉目标工件所处环境的视野图像和目标工件的姿态图像;
所述上位机,用于获取所述摄像装置捕捉的环境视野图像和目标工件姿态图像进行目标检测,确定目标工件的位置和姿态,根据确定的目标工件的位置和姿态进行运动规划,生成运动消息队列控制所述机械臂进行作业。
进一步地,所述摄像装置包括:深度摄像机和单目摄像机;
所述深度摄像机,用于捕捉目标工件所处环境视野的彩色图像和深度图像;
所述单目摄像机,用于捕捉目标工件的姿态图像。
进一步地,所述上位机包括:视觉伺服控制模块和通信话题模块;
所述视觉伺服控制模块,用于对捕捉的环境视野的彩色图像和深度图像进行处理,根据处理结果,利用预先训练好的工件分类器进行目标检测,若检测到目标工件的像素坐标,则获取目标工件处的深度信息,若深度信息未超出预设的深度约束范围,则将目标工件的像素坐标进行坐标转换,得到目标工件的世界坐标并发布到通信话题模块。
进一步地,所述视觉伺服控制模块,用于对捕捉的环境视野的深度图像进行处理,获取深度图像中包含目标工件的感兴趣区域,对感兴趣区域对应的彩色图像进行预处理并利用预先训练好的工件分类器进行工件检测,若检测到目标工件的像素坐标,则获取目标工件处的深度信息,若深度信息未超出预设的深度约束范围,则将目标工件的像素坐标进行坐标转换,得到目标工件的世界坐标并发布到通信话题模块;
其中,所述预处理包括:灰度化处理、二值化处理和直方图均衡处理。
进一步地,所述视觉伺服控制模块,还用于获取捕捉的目标工件的姿态图像,根据获取的目标工件的姿态图像,确定目标工件姿态并发布到通信话题模块。
进一步地,所述上位机还包括:机械臂运动控制模块;
所述机械臂运动控制模块,用于订阅通信话题模块并获取目标工件的世界坐标,根据获取的目标工件的世界坐标进行运动规划,生成运动消息队列并发布,机械臂根据发布的运动消息队列执行完一次规划后,读取目标工件的姿态信息,根据读取的目标工件的姿态信息进行运动规划,生成运动消息队列并发布,以精准调节机械臂末端位姿。
进一步地,所述机械臂运动控制模块,用于读取目标工件的世界坐标,根据读取的目标工件的世界坐标判断目标工件的当前坐标信息与上一次坐标信息有无变化,若无变化,则返回继续执行读取目标工件的世界坐标的步骤,若有变化,则根据坐标变化量进行运动规划,生成运动消息队列并发布,机械臂根据发布的运动消息队列执行完一次规划后,读取目标工件的姿态信息,根据读取的目标工件的姿态信息判断目标工件的当前姿态与上一次姿态有无变化,若无变化,则返回继续执行读取目标工件的姿态信息的步骤,若有变化,则根据姿态变化量进行运动规划,生成运动消息队列并发布,以精准调节机械臂末端位姿。
进一步地,所述机械臂运动控制模块,还用于读取机械臂建模文件、配置机械臂碰撞检测功能、配置机械臂各个关节组模块控制器,初始化机械臂的位姿信息。
进一步地,所述***还包括:训练工件分类器的离线训练模块;所述离线训练模块包括:
创建模块,用于创建样本,所述样本包括:正样本和负样本,正样本为只包含工件的图像,负样本为不包含工件的图像;
处理模块,用于将正负样本的尺寸进行归一化,并将正负样本转为灰度图,其中,负样本尺寸比正样本的尺寸大,正样本的尺寸为多种;
第一生成模块,用于将正样本生成正样本集合文件格式,并生成正样本描述文件格式;
第二生成模块,用于将负样本生成负样本集合文件格式;
训练模块,用于基于生成的正样本描述文件格式和负样本集合文件格式,采用不同的特征类型对进行训练,得到多种不同的工件分类器,所述工件分类器,用于工件检测。
进一步地,不同的特性类型包括:Haar特征、LBP特征和HOG特征。
本发明的上述技术方案的有益效果如下:
上述方案中,通过摄像装置捕捉目标工件所处环境的视野图像和目标工件的姿态图像;上位机获取所述摄像装置捕捉的环境视野图像和目标工件姿态图像进行目标检测,确定目标工件的位置和姿态,根据确定的目标工件的位置和姿态进行运动规划,生成运动消息队列控制所述机械臂进行作业,从而提高机械臂的智能性,增大机械臂应用范围。
附图说明
图1为本发明实施例提供的机械臂手眼协调作业***的流程示意图;
图2为本发明实施例提供的机械臂手眼协调作业***的结构示意图;
图3为本发明实施例提供的机械臂手眼协调作业***的详细流程示意图;
图4为本发明实施例提供的工件分类器训练流程示意图;
图5为本发明实施例提供的工件分类器检测流程示意图;
图6为本发明实施例提供的ROS***下机械臂基础控制结构示意图;
图7为本发明实施例提供的手眼协调控制策略示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的第一代机械臂智能性低的问题,提供一种机械臂手眼协调作业***。
如图1所示,本发明实施例提供的机械臂手眼协调作业***,包括:摄像装置11、与所述摄像装置11相连的上位机12和与所述上位机12相连的机械臂13;其中,
所述摄像装置11,用于捕捉目标工件所处环境的视野图像和目标工件的姿态图像;
所述上位机12,用于获取所述摄像装置捕捉的环境视野图像和目标工件姿态图像进行目标检测,确定目标工件的位置和姿态,根据确定的目标工件的位置和姿态进行运动规划,生成运动消息队列控制所述机械臂13进行作业。
本发明实施例所述的机械臂手眼协调作业***,通过摄像装置捕捉目标工件所处环境的视野图像和目标工件的姿态图像;上位机获取所述摄像装置捕捉的环境视野图像和目标工件姿态图像进行目标检测,确定目标工件的位置和姿态,根据确定的目标工件的位置和姿态进行运动规划,生成运动消息队列控制所述机械臂进行作业,从而提高机械臂的智能性,增大机械臂应用范围。
如图2所示,本发明实施例所述的机械臂手眼协调作业***主要包括以下三部分:
第一部分是实体装置,可以包括但不限于:机械臂(例如,七自由度机械臂模块)、摄像装置、无驱动四轮底座支架、usb转can通信模块、上位机(例如,Linux***pc主机)、win***pc主机;
本实施例中,所述usb转can通信模块,用于机械臂与上位机之间的通信,从而实现上位机对机械臂各个关节的控制。
本实施例中,所述win***pc主机,用于实现第二部分的工件分类器训练。
本实施例中,所述Linux***pc主机,用于实现第三部分的上位机软件***。
第二部分是目标工件检测算法,主要通过离线训练和在线检测训练并验证完整的工件分类器,所述工件分类器,用于第三部分的视觉伺服控制模块中的图像检测模块;
第三部分是上位机软件***,所述上位机软件***是基于Linux***的机器人操作***(Robot Operating System,ROS)***,用于结合实体装置实现基于ROS和机器视觉的七自由度机械臂自主作业;主要包括:视觉伺服控制模块、机械臂运动控制模块和通信话题模块。
本实施例中,ROS是机器人软件平台,能为异质计算机集群提供用于机器人的次级操作***。ROS提供一系列程序库和工具以帮助软件开发者创建机器人应用软件,它提供了硬件抽象、设备驱动、函数库、可视化工具、消息传递和软件包管理等诸多功能,目的是让代码自由分享、复用甚至是扩展,可以更好的创建、扩展机器人的应用。
本发明实施例所述的机械臂手眼协调作业***基于ROS平台***,利用ROS诸多特性,能够减少机械臂运动规划的实现难度,降低机械臂应用的门槛。
在前述机械臂手眼协调作业***的具体实施方式中,进一步地,所述摄像装置包括:深度摄像机和单目摄像机;
所述深度摄像机,用于捕捉目标工件所处环境视野的彩色图像和深度图像;
所述单目摄像机,用于捕捉目标工件的姿态图像。
所述视觉伺服控制模块包括两部分:eye-on-hand和eye-in-hand;其中,eye-on-hand部分用于上位机获取深度摄像机图像,并处理获得目标工件位置。eye-in-hand部分用于上位机获取单目摄像机图像,并处理获得工件姿态,精准调节机械臂末端位姿。
本实施例中,所述深度摄像机可以同时获取彩色(RGB)图像和深度图像,适合室内近距离图像获取,主要用于视觉伺服控制模块,实现对环境的感知,进而获取目标工件位置。所述单目摄像机是一款近距离USB网络摄像头,也主要用于视觉伺服控制模块。
在前述机械臂手眼协调作业***的具体实施方式中,进一步地,所述上位机包括:视觉伺服控制模块和通信话题模块;
所述视觉伺服控制模块,用于对捕捉的环境视野的彩色图像和深度图像进行处理,根据处理结果,利用预先训练好的工件分类器进行目标检测,若检测到目标工件的像素坐标,则获取目标工件处的深度信息,若深度信息未超出预设的深度约束范围,则将目标工件的像素坐标进行坐标转换,得到目标工件的世界坐标并发布到通信话题模块。
本实施例中,安装相机驱动后,所述视觉伺服控制模块读取彩色图像与深度图像,接着利用第二部分训练好的工件分类器检测目标,并确定目标工件的世界坐标位置,将目标工件的世界坐标位置发布到通信话题模块。
所述视觉伺服控制模块,用于上位机获取摄像机图像,并处理获得目标工件位姿。
本实施例中,所述视觉伺服控制模块可以包括:相机驱动模块、图像采集模块、图像检测模块、目标定位模块、相机标定模块;其中,
所述相机驱动模块,是一个跨平台库(linux,windows,Mac)的驱动,通过它可以获取等摄像机的原始数据,并且可以支持多台摄像机工作。
所述图像采集模块,用于获取摄像头彩色图像数据流和深度图像数据流,从而获取图像深度数据。
所述图像检测模块,用于对捕捉的环境视野的深度图像进行处理,获取深度图像包含目标工件的感兴趣区域(region of interest,ROI),对感兴趣区域对应的彩色图像进行预处理并利用预先训练好的工件分类器进行工件检测,若检测到目标工件的像素坐标,则获取目标工件处的深度信息,若深度信息未超出预设的深度约束范围,则所述目标定位模块将目标工件的像素坐标进行坐标转换,得到目标工件的世界坐标并发布到通信话题模块;这样,通过深度图像获取感兴趣区域,并对感兴趣区域对应的彩色图像通过预先训练好的工件分类器进行工件检测,可以降低工件分类器检测的计算量和耗时,并且提升目标工件的识别正确率。
本实施例中,感兴趣区域是从图像中选择的一个图像区域,这个区域是图像处理所关注的重点,圈定该区域以便进行进一步处理,使用感兴趣区域圈定目标,可以减少处理时间,增加精度。
本实施例中,所述预处理包括:灰度化处理、二值化处理和直方图均衡处理。
本实施例中,计算世界坐标主要有三部分,将目标工件的像素坐标转换为物理坐标,物理坐标转换为相机坐标,相机坐标转换为世界坐标。
所述相机标定模块,是通过采用张正友标定法对相机进行标定,获取内外参数,用于目标定位模块。
本实施例中,所述通信话题模块,主要用于监听视觉伺服控制模块发布的目标工件的世界坐标信息,并提供给机械臂运动控制模块;即:视觉伺服控制模块将目标工件的世界坐标信息发布到此通信话题模块,机械臂运动控制模块通过此通信话题模块订阅目标工件的世界坐标,从而实现视觉伺服控制模块和机械臂运动控制模块之间的通信。
在前述机械臂手眼协调作业***的具体实施方式中,进一步地,所述视觉伺服控制模块,还用于获取捕捉的目标工件的姿态图像,根据获取的目标工件的姿态图像,确定目标工件姿态并发布到通信话题模块。
在前述机械臂手眼协调作业***的具体实施方式中,进一步地,所述上位机还包括:机械臂运动控制模块;
所述机械臂运动控制模块,用于订阅通信话题模块并获取目标工件的世界坐标,根据获取的目标工件的世界坐标进行运动规划,生成运动消息队列并发布,机械臂根据发布的运动消息队列执行完一次规划后,读取目标工件的姿态信息,根据读取的目标工件的姿态信息进行运动规划,生成运动消息队列并发布,以精准调节机械臂末端位姿。
本实施例中,在订阅通信话题模块并获取目标工件的世界坐标之前,需先启动机械臂运动规划程序接口、机械臂各关节控制模块以及可视化工具,然后再执行订阅通信话题模块并获取目标工件的世界坐标的步骤。
本实施例中,所述上位机还包括:运动规划程序模块,所述运动规划程序模块是针对机器人进行移动操作的一套工具。这个库包含一个快速的逆运动学解算器、先进的操作算法、三维感知抓握、运动学、控制和导航等功能。最主要的功能是,它提供了框架和接口使用户可以通过将自己设计的逆运动学解算器和运动规划算法用于ROS体系。
在前述机械臂手眼协调作业***的具体实施方式中,进一步地,所述机械臂运动控制模块,用于读取目标工件的世界坐标,根据读取的目标工件的世界坐标判断目标工件的当前坐标信息与上一次坐标信息有无变化,若无变化,则返回继续执行读取目标工件的世界坐标的步骤,若有变化,则根据坐标变化量进行运动规划,生成运动消息队列并发布,机械臂根据发布的运动消息队列执行完一次规划后,读取目标工件的姿态信息,根据读取的目标工件的姿态信息判断目标工件的当前姿态与上一次姿态有无变化,若无变化,则返回继续执行读取目标工件的姿态信息的步骤,若有变化,则根据姿态变化量进行运动规划,生成运动消息队列并发布,以精准调节机械臂末端位姿。
在前述机械臂手眼协调作业***的具体实施方式中,进一步地,所述机械臂运动控制模块,还用于读取机械臂建模文件、配置机械臂碰撞检测功能、配置机械臂各个关节组模块控制器,初始化机械臂的位姿信息。
本实施例中,所述机械臂运动控制模块,用于实现对机械臂的运动规划和运动控制,从而精准调节机械臂末端位姿。所述机械臂运动控制模块主要包括:can总线驱动模块、机械臂建模模块、碰撞检测配置模块、关节组配置模块、运动规划模块、关节控制器模块、硬件接口模块、关节状态发布模块、机械臂状态发布模块;其中,
所述can总线驱动模块,用于通过相应驱动库操作can总线实现数据发送、读取,按照机械臂控制器的数据格式要求,即可实现对机械臂各关节组模块的驱动,用于上位机与实体装置的通信与控制。
所述机械臂建模模块,是一种统一机器人描述格式,是一种XML格式描述的机器人模型。
所述碰撞检测配置模块,用于配置机械臂碰撞检测功能。
所述关节组配置模块,用于配置各个关节组模块控制器。
所述运动规划模块,用于实现对机械臂的运动规划。
所述关节控制器模块,用于控制各个关节运动。
所述硬件接口模块,用于底层硬件接口。
所述关节状态发布模块,用于接收发布各关节实时状态。
所述机械臂状态发布模块,用于接收发布整个机械臂实时状态。
如图3所示,上位机、摄像装置与机械臂之间的工作流程包括:
A11,启动相关ROS节点进入工作状态;
A12,启动eye-on-hand深度摄像机读取RGB图像与深度图像,读取RGB图像和深度图像,进行目标检测,若没有检测到目标工件的像素坐标,则返回到RGB图像和深度图像读取,若检测到目标工件的像素坐标,则获取检测目标点处的深度信息,若深度信息超出预设的深度约束范围,则返回到RGB图像和深度图像读取,否则,则将目标工件的像素坐标进行坐标转换,得到目标工件的世界坐标并发布,发布后继续返回到RGB图像和深度图像读取,一直循环;与此同时,所述机械臂运动控制模块首先读取机械臂建模文件,然后读取碰撞检测与运动规划关节组配置,再初始化位姿信息,接着读取目标工件的世界坐标,根据读取的目标工件的世界坐标判断目标工件的当前坐标信息与上一次坐标信息有无变化,若无变化,则返回继续执行读取目标工件的世界坐标的步骤,若有变化,则根据坐标变化量进行运动规划,生成运动消息队列并发布,机械臂根据发布的运动消息队列执行完一次规划后,启动eye-in-hand摄像头,读取目标工件的姿态信息,根据读取的目标工件的姿态信息判断目标工件的当前姿态与上一次姿态有无变化,若无变化,则返回继续执行读取目标工件的姿态信息的步骤,若有变化,则根据姿态变化量进行运动规划,生成运动消息队列并发布,以精准调节机械臂末端位姿。
在前述机械臂手眼协调作业***的具体实施方式中,进一步地,所述***还包括:训练工件分类器的离线训练模块;所述离线训练模块包括:
创建模块,用于创建样本,所述样本包括:正样本和负样本,正样本为只包含工件的图像,负样本为不包含工件的图像;
处理模块,用于将正负样本的尺寸进行归一化,并将正负样本转为灰度图,其中,负样本尺寸比正样本的尺寸大,正样本的尺寸为多种;
第一生成模块,用于将正样本生成正样本集合文件格式,并生成正样本描述文件格式;
第二生成模块,用于将负样本生成负样本集合文件格式;
训练模块,用于基于生成的正样本描述文件格式和负样本集合文件格式,采用不同的特征类型对进行训练,得到多种不同的工件分类器,所述工件分类器,用于工件检测。
本实施例中,第二部分目标工件检测算法的生成包括:离线训练模块和在线检测模块两部分。
对于离线训练,如图4所示,首先要创建样本,样本分为正样本与负样本,正样本为只包含工件的bmp图像,负样本为一定不包含工件的bmp图像,正样本与负样本比例约为1:3,样本数量至少1000以上,然后正负样本都需要预处理,将尺寸进行归一化,并转为灰度图,负样本尺寸一定要比正样本大,每个正样本建立三种不同的尺寸,20*20、24*24与64*64,然后为正负样本分别生成集合文件格式,正样本还需要再生成正样本描述文件格式;接着,开始训练样本,样本训练有三种方案,分别基于不同的特征类型,Haar特征、局部二值模式(Local Binary Pattern,LBP)特征和方向梯度直方图(Histogram of OrientedGradient,HOG)特征,都采用Adaboost机器学习算法训练,最终生成三个不同的工件分类器。
本实施中,针对不同尺寸的正样本,20*20的正样本用于Haar特征类型训练,24*24用于LBP特征训练,64*64用于HOG特征训练,建议训练分类器的级数为15,每个强分类器的阈值为0.9999,每个弱分类器的最大虚警率为0.5,从而获取到三个不同的工件分类器,都可以应用于工件检测;最后对分类器进行评估,若评估结果不够满意,重新调节参数直至检测效果精确,以便获取正确检测结果。
本实施例中,训练结果评估用于测试训练好的工件分类器特性,如漏检率、误检率等,包括工件测试样本准备及标注、分类器质量评估程序。
本实施例中,所述工件分类器的训练可以是基于windows***的C++软件平台开发。
本实施例中,所述在线检测模块,是对目标工件的识别检测程序,充分利用深度摄像机的特性,将深度图像与彩色图像相结合进行图像处理,利用上述训练的工件分类器,成功检测到样本以内的工件。
图5工件识别算法流程图。深度摄像机在获得彩色图像的同时还可以获得深度图像,深度图像不显示背景信息,包括目标工件在内的前景信息为灰白色。所以可以通过深度图像获取感兴趣区域,并对感兴趣区域对应的彩色图像通过工件分类器识别,这样可以分类器检测的计算量和耗时,并且提升目标工件的识别正确率。由于深度图像前后景黑白分明,所以使用基于HSV颜色空间的图像分割方式最合适。首先将RGB图像转为HSV图像,要分割的是灰色和白色,色调通道H的范围是[0,180],饱和度通道S的范围是[0,43],明度通道V的范围是[100,255],可以较为准确地分割出理想区域;其次,初次分割的区域比较散乱,为了提取一个完整的感兴趣区域,最适合通过形态学滤波中的闭运算进行处理,即先膨胀后腐蚀,排除黑洞,整合所有白色区块;最后需要对分割区域进行轮廓拟合获取感兴趣区域。获得深度图像的感兴趣区域后,将其应用于彩色图像,并且对其按照感兴趣区域进行裁剪以用于工件分类器检测。在进行工件分类器检测之前,需要先对感兴趣区域进行预处理,即灰度化、尺寸缩小和直方图均衡,以加快检测速度。
图6为ROS***下机械臂控制结构原理图。这是机械臂进行运动规划时机械臂在ROS***下的控制结构,如图6所示,主要涉及四个命名空间、五个节点以及六种消息类型。mra7a主要是对机械臂各关节的控制模块;robot_state_publisher用于接收机械臂实时关节状态并处理发布tf信息;joint_state_publisher用于接收机械臂实时关节状态并处理发布joint_states信息;move_group是ROS***机械臂运动规划模块体系结构的核心单元。
图7为手眼协调控制策略图。使用动态反馈方式来满足快速响应,即视觉检测与机械臂控制同时进行;主要以位置、姿态作为反馈方式进行控制,并且是基于特征点的视觉伺服;分为内环的关节控制***和外环的视觉控制***,设计为双闭环***。结合eye-in-hand与eye-on-hand两种视觉安装方案,深度摄像机用于捕捉环境视野,初步获取目标工件位置,使得末端靠近目标工件;单目摄像机用于精准操作,通过图像处理获取目标工件姿态,控制夹具准确抓取目标工件。
综上,本发明实施例提供的机械臂手眼协调作业***,是针对机械臂的目标检测、图像处理、手眼协调以及运动规划等给出一整套解决方案,其具有以下优点:
1)将深度摄像机作为机械臂核心传感器件可以大大提高机械臂的环境适应能力;
2)基于ROS操作***的,充分利用ROS***的软件包,实现机械臂运动规划的快速配置,有助于机械臂的运动规划,大大降低了机械臂控制的门槛,可以有效解决机械臂环境适应性差、开发使用难度高等问题。
3)采用分布式的***框架,并将上位机与下位机(例如,机械臂)分开,可有效利用上位机超高图像处理能力和计算能力强的优点,又容易实现机械臂及上位机的布局和机械臂协调作业,从而有利于下位机的实时性;
4)不仅训练出用于准确检测工件的工件分类器,而且提出了一种针对深度摄像机的结合深度图像的彩色图像工件检测算法流程,可应用于各领域对工件的识别,可应用于机械臂对工件的抓取、移动等;
5)提出的针对深度摄像机的坐标转换方案可以应用于使用深度摄像机对目标进行定位的场景;
6)本发明实施例提供的机械臂手眼协调作业***,可以轻松的实现机械臂的布局,方便拓展,降低使用成本,应用前景广泛。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种机械臂手眼协调作业***,其特征在于,包括:摄像装置、与所述摄像装置相连的上位机和与所述上位机相连的机械臂;其中,
所述摄像装置,用于捕捉目标工件所处环境的视野图像和目标工件的姿态图像;
所述上位机,用于获取所述摄像装置捕捉的环境视野图像和目标工件姿态图像进行目标检测,确定目标工件的位置和姿态,根据确定的目标工件的位置和姿态进行运动规划,生成运动消息队列控制所述机械臂进行作业。
2.根据权利要求1所述的机械臂手眼协调作业***,其特征在于,所述摄像装置包括:深度摄像机和单目摄像机;
所述深度摄像机,用于捕捉目标工件所处环境视野的彩色图像和深度图像;
所述单目摄像机,用于捕捉目标工件的姿态图像。
3.根据权利要求1所述的机械臂手眼协调作业***,其特征在于,所述上位机包括:视觉伺服控制模块和通信话题模块;
所述视觉伺服控制模块,用于对捕捉的环境视野的彩色图像和深度图像进行处理,根据处理结果,利用预先训练好的工件分类器进行目标检测,若检测到目标工件的像素坐标,则获取目标工件处的深度信息,若深度信息未超出预设的深度约束范围,则将目标工件的像素坐标进行坐标转换,得到目标工件的世界坐标并发布到通信话题模块。
4.根据权利要求3所述的机械臂手眼协调作业***,其特征在于,所述视觉伺服控制模块,用于对捕捉的环境视野的深度图像进行处理,获取深度图像中包含目标工件的感兴趣区域,对感兴趣区域对应的彩色图像进行预处理并利用预先训练好的工件分类器进行工件检测,若检测到目标工件的像素坐标,则获取目标工件处的深度信息,若深度信息未超出预设的深度约束范围,则将目标工件的像素坐标进行坐标转换,得到目标工件的世界坐标并发布到通信话题模块;
其中,所述预处理包括:灰度化处理、二值化处理和直方图均衡处理。
5.根据权利要求3所述的机械臂手眼协调作业***,其特征在于,所述视觉伺服控制模块,还用于获取捕捉的目标工件的姿态图像,根据获取的目标工件的姿态图像,确定目标工件姿态并发布到通信话题模块。
6.根据权利要求5所述的机械臂手眼协调作业***,其特征在于,所述上位机还包括:机械臂运动控制模块;
所述机械臂运动控制模块,用于订阅通信话题模块并获取目标工件的世界坐标,根据获取的目标工件的世界坐标进行运动规划,生成运动消息队列并发布,机械臂根据发布的运动消息队列执行完一次规划后,读取目标工件的姿态信息,根据读取的目标工件的姿态信息进行运动规划,生成运动消息队列并发布,以精准调节机械臂末端位姿。
7.根据权利要求6所述的机械臂手眼协调作业***,其特征在于,所述机械臂运动控制模块,用于读取目标工件的世界坐标,根据读取的目标工件的世界坐标判断目标工件的当前坐标信息与上一次坐标信息有无变化,若无变化,则返回继续执行读取目标工件的世界坐标的步骤,若有变化,则根据坐标变化量进行运动规划,生成运动消息队列并发布,机械臂根据发布的运动消息队列执行完一次规划后,读取目标工件的姿态信息,根据读取的目标工件的姿态信息判断目标工件的当前姿态与上一次姿态有无变化,若无变化,则返回继续执行读取目标工件的姿态信息的步骤,若有变化,则根据姿态变化量进行运动规划,生成运动消息队列并发布,以精准调节机械臂末端位姿。
8.根据权利要求6所述的机械臂手眼协调作业***,其特征在于,所述机械臂运动控制模块,还用于读取机械臂建模文件、配置机械臂碰撞检测功能、配置机械臂各个关节组模块控制器,初始化机械臂的位姿信息。
9.根据权利要求1所述的机械臂手眼协调作业***,其特征在于,所述***还包括:训练工件分类器的离线训练模块;所述离线训练模块包括:
创建模块,用于创建样本,所述样本包括:正样本和负样本,正样本为只包含工件的图像,负样本为不包含工件的图像;
处理模块,用于将正负样本的尺寸进行归一化,并将正负样本转为灰度图,其中,负样本尺寸比正样本的尺寸大,正样本的尺寸为多种;
第一生成模块,用于将正样本生成正样本集合文件格式,并生成正样本描述文件格式;
第二生成模块,用于将负样本生成负样本集合文件格式;
训练模块,用于基于生成的正样本描述文件格式和负样本集合文件格式,采用不同的特征类型对进行训练,得到多种不同的工件分类器,所述工件分类器,用于工件检测。
10.根据权利要求9所述的机械臂手眼协调作业***,其特征在于,不同的特性类型包括:Haar特征、LBP特征和HOG特征。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810865741.4A CN109079777B (zh) | 2018-08-01 | 2018-08-01 | 一种机械臂手眼协调作业*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810865741.4A CN109079777B (zh) | 2018-08-01 | 2018-08-01 | 一种机械臂手眼协调作业*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109079777A true CN109079777A (zh) | 2018-12-25 |
CN109079777B CN109079777B (zh) | 2021-09-10 |
Family
ID=64833553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810865741.4A Active CN109079777B (zh) | 2018-08-01 | 2018-08-01 | 一种机械臂手眼协调作业*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109079777B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110216674A (zh) * | 2019-06-20 | 2019-09-10 | 北京科技大学 | 一种冗余自由度机械臂视觉伺服避障*** |
CN110605714A (zh) * | 2019-08-06 | 2019-12-24 | 华中科技大学 | 一种基于人眼凝视点的手眼协调抓取方法 |
CN110772651A (zh) * | 2019-11-19 | 2020-02-11 | 武汉纺织大学 | 基于机器视觉的鞋内紫外定向杀菌的方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102514002A (zh) * | 2011-12-29 | 2012-06-27 | 江苏大学 | 一种数控车床单目视觉上下料机器人***及方法 |
CN204585232U (zh) * | 2015-03-26 | 2015-08-26 | 华南理工大学 | 抓取在线工件的机器人位姿及运动轨迹定位*** |
CN105082161A (zh) * | 2015-09-09 | 2015-11-25 | 新疆医科大学第一附属医院 | 双目立体摄像机机器人视觉伺服控制装置及其使用方法 |
CN106041927A (zh) * | 2016-06-22 | 2016-10-26 | 西安交通大学 | 结合eye‑to‑hand和eye‑in‑hand结构的混合视觉伺服***及方法 |
DE102016114337A1 (de) * | 2015-08-06 | 2017-02-09 | Cognex Corporation | System und verfahren zum verknüpfen von koordinatenräumen maschinellen sehens in einer umgebung angeleiteten zusammenbaus |
CN106826815A (zh) * | 2016-12-21 | 2017-06-13 | 江苏物联网研究发展中心 | 基于彩色图像与深度图像的目标物体识别与定位的方法 |
CN106927079A (zh) * | 2017-03-21 | 2017-07-07 | 长春理工大学 | 一种基于机器视觉的工业***抓取和装箱***及方法 |
CN108098761A (zh) * | 2016-11-24 | 2018-06-01 | 广州映博智能科技有限公司 | 一种新型机器人抓取目标的臂手装置及方法 |
-
2018
- 2018-08-01 CN CN201810865741.4A patent/CN109079777B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102514002A (zh) * | 2011-12-29 | 2012-06-27 | 江苏大学 | 一种数控车床单目视觉上下料机器人***及方法 |
CN204585232U (zh) * | 2015-03-26 | 2015-08-26 | 华南理工大学 | 抓取在线工件的机器人位姿及运动轨迹定位*** |
DE102016114337A1 (de) * | 2015-08-06 | 2017-02-09 | Cognex Corporation | System und verfahren zum verknüpfen von koordinatenräumen maschinellen sehens in einer umgebung angeleiteten zusammenbaus |
CN105082161A (zh) * | 2015-09-09 | 2015-11-25 | 新疆医科大学第一附属医院 | 双目立体摄像机机器人视觉伺服控制装置及其使用方法 |
CN106041927A (zh) * | 2016-06-22 | 2016-10-26 | 西安交通大学 | 结合eye‑to‑hand和eye‑in‑hand结构的混合视觉伺服***及方法 |
CN108098761A (zh) * | 2016-11-24 | 2018-06-01 | 广州映博智能科技有限公司 | 一种新型机器人抓取目标的臂手装置及方法 |
CN106826815A (zh) * | 2016-12-21 | 2017-06-13 | 江苏物联网研究发展中心 | 基于彩色图像与深度图像的目标物体识别与定位的方法 |
CN106927079A (zh) * | 2017-03-21 | 2017-07-07 | 长春理工大学 | 一种基于机器视觉的工业***抓取和装箱***及方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110216674A (zh) * | 2019-06-20 | 2019-09-10 | 北京科技大学 | 一种冗余自由度机械臂视觉伺服避障*** |
CN110605714A (zh) * | 2019-08-06 | 2019-12-24 | 华中科技大学 | 一种基于人眼凝视点的手眼协调抓取方法 |
CN110605714B (zh) * | 2019-08-06 | 2021-08-03 | 华中科技大学 | 一种基于人眼凝视点的手眼协调抓取方法 |
CN110772651A (zh) * | 2019-11-19 | 2020-02-11 | 武汉纺织大学 | 基于机器视觉的鞋内紫外定向杀菌的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109079777B (zh) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114080583B (zh) | 视觉教导和重复移动操纵*** | |
Kragic et al. | Robust visual servoing | |
CN109079777A (zh) | 一种机械臂手眼协调作业*** | |
US12005592B2 (en) | Creating training data variability in machine learning for object labelling from images | |
Zhou et al. | Imitating tool-based garment folding from a single visual observation using hand-object graph dynamics | |
CN114912287A (zh) | 基于目标6d位姿估计的机器人自主抓取仿真***及方法 | |
CN107527368A (zh) | 基于二维码的三维空间姿态定位方法与装置 | |
Begum et al. | A probabilistic model of overt visual attention for cognitive robots | |
GB2231172A (en) | An adaptive vision-based controller | |
Crowley | Towards Continously Operating Integrated Vision Systems for Robotics Applications | |
Takarics et al. | Welding trajectory reconstruction based on the Intelligent Space concept | |
Tokuda et al. | Neural Network based Visual Servoing for Eye-to-Hand Manipulator | |
Christensen et al. | An integrating framework for robust real-time 3D object tracking | |
Du et al. | Off-Line Programming Framework for Sorting Task Based on Human-Demonstration | |
Berry et al. | Real time visual servoing around a complex object | |
Zhou et al. | Learning cloth folding tasks with refined flow based spatio-temporal graphs | |
Zoghlami et al. | Tracking body motions in order to guide a robot using the time of flight technology. | |
Dornaika et al. | Three-dimensional face pose detection and tracking using monocular videos: Tool and application | |
Ude et al. | Online tracking and mimicking of human movements by a humanoid robot | |
He et al. | Development of a practical tool in pick-and-place tasks for human workers | |
CN117021111A (zh) | 一种基于深度强化学习的机器人工件抓取方法 | |
Gu et al. | TOWARDS AUTOMATED ROBOT MANIPULATION: A UNIFIED ACTIVE VISION FRAMEWORK | |
Yingjian et al. | Deep Learning Methods for Robotic Arm Workspace Scene Reconstruction | |
Santo | Automatic 3D Object Recognition and Localization for Robotic Grasping | |
Kragic et al. | Visual servoing meets the real world |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |