文档详情

机器人课程设计自动化.pdf

发布:2025-03-28约2.39万字共22页下载文档
文本预览下载声明

提交日期2022年7月25日

桌面级机械臂颜色分拣系统

一、实验目的

根据已经提供的ROS平台和Dobot机器人技术,结合HSV颜色空间下图像处理方

法,设计基于ROS的桌面级机械臂颜色分拣系统,在ROS下进行分拣系统进行设计,

主要的任务分别是:相机和机械臂的标定,建立相机坐标系、世界坐标系和机械臂基座

坐标系的相对关系;在HSV颜色空间下使用OpenCV对USB头的图像进行

处理,提取有色物块像素点坐标;在像素点坐标转换到机械臂坐标系后,调用Dobot

自带的Api,实现机械臂的抓取和分拣。

二、实验内容

(1)相机标定。在相机标定上,采用棋盘格标定法标定内参,采用Aruco

获得其内置的RT矩阵从而进行相机外参的标定;机械臂标定,虽然机械臂拥有

固定笛的卡尔坐标系,且现实中世界笛卡尔坐标系和机械臂笛卡尔坐标系具有可测性,

最终通过人工测量的方式实现机械臂的标定。

(2)完成图像像素的计算。设计一种基于OpenCV的有像计算方法:

使用HSV颜色空间,通过本研究在OpenCV和ROS下对图像进行并对符合预设

颜色

的物象进行二值化处理,使用最小矩形抓取轮廓的方法,找到图像轮廓,最终根据图像

轮廓的左上角和右下角坐标的平均值可得物块得像素点坐标。

(3)实现机械臂分拣操作。通过坐标变换,将像素坐标系下的坐标转移到相

机坐标系下,相机坐标系已发布在TF树,对该坐标系进行TF空间中的坐标变换,

实现有色物块坐标从像素坐标系到机械臂基座坐标系的坐标变换,获得机械臂基座

坐标系下的物件坐标。

通过调用DobotApi的方式控制机械臂,实现机械臂末端吸盘对有色物件抓取,

再将物件根据预设的分类划分到初始设定的颜域之中。

对上述给出的设计方案进行演示验证,实现机械臂能够准确快速的完成有色物块的

分拣任务,能够待机准备任何时间出现在视野内的物块分拣。

三、实验过程

1.使用USB_CAM打开USB单目相机

ROS对许多传感器诸如:游戏杆,游戏手柄,IMU,激光测距仪,Kinect(RGBD)

传感器,USB视觉相机等都提供了支持,本设计中只探讨USB相机的使用方式包括:ROS下USB相机

驱动安装,相机节点编译执行,单目相机标定方式。ROS对于图像处理和计算机视觉提供了机标定

过程,畸变矫色,等其他一些底层操作,更加复杂的图像处理任务可以借助OpenCV,

cv_bridge和Image_transport库通过建立连接,订阅和发布图像进行交互,另外还提供了物体识

别,增强现实,视觉里程计等算能包。

1.1weneedtoknow

1)USB单目相机

外接电脑的相机(设备),外接电脑时可产生设备端,用户可以通过该设备号

使用此相机。

2)usb_cam功能包

src/usb_cam.cpp最终产生libusb_cam.so,它使用V4L2接口相机,并提供一

些必要的格式转换工具。

nodes/usb_cam_node.cpp最终产生usb_cam_node。它初始化ROS,利用libu

显示全部
相似文档