《技术说明 挑战杯报告.docx》由会员分享,可在线阅读,更多相关《技术说明 挑战杯报告.docx(18页珍藏版)》请在三一办公上搜索。
1、序号:编码:合肥学院第四届“挑战杯”大学生课外学术科技作品竞赛作品名称:基于视觉伺服控制的智能机器人设计与实现推荐单位:电子信息与电气工程系申报者姓名(集体名称):徐建益、张浩忠、韩冰、王笑康、彭青柳、 钱云鹏、左帅、陈俊勇类另U:自然科学类学术论文哲学社会科学类社会调查报告和学术论文科技发明制作A类V科技发明制作B类2011年3月10日基于视觉伺服控制的智能机器人设计与实现摘要:在现代自动化生产过程中,人们将机器视觉系统广泛地用于工况监视、成 品检验和质量控制等领域。机器视觉系统的特点是提高生产的柔性和自动化程 度。在一些不适合于人工作业的危险工作环境或人工视觉难以满足要求的场合, 常用机器
2、视觉来替代人工视觉。机器视觉易于实现信息集成,是实现计算机集 成制造的基础技术。随着机器视觉技术自身的成熟和发展,可以预计它将在现 代和未来制造企业中得到越来越广泛的应用。本系统使用基于ARM9核的S3C2440作为控制核心并以Linux操作系统为软 件平台,结合开源跨平台计算机视觉库OpenCV,通过V4L2捕获摄像头当前帧, 采用Camshift算法对物体进行识别跟踪,通过闭环反馈控制下位机驱动底盘电 机运动,摄像头检测到物体在机械臂可触范围内,则调用” EyeOnHand”进行准 确定位目标,控制机械臂抓取物体,实现最终目标检测。关键词:伺服控制视觉系统嵌入式机械臂目 录第一章:绪论31
3、.1基于视觉伺服控制的智能机器人的设计背景31.2国内外研究状况31.3科学性、先进性31.4技术特点及应用前景41.4.1技术特点41.4.2应用前景4第二章:嵌入式系统和机器视觉概述52.1嵌入式系统概述52.2机器视觉概述5第三章:基于视觉伺服控制的智能机器人的总体设计方案63.1基于视觉伺服控制的智能机器人的总体设计思想63.2基于视觉伺服控制的智能机器人的总体结构设计6第四章:基于视觉伺服控制的智能机器人的硬件设计74.1底盘设计和机械臂构造设计74.1.1底盘设计74.1.2机械臂构造设计74.2机器人核心模块84.3驱动控制器C8051F12084.4电机驱动模块84.4.1电机
4、驱动芯片84.5.2伺服电机94.5.3 舵机94.6电源模块9第五章:基于视觉伺服控制的智能机器人的软件设计105.1软件总体框架结构105.2软件主要流程思想105.3摄像头1寻找物体并跟踪模块115.4机器臂抓取物体程序模块125.5 OpenCV图像处理模块13第六章:总结13参考文献:13致谢:14附件:底盘和机械臂设计图15第一章:绪论1.1基于视觉伺服控制的智能机器人的设计背景目前,在全球的制造业中,工业机器人在生产中起到了重要的作用。为了 使机器人能够胜任更复杂的工作,机器人不但要有更好的控制系统,还需要更 多地感知环境的变化。其中机器人视觉以其信息量大、信息完整成为最重要的
5、机器人感知功能。机器人视觉伺服系统是机器视觉和机器人控制的有机结合,是一个非线性、 强耦合的复杂系统,其内容涉及图象处理、机器人运动学和动力学、控制理论 等研究领域。随着摄像设备性能价格比和计算机信息处理速度的提高,以及有 关理论的日益完善,视觉伺服已具备实际应用的技术条件,相关的技术问题也 成为当前研究的热点。1.2国内外研究状况现代机器人的研究始于20世纪中期。原子能实验室的恶劣环境要求某些操 作机械代替人处理放射性物质。在这一需求背景下,美国原子能委员会的阿尔 贡研究所于1947年开发了遥控机械手,1948年又开发了机械式的主从机械手。随着计算机技术和人工智能技术的飞速发展,使机器人在功
6、能和技术层次 上有了很大的提高,移动机器人和机器人的视觉和触觉等技术就是典型的代表。 80年代,将具有感觉、思考、决策和动作能力的系统称为智能机器人。这一概 念不但指导了机器人技术的研究和应用,而且又赋予了机器人技术向深广发展 的巨大空间,水下机器人、空间机器人、空中机器人、地面机器人、微小型机 器人等各种用途的机器人相继问世,许多梦想成为了现实。而我国的机器人研究开始于70年代,起步较晚。但是,在国家863计划和 国家自然基金的支持下,机器人的研究被列入国家重点计划,并得到了一定的 发展。我国第一台具有自主能力的“探索者”号在6000米深海水下机器人就在 这种形势设计成功的,并且完成了太平洋
7、深海资源探索。现在,机器人在中国 开始普及,开发了喷漆机器人,电弧焊机器人,搬运机器人和装配机器人等, 并在汽车、货运、焊接和矿山施工等领域得到看很好的应用。1.3科学性、先进性上个世纪60年代,人们开始研究具有视觉功能的机器人。但在这些研究中, 机器人的视觉与机器人的动作,严格上讲是开环的。机器人的视觉系统通过图 像处理,得到目标位姿,然后根据目标位姿,计算出机器运动的位姿,在整个 过程中,视觉系统一次性地“提供”信息,然后就不参与过程了。1979年,hill 和park提出了 “视觉伺服”(visual servo)概念。现在视觉伺服已逐渐发展为 跨机器人、自动控制和图像处理等技术领域的一
8、门独立技术。要实现视觉伺服 需要快速实现图像处理和机械动作的协调。现有的大多数机器人,都采用单片 机作为控制单元,以8位和16位最为常见,其处理速度较低,没有操作系统, 无法实现丰富的多任务功能。基于以上问题我们设计的机器人是使用32位处理器,在32位嵌入式应用 领域内,ARM获得了巨大的成功。ARM微处理器一般具有体积小、低功耗、低成 本、高性能的特点。在ARM上可以方便的移植具有多任务能力的操作系统。三 星S3C2440就是一款嵌入了 ARM9核的SoC芯片,集成了 ARM的高速处理能力和 多种外设。Linux是一款代码完全开放的嵌入式操作系统内核,基于Linux的操作系统 可以自由地开发
9、各种驱动和应用软件,是目前开源的嵌入式操作系统的主流平 台。1.4技术特点及应用前景1.4.1技术特点该机器人的设计与实现有以下方面的技术特点:1)以基于ARM9核的三星S3C2440作为控制核心:现有的大多数机器人,都采用单片机作为控制单元,以8位和16位最为常见,其处理速度较低,没有 操作系统,无法实现丰富的多任务功能。而该设计是以基于ARM9核的三星S3C2440作为控制核心,嵌入LINUX系统来完成多任务的要求。2)视觉伺服控制:该作品是基于视觉伺服的智能机器人,特点是识别目标 快,目标定位准确,抓取率高,抓取可靠性强,环境适应能力好,控制简单,自主能力高。3)应用openCV处理图像
10、:通过对目标模型学习,构建目标特征库。设计 匹配算法,并与目标特征库的特征值进行匹配,完成目标的识别与跟踪,通过 闭环反馈控制底盘电机与机械臂的运动,控制机器人完成目标的抓取。1.4.2应用前景该机器人的实现可以应用于搜救,无人工厂,水果采摘,仓库,服务机器人等领域,具有广阔的发展空间和应用前景,推广范围也相当广泛,若推向市 场预计会产生相当可观的经济效益。第二章:嵌入式系统和机器视觉概述2.1嵌入式系统概述嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”,它是 软件和硬件的综合体。目前国内一个普遍被认同的定义是:以应用为中心、以 计算机技术为基础、软件硬件可裁剪、适应应用系统对功
11、能、可靠性、成本、 体积、功耗严格要求的专用计算机系统。目前,在各行各业中嵌入式系统技术都具有非常广阔的应用前景,其应用 领域可以包括:工业控制、交通管理、信息家电、家庭智能管理系统、pos网 络及电子商务、环境工程与自然和机器人。机器人技术的发展从来就是与嵌入式系统的发展紧密联系在一起的。近来 由于嵌入式处理器的高度发展,机器人从硬件到软件也呈现了新的发展趋势。 随着嵌入式控制器越来越微型化、功能化,微型机器人、特种机器人等也将获 得更大的发展机遇。2.2机器视觉概述机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是指通过机 器视觉产品(即图像摄取装置)将被摄取目标转换成图像信号,传送
12、给专用的 图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信号;图像 系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制 现场的设备动作。我国视觉机器人应用主要有以下目的:用以代替人类从事危险、有害和恶 劣环境、超净环境下的工作;把人从肮脏、繁重的劳动中解放出来;提高劳动生 产率,改善产品质量,快速响应市场要求,加强在国际市场的竞争能力。第三章:基于视觉伺服控制的智能机器人的 总体设计方案3.1基于视觉伺服控制的智能机器人的总体设计思想该机器人是在嵌入式系统和机器视觉系统相结合的基础上,设计出的可以 自主抓取目标的智能机器人。它以关节机器人的设计方案作为参考,搜集关
13、于 机械学、控制力学等领域的知识,设计出这个三自由度的智能机器人。该机器 人是基于ARM9核的三星S3C2440作为系统的控制核心,通过摄像头采集目标物 体的图像信息,使用OpenCV进行处理提取特征值及其匹配工作最终定位出物体 的坐标位置,通过坐标计算出底盘和机械臂的运动参数,最终实现对物体的抓 取。3.2基于视觉伺服控制的智能机器人的总体结构设计本设计大体上有以下几个部分组成:核心板模块、图像采集模块、电机控 制模块和电源模块四大部分组成,以下将作分别叙述。总体设计框图如下:图1:总体设计框图核心板为三星S3C2440,核心板比较完备的包括一些常用的模块,如CPU, 存储器,网卡,串口,U
14、SB,具体将在第四章详细介绍;图像采集模块主要由普 通的摄像头和ARM板组成,摄像头用于采集目标图像,然后通过v4l2和OpenCV 进行图像处理,并完成提取特征值及其匹配工作;电机控制模块与核心板是通 过串口连接。电机控制包括三个部分:驱动轮控制、机械臂控制和机械臂末端 控制,其中,驱动轮和机械臂两个部分都是由伺服电机控制,而机械臂末端由 舵机控制;该机器人需要24V电源供电,本设计选用两个12V蓄电池串联组成。 关于该机器人的设计模块在第四章中将做详细介绍。第四章:基于视觉伺服控制的智能机器人的硬件设计4.1底盘设计和机械臂构造设计4.1.1底盘设计机器人底盘由两层圆形铝合金板材搭建,圆盘
15、直径为35cm。材料及尺寸 根据机器人的体积、机械臂的长度和平衡度等各个方面考虑而选择和设计。材 料选用较高品质的铝合金板材(厚2mm),质地均匀、可塑性良好,机械强度满 足设计需要。采用双层设计方案,层层之间用铜柱和驱动轮固定部件连接支撑, 使机器人有较强的稳固性和载货能力。机器人底盘由6个轮子支撑,包括4个万向轮和2个驱动轮,轮子分别位 于圆形底盘的内接正六边形的六个顶点上,可使压力均分,驱动轮位于此正六 边形两个相对的顶点上,万向轮位于其他顶点,这样驱动轮则受到较小的压力, 从而有利于保护驱动电机。具体硬件设计二维草图见图8、9、10、11所示。4.1.2机械臂构造设计在能实现功能与简单
16、控制的前提下,设计成三自由度机械臂。采用自底向 上的设计方案,第一自由度可实现水平方向上360度旋转。同时为减小机械臂 旋转时产生的抖动和机械臂与电机轴之间的压强,采用舵盘链接方式。第二三 自由度采用锥形齿轮及其轴连接方式,锥形齿轮可实现90度传动,从而从较大 程度上缩短了机械臂的宽度。4.2机器人核心模块该机器人的控制核心是三星公司推出的16/32位RISC微处理器S3C2440A。 为了降低整体系统成本,S3C2440A提供了丰富的内部设备。S3C2440A采用了 ARM920t的内核,0.13um的CMOS标准宏单元和存储器单元。其低功耗、简单、 优雅且全静态设计特别适合于对成本和功率敏
17、感型的应用。为了处理图像数据,CPU的工作频率可达400MHz。S3C2440A的资源包括LCD 控制器,SDRAM控制器,摄像头接口,3路串行接口,IIC BUS接口,USB接口, 触摸屏接口。在处理器丰富资源的基础上,还进行了相关的扩展,配置了 32M Flash ROM 和 256MB SDRAM。4.3驱动控制器C8051F120微控制器C8051F120系列产品是由Cygnal公司推出的一款高性能8051微 控制器,CPU吞吐量达100MIPS。C8051F120系列产品均包括128KB闪存、8448KB RAM。C8051F120片内具有调整器电路,能在系统内进行全速调试,如单步进
18、、 中断点、修改寄存器和存储器C8051F120系列器件采用100引脚或64引脚TQFP 封装。4.4电机驱动模块该机器人的电机驱动模块包括三个部分:底盘的电机控制、机械臂的电机 控制和机械手的电机控制,前两个部分采用伺服电机控制,机械手由舵机控制。4.4.1电机驱动芯片该机器人是选用电机驱动芯片L298N,其主要特点是:工作电压高,最高工 作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;内 含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电 动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控 制端,在不受输入信号影响的情况下允许或禁
19、止器件工作有一个逻辑电源输入 端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈 给控制电路。使用L298N芯片驱动电机,该芯片可以驱动两个二相电机,也可 以驱动一个四相电机,可以直接通过电源来调节输出电压;并可以直接用单片 机的I/O 口提供信号。4.5.2伺服电机伺服主要靠脉冲来定位,伺服电机接收到1个脉冲,就会旋转1个脉冲对 应的角度,从而实现位移,因为,伺服电机本身具备发出脉冲的功能,所以伺 服电机每旋转一个角度,都会发出对应数量的脉冲,这样,和伺服电机接受的 脉冲形成了呼应,或者叫闭环,如此一来,系统就会知道发了多少脉冲给伺服 电机,同时又收了多少脉冲回来,这样,就
20、能够很精确的控制电机的转动,从 而实现精确的定位。直流伺服电机是指由直流电信号控制的伺服电动机。实现直流电和机械能 直接转换的旋转机电设备。其转子的机械运动由输入信号控制,并作快速响应。 具有良好的调速、较大的启动力矩,相对功率大及快速响应等优点。被用于功 率较大的系统。直流伺服电机具有良好的启动、制动和调速特性,可很方便地 在宽范围内实现平滑无极调速,故多采用在对伺服电机的调速性能要求较高的 生产设备中。4.5.3舵机舵机是一个微型的伺服控制系统,工作原理是控制电路接收信号源的控制 脉冲,并驱动电机转动;齿轮组将电机的速度成大倍数缩小,并将电机的输出 扭矩放大响应倍数,然后输出;电位器和齿轮
21、组的末级一起转动,测量舵机轴 转动角度;电路板检测并根据电位器判断舵机转动角度,然后控制舵机转动到 目标角度或保持在目标角度。4.6电源模块本次设计电源的供电对象主要有三星S3C2440核心板和电机驱动电路。该 机器人最大供电电压需要24V,此设计中选用的是两个12V蓄电池串联组成。其 中,5V供电于主控制芯片S3C2440,3.3V供电于驱动控制器C8051F120,24V供 电于L298N电机驱动。第五章:基于视觉伺服控制的智能机器人的 软件设计5.1软件总体框架结构本系统软件主要是在linux操作系统环境设计完成,为了实现多任务并行 操作,即机器小车和机器臂在运动的同时采集图像进行分析处
22、理,采用多进程 方式,一个进程作为主进程,负责实现机器人伺服控制算法,另一个进程负责 OpenCV图像分析处理,进程间使用有名通道进行通信;另外,驱动控制器使用 C8051F120单片机,ARM和此单片机之间采用串口通信。总体模块图如下所示:图2:软件总体框架结构图5.2软件主要流程思想本系统流程总体分为四个部分,分别为初始化后寻找物体、跟踪物体运动、 利用机械臂抓取物体、返回到固定位置并且释放物体。流程图如下所示:图3:机器人视觉伺服控制主程序流程图5.3摄像头1寻找物体并跟踪模块当系统启动初始化后,要进行寻找物体的任务,此时让机器小车原地旋转360 度,在旋转过程中如果发现物体,就开始跟踪
23、物体运动。此模块任务软件流程 图如下所示:头是否锁定目跟踪R标运动机械小车旋转 360度寻找物体图4:寻找并跟踪物体运动任务流程图5.4机器臂抓取物体程序模块当机器小车运动到物体前方某固定位置时即停止运动,此时打开机械臂制 动装置,开始控制机械臂实现抓取物体任务。主要实现思想是通过机械臂上的 摄像头来实现物体的再次精确定位并抓取物体。此模块任务软件流程图如下所 示:5.5 OpenCV图像处理模块本系统软件图像部分采用OpenCV进行分析处理,首相捕获视频帧,然后转 换为OpenCV数据格式,利用Camshif算法识别物体,并且将获得的物体状态数 据通过有名管道传递给伺服控制主进程。开始玲mw
24、hif算法识别跟踪物作西待测物体土可触范困内前避启动Eve On Hand 蒂嘛定位仕遇机械看 运动参数*捕茨视频帽的换为Open5教据格式蛛递底担 远动.数 01113)原地旋转 涮度图6: OpenCV图像处理图第六章:总结本作品是以嵌入式Linux为系统平台,结合开源视觉处理库OpenCV,通过 机械臂完成复杂的抓取动作。该机器人设计中完成的主要工作如下:1) 图像处理:V4L2驱动采集,将采集的YUYV格式数据转化为RGB24数据, 使用OpenCV库函数Camshift实现对目标物体的识别跟踪。2) 机械臂设计:使用AutoCAD绘制机械臂每个部件的三视图,加工制造成 品。3) 电源
25、及驱动电路:采用两个12V电源供给系统,L298驱动伺服电机。4) 伺服控制:视频处理后,通过管道通信将数据传递给伺服控制进程,进 而实现伺服控制。参考文献:1 Hill J.Park W T Real time control of a robot with a mobile camera 19792 刘小力,田梦倩,罗翔,史金飞.机器人视觉伺服系统的图像处理 和标定技术J.中国制造业信息化,2005,(10)3 范克东,肖世德,龚邦明.基于ARM微处理器的嵌入式数控系统J.制造技术与机床,2006,(01)4 川崎UNIMATE2000型机械手工作原理.自动化.1976年00 期5 机器人6000米水下考察.中华人民共和国年鉴,1998致谢:感谢我们的指导老师储忠老师、胡学友老师和十开峰老师,感谢合肥学院 电子信息与电气工程系的谭敏教授、王俊教授等对我们的指导,感谢电子信息 与电气工程系各位学长的帮助,同时感谢合肥学院电子爱好者协会为实验的进 行提供了实验场地,在此表示感谢!附件:底盘和机械臂设计图图7:槽钢及机械臂二维草图图8:固定电机槽钢二维草图图9:机械臂底盘二维草图图10:托盘、L形架、齿轮、轴的二维草图图11:机械人实物图