APP下载

颜色检测系统的设计与实现

2011-07-26赵辰雪

自动化仪表 2011年11期
关键词:白平衡采集卡仪器

陈 曦 赵辰雪

(河北工业大学电气与自动化学院,天津 300130)

0 引言

近年来,颜色检测已广泛应用于各个领域中。目视法、分光光度法和光电积分法是常用的颜色检测方法[1]。这些测量方法最重要的作用是实现颜色传感器与上位机的通信,并对实时数据进行处理、显示和保存。其中,虚拟仪器在通信中起到很重要的作用,它可以实现上位机与测试仪器的一体化,并有望成为现阶段及将来测试技术与仪器发展的一个重要方向[2]。美国Applied Color Systems、英国Instrumental Color Systems和瑞士Data Color是世界上3个主要的色控仪器公司[3]。在国内,仪器测色、配色的理论和系统的研究仍处于相当落后的状态。基于LabVIEW的颜色检测系统简化了以往软件设计的工作量,降低了通信的复杂程度,从而提高了系统的自动化水平。该系统为国内的颜色检测工业提供了一种新的检测方法。

1 系统的总体设计

颜色采集系统由颜色传感器TCS230与数据采集卡PCI-1716组成,其通过研华32位DLL驱动程序接口使PCI-1716与计算机相连,然后与LabVIEW软件共同构成通信系统。颜色检测系统的具体工作过程是:首先,LabVIEW通过程序给采集卡设初值进行硬件初始化;然后,由PCI-1716的数字输出端控制TCS230颜色滤波器的选择,从而进行颜色数据的采集;接着,PCI-1716将采集的数据传递给计算机;最后,利用LabVIEW对数据进行处理、显示与保存。

颜色检测系统结构如图1所示。

图1 颜色检测系统结构框图Fig.1 Structure of the color detection system

2 硬件结构

2.1 颜色传感器TCS230

颜色传感器TCS230是美国TAOS公司推出的一种可编程光到频率的转换器[4]。它把可配置的硅光电二极管与电流转换器集成在一个单一的CMOS电路上,并在同一芯片上集成红绿蓝(RGB)三种滤光器,从而形成一种有数字兼容接口的RGB颜色传感器,它可以直接与微处理器或其他逻辑电路相连接。由于其输出为数字量,并且能够实现彩色通道10位以上的转换精度。因此,在转换过程中不需要A/D转换电路,简化了电路结构。

TCS230的功能框图如图2所示。

图2 TCS230功能框图Fig.2 Functional block diagram of TCS230

图2中,引脚S0和S1用于选择输出不同比例因子或电源关断模式,并可以对输出范围进行调整,以满足不同的需求;引脚S2和S3用于选择不同的颜色滤光器;OE为使能引脚,也可作为片选信号;OUT为频率输出引脚;GND为芯片的接地引脚;VCC为芯片提供相应的工作电压。

自然界中的颜色都是由红、绿、蓝三原色混合组成的。因此,对颜色的检测实际就是对红、绿、蓝值的检测,TCS230就是通过控制S2和S3,选通不同颜色滤波器,经过滤波后,分别得到R、G、B的值,最后通过数据处理获得待测的颜色。

2.2 数据采集卡PCI-1716

PCI-1716是一款高分辨率多功能的PCI数据采集卡[5],适用于仪器测试、图形处理、视频数字化处理及声音与振动测试等领域。它采用16位的A/D转换器,1 kB的FIFO缓冲器,采样速率达250 kS/s;可以提供16路单端模拟量输入或8路差分模拟量输入,采集卡的这些输入可以单一使用,也可以组合输入;采集卡带有2个16位的D/A输出通道、16路数字量输入/输出通道和1个10 MHz的16位计数器通道。

同时,PCI-1716还是一款即插即用的采集卡,只要将设计好的电路板直接与采集卡相连,再通过相应的DLL驱动控制,就可以采集到需要的数据。

3 LabVIEW软件设计

