用TCS3200D做颜色识别时,如何将测得的脉冲数转换为RGB的值?

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/27 04:19:51
用TCS3200D做颜色识别时,如何将测得的脉冲数转换为RGB的值?用TCS3200D做颜色识别时,如何将测得的脉冲数转换为RGB的值?用TCS3200D做颜色识别时,如何将测得的脉冲数转换为RGB的

用TCS3200D做颜色识别时,如何将测得的脉冲数转换为RGB的值?
用TCS3200D做颜色识别时,如何将测得的脉冲数转换为RGB的值?

用TCS3200D做颜色识别时,如何将测得的脉冲数转换为RGB的值?
TCS230与TCS3200D 原理一致,下面具体谈谈:
1、TCS230识别颜色的原理
TCS230这种可编程的彩色光到频率转换器适合于色度计测量应用领域,如彩色打印、医疗诊断、计算机彩色监视器校准以及油漆、纺织品、化妆品和印刷材料的过程控制和色彩配合.本文以 TCS230 在液体颜色识别中的应用为例,介绍它的具体使用.在开始介绍TCS230 的颜色识别前,先来了解一些光与颜色的知识.
2、 三原色的感应原理
通常所看到的物体的颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应.白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P).根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的.
3、 TCS230识别颜色的原理
由上面的三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色.对于TCS230 来说,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其它原色的通过.例如:当选择红色滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可以得到红色光的光强;同理,选择其它的滤波器,就可以得到蓝色光和绿色光的光强.通过这三个值,就可以分析投射到TCS230 传感器上的光的颜色.
4、白平衡和颜色识别原理
白平衡就是告诉系统什么是白色.从理论上讲,白色是由等量的红色、绿色和蓝色混合而成的;但实际上,白色中的三原色并不完全相等,并且对于TCS230 的光传感器来说,它对这三种基本色的敏感性是不相同的,导致TCS230 的RGB 输出并不相等,因此在测试前必须进行白平衡调整,使得TCS230 对所检测的“白色”中的三原色是相等的.进行白平衡调整是为后续的颜色识别作准备.在本装置中,白平衡调整的具体步骤和方法如下:将空的试管放置在传感器的上方,试管的上方放置一个白色的光源,使入射光能够穿过试管照射到TCS230 上;根据前面所介绍的方法,依次选通红色、绿色和蓝色滤波器,分别测得红色、绿色和蓝色的值,然后就可计算出需要的三个调整参数.
当用TCS230 识别颜色时,就用这三个参数对所测颜色的R 、G 和B 进行调整.这里有两种方法来计算调整参数:①依次选通三种颜色的滤波器,然后对 TCS230的输出脉冲依次进行计数.当计数到255 时停止计数,分别计算每个通道所用的时间.这些时间对应于实际测试时TCS230 每种滤波器所采用的时间基准,在这段时间内所测得的脉冲数就是所对应的R 、G 和B 的值.②设置定时器为一固定时间(例如10ms ),然后选通三种颜色的滤波器,计算这段时间内 TCS230 的输出脉冲数,计算出一个比例因子,通过这个比例因子可以把这些脉冲数变为255.在实际测试时,使用同样的时间进行计数,把测得的脉冲数再乘以求得的比例因子,然后就可以得到所对应的 R 、G 和B 的值.