工业机器人应用技术(第三版)课件 6.3 智能机器人垃圾分类系统_第1页
工业机器人应用技术(第三版)课件 6.3 智能机器人垃圾分类系统_第2页
工业机器人应用技术(第三版)课件 6.3 智能机器人垃圾分类系统_第3页
工业机器人应用技术(第三版)课件 6.3 智能机器人垃圾分类系统_第4页
工业机器人应用技术(第三版)课件 6.3 智能机器人垃圾分类系统_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六篇拓展篇——人工智能与智能机器人任务三智能机器人垃圾分类系统第六篇拓展篇——人工智能与智能机器人1.学习机械臂基本操作2.学习图像识别原理3.学习图像识别过程4.搭建智能垃圾分类系统6.3智能机器人垃圾分类系统任务描述设计如图6-30所示智能垃圾分类系统,通过图像识别技术进行干垃圾、湿垃圾、可回收垃圾、有害垃圾的识别,并用Python语言编写程序实现四种垃圾的分类。6.3智能机器人垃圾分类系统图6-30智能垃圾分类系统任务实施完成该任务使用的硬件配置如图6-31所示。6.3智能机器人垃圾分类系统(a)DobotMagicianLite机械臂(b)摄像头套件(c)垃圾桶(d)垃圾卡片图6-31智能垃圾分类系统硬件配置6.3.1认识越疆魔术师一、外观及构成越疆魔术师机械臂外观如图6-32所示,是一个高精度4轴桌面智能机械臂,由回转主体、大臂、小臂、臂头、底座等部分组成。机械臂的机械结构分为手臂直线运动结构,回转运动结构,关节型机械臂三个部分。可完成夹取、书写、焊接、分拣、搬运、雕刻,3D打印等工作,是一种典型的操作型机器人。6.3智能机器人垃圾分类系统图6-32DobotMagician机械臂图6-33机械臂组成部分机器臂的运动控制模式分为坐标系控制模式和单轴控制模式。如图6-34所示为坐标系控制模式,坐标系原点为大臂、小臂以及底座三个电机三轴的交点,X轴方向垂直于固定底座向前,Y轴方向垂直于固定底座向左,Z轴符合右手定则垂直向上,R为末端舵机中心相对于坐标原点的姿态,逆时针为正。6.3智能机器人垃圾分类系统图6-34机械臂的坐标系控制示意图如图6-35所示为单轴控制模式,图中的Joint1、2、3、4分别对应于底座、大臂、小臂、头部舵机四个独立旋转轴的控制。6.3智能机器人垃圾分类系统图6-35机械臂的单轴控制示意图如图6-35所示,魔术师机器人的本体中心线与底座的正前方中心对应时,关节1处于其原点位置,旋转正方向为俯视本体时的关节1的逆时针旋转方向;大臂垂直竖立时,关节2处于其原点位置,旋转正方向为使大臂朝前朝下运动的方向;小臂处于平行于底座平面时,关节3处于其原点位置,旋转正方向为使小臂朝下运动的方向;关节4的旋转正方向是俯视本体时关节4的逆时针旋转方向。关节3的角度是与水平面的夹角,而不是与关节2的相对转角。6.3智能机器人垃圾分类系统二、DobotStudio软件DobotStudio是越疆全系列机械臂产品配套的官方控制软件,其功能界面如图6-36所示。6.3智能机器人垃圾分类系统图6-36DobotStudio主界面DobotStudio支持自由配置机械臂的底层参数,省去繁琐的编程,界面直观并且容易操作,主要包含六大功能模块:(1)示教再现用示教的方式操作机械臂实现一系列动作并存点,机械臂便可以重复的去完成刚刚记录的动作。示教再现控制不仅支持传统的点位控制,还支持数字/模拟输入触发、数字输出控制、PWM输出控制,可满足70%的应用。(2)写字&画画此模块可以控制机械臂写字画画或者激光雕刻,并且可以完成所有预定义大多功能,实现绘画,写字等功能。6.3智能机器人垃圾分类系统(3)Blockly图形化编程DobotBlockly是为DobotMagician开发的一套图形化编程平台,基于谷歌的开源平台GoogleBlockly。通过该平台,用户可以通过拼图的方式进行编程,直观易懂。该平台还整合了机械臂专属的API,以供用户随时调用。通过该平台,用户通过拼图的方式进行编程,直观易懂,可以实现绝大部分的运动控制与I/O输入输出功能,加快应用开发的速度。(4)脚本控制编写脚本语言控制机械臂,可以自己定义想要实现的功能,同时Dobot社区已经有一些现成的Demo程序,仅做简单修改就可以完成功能。6.3智能机器人垃圾分类系统(5)手势控制基于leapmotion的手势控制DobotMagician机械臂。(6)鼠标控制进入鼠标控制界面,可以看到一个弧形,标有与机械臂坐标轴对应的数据,按下键盘“V”键开始鼠标控制,机械臂跟随鼠标移动;再按下键盘“V”键,停止鼠标控制。有关机械臂安装、电气连接、初步调试、DorobotStudio的操作请扫描二维码。6.3智能机器人垃圾分类系统三、机械臂控制编程越疆魔术师机械臂不仅为用户提供了DobotStudio软件进行控制,还为DobotMagician机械臂的二次开发者提供了Dobot常用的API和搭建开发环境,用户在官网上可以获取API接口文档和DobotDemo,对于通用桌面系统,越疆官方已经向Dobot二次开发者提供了动态链接库。二次开发者只要直接调用动态链接库即可控制Dobot,而不需进行通讯协议相关的开发工作。本任务需要用到相关的API,下面介绍运动模式控制、坐标获取、吸盘控制几个简单的函数。6.3智能机器人垃圾分类系统1.运动模式机械臂点到点的运动模式有四种方式,分别是门型运动、直线运动、相对运动、关节运动。控制指令是:dType.SetPTPCmd(api,ptpMode,x,y,z,rHead,isQueued=0),参数解释如表6-1所示。6.3智能机器人垃圾分类系统门型运动就是运动轨迹与门的形状相似的一种运动方式,运动轨迹如图6-37所示。从A点上升一定的高度(Height),水平移动到B点上方相同高度处,再从一定高度下降到B点所在的位置。6.3智能机器人垃圾分类系统表6-37门型运动直线运动以两点之间的最短路径进行移动,通常两点之间线段最短,因此移动方式为:沿着两点之间的直线运动。相对运动是相对于当前的位置进行运动的方式。根据空间直角坐标系如图6-38所示,让机械臂前后移动,改变X坐标值;左右移动,改变Y坐标值;上下移动,改变Z坐标值。6.3智能机器人垃圾分类系统图6-38空间直角坐标系关节运动,由A点运动到B点,各个关节从A点对应的关节角运动至B点对应的关节角。关节运动过程中,各个关节轴的运行时间需一致,且同时到达终点,如图6-39所示。6.3智能机器人垃圾分类系统图6-39关节运动关节坐标系,以各运动关节为参考的坐标系,MagicianLite机械臂包含四个关节:J1、J2、J3、J4,均为旋转关节,逆时针方向为正方向。关节坐标系如图6-40所示。6.3智能机器人垃圾分类系统图6-40关节坐标系2.获取坐标控制机械臂运动需要知道机械臂的坐标,获取机械臂坐标指令是:dType.GetPose(api),机械臂的坐标以队列返回,包含9个数值,list[0]—list[3]为空间直角坐标系下(x,y,z,r),list[4]—list[7]为关节坐标系下(J1,J2,J3,J4)。6.3智能机器人垃圾分类系统3.控制吸盘以吸盘作为末端工具,控制机械臂抓取、释放的指令是:dType.SetEndEffectorSuctionCup(api,enableCtrl,on,isQueued=0),指令解释如表6-2所示。6.3智能机器人垃圾分类系统四、操作实践使用DobotStudio自带的API函数来控制机械臂机械臂在笛卡尔空间中按照给定的坐标实现点对点(PointtoPoint,PTP)点动。操作过程:(1)首先完成机械臂的软,硬件连接。(2)在DobotStudio软件界面中选择“脚本控制”,打开如图6-41所示界面。6.3智能机器人垃圾分类系统图6-41DobotStudio脚本控制界面(3)进入脚本控制模块后点击“新建”,新建一个脚本工程,可取名为“TEST1”,并点击“确认”,如图6-42所示。6.3智能机器人垃圾分类系统图6-42新建脚本工程(4)脚本框左边有各类API函数,单击API函数上的“?”字样,会出现函数的使用说明,双击你的API函数便可显示左侧脚本程序输入框中,如图6-43所示。6.3智能机器人垃圾分类系统图6-43DobotStudio脚本API函数说明(5)利用python编程语言,编写脚本程序,代码具体示例如下。6.3智能机器人垃圾分类系统(6)程序写好后,单击“开始”按钮,将程序编译,下载到机械臂中。机械臂即按照程序预定的轨迹进行运动。6.3智能机器人垃圾分类系统6.3.2垃圾识别分类垃圾识别的前提是图像分类。图像分类第一步需要输入大量带有标签的图片数据,通过深度学习算法形成分类模型,这一步的目的是让计算机具有分类图片的能力。最后应用这一分类模型,识别用户上传的图片是什么类型的图片。过程如图6-44所示。6.3智能机器人垃圾分类系统图6-44图像识别过程如果给你一张垃圾的图片,如6-45所示。你能准确的区分垃圾种类并把自己分辨垃圾种类的方法,描述成规则,教给计算机,以便让它替我们人类分辨成千上万种垃圾呢?你可能会从图片的特征入手:图片某个位置的像素颜色(不同垃圾的颜色不同)、某个局部的边缘形状(不同垃圾的形状不一)、某个水平位置的连续颜色长度……将这些特征输入给计算机,可以教会计算机分辨图6-45的垃圾类别。6.3智能机器人垃圾分类系统图6-45四种常见的垃圾如果给你另外一张图片,如图6-46所示,请你描述图6-46中分辨垃圾种类的规则。你会发现,刚刚适用于图6-45的规则不再适用于图6-46,你需要重新描述。你开始怀疑,我们没办法把分辨垃圾图片的规则详细、具体而准确地描述给计算机,这是不是意味着计算机不能辨识垃圾图片呢?6.3智能机器人垃圾分类系统图6-46另外四种常见的垃圾你会发现,刚刚适用于图6-45的规则不再适用于图6-46,你需要重新描述。你开始怀疑,我们没办法把分辨垃圾图片的规则详细、具体而准确地描述给计算机,这是不是意味着计算机不能辨识垃圾图片呢?下面一起来探索这个问题的答案,并通过计算机图像识别技术,搭建基于机械臂控制的智能垃圾分类系统。6.3智能机器人垃圾分类系统一、建立模型(1)输入带有标签的图像数据搭建四种垃圾的垃圾分类器模型。首先,建一个文件夹命名为image,image文件夹内再建4个子文件夹,文件名分别为湿垃圾、干垃圾、有害垃圾、可回收垃圾。6.3智能机器人垃圾分类系统四类垃圾分别选取一种作为典型代表,其中有害垃圾选取废温度计,可回收垃圾选取旧玩具,湿垃圾选取香蕉皮,干垃圾选取旧浴缸。如图6-47所示。6.3智能机器人垃圾分类系统图6-47四种垃圾及标签增加模型的准确率可收集每种垃圾的多种形态,以便更好提取图像特征。以湿垃圾为例,我们可收集103张香蕉皮图片,存入“湿垃圾”文件夹。如图6-48所示。6.3智能机器人垃圾分类系统图6-48香蕉皮图片存储(2)实现代码垃圾分类模型训练代码实现过程如图6-49所示。6.3智能机器人垃圾分类系统图6-49垃圾分类模型训练二、模型应用建立好模型之后,我们就可以把该分类器模型直接应用于智能垃圾分类系统。6.3智能机器人垃圾分类系统6.3.3垃圾分拣系统实现一、智能垃圾分类系统流程图垃圾分类系统实现流程图如图6-50所示。6.3智能机器人垃圾分类系统图6-50智能垃圾分类系统流程图二、智能垃圾分类系统程序功能实现1、加载OpenCV、Magician控制库导入OpenCV库,OpenCV是跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上。它轻量级而且高效——由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。导入Magician控制库,Magician控制库包含控制Magician机械臂的全部API。导入OpenCV、Magician控制库程序如下所示。6.3智能机器人垃圾分类系统12import

cv2

importDobotDllType

asdType6.3智能机器人垃圾分类系统2、初始化初始化程序如下所示。12345678910111213141516171819202122232425folder='image'#指定图像所在文件夹为imageimageSize=Size(120,120)#图片大小,120mm*120mmHeight=-68#机械臂抓取高度宏定义Buf={}#串口通信#初始化相机count=CameraGetCount()#连接相机数量ifcount<=0: print("CameraError!Pleasecheckcameraconnection!")#相机连接异常elifcount>0: print("ConnectCameraisOK!")

#确定图像大小width=800height=600CameraInit(0)#获取Index序号的分辨率的width与heightCameraGetResolution(0,0,width,height)#创建图像首地址,分配空间image=cvCreateImage(cvSize(width,height),8,3)#Dobot机械臂初始化Connect("COM4")print("ConnectDobotisOK!")DobotHome()SetPTPParams(200,200)SetPTPJumpParams(10)3、分类器模型训练分类模型通常有五个步骤。步骤1:创建卷积神经网络模型。通过深度学习框架构建卷积神经网络。步骤2:设置模型训练超参数,如批训练大小、训练轮数。步骤3:载入数据集,根据批训练大小生成mini-batch大小的批次数据。步骤4:模型循环训练,计算梯度,并更新模型参数。为了减小mini-batch的损失函数的值,需要求出各个权重参数的梯度。梯度表示损失函数的值减小最多的方向。6.3智能机器人垃圾分类系统步骤5:当模型的训练集和验证集的准确率趋于稳定时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论