版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 选题背景 11.1 概述 11.2 课设要求 1.2 方案设计 13 实验论述 23.1 at89s52单片机简介 at89s52 的主要性能和参数23.1.2 at89s52 的主要功能33.2 传感器 tcs3200 tcs3200芯片的结构框图与特点: 43.2.2 tcs3200识别原理 63.3 传感器与单片机连接8.3.4 lcd1602 模块 液晶显示器简介93.4.2 指令格式与指令功能1.03.4.3 lcd 显示器的初始化 103.4.4 硬件电路连接 103.4.5 lcd1602 液晶显示模块软件设计113.5 系统结构
2、图 1.2.4 颜色识别系统测试 色彩识别的测试过程 颜色检测中的误差 测试结果分析1.4.5 课设总结 1.5.参考 文 献 1.6.1 选题背景1.1 概述随着现代工业生产向高速化、自动化方向的发展,颜色识别广泛应用于各种工业检测和自动控制领域,而生产过程中长期以来由人眼起主导作用的颜色识别工作将越来越多地被相应的颜色传感器所替代。目前的颜色传感器通常是在独立的光电二极管上覆盖经过修正的红、绿、篮滤光片,然后对输出信号进行相应的处理,才能将颜色信号识别出来;有的将两者集合起来,但是输出模拟信号,需要一个a/d 电路进行采样,对该信号进一步处理,
3、才能进行识别, 增加了电路的复杂性, 并且存在较大的识别误差, 影响了识别的效果。而tcs3200颜色传感器是美国taos公司生产的一种可编程并且能实现彩色光到频率转换的转换器,比市面上见到的光转电压颜色检测仪器在性能上有更多的优势。 tcs3200 它对光的动态响应范围大,标准输出频率范围为2hz500khz,tcs3200有两个可编程的弓|脚,使用者可以对100%、 20%、 2%或者是动力关闭模块的输出量程进行选择使用。tcs3200在不需要dcs系统的情况下,给每个彩色通道至少能提供10字节的分辨。tcs3200可以用于彩色打印机、医疗诊断、 led 检测、液体颜色识别、电脑彩色监控标
4、准、颜色产品加工控制、和油漆、纺织品、化装品及打印材料的彩色搭配等颜色检测产品。1.2 课设要求此次课程设计是以色彩识别系统设计为目的,采用 at89s51 单片机为核心,利用tcs3200 颜色传感器和lcd1602 建立起来的。文中给出整个系统的设计思路,包括,根据对三原色的感应原理和tcs3200颜色传感器识别颜色的原理的分析,设计出一个合适的可行的实验环境。其次,利用 tcs3200 颜色传感器,在合适的环境下,对被测物体进行检测,将测得的数据进行a/d 转换,转化成数字量。最后,将转化后的数字量送到 at89s51单片机进行处理,得到被测物体所包含的 rgb 三原色的颜色值,之后利用
5、 lcd1602 显示 出来。2 方案设计本次设计的要求包括硬件电路设计和软件编程的设计。由颜色识别与检测原理可知,设计硬件电路可包括单片机控制电路、 tcs32000 颜色采集、 lcd 显示三个部分,进而实现颜色的检测识别模式及rgb 值。软件编程设计方面,通过c 语言设定不同的 i/o 口驱动显示,在基本r、 g、 b 三基色的基础上设定不同的频率范围来鉴别不同的颜色,可采用定时器0 的工作方式1 和计数器 0 的计数方式1 进行定时计数特定时间内的脉冲数目来实现。通过单片机动态扫描显示rgb的值和检测颜色的模式。这样就可完成了颜色检测系统的设计。3实验论述3.1at89s52单片机简介
6、本系统采用atmel公司生产的at89s52单片机作为微处理器。at89s52与mcs-51 系列单片机完全兼容,它采用静态时钟方式,可以大大节省耗电量。at89s52是一个低电压,高性能cmos 8位单片机,片内含8k bytes的可反复擦写的flash只读程序存储器和 256 bytes的随机存取数据存储器(ram),功能强大的at89s52单片机已经应用于较复杂的 系统控制场合。at89s52有40个弓|脚,32个外部双向输入/输出(i/o)端口,同时内含2 个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,at89s52 可按照常规方法进行编程,亦可在线编程。
7、其将通用之微处理器及flash存储器结合,特别是可反复擦写的flash存储器可有效降低开发成本。at89c52及at89s52之别,在于 c及s, c表示需用并行编程器下载(接线多且复杂),s表示可支持isp下载,可在89s52 系统板上面预留isp下载接口,at89s52引脚如图3.1所示,实物图如图3.2。,1234567e9101112】3141516171815200 1.2.34-5.6.71 pppppp.pprst/vpd p3.0/rxd p3 irrxd p3.2jffnt0 p3.3/mtl p3 4/to p3 5/t1 p恒 p3.s/rdxtal1xtal2 vs?v
8、cc pol pq.l pc.2 p0.3 p0 4 p0.5 po.s _p0.7 ea/vpp alejpr psen p2.7 p2.6 p2.5 p2 4 p2.3 p2 2 p2 1 p2 q4039翦37克34333237302928亘2624 力 菱 2t图3.1 s52 单片机管脚图图3.2 s52 单片机实物图3.1.1 at89s52的主要性能和参数(1)与mcs-51单片机完全兼容的指令和引脚排列以及工作特性。(2)片内程序存储器内含8k可重复擦写的flash程序存储器。(3)片内数据存储器内含256字节的ram。(4) 3个可编程的16位计数器(定时器)和32个可编程i
9、/o 口线。(5)用行口是具有一个全双工的可编程的串行通信口。(6)中断系统是具有8个中断源、6个中断矢量、2个优先权的中断机构(7)低功耗模式有空闲模式和掉电模式。(8)编程频率是3-24mh,编程启动电流是1ma。(9) at89s52的工作电压为5v。3.1.2 at89s52的主要功能p0 口 一 一 8位漏极开路之双向i/o 口。作为输出口,每位能驱动 8个ttl逻辑电平。 对p0端口写“1”时,引脚用作高阻抗输入。访问外部程序和数据存储器时,p0 口亦被作为低8位地址/数据复用。在这种模式下,p0不具有内部上拉电阻。在flash编程时,p0 口亦用来接收指令字节;在程序校验时,输出
10、指令字节。程序校验时,需外部上拉电阻。p1 有内部上拉电阻的8位双向i/o 口,p1输出缓冲器能驱动4个ttl逻辑 电平。对p1端口写“1”时,内部上拉电阻把端口拉高,此时可作输入口用。作为输入使 用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil)。对p1端口写“1”时, 内部上拉电阻把端口拉高,此时可作输入口用。作输入用时,被外部拉低的引脚因内部电 阻,将输出电流(iil)。此外,p1.0及p1.2分别作定时器/计数器2之外部计数输入(p1.0/t2) 及时器/计数器2之触发输入(p1.1/t2ex),详见表3.1所示。在flash编程及校验时,p1 口接收低8位地址字节。表3.
11、1 p1 口的第二功能引脚号第二功能p10 t2 (定时器/计数器t2的外部计数输入),时钟输出p1.1t2ex (定日寸器/计数器t2的捕捉/重载触发信号和方向控制)p1.5mosi (在系统编程用)p1.6miso (在系统编程用)p1.7sck (在系统编程用)p2 有内部上拉电阻的8位双向i/o 口,p2输出缓冲器能驱动4个ttl逻辑电 平。对p2端口写“1”时,内部上拉电阻把端口拉高,此时可作输入口。作输入用时,被 外部拉低的引脚因内部电阻,将输出电流(iil)。在访问外部程序存储器或用16位地址 读取外部数据存储器(例如执行 movx dptr)时,p2 口送出高八位地址。在这种应
12、 用中,p2 口用很强的内部上拉发送1。在用8位地址(如movx ri)访问外部数据存 储器时,p2 口输出p2锁存器之内容。在flash编程及校验时,p2 口亦接收高8位地址 字节及一些控制信号。p3有内部上拉电阻的8位双向i/o 口,p3输出缓冲器能驱动4个ttl逻辑电 平。对p3端口写“1”时,内部上拉电阻把端口拉高,此时可用作输入口。作输入用时,被外部拉低的引脚因内部电阻之原因,将输出电流(iil)。p3 口亦作为at89s52特殊功能(第二功能)用,如表3.2所示。在flash编程及校验时,p3 口亦接收些控制信号。此 外,p3 口亦接收些用于flash闪存编程及程序校验的控制信号。
13、表3.2 p3 口的第二功能第二功能引脚p3.0rxd(串行输入口)p3.4to(定时/计数器0)p3.1txd(串行输出口)p3.5t1(定时/计数器1)p3.2into(外中断0)p3.6wr,卜部数据存储器写选通)p3.3int1(外中断1)p3.7rd(外部数据存储器读选通)rst复位输入。振荡器工作时,rst引脚有两个机器周期以上高电平将是单片机 复位。ale/prog 访问外部程序存储器或数据存储器时,ale (地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般,ale仍以时钟振荡频率的1/6输出固定之脉冲信号, 故它可对外输出时钟或用于定时目的。需注意:每当访问外部数据存储器时
14、将跳过一个 ale脉冲。对flash存储器编程期间,该引脚亦用于输入编程脉冲(prog)。若必要, 可通过对特殊功能寄存器(sfr)区中的8eh单元的d0位置位,可禁止ale操作。该位 置位后,只有一条movx及movc指令方能将ale激活。止匕外,该引脚会被微弱拉高, 单片机执行外部程序时,应设置 ale禁止位无效。psen程序储存允许(psen)输出是外部程序存储器之读选通信号,at89s52由外部程序存储器取指令(或数据)时,每个机器周期两次psen有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次 psen信号。ea/vpp外部访问允许,要 cpu仅访问外部程序存储器(地
15、址为 0000h-ffffh), ea端须保持低电平(接地)。需注意:若加密位lb1被编程,复位时内部会锁存ea端状 态。若ea端为高电平(接vcc端),cpu则执行内部程序存储器之指令。flash存储器编程时,该引脚加上+12v的编程允许电源vpp,当然这须是该器件是 使用12v编程电压vpp。xtal1 振荡器反相放大器及内部时钟发生电路之输入端xtal2 振荡器反相放大器之输出端3.2 传感器 tcs3200 3.2.1tcs3200芯片的结构框图与特点:tcs3200是taos公司推出的可编程彩色光到频率的转换器。它把可配置的硅光电二极管与电流频率转换器集成在一个单一的 cmos电路上
16、,同时在单一芯片上集成了红绿蓝 (rgb)三种滤光器,是业界第一个有数字兼容接口的 rgb彩色传感器。tcs3200的输出信 号是数字量,可以驱动标准的 ttl或cmos逻辑输入,因此可直接与微处理器或其他逻 辑电路相连接。由于输出的是数字量,并且能够实现每个彩色信道10位以上的转换精度,因而不再需要a/d转换电路,使电路变得更简单。图1是tcs230的引脚和功能框图。图3.1中,tcs3200采用8引脚的soic表面贴装式封装,在单一芯片上集成有 64个 光电二极管。这些二极管共分为四种类型。其中 16个光电二极管带有红色滤波器;16个 光电二极管带有绿色滤波器;16个光电二极管带有蓝色滤波
17、器;其余 16个不带有任何滤 波器,可以透过全部的光信息。这些光电二极管在芯片内是交叉排列的,能够最大限度地 减少入射光辐射的不均匀性,从而增加颜色识别的精确度;另一方面,相同颜色的 16个 光电二极管是并联连接的,均匀分布在二极管阵列中,可以消除颜色的位置误差。工作时, 通过两个可编程的引脚来动态选择所需要的滤波器。该传感器的典型输出频率范围从2hz500 khz,用户还可以通过两个可编程引脚来选择 100%、20%或2%的输出比例因子, 或电源关断模式。输出比例因子使传感器的输出能够适应不同的测量范围,提高了它的适 应能力。例如,当使用低速的频率计数器时,就可以选择小的定标值,使 tcs3
18、200的输出 频率和计数器相匹配。从图3.1可知:当入射光投射到tcs3200上时,通过光电二极管控制引脚 s2、s3的 不同组合,可以选择不同的滤波器;经过电流到频率转换器后输出不同频率的方波 (占空比s0、s1,是50%),不同的颜色和光强对应不同频率的方波;还可以通过输出定标控制引脚 选择不同的输出比例因子,对输出频率范围进行调整,以适应不同的需求。图3.1tcs3200的引脚和功能框图卜面简要介绍tcs3200芯片各个引脚的功能及它的一些组合选项s0、s1用于选择输出比例因子或电源关断模式;s2、s3用于选择滤波器的类型;oe是频率输出使能引脚,可以控制输出的状态,当有多个芯片引脚共用
19、微处理器的输入引脚 时,也可以作为片选信号;out是频率输出引脚,gnd是芯片的接地引脚,vcc为芯片 提供工作电压。表3-1是s0、s1及s2、s3的可用组合。s0s1输出频率定标s2s3ll关断电源ll红色lh2%lh蓝色hl20%hl无hh100%hh绿色表3-1s0、s1及s2、s3的组合选项tcs320(rt部原理图3.2.2 tcs3200识别原理1).色彩空间通常所看到的物体的颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。任何一种颜色都可以用三种 基本颜色按照不同的比例混合得到。这里介绍一种最典型的颜色模型,即r
20、gb模型。如图3.2.1所示,在这个颜色模型中,3 个轴分别为r、g、b。原点对应的为黑色(0, 0, 0),离原点最远的顶点对应白色(255, 255, 255 由黑到白的灰度分布在从原点到最远顶点间的连线上,正方体的其他六个角点分别为红、黄、绿、青、蓝、和品红。需要注意的一点是 ,rgb颜色模型所覆盖的颜色域取决于显示 设备因光电的颜色特性。每一种颜色都有唯一的rgb值与它对应。4俄 mr图3.2.1 rgb颜色模型2), tcs230识别颜色的原理由三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物 体的颜色。对于tcs230来说,当选定一个颜色滤波器时,它只允许某
21、种特定的原色通过, 阻止其他原色的通过。例如:当选择红色滤波器时,入射光中只有红色可以通过,蓝色和 绿色都被阻止,这样就可以得到红色光的光强;同理,选择其他的滤波器,就可以得到蓝 色光和绿色光的光强。通过这三个值,就可以分析投射到tcs230传感器上的光的颜色3),白平衡算法颜色实际就是物体对光的反射或投射而表现出来在人眼中的反映,而tcs3200就是通过分别检测一种颜色反映出来的光的红、绿、蓝分量 ,通过把光强线性转换为频率信号, 量化出r、g、b值,从而计算出颜色。值得注意的是,不同的光线通过物体反映出来的光 强是不同的,而且非标准白光(rgb三者不相等)在物体上反映出来的光强分量也是不同
22、 的。为解决这个问题,就要进行白平衡,即首先测量出基准光源的 rgb光强值,再测量出 在标准光源下物体所反映出的光强值,两者之比就是物体的反射(或透射)性质,即物体的实 际颜色,如公式(1), (2), (3)。r=p物红/p源红(1)g=pt1绿/p 源绿(2)b=p物蓝/p源蓝(3)由于在rgb坐标下的颜色标准坐标为 0-255之间,所以把所得结果乘以 255,即得至i 标准的rgb值。透明物体直接测量光源的光强-频率值,不透明物体需要用白纸测量反射 光源。在实际运用中,对于tcs230的光传感器来说,这里有两种方法来计算调整参数: 依次选通三种颜色的滤波器,然后对 tcs230的输出脉冲
23、依次进行计数。当计数到 255时停 止计数,分别计算每个通道所用的时间。这些时间对应于实际测试时tcs230每种滤波器所采用的时间基准,在这段时间内所测得的脉冲数就是所对应的r、g和b的值。 设置定时器为一固定时间(例如10 ms),然后选通三种颜色的滤波器,计算这段时间内tcs230 的输出脉冲数,计算出一个比例因子,通过这个比例因子可以把这些脉冲数变为255。在实际测试时,使用同样的时间进行计数,把测得的脉冲数再乘以求得的比例因子,然后就 可以得到所对应的r、g和b的值。3.3 传感器与单片机连接tcs3200是taos公司推出的可编程彩色光到频率的转换器,该传感器具有分辨率高、 可变成的
24、颜色选择与输出定标、单电源供电等特点;输出为数字量,可直接与微处理器连 接。图3.3.1中用89c51的p1 口的几个引脚来控制tcs230的各个引脚,而tcs230的输 出引脚连接到89c51的定时器/计数器1的输入端(p35)。设置89c51定时器/计数器为相应 的工作方式,初始化89c51定时器为一个定值,再选择 tcs3200的输出比例因子,并使 能输出引脚。实际使用中,通过读取 89c51计数器的值,就可以分别计算出 tcs3200的3 种输出频率,进而确定r、g、b值及颜色。相应的软件流程如图 3.3.2所示。sos3s1s2oeoutgndvcctsc3200vcc10 tt u
25、 亘 7715171819rst/vpd p3,0,rxd p3,ltxd p3j.int0 p3,3.tktt p3 4/t0 p3,5e p3e迎 p3.7/rdxtal1 xyal2 vssvcc po.o p0.1 p0.2 p0,3 p0.4 pg* p0.6 _p0.7 ea/vpg ale/p psenp2.7p2.6 p2.5 p2,4 p13 p12 p2j p2,040 亘 3837至更343332 jt3029282726-1i1iiii1iii_iiiiii iiii1i:1ii-图3.3.1tcs230颜色识别接口电路在程序流程中:系统初始化负责设置89c51的定时器
26、/计数器的工作方式,选才 tcs230 的输出比例因子,使能输出引脚以及通信参数的设置。初始化完成后,检测是否需要进行20白平衡调整。如有,调整白平衡子程序;否则,转到下一步,检测是否需要进行颜色识别如不需要颜色识别,返回;如需要颜色识别,调用颜色识别子程序,直到颜色识别完毕图3.3.2软件流程3.4 lcd1602 模块3.4.1 液晶显示器简介液晶显示器简称lcd显示器,它是利用液晶经过处理后能改变光线的传输方向的特 性显示信息的。液晶显示器具有体积小、重量轻、功耗极低、显示内容丰富等特点,在单 片机应用系统中得到了日益广泛的应用。目前市场上常用的有16字*1行、16字*2行、20字*2行
27、和40字*2行等的字符液晶 显示模块。这些lcm虽然显示字符数各不相同,但是都具有相同的输入输出界面。此次 课设使用的是16*2字符型液晶显示模块ca1602a。ca1602a采用标准的16脚接口,各引脚情况如下:第1脚:vss,电源地第2脚:vcc, +5v电源第3脚:vo,液晶显示偏压信号第4脚:rs,数据/命令选择端,高电平时选择数据寄存器,低电平时选择指令寄存 器。rs为低电平rw为高电平时可以读第5脚:rw:读/写选择端,高电平时进行读操作,低电平时进行写操作。但 rs和 rw共同为低电平时可以写入指令或者显示地址;当忙信号;当rs为高电平rw为低电平时可以写入数据。第6脚:e,使能
28、端,当e端由高电平跳变成低电平时,液晶模块执行命令。第7-14脚:d0-d7,为8位双向数据线。第15脚:a,背光源正极第16脚:k,背光源负极3.4.2 指令格式与指令功能总共有11条指令,它们的格式和功能如下表 3.4 :指令rsrwd7d6 d5d4d3d2d1d01清显示00000000012光标返回00000000013置输入模式00000001i/d04显示开/关控制0000001dcs5光标或字符移位000001s/cr/l*b6置功能00001dlnf*7置字符发生存储器地址0001字符发生存储器地址8置数据发生存储器地址001显示数据发生存储器地址9读忙标志或地址01bf计数
29、器地址10写数至u cgra喊ddram10要写的数据内容11从cgra喊ddra谶数11读出的数据内容表3.4控制命令表3.4.3 lcd显示器的初始化lcd使用之前须对它进行初始化,初始化可以通过复位完成,也可以在复位后完成, 初始化过程如下:1) .清屏。2) .功能设置。3) .开/关显示设置。4) .输入方式设置。3.4.4 硬件电路连接在本设计中,1602显示器与单片机的连接如下:vss管脚接地,vdd管脚接+5v电源,vo管脚通过3.3k电阻接地,rs管脚接p2.0管脚,rw管脚接p2.1管脚,e管脚接p2.3 管脚,d0-d7管脚依次接p0.0-p0.7管脚,a管脚接+5v电源
30、,k管脚接地。p0 口是一个三态双向口,可作为地址/数据分时复用接口,也可作为通用的i/o接口。 它由一个输出锁存器、两个三态缓冲器、输出驱动电路和输出控制电路组成。p0 口作为i/o 口输出的时候时 输出低电平为0输出高电平为高组态(并非 5v,相当于悬空状态)。也 就是说p0 口不能真正的输出高电平,给所接的负载提供电流,因此必须接上拉电阻(一 电阻连接到vcc),由电源通过这个上拉电阻给负载提供电流。p2 口也是准双向口,它有两种用途:通用 i/o接口和高8位地址线。与p1 口相比, 它只在输出驱动电路上比p1 口多了一个模拟转换开关 mux和反相器。lcd1602与52单片机的具体连接
31、方式如图3.4.4所示:plqpl.lp1.3pl.4plspl.6pl.7rstvpdp3,crxd1 t:ldp53ttmp3.4 top3.5t1_p3.6 wr 门函xtal1xyal2vm、工?! /- r.-l fa r-l 2 一-! ppp p p p p p3vcc36353c393e3图3.4.4 lcd1602与单片机的具体连接图w.0.l,2.-3q.56.7,g 庐 tmpopflpopcpopo声v.e瓦allcd 16024n3.4.5 lcd1602液晶显示模块软件设计本设计的lcd1602液晶显示模块主要是利用比较经典的lcd显示方法来进行设计的,即字符串的方
32、式进行输出显示。流程图如图3.4.5所示。显示模块流程图图 3.4.5 lcd16023.5 系统结构图色彩识别系统是基于mcs-51系列单片机控制的基础上,添加了 tcs230颜色传感器 采集模块,tcs230驱动模块,四个白色led补光模块,lcd1602液晶显示模块,在这些 模块的基础上实现的色彩识别系统,色彩识别系统的设计如图3.5.1系统框架所示。电路图如3.5.2所示。图3.5.1系统框架图3.5.2系统电路图隘gsg?需3 .4j.6.7t.q-j -.2,34.w1.6ja-a l l l l 幻*rj a-j 立f3.丸工 1 口 ?节?pk fppxkvx】pc.24颜色识
33、别系统测试4.1 色彩识别的测试过程事物是随时间变化而运动变化的,由于本系统对软硬件关联性要求很高,其整个实验 过程中间变化过程很复杂,一般仿真无法实现。本设计的测试过程很简单,具体操作如下:首先将开发板接通电源,将色彩纸板放平, 其次把设计中的颜色采集模块放在待测的纸板上,放正放平,最后用隔光较好的纸张或者 盒子将颜色采集模块遮盖起来,然后用笔记录lcd显示的值,依次测量不同颜色的纸板并记录数据即可。4.2 颜色检测中的误差物体颜色信息十分广泛,颜色的确定需要色调、明度和饱和度三大要素或三原色(红绿 蓝)的刺激值。影响颜色检测准确度的参数主要有 :照射光、物体反射、光源方位、观测方 位和传感
34、器性能等,任何一个参数发生变化都会导致观察到的颜色发生变化。(1)光源的影响照射光包含有太阳光和外界杂散光,太阳照射角度、云层厚度和其它天气条件都会导致 照射光发生变化,从而导致被测物体颜色发生变化。(2)光源方位和观测方位的影响光源方位,也就是被测物体指向光源的法线方向,它决定了有多少太阳光或外界杂散光 作为入射光。观测方位是指被测物体指向传感器的法线方向,它决定了反射到传感器中的光 强。(3)被测物表面反射状况的影响传感器探头与被测物之间的距离影响着输出信号,可能会造成不同颜色信号的交叉,形 成测量误差,所以存在某一最佳距离又t输出特性影响最小 ,以保证颜色与输出信号的一一对 应关系。被测
35、物表面的较明显凹凸区域也会给输出信号带来较大的误差。误一差结果实验次数rgb光照强 度光强a次10112192第二次9811689光 弱a次465653第二次385840方位影响正方向a次2484238第二次2553442侧方向a次1438696第二次12396102表面 反射影响反射强a次12393104第二次11310696反射弱a次665246第二次5461484.3 测试结果分析通过上面的测试结果可以看出,如果被测物体的颜色中,红色成分比较多,那么在显示的输出结果中的r的值就大;同样的,如果绿色成分多,输出结果中的 g的值就大,如 果蓝色成分多,输出结果中的b的值就大。表格最后一列给出
36、了这些颜色值对应的色彩图 像,而表格的第一列给出了标准的色彩图像,可以看出,实际测得值与标准值之间还存在着一定的误差,这些误差产生的原因有很多,其中之一就是外界干扰光的存在,其次因为传感器芯片对光的敏感性不同, 此外可能的原因包括补光模块中的 led 二极管发出的光不稳定,还可能因为物体对光的反射能力不同等等,所有的这些原因导致了在测量的过程中存在的误差在所难免,只有不断的改善,以达到减小误差的目的,所以本系统还有待更进一步的研究以改善整个系统。通过系统测试,验证了色彩识别系统的可行性,通过对纯白色、纯绿色、纯蓝色三个纸板的检测,验证了本系统的确可以完成预期的任务,实现系统功能,但是与其真实值
37、之间还有一定的误差,这也是本系统的不完善之处,这也为以后的更完善的功能更强大的精确度更高的色彩识别系统打了一个结实的基础,为以后更好的完善和简化色彩识别系统做下了铺垫。5 课设总结这次课设我们就色彩识别系统的原理及实现做了研究。现将本论文所做的主要工作内容总结如下 :(1) 建立颜色识别系统的模型,推算出颜色识别的算法。(2) 介绍单片机等主要模块的功能及优势。(3) 对系统进行整体的软硬件设计。(4)编写程序计算rgb 三种颜色值, 然后进行测试实验,以验证论文中结论的准确性。总的来说,本论文是以 at89s52 单片机为基础,利用 tcs3200 颜色传感器模块,lcd1602 液晶显示模
38、块实现色彩识别系统的设计,并进行了色彩识别的测试实验。其中,色彩识别的算法实现原理和各模块的实现是其中的重点。心得体会:通过本次的课程设计我们发现了很多不足,不论是理论知识方面还是实践方面都有一些问题。我们从态度上应该积极向上,主动发现问题并且解决问题,克制遇到问题就气馁的坏习惯。而在理论的的知识方面,我们拥有编写代码的能力,但是却没有模块化的编写过程序,导致开始编写的时候代码混淆不清。在硬件电路的焊接中,虽然电路比较小,但是还是忽略了一些细节,或者因为线有些乱而接错了接口并且没有更好的布局。在制作或者设计中的时候我们总会犯各种各样的小错误, 比如布局, 接线, 测设等等。但是总的来说还是还是
39、学到了一些东西并且最终完成了课设。在此也多些老师的指导和培养,才让我们更快更好的完成设参考文献1 李朝青 . 单片机原理及接口技术m. 北京航空航天大学出版社, 2000.2杨家国.单片机原理与应用及s52程序设计j.电子报,2009.3张松灿,肖本贤.高分辨率颜色传感器tcs3200fl勺原理和应用d.合肥工业大学.2005.4卢川英,于浩成,孙敬辉,孟中.基于tcs3200传感器的颜色检测系统j.吉林大 学学报 .2008.11.5胡建民.颜色传感器tcs320吸颜色识别电路eb/ol.附录 1 程序代码#include#include#include#include#define uch
40、ar unsigned char#define uint unsigned int#define dataport p0sbitlcm_rs=p2a0;sbitlcm_rw=p2a1;sbitlcm_en=p2a2;sbit s2=p1a1;sbit s3=p1a0;sbit test_pin=p1a2;uchar ge,shi,bai ;uchar rp=2,gp=2,bp=2;uchar count;uchar disp_r3;uchar disp_g3;uchar disp_b3;voiddelay(unsigned int k);voidinitlcd();voidwritedatal
41、cm(uchar dataw);voidwritecommandlcm(uchar cmd,uchar attribc);voiddisplayonechar(uchar x,uchar y,uchar ddata);void initlcd() writecommandlcm(0x38,0);writecommandlcm(0x38,1);writecommandlcm(0x08,1);writecommandlcm(0x01,1);writecommandlcm(0x06,1);writecommandlcm(0x0f,1);void waitforenable(void)dataport=0xff;lcm_rs=0;lcm_rw=1;_nop_();lcm_en=1;_nop_();_nop_();while(dataport&0x80);lcm_en=0;void writecommandlcm(uchar cmd,uchar attribc)if(attribc)waitforenable();lcm_rs=0;lcm_rw=0;_nop_();dataport=cmd;_nop_();lcm_en=1;_nop_();_nop_();lcm_en=0;void writedatalcm(uchar dataw)wait
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 食品卫生安全检测技术进展
- 策划大寒节气活动模板
- 财务月报解读模板
- 硕士生导师训练模板
- 圣诞新媒体运营报告模板
- 学生会总结大会主持稿
- 统编版五年级语文上册寒假作业(三)(有答案)
- 河北省唐山市2024-2025学年七年级上学期1月期末考试生物试卷(含答案)
- 二零二五年度教育资源共享平台合作合同2篇
- 二零二五年度智能仓储系统安装与物流管理协议3篇
- 2023年保安公司副总经理年终总结 保安公司分公司经理年终总结(5篇)
- 中国华能集团公司风力发电场运行导则(马晋辉20231.1.13)
- 中考语文非连续性文本阅读10篇专项练习及答案
- 2022-2023学年度六年级数学(上册)寒假作业【每日一练】
- 法人不承担责任协议书(3篇)
- 电工工具报价单
- 反歧视程序文件
- 油气藏类型、典型的相图特征和识别实例
- 流体静力学课件
- 顾客忠诚度论文
- 实验室安全检查自查表
评论
0/150
提交评论