为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

颜色识别测量装置设计

2017-09-19 18页 doc 189KB 7阅读

用户头像

is_729658

暂无简介

举报
颜色识别测量装置设计装 订 线     本科生毕业论文(设计)     题目:颜色识别测量装置 设计(三基色) 颜色识别测量装置设计 摘  要 本文主要介绍颜色识别技术及颜色识别装置的设计和实现过程。文章首先介绍了颜色识别技术的产生背景、发展趋势和应用范围;其次讨论了三基色和H阈值的基本理论;在此基础上说明了三种颜色识别方法及颜色识别装置的设计方案。然后介绍了设计中用到的主要器件颜色传感器TCS230和单片机AT89C51及其基于颜色传感器TCS230和AT89C51的颜色识别的应用电路。本文对颜色识别单元和数码显示单元进行了说明。最后文章对整...
颜色识别测量装置设计
装 订 线     本科生毕业论文(设计)     目:颜色识别测量装置 设计(三基色) 颜色识别测量装置设计 摘  要 本文主要介绍颜色识别技术及颜色识别装置的设计和实现过程。文章首先介绍了颜色识别技术的产生背景、发展趋势和应用范围;其次讨论了三基色和H阈值的基本理论;在此基础上说明了三种颜色识别及颜色识别装置的设计。然后介绍了设计中用到的主要器件颜色传感器TCS230和单片机AT89C51及其基于颜色传感器TCS230和AT89C51的颜色识别的应用电路。本文对颜色识别单元和数码显示单元进行了说明。最后文章对整个硬件设计和软件流程进行了详细的说明。本装置利用需要测量的颜色光源进行照射,由颜色传感器转换为脉冲信号。脉冲信号经单片机采集、处理、判别,颜色信息最后由四位数码管显示出颜色信息。 关键词:TCS230;AT89C51;三基色;白平衡 The Design Of Color Identify Device ABSTRACT This paper mainly introduces the design and realization of the color identification and color recognition device. The article first introduces color identification technology background, trends and applications; Followed by discussion of the three primary colors, and H of the basic theory of threshold; Introduce the identification methods of the color this basis color recognition device design. Introduced the application TCS230 color sensor circuit and AT89C51 which is used in the design and the circuit based on TCS230 and AT89C51. In this paper, color recognition module and digital display unit are described. The article introduces hardware and software design process detailed.The stability of the device using white light source for irradiation, form color filter light through the replacement of different colors, pulse forming by the color sensor. Single-chip pulse signal acquisition, processing, identification, color, last four digits from the color information display. Key words:TCS230;AT89C51;Trichromatic;White Balance 目  录   一 引言    1   1.1 光与颜色    1   1.1.1 混色的含义    1   1.1.2 三基色    1   1.1.3 颜色的三要素    2   1.1.4 RGB计色制与配色方程    2   1.1.5 GRB颜色空间转换到HSV颜色空间与颜色的判决    3   1.2 颜色识别装置的三种方案    4   1.2.1 方案1:三个发光二极管分别发射红蓝绿光来检测颜色    4   1.2.2 方案2:在装置上标记颜色来达到辨别颜色的目的    4   1.2.3 方案3:基于89C51单片机和颜色传感器的颜色识别测量装置    5   1.2.4 基于89C51单片机和颜色传感器的颜色识别方法    5   1.2.5基于89C51单片机和颜色传感器的颜色识别接口电路    6   二 器件介绍    7   2.1颜色传感器TCS230的介绍    7   2.1.1 TCS230的特点    7   2.1.2 TCS230的结构框图    7   2.1.3 TCS230各引脚的功能    8   2.1.4 TCS230识别颜色的原理    8   2.2AT89C51单片机    9   2.2.1 AT89C51简介    9   2.2.2 AT89C51单片机引脚封装    9   2.3 数码显示单元    10   2.3.1数码显示单元原理    10   2.3.2数码显示单元的硬件电路图    11   三 硬件电路    12   3.1 硬件电路的介绍    12   3.2 硬件电路图    12   四 系统框图和软件框图    14   4.1 系统框图    14   4.2 软件框图    14   五 测试与分析    22   5.1 注意事项    22   5.2 测试与分析    22   5.3 误差分析    22   六 总结    23   七 谢辞    24   参考文献    25 一  引言 随着现代工业向着高速化、自动化和人民生活水平向着智能化的方向的发展,在生产过程和人们的生活中长期以人眼起主导作用的颜色识别装置将越来越多的被相应的智能颜色传感器所代替。由于人体的自身生理原因和疲劳所造成颜色识别的误差已经对工业的发展和人们的生活影响越来越严重,所以人们对一种代替人眼来对颜色进行识别的智能装置的需求就越来越大了。现阶段已经研究出响应的颜色识别装置,并且已经应用到人们的生活中了。例如:图书馆使用颜色区分对各类文献进行分类,这样能够极大地提高排架管理和统计工作;在包装行业,产生包装利用不同包装和装潢来表示不同的性质和用途;在医用方面可以较准确的帮助医生判断病因,通过各个器官不同病变时期来诊断病情的发展情况。 颜色识别装置基本上是用单片机控制颜色传感器来实现颜色的识别的。目前的颜色传感器通常是在独立的光电二极管上覆盖经过修正的红、绿、篮滤光片,然后对输出信号进行相应的处理,才能将颜色信号识别出来;有的将两者集合起来,但是输出模拟信号,需要一个A/D电路进行采样,对该信号进一步处理,才能进行识别,增加了电路的复杂性,并且存在较大的识别误差,影响了识别的效果。 1.1 光与颜色 1.1.1 混色的含义 不同波长的光会引起人眼不同的色彩感觉,两种不同光谱成分经过混合,能引起人眼产生与某种单色光相同的感觉,即单色光的颜色可以由几种颜色的混合光来等效,这一现象称为混色。 1.1.2 三基色 颜色可以分为为红、橙、黄、绿、青、蓝、紫,人的眼睛就像一个三色接收器,大多数的颜色都可以通过红、绿、蓝三色按照不同的比例合成,同样的绝大多数颜色也可以分解成红、绿、蓝三种光,这就是三基色原理。三种基色是相互独立的,任何一种基色都不能有其它两种颜色合成。红、绿、蓝是三基色,这三种颜色合成的颜色范围最为广泛。红绿蓝三基色按照不同的比例相加合成混色称为相加混色。 红色+绿色=黄色 绿色+蓝色=青色 红色+蓝色=品红 红色+绿色+蓝色=白色 另外: 红色+青色=白色 绿色+品红=白色 蓝色+黄色=白色 由于每个人的眼睛对于相同的单色的感受有不同,如果我们用相同强度的三基色混合时,假设得到白光的强度为100%,这时候人的主观感受是绿光最亮,红光次之,蓝光最弱[1]。 1.1.3 颜色的三要素 颜色三要素指的是彩色光的亮度、色调、饱和度这三个量。任何一种彩色光对人眼引起的视觉作用,都可以用这三个量来描述。 亮度:指彩色光作用于人眼而引起的视觉上的明亮程度。光源的辐射能量越大,物体的反射能力越强,亮度就越高。复合光的亮度等于各个分量光的亮度之和。另外,亮度还和波长有关,能量相同而波长不同的光对视觉引起的亮度感觉也不相同,这就是上一节已经介绍过的视敏特性。   色调:指彩色的颜色类别,它是决定彩色本质的基本参量。我们通常所说的红、绿、蓝等指的就是色调。上文中讲到不同波长的光颜色不同,也是指的色调不同。发光物体的色调(即颜色)由其自身的光谱功率分布决定;不发光物体的色调由物体的反射、透射特性及照明光源的光谱功率分布决定。 饱和度是指彩色的深浅、浓淡程度。对于同一色调的彩色光,饱和度越高,颜色就越深、越浓。各种谱色光都是饱和度最高的彩色。饱和度与彩色光中掺入的白光比例有关,掺入的白光越多,饱和度就越小。因此,饱和度也称为色纯度。例如,将一束饱和度很高的蓝光投射在一张白纸上,则白纸呈现深蓝色,如果再将一束白光投射到该纸上,则纸的颜色就会变浅,说明颜色的饱和度降低了。饱和度的大小用百分制衡量,100%的饱和度表示彩色光中没有白光成分,所有谱色光的饱和度都是100%;饱和度为零表示全是白光,没有任何色调。   色调和饱和度合称为色度,它既说明了彩色光的颜色类别,又说明了颜色的深浅程度。在彩色电视中,所谓传输彩色图像,实质上是传输图像中每一个像素的亮度和色度信息。 1.1.4 RGB计色制与配色方程 根据三基色原理,我们将红、蓝、绿三种基色按不同的比例混合,可以获得各种色彩。国际规定下面三种光谱为基色光,波长为700nm的红光作为红基色,波长为564.1nm的绿光为绿基色,波长为435.8nm的蓝光为蓝基色。 从配色实验可知:配出E白光所需R、G、B三基色光通量比为1:4.5907:0.0601。因此规定:光通量为1lm的红基色作为一个红基色单位。并用(R)表示;光通量为4.5907lm的绿基色作为一个绿基色单位,并用(G)表示;光通量为0.0601lm的蓝基色作为蓝基色单位,并用(B)表示。以(R)、(G)、(B)为单位量进行彩色度量的系统称为RGB计色制。于是一种彩色光的配色方程可以由下式表示:       F=R(R)+G(G)+B(B)                                        (1-1) 式中F表示待配色的彩色光的彩色量:(R)、(G)、(B)分别为红(波长为700nm)、绿(波长为546.1nm)、蓝(波长为435.8nm)三基色的单位量,其中1(R)=1cd,1(G)=4.5907cd,1(B)=0.0601cd;R、G、B分别为三基色的系数。 式(1-1)的配色方程适合于配置一切颜色,只不过对于不同的颜色,三色系数不同而已。 对于等能白光, R=G=B=1,即       FE白=1(R)+1(G)+1(B)                                  (1-2) 其光通量为:       ︳FE白︳=1×1+1×4.55907+1×0.0601                        (1-3) 其亮度为:       Y=0.39R+0.5G+0.11B                                       (1-4) 颜色传感器通过检测色彩光中三种基色光的光通量的大小来判断颜色。配色方程式告诉我们,白色光中三种基色的光通量并不相等,按他们各自的单位量来计值,白光中三基色的比例才是1:1:1。这给我们进行的白平衡调整和亮度的描述提供了一种方法。在后面的RGB转化到HSV的算法中提供了另一种亮度描述方法,在本装置中采用1-4的描述方法。 1.1.5 GRB颜色空间转换到HSV颜色空间与颜色的判决 HSV(hue,saturation,value)表示颜色的色相、饱和度和亮度。我们识别颜色主要是通过H的阈值参数来识别,而H的阈值就是用HSV颜色空间来实现的。 RGB转化到HSV的算法: max=max (R、G、B) min=min (R、G、B) v=max Delta=max – min If max! =0, s=delta/max , else R=G=B=0 ,S=0 ,H=undefinedcolor If R=max , H=(G-B)/delta If G=max , H=2+(B-R)/delta If B=max , H=4+(R-G0/delta H=H*60 If H<0 , H=H+360 HSV模型在许多图象编辑中得到了广泛的应用,在这里我们用HSV颜色空间模型来判断颜色。我们从一种色彩纯色彩开始,即指定色彩角H,并让V=S=1,然后我们就可以通过向其中加入黑色和白色来得到我们需要是颜色,增加黑色可以减小V而S不变,同样增加白色可以减小S而V不变。在本装置的设计中,只要通过转化得到H就可以判断各种颜色,而V和S的改变只会加深或减淡该颜色,但并不会影响颜色的判断结果,因此我们在这里可以人为指定H的阈值,按照H的阈值不仅能够快速判断颜色,还可以根据实际需要方便修改判决方案。 本设计判决H阈值表如1-1所示: 表1-1  H的阈值表 颜色名称 H的阈值 红色 0-30 橙色 30-60 黄色 60-100 绿色 100-140 青色 140-200 蓝色 200-280 紫色 280-360 1.2 颜色识别装置的三种方案 随着科学技术的发展和各种元气件的日益完善,我们对颜色识别测量装置设计的要求也越来越高,下面我们来介绍几种颜色识别测量装置的几种方案: 1.2.1 方案1:三个发光二极管分别发射红蓝绿光来检测颜色 该颜色识别装置必须向待测物体依次发射出红、绿、蓝三种探测光,利用硫化镉(CdS)光敏电阻接收待测物的反射光,根据其阻值的变化从而获得颜色的信息。本装置要求光敏电阻必须安装在三个发光二极管的中心位置。 这个方案有很大的局限性: 1)光敏电阻容易受到温度影响可靠性差,测量范围窄。 2)光敏电阻必须安装在中心位置,增加了设备的生产难度。 3)进行环境校正时,必须单独提供一个白色的待测物才可以进行校正,在实际中受到环境的影响。 4)因为发光二极管和光敏电阻的位置是固定的,测试时必须通过调整待测物体的位置才能使其反射光被光敏电阻接收到,待测物的位置很难控制,增加了测试的难度。 1.2.2 方案2:在装置上标记颜色来达到辨别颜色的目的 在工具盘放有四个探测笔的槽,槽里事先标记红、黄、黑、绿四种颜色,四支探测笔也要标记这四种颜色,在放置的时候书写笔必须要和探测笔槽的颜色一致。每个笔槽的中心位置放置一对红外发送/接收二极管,这个二极管就是笔色的感测器。当这四支笔中的一支被拿起时,当二极管接受不到所反射的红外光时,这种状态就会被记录下来并认为笔槽为空。由于笔槽与二极管相对应,因此哪个笔槽空就意味着哪种颜色的探测笔被拿起。 这个方案的缺点: 1)被识别的颜色必须与事先放置好的颜色相对应,不然的话不能识别。 2)探测笔颜色是靠预先设置笔槽颜色,并检测笔槽是否为空来识别的,待测物必须放置在与其颜色一致的笔槽里,否则颜色识别错误。 1.2.3 方案3:基于89C51单片机和颜色传感器的颜色识别测量装置 不同于上述两种方案,此种颜色识别装置仅将待测物放置在本装置上就可以识别出待测物体的颜色。该装置包括颜色探测器和数据处理单元。 (10)基于89C51单片机和颜色传感器的结构 此种方案的颜色识别装置包括颜色探测器和数据处理单元。 1、颜色探测器:包括发光源和传感器。发光源用于向待测物体发射单色探测光,传感器用于接收待测物的反射光,并根据所述反射光的光参量产生与待测物颜色相应的电信号。发光源可以是发白色光的发光二极管。传感器是CMOS半导体传感器,通过依次测量待测物反射光正RGB三原色的光强,获得颜色信息,并将测量植转换成频率信号。该CMOS半导体传感器表面是光电感应二极管,内部集成了红绿蓝(RGB)三种颜色的滤波器、彩色光到频率的转换器,直接输出数字电信号。 2、数据处理单元为89C51单片机,用于接收颜色探测输出的频率电信号,并根据该信号产生响应的颜色识别结果;还用于颜色探测器的控制。 数据处理单元包括:数据采集单元,颜色参数存储单元,对比运算单元,事件判断单元。 1)数据采集单元作用是定期的对传感器的数据进行采集。 2)颜色参数存储单元用于存储各种色彩的标准颜色参数。 3)对比运算单元用于将采集的数据与存储单元所存储的标准颜色参数进行对比运算,得到颜色识别的结果。 4)事件判断单元用于判断待测物的拿起、放下事件,并判断是否有待测物放置在托盘里,若无,则为空状态。 1.2.4 基于89C51单片机和颜色传感器的颜色识别方法 数据处理单元控制发光源向待测物发射探测光; 数据处理单元控制传感器,使传感器接收待测物的反射光;若没有放置待测物,传感器接收到的是托盘背景的反射光; 传感器将反射光信息转换为频率电信号,并发送给数据处理单元的数据采集单元; 数据处理单元的对比运算单元根据数据采集单元所采集的数据及颜色参数存储单元中的每种标准颜色参数进行对比运算处理,生成颜色判断的结果; 数据处理单元的事件判断单元根据上述颜色判断的结果,生成状态和事件判断结果。 1.2.5基于89C51单片机和颜色传感器的颜色识别接口电路 图1-1  TCS230颜色识别接口电路 在程序流程中:系统初始化负责设置89C51的定时器/计数器的工作方式,选择TCS230的输出比例因子,使能输出引脚以及通信参数的设置。初始化完成后,检测是否需要进行白平衡调整。如有,调整白平衡子程序;否则,转到下一步,检测是否需要进行颜色识别。如不需要颜色识别,返回;如需要颜色识别,调用颜色识别子程序,直到颜色识别完毕。 此种方案的优点: 1)此方案对发光源没有特殊的要求,传感器只采集待测物的反射光。 2)在颜色识别中,传感器的作用是采集颜色信号并把颜色信号转换为频率信号,直接输出三基色的数字电信号,不需要AD转换。这样就使装置结构简单,易于实现。 3)此装置将事先存储的颜色参数与待测物的颜色数据进行比较,来获得颜色识别的结果。这种方法不需要复杂的计算,简单明确,易于实现。 综上所述,我们采用第三种方案来设计此颜色识别装置。 二    器件介绍 2.1颜色传感器TCS230的介绍 2.1.1 TCS230的特点 TCS230是TAOS(Texas Advanced Optoelectronic Solutions)公司推出的可编程彩色光到频率的转换器。它把可配置的硅光电二极管与电流频率转换器集成在一个单一的CMOS电路上,同时在单一芯片上还集成了红绿蓝(RGB)三种滤光器,是业界第一个有数字兼容接口的RGB彩色传感器。TCS230的输出信号是数字量,可以驱动标准的TTL或CMOS逻辑输入,因此可直接与单片机相连接。由于输出的是数字量,并且能够实现每个彩色信道10位以上的转换精度,因而不再需要A/D转换电路,使电路变得更简单。 2.1.2 TCS230的结构框图 [object Object] [object Object] [object Object] [object Object]                             图2-1  TCS230引脚图       图2-1中,TCS230采用8引脚的SOIC表面贴装式封装,在单一芯片上集成有64个光电二极管。这些二极管共分为四种类型。其中16个光电二极管带有红色滤波器,16个光电二极管带有绿色滤波器,16个光电二极管带有蓝色滤波器,其余16个不带有任何滤波器,可以透过全部的光信息。这些光电二极管在芯片内是交叉排列的,能够最大限度地减少入射光幅射的不均匀性,从而增加颜色识别的精确度;另一方面,相同颜色的16个光电二极管是并联连接的,均匀分布在二极管阵列中,可以消除颜色的位置误差。工作时,通过两个可编程的引脚来动态选择所需要的滤波器。该传感器的典型输出频率范围从2Hz~500kHz,用户还可以通过两个可编程引脚来选择100%、20%或2%的输出比例因子,或电源关断模式。输出比例因子使传感器的输出能够适应不同的测量范围,提高了它的适应能力。例如,当使用低速的频率计数器时,就可以选择小的定标值,使TCS230的输出频率和计数器相匹配。 2.1.3 TCS230各引脚的功能                                   表2-1  TCS230引脚功能 S0 S1 输出频率定标 S2 S3 滤波器类型 L L 关断电源 L L 红色 L H 2% L H 蓝色 H L 20% H L 无 H H 100% H H 绿色               从图2-1可知:当入射光投射到TCS230上时,通过光电二极管控制引脚S2、S3的不同组合,可以选择不同的滤波器;经过电流到频率转换器后输出不同频率的方波(占空比是50%),不同的颜色和光强对应不同频率的方波;还可以通过输出定标控制引脚S0、S1,选择不同的输出比例因子,对输出频率范围进行调整,以适应不同的需求。 S0、S1用于选择输出比例因子或电源关断模式;S2、S3用于选择滤波器的类型;OE是频率输出使能引脚,可以控制输出的状态,当有多个芯片引脚共用微处理器的输入引脚时,也可以作为片选信号;OUT是频率输出引脚,GND是芯片的接地引脚,VCC为芯片提供工作电压。图2是S0、S1及S2、S3的可用组合[2]。 2.1.4 TCS230识别颜色的原理 TCS230识别颜色的原理就是三色光的原理,就是利用上述三个参数对所测颜色的R、G、B进行调整。通常所看到的颜色,实际上是物体表面吸收了照射到它上面的白光中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。有两种方法来计算参数:①依次选通三种颜色的滤波器,然后对TCS230的输出脉冲依次进行计数。当计数到255时停止计数,分别计算每个通道所用的时间。这些时间对应于实际测试时TCS230每种滤波器所采用的时间基准,在这段时间内所测得的脉冲数就是所对应的R、G和B的值。②设置定时器为一固定时间(例如10ms),然后选通三种颜色的滤波器,计算这段时间内TCS230的输出脉冲数,计算出一个比例因子,通过这个比例因子可以把这些脉冲数变为255。在实际测试时,使用同样的时间进行计数,把测得的脉冲数再乘以求得的比例因子,然后就可以得到所对应的R、G和B的值[4]。 2.2AT89C51单片机 2.2.1 AT89C51简介 在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。 1980年,Intel公司推出MCS—51系列单片机。该系列单片机在芯片内集成有8位CPU、4K字节程序存储器9(ROM)、128字节数据存储器(RAM)、4个8位并行口、1个全双工串行口、2个16位定时/记数器,寻址范围为64KB。 2.2.2 AT89C51单片机引脚封装 图2-2  AT89C51的引脚图 1.总线型DIP40引脚封装 (1)电源及时钟引脚(4个) VCC:电源接入引脚; VSS(GND):接地引脚; XTAL1:晶体振荡器接入的一个引脚(采用外部振荡器时,此引脚接地); XTAL2:晶体振荡器接入的另一个引脚(采用外部振荡器时,此引脚作为外部振荡信号的输入端)。 (2)控制线引脚(4个) RST/VpD:复位信号输入引脚/备用电源输入引脚; ALE/PROG:地址锁存允许信号输出引脚/编程脉冲输入引脚; EA/VPP:内外存储器选择引脚/片内EPROM(或FLASHROM)编程电压输入引脚; PSEN:外部程序存储器选通信号输出引脚。 (3)并行I/O引脚(32个,分成4个8位口) P0.0~P0.7:一般I/O口引脚或数据/低位地址总线复用引脚; P1.0~P1.7:一般I/O口引脚; P2.0~P2.7:一般I/O口引脚或高位地址总线引脚; P3.0~P3.7:一般I/O口引脚或第二功能引脚。 2.非总线型DIP20封装的引脚 (1)电源及时钟引脚(4个) VCC:电源接入引脚; GND:接地引脚; XTAL1:晶体振荡器接入的一个引脚(采用外部振荡器时,此引脚接地); XTAL2:晶体振荡器接入的另一个引脚(采用外部振荡器时,此引脚作为外部振荡器信号的输入端)。 (2)控制线引脚(1个) RST:复位信号输入引脚。 (3)并行I/O引脚(15个) P1.0~P1.7:一般I/O口引脚; P3.0~P3.7:一般I/O口引脚或第二功能引脚。 2.3 数码显示单元 2.3.1数码显示单元原理 数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。此电路中,AT89C51的P0用于驱动LED的8位段码,8位LED相应的"a"—"g"段连在一起,它们的公共端分别连至P2口。这样当选通某一位LED时,相应的地址线输出的是高电平,所以我们的LED选用共阳LED数码管。另外,对动态扫描的频率也有一定的要求,频率太低,LED将出现闪烁现象。如果频率太高,由于每个LED点亮的时间太短,LED的亮度太低,肉眼无法看清,所以一般均取几个ms左右为宜。 2.3.2数码显示单元的硬件电路图 图2-3  数码显示单元 三  硬件电路 3.1 硬件电路的介绍 整个颜色识别装置的硬件元件有:颜色传感器TCS230、数码显示LED、单片机AT89C51、按键复位电路及振荡电路。 整个系统各元件间具体的工作过程:当器件接通电源后,颜色传感器正常工作,颜色传感器TCS230可以有两种工作方式:分别是测颜色信号和测光强信号,TCS将光信号转换成脉冲频率电信号,输出频率2HZ—500HZ之间。脉冲信号接主单片机的P3.5口,输入进单片机中。经过软件处理后,颜色及亮度信号由单片机的P0口送到数码管显示出来,P0口与数码管相连处有上拉电阻,作用是给数码管供电,又防止电流过大对单片机的损害[9]。 3.2 硬件电路图 图3-1  颜色识别装置硬件电路图 图3-1 硬件电路图 四  系统框图和软件框图 4.1 系统框图 图4-1  颜色识别流程 4.2 软件框图 软件框图采用模块化设计,由主程序、中断服务子程序、按键扫描程序、白平衡程序、颜色判别程序和数码显示程序组成。主程序处于循环工作状态下,主要完成定时/计数器和中断系统的初始化,并且循环调用按键扫描子程序。当T0记数达到预设值时,申请中断CPU响应中断后立即读取TH1、TL1两寄存器中的记数值,并重新初始化T0、T1,以便检测下一次数据[10]。 图4-2  TCS230软件流程 主程序中:系统初始化负责设置89C51的定时器/计数器的工作方式,选择TCS230的输出比例因子,使能输出引脚以及通信参数的设置,初始化完成后,检测是否需要进行白平衡调整。如有,调整白平衡子程序;否则,转动下一步,检测是否需要进行颜色识别。如不需要颜色识别,返回;如需要颜色识别,调用颜色识别子程序,直到颜色识别完毕。 N 按键扫描程序的作用是判断按键是否被按下和判断一个按键时间长短。 调用测频率程序 计算比例因子 图4-4  白平衡程序 白平衡程序的作用是初始化TCS230,调节白光为基准来测量各种颜色。 4-5  颜色判别程序 颜色判别程序的作用是通过和调用函数计算出接收到的信号是什么颜色。 记数频率 图4-6  中断服务子程序 中断服务子程序: ORG    0000H LJMP    MAIN          ;跳转到主程序 ORG    000BH        ;T0的中断程序入口       LJMP    DVT0        ;转向中断服务程序 ORG    0100H MAIN:MOV    TMOD,#01H   ;置T0工作于1方式   MOV    TH0,#0D8H  ;装入计算初值   MOV    TL0,#0F0H   SETB    ET0          ;T0开中断   SETB    EA          ;CPU开中断   SETB    TR0          ;启动T0   SJMP    $          ;等待中断 DVT0:CPL    P1.0        ;P1.0取反输出   MOV    TH0,#0D8H    ;重新装入记数值   MOV    TL0,#0F0H   RETI   END 中断服务子程序是每当程序中需要延时时,主程序就会调用中断服务子程序,并用来控制数码管间断显示。 开定时器0/计数器1 测频率子程序: void freq_key() { if(k5==0) { delay(10); if(k5==0) {   key++;   while(k5==0);   if(key==1)    //测频率   {   k=0;   count=0;   TH0=0x00;   TL0=0X00;    //T0   TH1=0x4c;   TL1=0X00;    //50ms */   TR0=1;   TR1=1;     }   if(key==2)          //   {   z=0;   k=0;   count=0;   TH0=0xff;   TL0=0Xf5;          //T0   TH1=0x00;   TL1=0X00;          //T1   TR0=1;   while(TL0==0xf5);  //确保当外部时钟信号为下降沿时,T1开始计数   TR1=1;   }   if(key>=3)   {   z=0;   key=0;   }   } } } 测频率程序的作用是用来测量颜色传感器传送来的电脉冲信号。 五  测试与分析 5.1 注意事项 1)颜色识别时要避免外界光干扰,否则会影响颜色识别的结果,最好把传感器、光源等放置在一个密闭、无反射的箱子中避免干扰。 2)光源发出的光要尽量集中,否则会造成传感器之间的干扰。 3)当第一次使用TCS230或TCS230识别模块重启后,更换光源等情况,都需要进行白平衡的调整。 4)电源线必须采用0.01uF—0.1uF的电容退耦,而且电容应尽可能靠近芯片。 5)芯片的OE引脚和GND引脚之间需要采用低阻抗连接来提高抗噪声的能力。 6)芯片的输出设计为短距离驱动标准TTL或COMS逻辑输入电平,若输出线超过12英寸,则建议使用缓冲器或驱动器。 5.2 测试与分析 测试仪有:白色发光二极管、暗箱、滤光片、DC4322B型双踪示波器、JWY—30C型直流稳压电源、DF1632型频率计、温度计、数字万用表。 将白色发光二极管和颜色传感器置于暗箱中,光源与颜色传感器距离固定,外围电路控制颜色传感器各引脚。测量到当TCS230分别处于四种状态下的频率值。见表9-1 表5-1  颜色传感器四种状态下频率值 蓝 7.1×104 HZ 红 2.1×104 HZ 绿 4.3×104 HZ 无 2.4×104 HZ     数据分析:在白光的环境下测得红、蓝、绿三色光的频率比为:1:3.5:2,所以在实际的颜色测量中,我们测得颜色三基色的频率比为1:3.5:2的时候,此色光即为白光。在无的状态下测得的是光强度。 5.3 误差分析 误差分析:光源的不稳定,单片机和晶振精度不够高,或频率测试程序不够完善都会给测量带来误差。 减小误差的方法:利用稳定的白光光源、提高单片机和晶振的精度、完善频率测试程序、在稳定的环境下进行测试都能够减小误差。 六  总结 数据采集与处理一直是生产实践研究与应用领域的一个热点和难点。本课题设计完成了一个以TCS230为核心的数据采集系统。本设计装置已经能够实现颜色的识别。本装置通过四个按键已经能够实现装置的复位,白平衡的调整,颜色识别的启动以及数码管信息的切换显示。四位数码管能够显示颜色的色相,RGB三基色信息以及亮度信息等。 另外本装置重量轻,容易操作,方便携带,价格便宜。对于视力有问题(如盲人)的人员和教育教学工作者,此仪器是很好的颜色识别工具。另外由于本装置具有数码管显示具体的三基色及其亮度信息,所以它可以用于对精度要求不是太高的工业生产。 由于时间及自身知识水平的不足,还有温度与光源的不稳定,本设计装置测试结果与理想值存在一定的误差,可以进行进一步的改进: 由于部分电路为手工焊接制版,抗环境干扰的能力不强。如果时间充足,可以用Protel画出PCB版图,进行机器制版。 可以选用精度更高的硬件芯片,并对硬件布局进行合理的调整[11]。 可以在编程中对测量数据进行进一步的软件处理,提高转换的精度及应用于要求较高的工业生产。 七  谢辞 首先,衷心地感谢我的指导老师xxx老师。在我本科学习的最后阶段,xxx不仅给予了我的孜孜不倦教诲和无私的帮助,提出了很多宝贵的意见和建议,对我在学习工作过程中的需要,xxx也是尽其所能提供最优异的条件,给我在课题上的进一步深入地学习和研究提供了最坚定地支持,这对我知识的巩固和能力的提高有着极其重要的意义。同时,xxx严谨的治学精神,对于知识执着追求的热情以及平和的待人态度,也令我深深地感动和敬佩,所有的这些都必将让我终身受益。 其次也要感谢xxx同学给于我的帮助,与他们的讨论和交流让我受益匪浅,我所取得成绩和所有实验室的成员是密不可分的。 最后感谢xxxx学院为我提供的良好的学习条件和氛围。 参考文献 [1]  贺安之,阎大朋编著.现代传感器原理及应用.北京:宇航出版社,1995 [2]  胡建民.颜色传感器TCS230及颜色识别电路[J],单片机与嵌入式系统应用.2006.04 [3]  杨琳,张琨生,杨怀祥编著。彩色电视原理(第三版).南京:东南大学出版社.1995 [4]  裴纯厚.彩电的白平衡调整[J],家庭电子。1997.11 [5]  张松灿,肖本贤编著.颜色传感器TCS230原理及应用[J].单片机与嵌入式系统应用.2005 [6]  Texas Advanced Optoelectronic Solutions Inc. TCS230 PROGRAMMABLE COLOR                        LIGHT-TO-FREQUENCY CONVERTER. 2003,1~10 [7]  Pmel Corporpion-Porduct Card:8-bit with 8k bytes In-System Programmable Flash AT89C51 ,2003 [8]  孙涵芳,徐爱卿编著.单片机原理及应用(修订版).北京:北京航空航天大学出版社,1996 [9]  赵晶编著. 电路设计与制版. Protel 99高级应用. 北京:人民邮电出版社,2000 [10]  赵亮,侯国锐编著.单片机C语言编程与实例. 北京:人民邮电出版社,2003 [11]  潭浩强编著. C程序设计(第二版). 北京:清华大学出版社,1999 [12]  易明编著. 普通物理学教程—光学. 北京:高等教育出版社,1999
/
本文档为【颜色识别测量装置设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索