关于颜色识别机器人的研究

上传人:ldj****22 文档编号:37642116 上传时间:2018-04-20 格式:DOC 页数:14 大小:544.50KB
返回 下载 相关 举报
关于颜色识别机器人的研究_第1页
第1页 / 共14页
关于颜色识别机器人的研究_第2页
第2页 / 共14页
关于颜色识别机器人的研究_第3页
第3页 / 共14页
关于颜色识别机器人的研究_第4页
第4页 / 共14页
关于颜色识别机器人的研究_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《关于颜色识别机器人的研究》由会员分享,可在线阅读,更多相关《关于颜色识别机器人的研究(14页珍藏版)》请在金锄头文库上搜索。

1、I“关于颜色识别机器人的研究关于颜色识别机器人的研究”设计说明书设计说明书-2013X00022院院(系系、部部): 信息工程学院信息工程学院 姓姓 名:名:刘吉祥刘吉祥 蔺军效蔺军效 陈晓露陈晓露 高翔高翔 黎玲萍黎玲萍 指指导导教教师师 : 王淑鸿王淑鸿 2013 年 9 月 26 日北京II目目 录录一一、小车研究的背景和目的小车研究的背景和目的.1二二、智能小车简介智能小车简介.3三三、总体方案及论证总体方案及论证 .7四四、系统整体流程图系统整体流程图 .8五五、硬件清单、硬件清单.8六六、搬运搬运智能小车的实用价值智能小车的实用价值 .9七七、总结与体会、总结与体会.9附录附录 程

2、序代码程序代码.10III一、智能搬运小车研究的背景和目的:一、智能搬运小车研究的背景和目的:随着科技发展,现代社会越来越趋近于智能化,人力劳动需要大幅度的解放出来,把一些重复的动作及操作交给机器去做,而机器在使用过程中变得越来越智能化,能实现更繁杂的任务,运货是各个行业不可或缺的过程,人工运货随着经济的快速发展,不能完全满足市场的需求。世界上许多国家都在积极进行智能车辆的研究和开发设计。移动机器人是机器人学中的一个重要分支,出现于 20 世纪 60 年代。当时斯坦福研究院的 Nils Nilssen 和charles Rosen 等人,在 1966 年至 1972 年中研制出了取名 shak

3、ey的自主式移动机器人,目的是将人工智能技术应用在复杂环境下,完成机器人系统的自主推理、规划和控制。从此,移动机器人从无到有,数量不断增多,智能车辆作为移动机器人的一个重要分支也得到越来越多的关注。基于颜色传感器的智能搬运小车可以安装不同的末端以完成各种不同形状和状态的工件搬运工作,自主识别颜色,可分类搬运,大大减轻了人类繁重的体力劳动,具有广阔的市场前景。二、二、智能小车简介智能小车简介本智能车由 open 公司提供的龙人宝贝机器人套间搭建, ,主要的控制器为 at89s52,此单片机已固定在开发板上了,开发板上提供IV了一片面包板,能实现所需要的电路连接。驱动轮的驱动动力来自两个舵机,用

4、pwm 控制较为简单易行,主要的执行部件为右端的加持装置。机器由下图的可充电锂电池供电。本项目中的智能小车通过四个颜色传感器检测不同颜色的木块,然后单片机对小车的行为发出控制指令,不仅能将木块搬运到指定的位置,还可以自己识别颜色,对应颜色放置。本项目中的智能搬运机器人基于 at89s52 单片机为微控制器,以颜色传感器为主要传感器,以舵机实现运转,在这样的系统下,智能机器人能够完成一些具有重复性的任务。小车整体造型如下图V3、总体方案及论证总体方案及论证 3.13.1、小车功能、小车功能此智能小车希望能够可以自动识别颜色抓取货物,循迹行进,将货物搬运到对应颜色的位置。3.23.2、搬运小车调试

5、、搬运小车调试本项目中所用舵机的调零点为 1500,也就是说 1500 的脉冲刚好使小车动起来,那么要让小车前进,就需要给左边的舵机 1300 的脉冲,右边的舵机 1700 的脉冲。此时小车全速前行。要让小车左转,则是给左右舵机都给 1700 的脉冲,同理,右转时给左右舵机都是VI1300 的脉冲,后退时所给的脉冲都为 1300。小车在没有人为干涉的情况下完成跟踪黑线的任务3.33.3、QTIQTI 传感器完成追踪黑线的能力传感器完成追踪黑线的能力Qti 为光电传感器,在检测到黑线时返回数字 1,在检测到白色的时候返回值为 0。根据 qti 传感器的返回值的 16 种组合基本可以确定小车处于地

