在当今的社会生活中,颜色识别得到越来越广泛的应用。各个领域的广泛应用需求使颜色识别技术有了长足的发展,结合其他技术,可为工业控制、产品制造等多个行业更好地服务。颜色的识别在现代生产中的应用越来越广泛 ,不论是材料、工业自动化、遥感技术、图像处理、产品质检 ,还是某些模糊的探测技术都需要对颜色进行探测。在很多实际应用中 ,往往不需要地确定颜色的光谱组成 ,只需对不同的颜色加以区别。TCS230颜色识别传感器将红绿蓝三基色(RGB)的模拟信号转换成一定频率的频率信号,MSP430主控微控制器将TCS230传输频率信号转变成数字信号,对此信号进行处理、标定,并对TCS230回馈控制。USB通信因本身含有电源,因此可以采用此电源为颜色识别微控制器系统的控制电源。FT232BM为USB-Serial的集成芯片,主要实现在微控制系统USB通信和上位机RS232通信之间的转换。由于颜色的识别需要初始化的基准,因此本系统中设计有存储初始化数据的存储电路以及初始化数据自动生成和读取的程序。
1 颜色传感器TCS230
通常所看到的物体颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。由三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色。对于TCS230来说,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其他原色的通过。
TCS230是TAOS公司推出的可编程彩色光到频率的转换器。它把可配置的硅光电二极管与电流频率转换器集成在一个单一的CMOS电路上,同时在单一芯片上集成了红绿蓝(RGB)三种滤光器,是业界个有数字兼容接口的RGB彩色传感器。TCS230的输出信号是数字量,可以驱动标准的 TTL或CMOS逻辑输入,因此可直接与微处理器或其他逻辑电路相连接。由于输出的是数字量,并且能够实现每个彩色信道10位以上的转换,因而不再需要A/D转换电路,使电路变得更简单。图1是TCS230的引脚和功能框图。

1.1 TCS230识别颜色的原理
TCS230采用8引脚的SOIC表面贴装式封装,在单一芯片上集成有64个光电二极管。这些二极管共分为四种类型。其中16个光电二极管带有红色滤波器;16个光电二极管带有绿色滤波器;16个光电二极管带有蓝色滤波器;其余16个不带有任何滤波器,可以透过全部的光信息。这些光电二极管在芯片内是交叉排列的,能够限度地减少入射光辐射的不均匀性,从而增加颜色识别的度;另一方面,相同颜色的16个光电二极管是并联连接的,均匀分布在二极管阵列中,可以消除颜色的位置误差。工作时,通过两个可编程的引脚来动态选择所需要的滤波器。该传感器的典型输出频率范围从2 Hz~500 kHz,用户还可以通过两个可编程引脚来选择100%、20%或2%的输出比例因子,或电源关断模式。输出比例因子使传感器的输出能够适应不同的测量范围,提高了它的适应能力。例如,当使用低速的频率计数器时,就可以选择小的定标值,使TCS230的输出频率和计数器相匹配。
S0、S1为输出比例因子或电源关断模式,S2、S3为滤波器类型的选择,如表1.OE 为频率输出使能,也可以片选信号,低电平有效;OUT为频率输出。

当入射光投射到TCS230时,通过S2、S3的不同组合,选择不同的滤波器,经过内部转换电路输出不同频率占空比为1/2的方波。不同频率和光强对应不同的频率,选择S0、S1的组合,选择不同的输出比例因子,对输出频率进行微调。MSP430对TCS230输出的频率进行测试后得到一定的数据,再与基准数据进行比较,从而确定收到的光的颜色的比例及强度。
1.2 TCS230与MSP430的接口电路
图2为MSP430微控制器和TCS230的接口电路,MSP430系列单片机具有超低功耗、强大的处理能力、高性能模拟技术及丰富的片上外围模块、系统工作稳定等优点。P1.5控制频率输出;P1.1、P1.2控制输出比例因子; P1.3、P1.4控制滤波器选择;频率输出接至MSP430定时器的外部输入TACLK端,设置 MSP430的定时器为外部计数方式。通过读取基本计数器A的数值确定TCS230的输出频率,并根据P1.1、P1.2、P1.3、P1.4的控制数据就可以确定R、G、B的颜色及强度。

