您当前位置: 51duino >  颜色识别

扫描二维码,快速下载本应用说明文档(免费)

颜色识别      

下载: 32  点击: 2367


大小:30.65KB 价格:0.00元 更新日期:2016-07-29 开发者:小R科技
  

颜色识别
    • 应用名称
    • 所属分类
    • 更新时间
    • 立即下载
    • 颜色识别
    • 51duino
    • 2016-07-29
【颜色识别】 应用介绍

TCS3200颜色传感器是一款全彩的颜色检测器,包括了一块TAOS TCS3200RGB感应芯片和4个白光LED灯,TCS3200能在一定的范围内检测和测量几乎所有的可见光。它适合于色度计测量应用领域。比如彩色打印、医疗诊断、计算机彩色监视器校准以及油漆、纺织品、化妆品和印刷材料的过程控制。
通常所看到的物体颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。
由上面的三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色。对于TCS3200D 来说,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其它原色的通过。例如:当选择红色滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可以得到红色光的光强;同理,选择其它的滤波器,就可以得到蓝色光和绿色光的光强。通过这三个光强值,就可以分析出反射到TCS3200D传感器上的光的颜色。
TCS3200D传感器有红绿蓝和清除4种滤光器,可以通过其引脚S2和S3的高低电平来选择滤波器模式,如下图。

TCS3200D有可编程的彩色光到电信号频率的转换器,当被测物体反射光的红、绿、蓝三色光线分别透过相应滤波器到达TAOS TCS3200RGB感应芯片时,其内置的振荡器会输出方波,方波频率与所感应的光强成比例关系,光线越强,内置的振荡器方波频率越高。TCS3200传感器有一个OUT引脚,它输出信号的频率与内置振荡器的频率也成比例关系,它们的比率因子可以靠其引脚S0和S1的高低电平来选择,如下图。

这个测试实验,我把TCS3200传感器OUT引脚输出信号频率与其内置振荡器频率比率因子设为2%,有了输出频率比例因子,但是如何通过OUT引脚输出信号频率来换算出被测物体由三原色光强组成的RGB颜色值呢?这还需进行白平衡校正来得到RGB比例因子才行!
白平衡校正方法是:把一个白色物体放置在TCS3200颜色传感器之下,两者相距10mm左右,点亮传感器上的4个白光LED灯,用控制器的定时器设置一固定时间1s,然后选通三原色的滤波器,让被测物体反射光中红、绿、蓝三色光分别通过滤波器,计算1s时间内三色光对应的TCS3200传感器OUT输出信号脉冲数(单位时间的脉冲数包含了输出信号的频率信息),再通过正比算式得到白色物体RGB值255与三色光脉冲数的比例因子。有了白平衡校正得到的RGB比例因子,则其它颜色物体反射光中红、绿、蓝三色光对应的TCS3200输出信号1s内脉冲数乘以R、G、B比例因子,就可换算出了被测物体的RGB标准值了。
现在谈谈,如何进行TCS3200各控制引脚与控制器的硬件连线问题,下图分别是TCS3200传感器和其连线图。



管脚连接
代码分析

定时器模式设定 定时器0为定时,定时器1为计数,即TMOD=0x51;可以查芯片手册。

定时器0的服务函数,通过定时器1的脉冲计数换算的到R,G,B。(必须用P3^5脚,定时器1对应的外部计数引脚)

输出R,G,B值,即三原色,并且重新给定时器赋值。

FF为标志位,方便阅读,其他三组为R,G,B

网友评论仅供网友表达个人看法,并不表明 小R科技 Robots-Store机器人应用商城 同意其观点或证实其描述
昵称: 验证码: