欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    基于TCS230的颜色识别智能搬运小车2.doc

    • 资源ID:3883954       资源大小:404.50KB        全文页数:6页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于TCS230的颜色识别智能搬运小车2.doc

    基于TCS230的颜色识别智能搬运小车周中正,王洪栋(中国矿业大学信息与电气工程学院,江苏 徐州 221116)摘要:采用Freescale公司的16位HCS12单片机MC9S12XS128最小系统作为小车的智能控制系统。通过4个前置对称分布的光电对管在布有黑线的白色场地上实现沿线循迹。通过红外测距传感器GP2Y0A02YK0F检测到物块,用机械手将物块拾起,利用颜色传感器TCS230检测物块RGB值,运用RGB辅助色度零交叉算法判断出物块颜色,进而通过循迹将物块放入对应颜色区,实现不同颜色物块的智能分拣搬运。系统包括:MC9S12XS128最小系统模块、光电循迹模块、红外测距模块、颜色判别模块、机械手臂模块、舵机驱动模块和电源稳压模块。关键词:MC9S12XS128;TCS230;智能小车;颜色判别;色度零交叉算法 0 引言 随着科学技术的发展和进步,工厂作业正在快速地由手工操作向自动化和智能化方向过渡。智能搬运小车模拟了实际自动化工厂中AGV(Automated Guided Vehicle)小车的搬运和机器人的自动分拣功能。本文针对全国机器人大赛中轮式智能搬运项目,利用颜色传感器TCS230并运用RGB辅助色度零交叉算法对不同颜色的物块进行判别,进而将不同颜色物块分送至对应区域,模拟了工厂中根据货物的不同特征执行对应任务或操作的过程。图1智能搬运比赛场地1 比赛场地与规则简述智能搬运项目的比赛场地如图1所示。比赛时,参赛选手在置有黄、白、红、黑、蓝五种颜色物块的袋子中随机依次抽取三个物块,并按抽取顺序,将三个物块摆放至拾起区(图1中黄、红、蓝颜色区与中部交叉点之间的白色区域)。分拣搬运小车从出发区(图1下方绿色矩形区域)出发,沿黑线循迹至拾起区拾取物块,并根据物块颜色将其送至对应颜色区,最后回到出发区。比赛成绩由小车送物块至对应颜色区的精确度(图1各色区靶心10环为10分,按环数依次降低)和回到出发区的时间综合决定。2 系统实现方案MPUMC9S12XS128光电对管TK-20测距传感器GP2Y0A02YK0F颜色传感器TCS230轮驱动舵机S4309R抓取舵机SR-403PRGB辅助色度零交叉算法定时器中断循迹纠正PWM通道合并控制舵机图2系统结构图 系统的基本结构框图如图2所示。硬件部分主要由MPU、传感器模块和动作模块构成。MPU采用Freescale公司16位MC9S12XS128芯片;传感器模块包括用于循迹的光电对管TK-20、用于探测物块的红外测距传感GP2Y0A02YK0F和用于采集物块颜色RGB信息的颜色传感器TCS230;动作模块主要由小车轮子的驱动舵机S4309R和用于抓取物块的驱动舵机SR-403P构成。软件部分的关键环节包括:用于循迹纠正控制的定时器中断环节、用于判别物块颜色的RGB辅助色度零交叉算法环节和用于产生舵机控制信号的双通道合并PWM产生环节。具体实现过程为:将小车放至比赛出发区并给小车上电,小车按照定时器0的中断频率采集对称分布的四个光电对管的反馈值(黑色为1,白色为0),从而得到小车是否偏离黑线轨道的信息并及时对小车进行纠正,于是小车循黑线至物块拾起区(图1中黄、红、蓝颜色区与中部交叉点之间的白色区域)。在此期间,小车按照定时器1的中断频率采集红外测距传感器GP2Y0A02YK0F返回的与物块距离的信息并与经验值比较,在合适位置通过PWM控制抓取舵机将物块拾起并卡紧。利用颜色传感器TCS230采集物块颜色RGB信息,运用RGB辅助色度零交叉算法判断出物块颜色,进而通过循迹将物块放入对应颜色区。然后循迹至下一物块拾起区并重复上述操作。当遇到拾起物块所对应的颜色区被未拾起物块挡住的情况(如先拣到蓝色物块,并且蓝色区域与中部交叉点之间有物块未拾取)时,应将拾起的物块放在出发区与中部交叉点之间(称“中转处”),先去拾取挡路的物块并送至对应颜色区,然后到中转处继续发送上一物块。将所有物块依次送至对应颜色区,然后循迹返回出发区。系统运作流图如图3所示:上电启动系统初始化循迹至拾起区抓取物块判别物块颜色将物块送至对应色区物块已送完?返回出发区否是测距传感器PWM输出颜色传感器图3系统运作流图3 颜色识别原理 颜色是物体表面吸收了白光中的一部分有色成分, 而反射出的另一部分有色光在人眼中的反应。根据三原色理论知, 不同颜色是由不同比例的三原色(红、绿、蓝)按照不同比例混合而成的。如果知道构成各种颜色的三基色的值, 就能够知道所测试物体的颜色。本文所用的传感器TCS230可以通过调节滤波器的颜色, 使特定的原色通过, 阻止其他原色通过, 从而测出一种光中的红绿蓝三色的成分。例如, 当选择红色滤波器时, 得到的就是红色光, 而蓝绿光则不能通过, 此时得到的就是红色光在此种颜色中的含量。本系统的颜色识别是基于颜色传感器TCS230,利用TCS230获取物块颜色的RGB值,利用RGB辅助色度零交叉算法判别物块颜色。3.1 TCS230原理 S0S1比例系数S2S3滤波器LL关闭电源LL 红色LH 2%LH 蓝色HL 20%HL 无HH 100%HH 绿色表1 S0、S1、S2、S3引脚功能分配图 图4 TCS230引脚封装及功能框图 该传感器内部集成了可配置的硅光电二极管阵列和一个电流/频率转换器, TCS230输出为占空比50%的方波, 且输出频率与发光强度成线性关系。用户可通过两个可编程引脚S0、S1 来选择100% 、20%或2% 的输出比例因子。通过控制S2、S3引脚来选择所需的光电二极管类型。该器件的使能脚低电平有效。S0、S1、S2、S3引脚功能分配图如表1所示3.2 RGB辅助色度零交叉算法颜色由亮度和色度来刻画,色度则是不包括亮度在内的颜色的性质,它反映的是颜色的色调和饱和度。在比赛中要辨别物块颜色,就需要提取色度信息,而亮度信息则属于干扰。而利用TCS230获取的RGB信息既与色度有关,又受亮度影响。通常采取白平衡调整的方法以白光为基准将亮度值归一化,得到颜色的色度信息。但在实际中很难得到标准的白光,于是在利用白平衡调整亮度的同时,色度信息也受到了污染,往往达不到判别的精度。RGB辅助色度零交叉算法利用色度学RGB原理,运用RGB- YCbCr变换,将RGB模式转换为YCbCr模式。YCbCr模式是刻画颜色性质的一种模式,其中Y代表亮度,Cb和Cr则代表色度、饱和度。常见的JPEG图片格式采用的就是YCbCr色彩系统。RGB- YCbCr变换公式为: Y=0.2990R+0.5870G+0.1140B Cb=-0.1687R-0.3313G+0.5000B+128 (1) Cr=0.5000R-0.4187G-0.0813B128 图5 各颜色物块CbCr分布与分割示意图依次采集各颜色物块的Cb、Cr值得到他们关于Cb、Cr的分布。以Cb为x轴、以Cr为y轴作平面图,多次测量后得到一系列关于Cb、Cr的散点,根据散点的分布分割各颜色物块对应的区域,要尽可能给各色块以足够的裕量。如图5所示。如果出现不同颜色有重叠区的情况时,应根据相应RGB值中容易区分的一个或多个值进行辅助判断。3.3 主要程序3.3.1控制TCS230测取RGB值的程序void get_RGB(void) /*求R值* PITInit1(); /定时器1初始化 PAInit(); /脉冲累加器初始化 GPIO_Set(PB,PRT,0,0); /设定S2为低 GPIO_Set(PB,PRT,1,0); /设定S3为低,即选用红色滤光片 GPIO_Set(PB,PRT,2,0); /开TCS3200使能 while(PITTF_PTF1=0); /等待定时器溢出 PITTF_PTF1=1; /清除中断标志 PITCFLMT&=(1<<7); /关定时器 PACTL=0b0010000; /关累加器 rb=255*PACNT/400; /rb=255*PACNT/ryz; if(rb>255) rb=255; /判断RGB值是否合法 /*求B值* PITInit1(); /定时器1初始化 PAInit(); /脉冲累加器初始化 GPIO_Set(PB,PRT,0,0); /设定S2为低 GPIO_Set(PB,PRT,1,1); /设定S3为高,选择蓝色滤光片 while(PITTF_PTF1=0); /等待定时器溢出 PITTF_PTF1=1; /清除中断标志 PITCFLMT&=(1<<7); /关定时器 PACTL=0b0010000; /关累加器 bb=255*PACNT/500; /bb=255*PACNT/byz; if(bb>255) bb=255; /判断RGB值是否合法 /*求G值* PITInit1(); /定时器1初始化 PAInit(); /脉冲累加器初始化 GPIO_Set(PB,PRT,0,1); /设定S2为高 GPIO_Set(PB,PRT,1,1); /设定S3为高,选择绿色滤光片 while(PITTF_PTF1=0); /等待定时器溢出 PITTF_PTF1=1; /清除中断标志 PITCFLMT&=(1<<7); /关定时器 PACTL=0b0010000; /关累加器 GPIO_Set(PB,PRT,2,1); /关TCS3200使能 gb=255*PACNT/900; /gb=255*PACNT/gyz; if(gb>255) gb=255; /判断RGB值是否合法 PITCFLMT|=1<<7; 4 结束语本文给出了具有颜色识别功能的智能搬运小车的设计方案。创新性地提出了基于TCS230运用RGB辅助色度零交叉算法判别物块颜色的实现方案。该方案解决了TCS230白平衡调整的难操作问题,给出了从软件算法角度着手运用TCS230这一廉价颜色传感器进行颜色判别的可行方案,具有良好的参考价值。在提出RGB辅助色度零交叉算法的过程中,方案中所运用的RGB- YCbCr变换、辅助算法和平面分割法在颜色识别领域均体现了较高的创新性。参考文献1 Texas Advanced Optoelectronic Solutions. TCS230 datasheet Z TAOS Inc,2007.2

    注意事项

    本文(基于TCS230的颜色识别智能搬运小车2.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开