系统采用研华“Advantech DLL Driver”驱动软件中的LabVIEW驱动程序来实现软件控制。设计调用了DRV_DeviceOpen()函数开启整个虚拟设备,再通过对其他功能模块进行配置和连接,从而完成PCI-1716与LabVIEW的通信,同时控制TCS230的颜色检测。

本设计充分利用了LabVIEW强大的数据处理功能,将采集到的数据按需要进行相应的处理,加上友好的人机交互界面,则形成了一种实用、方便的颜色检测系统。

在程序构架中,系统采用平铺式顺序结构将所有程序包含在内,每个顺序结构里面主要采用了While循环和条件结构的嵌套。在条件结构中,给出一定的定时条件,当条件满足要求时,触发计数器便开始计数并显示。

程序首先运行的是白平衡的RGB计数,然后是颜色检测的RGB初始计数,最后经过数学方法处理,得到所检测颜色的真实RGB值。

转换公式为[6]:

式中:P为平衡值,平衡值为最终测得颜色的R、G、B值,即R、G、B;Y为原始值,原始值为颜色检测时测得的初始数据,即R1、G1、B1;C为参考值,参考值为白平衡时测得的原始数据,即CR、CG、CB。

程序中设定了“白平衡”和“颜色检测”两个按键。

①“白平衡”执行的是读取白平衡原始数据,以供颜色检测的使用。具体步骤是:由软件开启采集卡后,通过PC-LAB WT-B模块对采集卡写入命令,控制S0、S1、S2和 S3,经过 10 ms 的定时后,由 PC-LAB ENVENT READ模块读取这段时间内采集卡计数器的数值,并传送到LabVIEW的前面板显示。

②“颜色检测”过程是重复“白平衡”的过程。

最后,这两部分的数据经过LabVIEW自带的模块进行数据处理,并在前面板显示最终的RGB值,以还原为所检测的颜色。

颜色检测系统程序流程如图3所示。

图3 颜色检测系统流程图Fig.3 Flowchart of the color detection system

4 结束语

整个系统设计采用研华开发的通用“Advantech DLL Driver”驱动软件及其配备的LabVIEW驱动,结合LabVIEW软件,实现对PCI-1716和TCS230的控制;同时,采用LabVIEW本身的数据处理模块对采集的数据进行处理、显示和保存。相对其他的颜色检测系统,该系统借助LabVIEW软件进行仿真,并设计友好的人机交互界面,大大降低了通信的复杂度、减少了设计的工作量、提高了自动化程度,为国内的颜色检测工业提供一种新的检测方法。

[1]庞小兵.在线颜色识别传感技术的研究[D]长沙:长沙理工大学,2008.

[2]杜春玲,张唏,葛蕾.颜色测量仪器及其发展[J].现代仪器,2005,11(3):56 -57.

[3]曾文琪,高满茹.基于虚拟仪器的自控仿真实验系统的设计[J].微计算机信息,2010(16):153-154.

[4]李爱琴,张绪坤.基于TCS230与LabVIEW的颜色测量系统[J].电子科技,2008,21(6):26 -27.

[5]王梦玲,王思明.基于PCI-1713和LabVIEW的高速数据采集系统设计[J].微计算机信息,2006(19):120 -122.

[6]卢川英,于浩成,孙敬辉,等.基于TCS230传感器的颜色检测系统[J].吉林大学学报:信息科学版,2008,26(6):624 -625.

[7]王鑫,郭继燕,丁铁夫,等.基于PCI总线的高速数据采集卡的设计[J].微计算机信息,2003(5):31-32.

[8]刘冠宇,戴义保,朱丹.ARM7高精度双金属片形变检测系统[J].自动化仪表,2009,30(9):67 -70.

猜你喜欢

白平衡采集卡仪器
《现代仪器与医疗》2022年征订回执
《现代仪器与医疗》2022年征订回执
高精度AD采集卡性能测试及评价方法研究
血液采集卡存储装置的设计与应用
技术橱窗
我国古代的天文仪器
面向数控机床的多通道传感数据采集卡设计
脉冲采集卡的开发
你的白平衡准确吗?
准确的白平衡管理