6、图的位置,藉此来确定小车下一步的任务。在白色背景中有一条黑色的线,小车就是要沿着这条黑线行走,通过判断反射式光电传感器所接收到的反射光来判断小车所应行走的方向。以三个反射式光电传感器为例进行说明循线的原理。光电传感器与黑线位置关系示意图如下图所示。光电传感器与黑线位置关系示意图光电传感器与黑线位置关系示意图VIIVIII开始循迹是否有检测到 黑线右边的信号 2直行否是左边的信号 2大左转大右转循迹流程图探测黑线判断左边的信号 1小左转右边的信号 1 小右转3.43.4、颜色传感器的识别、颜色传感器的识别智能小车下面安装了智能小车下面安装了 4 4 个个 QTIQTI 传感器作为巡线来识别路线。

7、在大传感器作为巡线来识别路线。在大于木块的高度放了一个架子作为安放颜色传感器的装置,首先由于木块的高度放了一个架子作为安放颜色传感器的装置,首先由QTIQTI 传感器识别路线,按照程序中所说的顺序进行巡线,当到达木传感器识别路线,按照程序中所说的顺序进行巡线,当到达木块摆放的地方时,颜色传感器识别颜色确定此颜色的摆放位置,然块摆放的地方时,颜色传感器识别颜色确定此颜色的摆放位置,然后确定路线,到达指定位置是小车将退回原点。后确定路线,到达指定位置是小车将退回原点。3.53.5、具体设计:、具体设计:IX整个系统包括单片机控制模块、电机驱动模块、颜色传感器模块、光电传感器、机械手模块、模拟电源模

8、块、小车车体。将单片机控制模块,驱动模块固定在小车上端;颜色传感器和光电传感器安装在小车底部;将机械手安装在小车上部的前端;车架结构选择铝板。四、系统整体流程图及软件设计四、系统整体流程图及软件设计4.14.1、整体流程图、整体流程图整体流程图整体流程图4.24.2系统软件设计系统软件设计 采用PWM(Pulse Width Modulation,脉冲宽度调制)来调节直X流电机的速度。PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电压调整方法。PWM可以应用在许多方面,如电机调速、温度控制、压力控制等。在PWM驱动控制的调整系统中,按一个固定的频率来

9、接通和断开电源,并根据需要改变一个周期内“接通”和“断开”时间的长短。通过改变直流电机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。在脉冲作用下,当电机通电时,速度增加;电机断电时,速度逐渐减少。只要按一定规律,改变通、断电的时间,即可让电机转速得到控制。安装完颜色传感器调节白光平衡,由于白光是等量的红光,蓝光等的组合体,平衡时红、蓝、绿等的强度大小应为相等,当小车即将搬运的货物为红色,红色光值大小应该改变,应大于平衡时的大小,单片机则识别出货物是红色。同理,其他颜色也是如此识别。五、硬件清单五、硬件清单元件数量规格其他 实验板1 Qti 传感器4光电带信号传输线 颜色传感

10、器1 夹持装置1 舵机2调零脉冲 1500 电池2 龙人宝贝车身1 电池盒1 跳线若干 Isp 下载线1XI六、六、智能小车的实用价值智能小车的实用价值本智能小车主要是为了锻炼我们的编程能力及动手能力,其在工业控制上的体现主要是自动化控制,在无人操作的地方,能够自主识别自主控制的智能小车往往是解决问题的最佳思路。七、总结与体会七、总结与体会通过这次机器人大赛,我们学会了很多,收获很大,首先我们学会了使用51 单片机并能用它完成一些比较简单的工业控制。其次我们明白了面对困难时能积极动脑,共同合作来解决问题、克服困难的重要性。同时也使我们对机器人的机械扩展、电子扩展、传感器扩展以及程序控制有了一个

11、全新的认识。附录附录 #include “uart2.h“ #define LED P1_3 sbit s0 = P21; sbit s1 = P22; sbit s2 = P23; sbit s3 = P24;long int green=0,red=0,blue=0; /RGB 颜色初始化/*RGB 比例系数*/ /*通过白平衡得出的时间比例系数*/ #define pred 143 #define pgreen 100 #define pblue 67int disp_tc; /计数标志void yanse(); void zhizou();XII/*led 测试 闪烁 3 次 */ v

12、oid test_led() uchar i; for(i=0;i3;i+) LED=0; delay_nms(200); LED=1; delay_nms(200); LED=0; /*计数器初始化*/ void t0_init() TMOD=0x51;/设置定时器 0 为工作方式一TH0 =0xfc;TL0 =0x66;/如果晶振是 11.0592MHZ 的话,误差是 0.00017%EA=1;ET0=1;TR0=1;TR1=1; /*10ms 中断子程序 */ void c1ms_out() interrupt 1/定时器 0 1ms 中断响应 TR0=0;TR1=0;disp_tc=disp_tc+1; /计数值加一 TH0=0xfc;TL0=0x66+TL0; /加定时器补偿TR0=1;TR1=1; XIII/*主控制程序*/ void main() /*test_led();/测试 leddelay_nms(80);/延时 等待串口调试工具LED=1;/打开 leds0=1; s1=1;t0_init();Time2_init(); */while(1) yanse();/*颜色识别*/ void yanse() disp_tc=0;s2=0;s3=1;while(disp_tc!=pblue);TR0=0;TR1=0; blue=TH1*256+TL1;TL1=0

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号