2 FT232BM
USB ,是英文Universal Serial BUS(通用串行总线)的缩写,而其中文简称为"通串线,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在PC领域的接口技术。USB接口支持设备的即插即用和热插拔功能。USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的。采用FTDI公司的FT232BM就可以很好解决这个问题。FT232BM芯片一边是RS232,另一边是USB,将原来需要外加电源的MAX232转化成了带RS232转换线的FT232BM芯片就可以实现USB和RS232通信之间的转换。
FT232BM需要外接6 MHz晶振,采用2脚陶瓷晶振时,在晶振的两脚需外接27 pF的对地电容。尽管FT232BM工作时可以不外接93C46存储器,但93C46存储器常用于USB内部VID、PID、串行数、产品描述符等参数的设置,因此实际设计中一般均使用,尤其在多片FT232BM连接到一个PC机上时。外接的93C46(56、66)存储器数据要求16 bit,因此93C46的ORG脚接高电平。EECS脚(E2PROM片选)接93C46的CS脚(片选);EESK(E2PROM 信号时钟)接93C46的SK(时钟信号);EEDATA(E2PROM数据)脚接至93C46的DI(数据输入脚)和DO脚(数据输出),为防止输入输出数据的相互干扰,在DI和DO之间连接2.2 k?赘的电阻加以隔离,如图3所示。RSTOUT、USBDP、USBDM通过相应的电阻接至USB的"B"连接头上和外部USB口连接,如图3所示。FT232BM的TXD、RXD和MSP430的URXD0、UTXD0交叉连接,实现FT232BM和MSP430之间的串口通信,如图3所示。

3 MSP430控制电路
MSP430带有6个I/O端口,各端口有大量的控制寄存器供用户操作,限度提供了输入/输出的灵活性。通过设置寄存器,每个I/O位都可以独立编程,允许任意组合输入、输出及中断,P1和P2所有8 bit全部可以做中断处理,可以使用所有指令对寄存器操作,可以按字节输入输出,也可按位操作。I/O端口的基本寄存器包括端口方向选择寄存器PxDIR、输入寄存器PxIN、输出寄存器PxOUT、功能选择寄存器PxSEL、P1和P2还带有中断触发沿选择寄存器PxIES、中断标志寄存器PxIFG.MSP430为识别电路的主控芯片,主要对TCS230颜色输出的频率信号进行处理和存储,接口如图2所示。同时完成和FT232BM之间的通信转换,接口如图3所示。为使颜色识别有统一的基准,在颜色识别之前对相关色彩的强弱要进行初始标定、计算和存储。AT24C32为32 KB(4 096×8)串行通信的E2PROM.A0、A1、A2为片选端,在多片系统确定每个芯片的地址。WP为芯片写保护端,高电平时为只读芯片,低电平为读写芯片。SCL为读写时钟端,接MSP430的P5.1脚,SDA为读写数据、地址端,接MSP430的P5.2脚。AT24C32用来存储各颜色的初始基准数据,以后读取的数据均和此数据比较,以确定颜色及光的强度。
TC7660为高频率的直流电压转换器,仅需2个电容就可以实现+1.5 V~+10 V电压至-1.5 V~-10 V电压的转换。LM317为输出为1.2 V~37 V电压调整管。ULN2803AG为高电压、大电流的达林顿管。MSP430的P5.3、P5.4、P5.5的高低电平,经ULN2803AG驱动后接至颜色识别系统的感光测头,R、G、B和W之间的电压即为感光测头供给红、绿、蓝3个标准发光管的电压。通过LM317即可调整W的电位,调整RW、GW、BW之间的电压值,从而改变基准颜色的光强。图4所示为MSP430控制图。
4 软件系统
本颜色识别系统软件主要包括:(1)主控器MSP430和TCS230接口测频程序;(2)主控器MSP430和FT232BM串行通信程序;(3)主控器MSP430和AT24C32数据读写和比较程序;(4)主控器MSP430和ULN2803AG接口的电压控制程序。
在使用时要对颜色基准与色标之间进行比较标定。测头先读取色标的颜色和光强值,并存储为比较的基准值。本系统设计简洁、开发周期短、成本较低、功能较为完善,可以用于对液体、图片等颜色的识别。本系统已成功地应用于彩色扩印机的图像识别系统中,取得了较好的经济价值。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。