【《颜色识别系统中的硬件和软件设计案例》4200字】_第1页
【《颜色识别系统中的硬件和软件设计案例》4200字】_第2页
【《颜色识别系统中的硬件和软件设计案例》4200字】_第3页
【《颜色识别系统中的硬件和软件设计案例》4200字】_第4页
【《颜色识别系统中的硬件和软件设计案例》4200字】_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

颜色识别系统中的硬件和软件设计案例目录TOC\o"1-3"\h\u8774颜色识别系统中的硬件和软件设计案例 1174931基于TCS3200的硬件设计 1186481.1AT89S52单片机简介 111321.2.1TCS3200芯片的结构 268541.2.2TCS3200传感器识别原理 3202641.3AT89S52的主要功能 450221.4液晶显示器简介 524561.51602显示器与单片机的连接 6258632颜色识别系统的设计与实现 6174862.1系统结构框图 652932.1.1照明电路 7205162.1.2颜色传感器电路 7293002.1.3采样电路 8158962.2颜色识别系统的软件设计 8290282.2.1TCS3200颜色采集模块与52单片机 8192072.2.2颜色识别的软件设计 82462.3白色LED补光模块的设计 9323432.4颜色检测的程序 10126982.5液晶显示的程序 10150523实物调试结果 1117213.1实验过程 11151263.2结果和误差分析 121基于TCS3200的硬件设计1.1AT89S52单片机简介AT89S52单片机片内ROM全部采用FLASHROM技术,与MCS-51系列完全兼容。AT89S52是一个片内具有一种小型低电压,高性能的并且具有一个CMOS8位数的小型单片机,片内还包括一个具有8k背景的硬件组,其中包括一个主机存储器和256bytes的RAM、功能强大的数据内存硬件。AT89S52有40个引脚,AT89S52最小系统如图3-1所示,AT89S52单片机的实物图如图3-2所示。图3-SEQ图3-\*ARABIC1AT89S52最小系统图3-SEQ图3-\*ARABIC2AT89S52单片机的实物图AT89S52单片机内部含有8K字节的闪存,32位I/O端口线,看门狗定时器,两个数据指针,三个16位定时器/计数器等等。除此之外,AT89S52的工作频率可以降低到0HZ,有一种节能模式可以支持两种软件可选。在空闲模式下,CPU停止工作后,但是串行接口和外部中断系统仍然可以继续工作。1.2TCS3200颜色识别简介1.2.1TCS3200芯片的结构TCS3200是TAOS公司推出的一款可以将彩色光的频率进行转换的仪器。它的CMOS电路中将可配置的硅光电二极管和电流频率转换器集成到一起,并在一个芯片上集成了红、绿、蓝三种滤波器。它是业界第一款具有数字兼容接口的产品,TCS3200的输出信号是数字的,可以驱动标准TTL或CMOS逻辑输入,因此可以直接与微处理器或CMOS连接,其他的逻辑电路都是连接在一起的,因为输出信号是数字的,而且每个颜色通道都能达到10位以上的转换精度,所以不需要A/D转换电路,所以电路就更加简单明了,图3-3是TCS3200的引脚图。图3-SEQ图3-\*ARABIC3TCS3200引脚图1.2.2TCS3200传感器识别原理(1)三基色原理如果按照不同的比例搭配适当的三原色(红、绿、蓝),会产生不同的色彩感受。由三种颜色混合之后得到的颜色的光的亮度由三原色的亮度之和决定,色度由三原色各成分的比例值决定。这三种原色事实上都是相互独立的,任何一种原色都不能与另外两种颜色相匹配。一般来说,物体的颜色由来其实很简单,它实际上就是物体表面吸收照射在上面的白光(阳光)的一部分有色成分,然后在人们眼中反射另一部分有色光,这样我们就可以看到物体的颜色。白色是由各种频率的可见光混合而成,即白光中含有多种颜色(如红R、绿G、蓝B)。根据德国物理学家海林霍尔茨的三原色理论,各种颜色都是由三原色(红、绿、蓝)的不同比例混合而成。(2)TCS3200识别原理TCS3200颜色传感器的识别原理其实就是在我们选择一个特殊颜色背光滤波器时,它的存在只是为了阻止某种特殊背光原色的信号通过而已。例如:当我们首先选择了一个红色的蓝光滤波器时,入射光中只有一条光,而红色的光是我们可以直接穿透的,蓝色和绿色都会被光线阻断,这样就可以使我们成为可以直接获取得到带有红色光的黑白照度和绿色亮度;同时,选择其他两种滤波器,就已经成为可以直接获取带有蓝色入射光和带有绿色入射光的两种较弱的入射光。通过这三个单位数字的比值,我们就可以轻而易举的很精确地计算和得出激光投射在TCS3200传感器上的物体光线反射颜色。1.3AT89S52的主要功能AT89S52芯片有40个引脚,包括主电源引脚、时钟电路引脚和控制信号引脚。AT89S52单片机引脚功能图如图3-4所示。图3-SEQ图3-\*ARABIC452单片机管脚功能图端口1是一个双向I/O端口,它的内部是具有提升电路的。类似地,如果端口1的输出设置为高电平,那么最后就会从这个端口输入数据。如果使用8052或8032,则P1.0可用作定时器2的外部脉冲输入引脚,而P1.1具有T2EX功能,并可用作外部中断输入的触发器,详见表3-1所示。表3-SEQ表3-\*ARABIC1P1口的第二功能引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)端口3是一个8位的双向I/O端口,可以控制四种TTL逻辑模式。当“1”被写入端口P3时,内部上拉电阻器将作为输入端口的端口上拉。同时,它还具有串行通信、外部中断控制、外部数据存储器的定时和计数控制等功能。P3端口也是AT89S52的一个特殊功能(第二个功能),如图3-5所示。在FLASH编程及校验时,P3口亦接收些控制信号。图3-SEQ图3-\*ARABIC5P3口的特殊功能XTAL1——振荡器外部额外正相信号输出放大器及内部额外反相信号时钟外部信号输出发生器为控制电路之外部反相信号输入端。XTAL2——振荡器是与反馈三相放电扩大器之间的输出端。1.4液晶显示器简介LCD液晶显示器外观示意图如图3-6所示。由于它具有独特的低电压和微功耗这种功能特性,在单片机系统中被广泛的应用和发展。现实生活中常用的液晶显示模块分为三类,分别是数字液晶显示模块、点阵字符液晶显示模块和点阵图形液晶显示模块。其中,图形液晶显示模块在全国范围内广泛被使用,但是我们的汉字不能像西文那样用字符模块显示,如果想要能够显示汉字,就必须使用图形模块。图3-SEQ图3-\*ARABIC6液晶显示器每行的字符数和每个字符的位置是固定的;点阵液晶显示器是指整个液晶显示器由几个点组成。例如240128是240*128点,可以显示图形、汉字、字母、符号等,显示内容的大小由自己决定。字符型和图形型液晶都有控制器,不同控制器的指令不同。具体的液晶结构也需要不同的控制器,主要是晶格结构和扫描方式。分段式一般没有专用控制器,显示器相对固定,一般显示器内容直接开模。1.51602显示器与单片机的连接在本次的项目实验中,1602液晶显示器与52单片机的引脚连接情况如图3-7所示。图3-SEQ图3-\*ARABIC71602与单片机的连接AT89S52单片机是一个数据处理单元,用于接收颜色检测输出的频率电信号,并根据信号产生相应的颜色识别结果。数据处理单元控制光源向被测物体发射探测光;它可以控制传感器接收被测物体的反射光;如果传感器上没有放置被测物体,那么传感器接收的就是来自托盘背景的反射光;传感器将接收到的反射光信息转换成频率电信号,并发送给数据处理单元的数据采集单元;数据处理单元的对比度运算单元根据数据采集单元采集的数据和颜色参数存储单元中的每个标准颜色参数进行对比度运算处理,生成颜色判断结果。2颜色识别系统的设计与实现2.1系统结构框图颜色识别系统主要以AT89S52单片机的颜色控制模块为基础,增加了颜色识别传感器数据采集模块TCS3200,TCS3200驱动控制模块,设计了具有白色节点的LED光显示模块和LCD1602液晶显示模块,在此基础上设计了一个颜色识别系统。该颜色识别系统的基本结构如图4-1系统框图所示。多次设计然后做出来的颜色识别装置的实物图如图4-2所示。图4-SEQ图4-\*ARABIC1系统框架图图4-SEQ图4-\*ARABIC2实物图2.1.1照明电路系统中首先需要用白色光源来进行自动照明使其成为白平衡状态,然后通过放置不同颜色物体来进行颜色识别,实现识别不同颜色物体的功能。2.1.2颜色传感器电路系统主要采用OPT101和两台灯光的视频切换一起来操作完成不同种颜色的物体区别,采用不同种颜色的物体光照后反射到一个物体内部表面,然后再检测经光从物体内部吸收后和反射后的物体光强,经过两台单片机的视频比较处理来准确判断两个物体的不同颜色。2.1.3采样电路使用一个新的AD进行输出采样,由于我们目前选用的单片机内部只包含了AD,所以将OTP101的模拟输出端口连接在我们选用的单片机上的AD多模采样输出端口上即可。2.2颜色识别系统的软件设计2.2.1TCS3200颜色采集模块与52单片机在本次设计中我们需要将TCS3200颜色传感器与52单片机的P1端口和P3端口连接起来。我们可以了解到P3口的每一根线还具有第二种功能,P3口的第二功能如图4-3所示。图4-SEQ图4-\*ARABIC3P3口的功能图2.2.2颜色识别的软件设计颜色识别相关的软件流程如图4-4所示。图4-SEQ图4-\*ARABIC4颜色识别软件设计流程图软件设计的流程第一步就是先将系统进行初始化,它负责设置单片机AT89C52的定时器/计数器的工作方式;初始化完成后,检测是否需要进行白平衡调整。如果需要,就调整白平衡子程序;不需要就进行下一步,下一步检测是否需要进行颜色识别,识别到的RGB值就会显示在LCD液晶显示屏上。2.3白色LED补光模块的设计为了更好的执行颜色采集模块TCS3200的功能,我们应该提供一个比较暗的照明环境,但是我们需要采集物体的颜色,所以我们需要添加一个稳定颜色的光源采集,为此,我们设计了一个光补偿模块,该模块的主要工作原理是将被测物体放置在白光LED上,然后将白光反射到TCS3200颜色传感器上,达到检测物体颜色的目的。白色LED补光模块如图4-5所示。图4-SEQ图4-\*ARABIC5白色LED补光模块2.4颜色检测的程序{ ceyanse();lcd_number4_write(2,0,green); lcd_number4_write(10,0,blue); lcd_number4_write(2,1,red); if(green>blue&&green>red) lcd_shuzu_write(8,1,"GREEN",5); else if(red>blue&&red>green&&red>30) { lcd_shuzu_write(8,1,"RED",5); } else lcd_shuzu_write(8,1,"no",5); } 从上面的程序可以看出,最后颜色传感器检测出什么颜色,液晶显示屏上就会显示与之相对应的颜色。2.5液晶显示的程序液晶显示程序最后实现的效果就是将之前检测到的颜色显示在LCD1608液晶显示屏上。程序的运行过程就是先通过初始化函数对液晶显示屏进行初始化,再接收单片机传送过来的数据,并显示对应的颜色,最后将对应的颜色显示在LCD1608液晶显示屏上,如果探测物体的颜色为红色,则液晶显示屏上显示“Red”。5实物调试结果3.1实验过程由于本系统对软硬件相互关联性能的要求很高,其整个教学实验操作过程中间不断变化的过程很复杂,一般采用仿真系统无法完全实现。物体颜色识别的具体实验操作步骤如下:我们首先将自己做出的实物放置在一个无明显光源的地方,放置一张白纸在四个白色LED上使其成为白平衡状态,如图5-1所示。然后接通电源,将所有带有颜色的待测纸板准备好放在旁边,然后拿下白纸,在白色LED上放置一个红颜色的物体,LCD液晶显示器上的数值会发生变化,其结果如图5-2所示。最后在上面放置一个绿颜色物体,其结果如图5-3所示,最后记录它的数据位置即可。图5-SEQ图5-\*ARABIC1白平衡状态图图5-SEQ图5-\*ARABIC2红色物体检测图图5-SEQ图5-\*ARABIC3绿色物体检测图3.2结果和误差分析经过多次的实验然后记录相应的数据可以得到一个结论:如果我们的被测物体红颜色较多,那么在LCD1602液晶显示器上显示的输出结果中R值就比较大,G值和B值就相对偏小;同样,如果是绿色多,那么G值就大。从实验数据中可以看出此次实验虽然实现了识别颜色的效果,但是还是存在着一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论