




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-简易光谱分析仪的设计【摘要】:随着现代工业生产向高速化、自动化方向的发展,生产过程中长期以来由人眼起主导作用的颜色识别工作将越来越多地被相应的颜色传感器所替代。例如:图书馆使用颜色区分对文献进行分类,能够极大地提高排架管理和统计等工作;在包装行业,产生包装利用不同的颜色和装潢来表示其不同的性质或用途等。颜色的检测和识别,给生产生活带来了极大的便利。本论文首先介绍不同颜色识别技术,利用三原色的感应原理以及TCS3200识别颜色的原理,实现TCS3200颜色传感器测量颜色的功能,并对所测得的数据进行处理,转换成RGB三种颜色光数值,通过LCD将经过处理后的数据显示出来。最后在此理论基础上设计了系统的总体方案,通过硬件实现了系统功能。相关部分附有硬件电路图、程序流程图。本设计具有体积小、成本低、功能强等特点。【关键词】:传感器;单片机;光谱;-i-Abstract:Withthespeedofmodernindustrialproduction,developmentofautomationdirection,theproductionprocesshaslongplayedaleadingrolebythehumaneyecoloridentificationworkwillincreasinglybereplacedbythecorrespondingcolorsensor.Forexample:libraryusecolor-codedclassificationoftheliterature,cangreatlyimprovethemanagementandstatisticalbent,etc.;inthepackagingindustry,packagingproducedusingdifferentcolorsanddecoratedtorepresenttheirdifferentpropertiesoruses.Colordetectionandidentification,toproducelifehasbroughtgreatconvenience.ThispaperillustratedhowtorecognizecolorbyusingaTCS3200Color-Sensor.Inthebeginning,thepaperreavealeddifferentkindsofcolor-recognitiontechnology.UndertheinductionprincipleofthreeprimarycolorsandtheoperatingprincipleofaTCS3200Color-Sensor,thecolor-recognitionfunctionofthisdevicewaspracticed.Secondly,thispaperanalyzedthedataandconverteditintothelightfiguresofRGBcolorafterwards.Subsequently,theprocesseddatawasdisplayedthroughaLCD.Andinthethirdpart,theoverallprojectwasdesignedbasedontheabove-mentionedtheories.Andwiththehelpofhardwares,theprojectwasfinallyputintopractice.Additionally,relavanthardwarecircuitdigramsandfollowchartswerealsodemonstratedinthispaper.Themainfeaturesofthisdesignaresmallvolume,lowcostandstrongfunction.Keywords:Sensors;SCM;spectrum;-ii-目录前言.2第1章系统模块及其原理简介.3第1.1节系统结构框图.3第1.2节单片机介绍.3第1.3节光传感器介绍.6第1.4节三原色感应原理.8第1.5节LCD1602简介.9第2章系统分析.10第2.1节系统原理分析.10第2.2节系统结构分析.10第3章系统设计.11第3.1节硬件设计.11第3.2节软件设计.12第4章系统测试.19第4.1节实验数据.19第4.2节实验结果.19结论.20参考文献.21致谢.22附录.23附录1:实物照片.23附录2:部分源程序.25第0页前言在现代科研和生产中,光谱仪器是最基本的仪器设备。在工业生产中,光谱分析成为了不可或缺的检测和分析手段。随着电子技术的发展,色光检测在生产生活中的运用已经产生了很大的经济效益。对可见光的钻探国内外有很多的集成方案,目前的传感器通常是在独立的PIN二极管上覆盖经过修正的红、绿、蓝滤波片,然后对输出信号进行相应的处理,将颜色信号识别出来。本论文设计采用TAOS公司最新推出的颜色传感器TCS3200,TCS3200是TAOS公司推出的可编程彩色光到频率的转换器,它把可配置的硅光电二极管与电流频率转换器集成在一个单一的CMOS电路上,同时在同一块芯片上集成了红绿蓝(RGB)三种滤波器,是业界第一个有数字兼容接口的RGB彩色传感器,TCS3200传感器的输出信号是数字信号,可直接与微处理器相连接,可以实现微处理器控制TCS3200传感器。因为输出的信号直接是数字量,并且能够实现每个彩色信道10位以上的转换精度,所以不需要更多的A/D转换电路,电路更简单。第1页第1章系统模块及其原理简介第1.1节系统结构框图本系统是基于STC89C52单片机控制的基础上,添加了TCS3200颜色传感器采集模块,TCS3200驱动模块,四个白色LED补光模块,LCD1602液晶显示模块,在这些模块的基础上实现的颜色识别系统。具体框图如下图1-1:图1-1颜色识别系统框图第1.2节单片机介绍1.2.1.STC89C52硬件概述STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,这个性能使得STC89C52单片机成为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。另外STC89c52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。第2页EA/VP31X98RSTD7W6IN045LGCU图1-2STC89C52单片机管脚图P0口8位漏极开路之双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。访问外部程序和数据存储器时,P0口亦被作为低8位地址/数据复用。在这种模式下,P0不具有内部上拉电阻。在FLASH编程时,P0口亦用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需外部上拉电阻。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),详见表1-1所示。在flash编程及校验时,P1口接收低8位地址字节。表1-1P1口的第二功能引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)第3页P1.7SCK(在系统编程用)P2口有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可作输入口。作输入用时,被外部拉低的引脚因内部电阻,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVXDPTR)时,P2口送出高八位地址。在这种应用中,P2口用很强的内部上拉发送1。在用8位地址(如MOVXRI)访问外部数据存储器时,P2口输出P2锁存器之内容。在FLASH编程及校验时,P2口亦接收高8位地址字节及一些控制信号。P3口有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可用作输入口。作输入用时,被外部拉低的引脚因内部电阻之原因,将输出电流(IIL)。P3口亦作为STC89C52特殊功能(第二功能)用,如表1-2所示。在FLASH编程及校验时,P3口亦接收些控制信号。此外,P3口亦接收些用于FLASH闪存编程及程序校验的控制信号。表1-2P3口的第二功能引脚第二功能引脚第二功能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输出固定之脉冲信号,故它可对外输出时钟或用于定时目的。需注意:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚亦用于输入编程脉冲(PROG)。若必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX及MOVC指令方能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN程序储存允许(PSEN)输出是外部程序存储器之读选通信号,STC89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。第4页EA/VPP外部访问允许,要CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端须保持低电平(接地)。需注意:若加密位LB1被编程,复位时内部会锁存EA端状态。若EA端为高电平(接Vcc端),CPU则执行内部程序存储器之指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这须是该器件是使用12V编程电压Vpp。XTAL1振荡器反相放大器及内部时钟发生电路之输入端。XTAL2振荡器反相放大器之输出端。第1.3节光传感器介绍TCS3200D传感器有红绿蓝和清除4种滤光器,可以通过其引脚S2和S3的高低电平来选择滤波器模式,TCS3200D有可编程的彩色光到电信号频率的转换器,当被测物体反射光的红、绿、蓝三色光线分别透过相应滤波器到达TAOSTCS3200RGB感应芯片时,其内置的振荡器会输出方波,方波频率与所感应的光强成比例关系,光线越强,内置的振荡器方波频率越高。TCS3200传感器有一个OUT引脚,它输出信号的频率与内置振荡器的频率也成比例关系,它们的比率因子可以靠其引脚S0和S1的高低电平来选择,图1-2是TCS3200的引脚和功能框图。图1-3色光传感器模块TCS3200采用8引脚的SOIC表面贴装式封装,在单一芯片上集成有64个光电二极管,这些二极管分为四种类型,其16个光电二极管带有红色滤波器;16个光电二极管带有绿色滤波器;16个光电二极管带有蓝色滤波器,其余16个不带有任何滤波器,可以透过全部的光信息,这些光电二极管在芯片内是交叉排列的,能够最大限度地减少入射光辐射的不均匀性,从而增加颜色识别的精确度;另一方面,相同颜色的16个光电二极管是并联连接的,均匀分布在二极管阵列中,可以消除颜色的位置误差。工作时,通过两个可编程的引脚来动态选择所需要的滤波器,该传感器的典型输出频率范围从第5页2Hz500kHz,用户还可以通过两个可编程引脚来选择100、20或2的输出比例因子,或电源关断模式。输出比例因子使传感器的输出能够适应不同的测量范围,提高了它的适应能力。例如,当使用低速的频率计数器时,就可以选择小的定标值,使TCS3200的输出频率和计数器相匹配。图1-4光电二极管的光谱响应从图1-5及表1-3可知:当入射光投射到TCS3200上时,通过光电二极管控制引脚S2、S3的不同组合,可以选择不同的滤波器;经过电流到频率转换器后输出不同频率的方波(占空比是50),不同的颜色和光强对应不同频率的方波;还可以通过输出定标控制引脚S0、S1,选择不同的输出比例因子,对输出频率范围进行调整,以适应不同的需求。下面简要介绍TCS3200芯片各个引脚的功能及它的一些组合选项。S0、S1用于选择输出比例因子或电源关断模式;S2、S3用于选择滤波器的类型;OE反是频率输出使能引脚,可以控制输出的状态,当有多个芯片引脚共用微处理器的输出引脚时,也可以作为片选信号,OUT是频率输出引脚,GND是芯片的接地引脚,VCC为芯片提供工作电压,表3.3是S0、S1及S2、S3的可用组合。第6页图1-5TCS3200的引脚和功能图表1-3S0、S1及S2、S3的组合选项S0S1输出频率定标S2S3滤波器类型LL关断电源LL红色LH2%LH蓝色HL20%HL无HH100%HH绿色第1.4节三原色感应原理由上面的介绍可知,这种可编程的彩色光到频率转换器适合于色度计测量应用领域,如彩色打印、医疗诊断、计算机彩色监视器校准以及油漆、纺织品、化妆品和印刷材料的过程控制和色彩配合。下面以TCS3200在液体颜色识别中的应用为例,介绍它的具体使用。首先了解一些光与颜色的知识。1.4.1.三原色的感应原理通常所看到的物体颜色,实际上是物体表面吸收了照射到它上面的白光(日光)中的一部分有色成分,而反射出的另一部分有色光在人眼中的反应。白色是由各种频率的可见光混合在一起构成的,也就是说白光中包含着各种颜色的色光(如红R、黄Y、绿G、青V、蓝B、紫P)。根据德国物理学家赫姆霍兹(Helinholtz)的三原色理论可知,各种颜色是由不同比例的三原色(红、绿、蓝)混合而成的。1.4.2.TCS3200识别颜色的原理由三原色感应原理可知,如果知道构成各种颜色的三原色的值,就能够知道所测试物体的颜色。对于TCS3200来说,当选定一个颜色滤波器时,它只允许某种特定的原色通过,阻止其他原色的通过。例如:当选择红色滤波器时,入射光中只有红色可以通过,蓝色和绿色都被阻止,这样就可以得到红色光的光强;同时,选择其他的滤波器,就可以得到蓝色光和绿色光的光强。通过这三个值,就可以分析投射到TCS3200传感器上的光的颜色。1.4.3.白平衡和颜色识别原理白平衡就是告诉系统什么是白色。从理论上讲,白色是由等量的红色、绿色和蓝色第7页混合而成的;但实际上,白色中的三原色并不完全相等,并且对于TCS3200的光传感器来说,它对这三种基本色的敏感性是不相同的,导致TCS3200的RGB输出并不相等,因此在测试前必须进行白平衡调整,使得TCS3200对所检测的白色中的三原色是相等的。进行白平衡调整是为后续的颜色识别做准备。在本装置中,白平衡调整的具体步骤和方法如下:将空的试管放置在传感器的上方,试管的上方放置一个白色的光源,使入射光能够穿过试管照射到TCS3200上;根据前面所介绍的方法,依次选通红色、绿色和蓝色滤波器,分别测得红色、绿色和蓝色的值,然后就可计算出需要的3个调整参数。当TCS3200识别颜色时,就用这3个参数对所测颜色的R、G和B进行调整。这里有两种方法来计算调整参数:一、依次选通三颜色的滤波器,然后对TCS3200的输出脉冲依次进行计数。当计数到255时停止计数,分别计算每个通道所用的时间,这些时间对应于实际测试时TCS3200每种滤波器所采用的时间基准,在这段时间内所测得的脉冲数就是所对应的R、G和B的值。二、设置定时器为一固定时间(例如10ms),然后选通三种颜色的滤波器,计算这段时间内TCS3200的输出脉冲数,计算出一个比例因子,通过这个比例因子可以把这些脉冲数变为255。在实际测试时,室外同样的时间进行计数,把测得的脉冲数再乘以求得的比例因子,然后就可以得到所对应的R、G和B的值。第1.5节LCD1602简介液晶显示器简称LCD显示器,它是利用液晶经过处理后能改变光线的传输方向的特性显示信息的。液晶显示器具有体积小、重量轻、功耗极低、显示内容丰富等特点,在单片机应用系统中得到了日益广泛的应用。液晶显示器按其功能可分为三类:笔段式液晶显示器、字符点阵式液晶显示器和图形点阵式液晶显示器。前两种可显示数字、字符和符号等,而图形点阵式液晶显示器还可以显示汉字和任意图形,达到图文并茂的效果。字符型液晶显示器模块是一种专门用于显示字母、数字、符号等的点阵式液晶显示模块。它是由若干个5*7或5*11等点阵符位组成的,每一个点阵字符位都可以显示一个字符。点阵字符位之间有一定点距的间隔,这样就起到了字符间距和行距的作用。要使用点阵型LCD显示器,必须有相应的LCD控制器、驱动器来对LCD显示器进行扫描、驱动,以及一定空间的ROM和RAM来存储写入的命令和显示字符的点阵。现在往往将LCD控制器、驱动器、RAM、ROM和LCD显示器连接在一起,称为液晶显示模块LCM。使用时只要向LCM送入相应的命令和数据就可以实现显示所需的信息。目前市场上常用的有16字*1行、16字*2行、20字*2行和40字*2行等的字符液晶第8页显示模块。这些LCM虽然显示字符数各不相同,但是都具有相同的输入输出界面。本文将介绍16*2字符型液晶显示模块CA1602A的应用。第9页第2章系统分析第2.1节系统原理分析系统采用TAOS公司推出的可编程彩色光到频率的转换器TCS3200传感器检测可见光颜色,通过数字接口连接单片机,由单片机控制传感器工作,首先进行白平衡初始化,校准传感器。然后对不同色光检测,单片机处理传感器检测到的数据实时送到lcd显示器显示,用户可以通过屏幕查看检测的色光值。单片机接通电源时产生复位信号,完成单片机启动,确定单片机起始工作状态。手动按键产生复位信号,完成单片机启动,确定单片机的初始状态。通常在单片机工作出现混乱或“死机”时,使用手动复位可实现单片机“重启”。第2.2节系统结构分析2.2.1.系统结构:系统总体可以分为五大模块:微控制器模块,LCD显示模块,电源模块,人机交互模块,传感器模块。将这些小模块组合后,就成了我们需要的整体结构了,具体如下图2-1:图2-1系统框图电源电路:向单片机供电。STC89C52单片机的工作电压范围:4.0V5.5V,所以通常给单片机外接5V直流电源。微控制器模块:以SCT89C52为核心的控制模块,主要是控制信号的采集、运算工作。LCD显示模块:将RGB的值直观地显示在LCD上。传感器模块:传感器模块以TCS3200为核心,搭载四颗led,实现颜色的测量。人机交互模块:人机交互是通过简单的按键,来实现用户的控制输入。第10页第11页第3章系统设计第3.1节硬件设计3.1.1.总体电路图EA/VP1X928RSTD7W6IN045LGCUufkYom排OBK+_图3-1总设计图3.1.2.硬件设计概述(1)、微控制器模块:硬件电路的设计采用最小系统的方法,以STC89C52单片机为核心,C1、C2、Y1构成晶振电路。C3、R4构成复位电路。P3下载口,R1为P0口上拉。(2)、LCD显示模块:显示电路以lcd1602为核心,由单片机P0口和P1口控制。(3)、电源模块:电源电路由P1接口接入5V电源,经过C4、C5滤波供给系统电源。(4)、人机交互模块:人机交互电路由S1和S2组成,可以实现用户的控制输入。(5)、传感器模块:传感器模块以TCS3200为核心,搭载四颗led,实现颜色的测量。第12页第3.2节软件设计3.2.1.系统程序工作流程简述首先上电系统复位,进入主程序对所有子模块初始化操作,接着由单片机控制传感器工作,进行白平衡校准传感器。然后扫描按键是否按下,最后传感器检测色光单片机处理传感器检测到的数据实时送到lcd显示器显示。流程如图3-2:图3-2程序工作流程图3.2.2.系统工作子程序(1)、首先上电系统复位,进入主程序对所有子模块初始化操作。初始化程序如下:voidLCMInit(void)LCM_Data=0;WriteCommandLCM(0x38,0);/三次显示模式设置,不检测忙信号DelayMs(5);WriteCommandLCM(0x38,0);DelayMs(5);WriteCommandLCM(0x38,0);第13页DelayMs(5);WriteCommandLCM(0x38,1);/显示模式设置,开始要求每次检测忙信号WriteCommandLCM(0x08,1);/关闭显示WriteCommandLCM(0x01,1);/显示清屏WriteCommandLCM(0x06,1);/显示光标移动设置WriteCommandLCM(0x0C,1);/显示开及光标设置DelayMs(100);(2)、接着由单片机控制传感器工作,进行白平衡校准传感器。白平衡程序如下:voidbaipingheng()/*求取红色因子*TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=0;TL1=0;tcs230_s2=0;tcs230_s3=0;/选择红色滤光器TR0=1;/10毫秒开始计时TR1=1;/开始计数while(TF0=0);/等待定时器溢出TF0=0;/清楚定时器0溢出标志TR0=0;/关闭定时0TR1=0;ryz=TH1*256+TL1;/其实这里的比例因子应该为255/(TH1*256+TL1)/*求取蓝色因子*TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=0;TL1=0;tcs230_s2=0;tcs230_s3=1;/选择蓝色滤光器第14页TR0=1;/10毫秒开始计时TR1=1;/开始计数while(TF0=0);/等待定时器溢出TF0=0;/清楚定时器0溢出标志TR0=0;/关闭定时0TR1=0;byz=TH1*256+TL1;/其实这里的比例因子应该为255/(TH1*256+TL1)/*求绿红色因子*TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=0;TL1=0;tcs230_s2=1;tcs230_s3=1;/选择绿色滤光器TR0=1;/10毫秒开始计时TR1=1;/开始计数while(TF0=0);/等待定时器溢出TF0=0;/清楚定时器0溢出标志TR0=0;/关闭定时0TR1=0;gyz=TH1*256+TL1;/其实这里的比例因子应该为255/(TH1*256+TL1)(3)、测量的子程序如下:voidceliang()/*求R值*TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=0;TL1=0;tcs230_s2=0;tcs230_s3=0;/选择红色滤光器TR0=1;/10毫秒开始计时第15页TR1=1;/开始计数while(TF0=0);/等待定时器溢出TF0=0;/清楚定时器0溢出标志TR0=0;/关闭定时0TR1=0;rb=(unsignedlong)(TH1*256+TL1)*255/ryz;if(rb255)rb=255;/判断RGB值是否合法/*求B值*TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=0;TL1=0;tcs230_s2=0;tcs230_s3=1;/选择蓝色滤光器TR0=1;/10毫秒开始计时TR1=1;/开始计数while(TF0=0);/等待定时器溢出TF0=0;/清楚定时器0溢出标志TR0=0;/关闭定时0TR1=0;bb=(unsignedlong)(TH1*256+TL1)*255/byz;if(bb255)bb=255;/判断RGB值是否合法/*求G值*TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=0;TL1=0;tcs230_s2=1;tcs230_s3=1;/选择绿色滤光器TR0=1;/10毫秒开始计时TR1=1;/开始计数while(TF0=0);/等待定时器溢出TF0=0;/清楚定时器0溢出标志第16页TR0=0;/关闭定时0TR1=0;gb=(unsignedlong)(TH1*256+TL1)*255/gyz;if(gb255)gb=255;/判断RGB值是否合法(4)、扫描按键是否按下,最后传感器检测色光单片机处理传感器检测到的数据实时送到lcd显示器显示。main()TMOD=0x51;/设定T0以工作方式1定时10毫秒LCMInit();/LCD初始baipingheng();/上电时先白平衡一次DisplayOneChar(0,0,R);/以十进制显示RGB中红色的分值DisplayOneChar(0,1,rb/100+0x30);/显示百位数据DisplayOneChar(0,2,rb/10%10+0x30);/显示十位数据DisplayOneChar(0,3,rb%10+0x30);/显示个位数据DisplayOneChar(0,5,G);/以十进制显示RGB中绿色的分值DisplayOneChar(0,6,gb/100+0x30);/显示百位数据DisplayOneChar(0,7,gb/10%10+0x30);DisplayOneChar(0,8,gb%10+0x30);DisplayOneChar(0,10,B);/以十进制显示RGB中蓝色的分值DisplayOneChar(0,11,bb/100+0x30);DisplayOneChar(0,12,bb/10%10+0x30);DisplayOneChar(0,13,bb%10+0x30);/*在LCD1602的第二行以16进制显示RGB*DisplayOneChar(1,1,tab1rb/16);DisplayOneChar(1,2,tab1rb%16);DisplayOneChar(1,3,H);DisplayOneChar(1,6,tab1gb/16);DisplayOneChar(1,7,tab1rb%16);DisplayOneChar(1,8,H);DisplayOneChar(1,11,tab1bb/16);第17页DisplayOneChar(1,12,tab1bb%16);DisplayOneChar(1,13,H);while(1)unsignedintn;for(n=1;n0;n-)if(KEY0=0)DelayMs(30);if(KEY0=0)baipingheng();if(KEY1=0)DelayMs(30);if(KEY1=0)flag=flag;if(flag=1)celiang();/颜色测试DisplayOneChar(0,0,R);/以十进制显示RGB中红色的分值DisplayOneChar(0,1,rb/100+0x30);/显示百位数据DisplayOneChar(0,2,rb/10%10+0x30);/显示十位数据DisplayOneChar(0,3,rb%10+0x30);/显示个位数据DisplayOneChar(0,5,G);/以十进制显示RGB中绿色的分值DisplayOneChar(0,6,gb/100+0x30);/显示百位数据第18页DisplayOneChar(0,7,gb/10%10+0x30);DisplayOneChar(0,8,gb%10+0x30);DisplayOneChar(0,10,B);/以十进制显示RGB中蓝色的分值DisplayOneChar(0,11,bb/100+0x30);DisplayOneChar(0,12,bb/10%10+0x30);DisplayOneChar(0,13,bb%10+0x30);/*在LCD1602的第二行以16进制显示RGB*DisplayOneChar(1,1,tab1rb/16);DisplayOneChar(1,2,tab1rb%16);DisplayOneChar(1,3,H);DisplayOneChar(1,6,tab1gb/16);DisplayOneChar(1,7,tab1rb%16);DisplayOneChar(1,8,H);DisplayOneChar(1,11,tab1bb/16);DisplayOneChar(1,12,tab1bb%16);DisplayOneChar(1,13,H);DelayMs(100);/每隔0.25秒测试一次颜色第19页第4章系统测试第4.1节实验数据本设计的实验过程很简单,具体操作如下:首先将开发板接通电源,将色彩纸板放平,其次把设计中的颜色采集模块放在待测的纸板上,放正放平,最后用隔光较好的纸张或者盒子将颜色采集模块遮盖起来,然后记录LCD显示的值,依次测量不同颜色的纸板并记录数据即可。在实验过程中进行了多次的测量试验,记录的一些数据如下表4-1:表4-1测量数据RGB值颜色次数R值G值B值波长/nm第一次253250246第二次255243252纯白第三次249252250第一次176060060第二次166055054纯红第三次166039041625-740第一次078131061第二次075128064纯绿第三次069132058500-565第一次035043107第二次029045101纯蓝第三次031042105440-485第4.2节实验结果通过上面的实验结果可以看出,如果被测物体的颜色中,红色成分比较多,那么在显示的输出结果中的R的值就大;同样的,如果绿色成分多,输出结果中的G的值就大,如果蓝色成分多,输出结果中的B的值就大。表格最后一列给出了这些颜色值对应的色彩图像,而表格的第一列给出了标准的色彩图像,可以看出,实际测得值与标准值之间还存在着一定的误差,这些误差产生的原因有很多,其中之一就是外界干扰光的存在,其次因为传感器芯片对光的敏感性不同,此外可能的原因包括补光模块中的LED二极管发出的光不稳定,还可能因为物体对光的反射能力不同等等,所有的这些原因导致了在测量的过程中存在的误差在所难免,只有不断的改善,以达到减小误差的目的,所以本系统还有待更进一步的研究以改善整个系统。第20页结论本文就色彩识别系统的原理及实现做了研究。现将本论文所做的主要工作内容总结如下:(1)建立颜色识别系统的模型,推算出颜色识别的算法。(2)介绍单片机等主要模块的功能及优势。(3)对系统进行整体的软硬件设计。(4)编写程序计算RGB三种颜色值,然后进行测试实验,以验证论文中结论的准确性。总的来说,本论文是以STC89C52单片机为基础,利用TCS3200颜色传感器模块,LCD1602液晶显示模块实现色彩识别系统的设计,并进行了色彩识别的测试实验。其中,色彩识别的算法实现原理和各模块的实现是本论文研究的重点。由于本人水平有限,在本文的研究过程中也存在着一些不足之处。色彩识别的核心难点是RGB三种颜色测量的算法设计,算法的优劣程度很大程度上决定了色彩识别系统的优劣,而难以建立精确的测量算法。第21页参考文献1.李朝青.单片机原理及借口技术M.北京航空航天大学出版社;2000.2.杨家国.单片机原理与应用及C51程序设计J.电子报,2009.3.胡建民.颜色传感器TCS3200D及颜色识别电路J.单片机与嵌入式系统应用.2006.4.刘增辉.颜色传感器技术研究进展J.传感器技术.2003.5.郑喜凤,黄娉,刘贵华.三基色亮度计的设计和应用J.微计算机信息.2009.6.李爱勤,张绪坤.基于TCS3200D与LabVIEW的颜色测量系统J.电子科技,2008,21(6):26-29.7.卢川英,等.基于TCS3200D传感器的颜色检测系统J.吉林大学学报(信息科学版),2008,26(6).8.庞小兵,黄东胜,邹富顺.在线式光纤传感颜色识别系统的设计D.自动化仪表.2010.9.9.潘海鸿,陈琳,段素强,梁成业,杨微.新型颜色传感器TCS3200D应用于CRRT机漏血检测的可行性研究D.广西大学.2008.10.王安敏,尚绪超,赵龙.基于颜色传感器TCS3200D的油水界面检测仪的设计D.青岛科技大学.2010.9.第22页致谢光谱分析仪,当我拿到论文题目的时候根本不知道从何下手,后来我去指导老师的办公室,跟魏老师交流了一番,魏老师就把这个课题帮我剖析了一下,先要从传感器下手,让我去查找关于PIN二极管的相关知识;然后魏老师让我去找关于颜色分辨原理;最后让我去看看关于LCD的相关资料。就这样一步一步地,我似乎找到了方向。通过搜索PIN二极管,我找到了相关的传感器模块,然后去搜集关于单片机的资料,就这样一点点小问题慢慢被我克服了,论文就开始慢慢成形了,不再是原来的一头雾水,最后完成了论文的撰写。在这里,我特别感谢我的指导老师,魏老师。我每次遇到困难去找他,他总会不厌其烦地给我讲解,直到我完全解决困难。他的耐心指导,引导我完成了这次设计。我也要感谢同学们,他们给了我很多建议和帮助!最后,评审论文和答辩委员会的各位老师能在百忙之中抽出宝贵的时间,对我的论文进行评阅审查,在此表示我的感谢!第23页附录:中英文文献翻译名称简易光谱分析仪的设计第24页附录1:实物照片第25页第26页附录2:部分源程序#include#defineucharunsignedchar#defineuintunsignedint/=LCD1602接口连接方法=/*-|DB0-P2.0|DB4-P2.4|RW-P0.6|DB1-P2.1|DB5-P2.5|RS-P0.7|DB2-P2.2|DB6-P2.6|E-P0.5|DB3-P2.3|DB7-P2.7|-*/=*/#defineLCM_DataP0/LCD1602数据接口#defineBusy0x80/用于检测LCM状态字中的Busy标识sbitLCM_RW=P11;/读写控制输入端,LCD1602的第五脚sbitLCM_RS=P10;/寄存器选择输入端,LCD1602的第四脚sbitLCM_E=P12;/使能信号输入端,LCD1602的第6脚sbitKEY0=P23;sbitKEY1=P24;/=颜色传感模块连接=/*-|EO-GND|S0-VCC|S2-P1.0|OUT-P3.5|S1-VCC|S3-P1.1|-*/sbittcs230_s2=P22;/TCS230S2接单片机P1.0sbittcs230_s3=P21;/TCS230S3接单片机P1.1/sbittcs230_en=P25;/TCS230EN(E0)接GNDbitflag=0;第27页/*函数声明*voidWriteDataLCM(ucharWDLCM);/LCD模块写数据voidWriteCommandLCM(ucharWCLCM,BuysC);/LCD模块写指令ucharReadStatusLCM(void);/读LCD模块的忙标voidDisplayOneChar(ucharX,ucharY,ucharASCII);/在第X+1行的第Y+1位置显示一个字符voidLCMInit(void);/LCD初始voidDelayMs(uintMs);/1MS基准延时程序voidbaipingheng();/白平衡子程序voidceliang();/实际颜色程序uintryz,gyz,byz;/分别定义红色因子绿色因子蓝色因子uintrb,gb,bb;/RGB值uchartab1=0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F;/*主程序*main()TMOD=0x51;/设定T0以工作方式1定时10毫秒LCMInit();/LCD初始baipingheng();/上电时先白平衡一次DisplayOneChar(0,0,R);/以十进制显示RGB中红色的分值DisplayOneChar(0,1,rb/100+0x30);/显示百位数据DisplayOneChar(0,2,rb/10%10+0x30);/显示十位数据DisplayOneChar(0,3,rb%10+0x30);/显示个位数据DisplayOneChar(0,5,G);/以十进制显示RGB中绿色的分值DisplayOneChar(0,6,gb/100+0x30);/显示百位数据DisplayOneChar(0,7,gb/10%10+0x30);DisplayOneChar(0,8,gb%10+0x30);DisplayOneChar(0,10,B);/以十进制显示RGB中蓝色的分值DisplayOneChar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司财产财物管理制度
- 教师年度考核个人工作总结14篇
- 洪涝灾害综合监测预警-辰安
- 广东省广州市2024-2025学年高二下册3月月考数学试卷附解析
- 福建省福州市2024~2025学年 高三下册第十九次质量检测数学试卷附解析
- 专题五 日益重要的国际组织 综合练习国际组织
- 混合开发性能提升-洞察阐释
- 神秘宝藏猎人基础知识点归纳
- 员工评语性格暴躁评价
- 社区社区服务设施社会效益评估管理基础知识点归纳
- 海员考试题库及答案
- 混凝土采购协议书范本
- 伊斯兰艺术课件
- 谱写全球南方团结合作的新篇章-2025年春季学期形势与政策课件
- 科技产品的模块化结构设计及其优势
- 夸克联盟互助申请承诺书
- 文化创意产业内容创作与IP运营管理
- EHS培训(环境因素、危险因素识别)
- 《城市轨道交通车站》课件
- 课件电力工程质量监督检查大纲介绍
- 2025年全国保安员职业技能上岗证考试题库(含答案)
评论
0/150
提交评论