APP下载

一种颜色识别电路的设计

2022-06-03解旭东龙光利

电脑知识与技术 2022年8期
关键词:液晶显示单片机

解旭东 龙光利

摘要:针对生产过程中由人眼起主导作用的颜色识别精度不高、眼睛容易疲劳等问题,设计一种颜色识别电路,包括硬件和软件两部分。硬件部分由单片机最小系统、颜色采集模块、液晶显示模块、语音录放模块等组成。软件部分包括主程序、语音播报子程序、颜色采集子程序、液晶显示子程序等。程序用C语言编写,在keil4平台编译,通过后下载到单片机STC89C52上。将该单片机和其他元器件焊接在PCB板上,上电,颜色传感器能对被测物体颜色(如白色、红色、蓝色、绿色、黄色、黑色等)进行检测,液晶显示屏能显示被测物体的颜色,语音模块可准确播报所采集的颜色。

关键词:颜色识别;单片机;液晶显示;语音播报

中图分类号 TM914.4     文献标识码 A

文章编号:1009-3044(2022)08-0001-03

1 引言

在彩色图像中,人类识别彩色图像的主要感知特征之一是颜色。与几何特征相比,颜色特征对图像的平移、缩放和旋转非常稳定,具有很强的鲁棒性[1]。在当今工业化社会,颜色识别被广泛应用于不同行业,如: 物体表面颜色识别(包含产品包装颜色标准检测、产品外观特征颜色检测、液体溶液颜色变化过程检测与控制)、无人机车[2]、人脸检测与识别、水果和蔬菜的自动筛选及成熟度或新鲜度检测、白细胞自动识别、图像内容检索等。

2 RGB颜色模型

人眼对一个物体的外在特征之一是颜色,与光谱分布有关。在可见光范围内,波长较长的光在人眼中产生红色的感觉,波长较短的光产生蓝色的感觉,而中等波长的光则产生绿色的感觉。根据 Helinholtz 的三基色理论,每种颜色是三基色(红、绿、蓝)的不同比例的混合物[3],所以在测量颜色时,可以通过测量一种颜色中 R、G、B 三基色的比例来识别。每种颜色可以用三种基本颜色,以不同的比例混合。RGB 颜色模型如图1所示。xyz 轴分别对应于 R (红色)、 G (绿色)和 B (蓝色)。原点(0,0,0)对应黑色,顶点(255,255,255)对应白色。立方体的其他六个角分别是红色、黄色、绿色、青色、蓝色和品红色,每个 RGB 值对应一个唯一的颜色[4-5]。

3 硬件设计

设计的颜色识别电路硬件部分主要由单片机最小系统、颜色采集电路、液晶显示电路、语音播报电路组成。单片机最小系统主要由STC89C52单片机、复位电路、时钟电路构成。

3.1 颜色采集电路设计

颜色采集电路采用TCS3200D模块[6],其工作原理为: 入射光反射到光电二极管,光线由光电二极管转换为电流模拟信号,在A/D转换电路中经过信号放大后转换成数字信号,最后发送至单片机进行处理。设计的TCS3200D与单片机的接口图如图2所示。TCS3200D模块采用8引脚的SOIC表面贴装式封装,将64个光电二极管集成在一个芯片上,识别颜色时,先将所检测物体中的红光、绿光、蓝光的强度转换成脉冲信号,然后根据3种颜色所占的比例计算出被测量物体的颜色。

3.2 液晶显示电路设计

液晶显示电路采用工业字符型液晶LCD1602[7],显示内容为16×2,并且能同时显示两行,每行16个字符。设计的 LCD1602与单片机的接口图如图3所示。

3.3 语音播报电路的设计

语音播报电路采用集单片机、语音电路、SPI-Flash 存储器于一体的可编程语音模块WT588D[8],设计的语音播报电路如图4所示。在三线串口模式下,GND接地,VDD和VCC接5V電压,P01,P02,P03分别与单片机P3.0,P3.1,P3.2口相连。选择DAC输出方式作为音频输出,音频信号从DAC端输出,经过R6、C6、C9后输出到功放。R6为分流电阻,取值270Ω~1.2kΩ,阻值越大则输出声音越大。

4 软件设计

4.1 主程序设计

