- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于51单片机的颜色识别系统(完结)
背景:
随着现代工业生产向高速化、自动化方向的发展,生产过程中长期以来由人眼起主导作用的颜色识别工作将越来越多地被相应的颜色传感器所替代。例如:图书馆使用颜色区分对文献进行分类,能够极大地提高排架管理和统计等工作;在包装行业,产生包装利用不同的颜色和装潢来表示其不同的性质或用途。目前的颜色传感器通常是在独立的光电二极管上覆盖经过修正的红、绿、蓝滤波片,然后对输出信号进行相应的处理,才能将颜色信号识别出来;有的将两者集合起来,但是输出模拟信号,需要一个A/D电路进行采集,对该信号进一步处理,才能进行识别,增加了电路的复杂性,并且存在较大的识别误差,影响了识别的效果。TAOS(TexasAdvancedOptoelectronicSolutions)公司最新推出的颜色传感器TCS3200,不仅能够实现颜色的识别与检测,与以前的颜色传感器相比,还具有许多优良的新特性。
最近在网上淘了一片TCS3200模块,从官方的介绍中看的出这片TCS3200功能好强大,闲来没事就做了一实验,想看看这个TCS3200的性能、检测能力到底怎样;需要的器件和材料: 1.51最小系统(12T 时钟:11.0592MHz) 2.TCS3200颜色识别模块 3.各种颜色的物料 4.1602液晶屏TCS3200接口定义: S0、S1接VCC EO接GND(或用IO口控制) S2接P1.0 S3接P1.1 OUT接P3.5(必须) (测试程序贴在后面,实物测试通过!)
(TCS3200颜色识别模块)
(自己做的TCS3200模块转接板,方便连线,方便检测颜色)(模块和转接板连接完成)(最小系统)(1602液晶屏)(连接好1602液晶屏)(为了方便检测小物料和白平衡检测,需要自己做一个小平台,俩饮料瓶盖子,一颗自攻螺丝即可搞定!)(做好的平台,为了方便白平衡,需要在上面盖子上划俩口子,只要能卡住一张白纸即可!)(最终效果)(全家福)(连接好TCS3200模块)(白平衡测试,注意:上电前必须白平衡检测,不然后面检测的颜色都不会准确的;检测方法:白纸放在TCS3200模块前面1公分处,然后单片机上电,只要第一次读出的值为255,255,255即可,否则请重新进行白平衡!)(白平衡的结果,现在就可以进行颜色识别了)(识别到绿色娃娃的颜色,上位机上面的颜色为识别到的颜色,同时液晶上会显示RGB值)(识别到黄色娃娃的颜色值)(识别到粉红色娃娃的颜色值)(上位机显示粉红色娃娃的颜色)(上位机界面)(这俩高尔夫球的识别,但是结果不准确,估计是这俩高尔夫球的反光能力太强烈了,只要表面不是很光滑的物体检测出来误差都是很小的,另外,有网友说要放在黑盒子里检测,我感觉没必要,只要白平衡做好了基本就没什么问题了,至于表面特别光滑的物体,只能去寻找其他方法去进行检测了!)========================= 测 试 程 序 ======================== #include reg52.h
#define _data P2 //LCD1602数据接口
/******************************************************************
- 说明:端口定义
- 备注:无
******************************************************************/
sbit EN =P0^5; //读写使能,高电平有效,下降沿锁定数据。
sbit RW =P0^6; //读/写选择:高电平为读数据,低电平为写数据。
sbit RS =P0^7; //数据/指令选择:高电平为数据,低电平为指令。
sbit tcs230_s2=P1^0; //TCS3200 S2 P1.0
sbit tcs230_s3=P1^1; //TCS3200 S3 P1.1
//TCS3200 OUT 接P3.5
/******************************************************************
- 说明:变量定义
- 备注:无
*******************************
原创力文档


文档评论(0)