颜色识别电路主程序设计中分别定义了语音播报子程序、颜色采集子程序、液晶显示子程序、延时子程序等。主程序通过调用这几个子程序实现设计要求的功能。延时子程序穿插于各个子程序之间频繁调用,主程序流程图如图5所示。程序开始运行时,先进行初始化,进入颜色采集子程序进行白平衡采集颜色数据,将采集到的颜色发送至单片机处理,再进入液晶显示子程序,在液晶显示屏显示RGB数值和颜色名称,最后进入语音播报子程序,语音播报颜色名称。若按下复位键则再次运行主程序。

4.2 颜色采集子程序设计

单片机STC89C52对颜色采集模块TCS3200D的控制需要通过程序驱动来实现,程序主要完成两方面的任务:利用单片机实现对TCS3200D进行初始化,并对其寄存器的地址定义和控制字的写入;实现对TCS3200D的数据读取。初始化TCS3200D要求SCLK和 [RST]都为低电平。TCS3200D子程序流程图如图6所示。

4.3 语音播报子程序设计

语音播报子程序选择三线串口模式,三线串口控制模式由数据DATA、时钟SCK 和片选CS组成, 时序模仿标准的SPI 通信方式[8],语音播报子程序流程图如图7所示。

4.4 液晶显示子程序设计

液晶显示子程序主要实现对信息的显示,第一行为RGB所对应的数值,第二行为所检测出采集的颜色,液晶显示子程序流程如图8所示。

5 实验结果

5.1 Proteus仿真

在仿真软件平台Proteus上设计电路图[9],利用Keil软件编译程序,通过后导入Proteus中进行调试,用一个脉冲发生器来代替颜色识别模块,将采集到的信号传至单片机,通过A/D转换模块转成数字信号,最后用数码管显示出模拟采集的数值大小,仿真电路图如图9所示。由图9中看出数码管可以显示脉冲大小,整个电路可以正常运行,即可以仿真正常颜色采集的数值大小。250460BF-818D-4010-ABDD-39EB0C58E054

5.2 硬件制作与调试

制作一个STC89C52单片机最小系统,由单片机底座、10k电阻,两个22pF电容,一个滑动变阻器等组成,将语音播报电路WT588D和液晶显示电路LCD1602各个引脚与单片机引脚焊接。在颜色传感器四周安装塑料支柱,以便采集颜色。通电调试,颜色识别电路的调试如图10所示。通过颜色传感器采集脉冲,在显示屏上显示出了RGB三个数值和所对应的颜色并语音播报出所采集的颜色名称。

6 结束语

针对目前市场上的颜色识别系统价格昂贵、笨重难以携带、检测不稳定等问题,设计了一种颜色识别电路,特点是单片机为核心,能进行颜色识别,可液晶显示所测物体RGB数值和对应颜色,并可进行语音播报。

参考文献:

[1] 潘海鸿,陈琳,黄炳琼,等.基于TCS230传感器的高精度颜色识别系统设计[J].微计算机信息,2009,25(16):159-161.

[2] 李富强,张同庄,于泽宽.TCS3200在机器人短跑竞赛中的应用[J].电子设计工程,2013,21(15):159-161.

[3] 蒋瑞挺.察“颜”观“色”的利器——颜色识别系统[J].电子制作,2011(9):33-35,58.

[4] 蔡咏梅,郭文强,张琳琳.RGB空间平均颜色矢量法在颜色识别中的研究[J].计算机应用与软件,2014,31(5):177-179.

[5] 高富強,李岭,安康.基于RGB的颜色辨识系统设计[J].传感器与微系统,2012,31(10):84-87.

[6] 张菁,杨应平,章金敏,等.基于TCS3200D的颜色再现与分类[J].武汉大学学报(工学版),2013,46(2):257-260.

[7] 林嘉.基于89S52的LCD1602程序设计[J].电脑知识与技术,2012,8(26):6376-6378.

[8] 王春武,刘春玲,秦政坤,等.基于WT588D模块的语音播报系统设计[J].电子技术应用,2012,38(1):115-117,121.

[9] 钟健,王丰元,张明杰,等.基于Proteus仿真的无线温度检测系统低功耗研究[J].现代电子技术,2018,41(17):112-115.

【通联编辑:梁书】250460BF-818D-4010-ABDD-39EB0C58E054

猜你喜欢

液晶显示单片机
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
小议PLC与单片机之间的串行通信及应用
基于TRIZ理论液晶显示模块开发板的创新设计
基于单片机的平衡控制系统设计
122×32 点阵液晶显示汉字原理实验
基于单片机的电子密码锁设计
Microchip推出两个全新PIC单片机系列
界面致稳型柔性胆甾相液晶显示器件的制备与性能