基于DSP和CPLD的智能相机系统设计与研制
扫描二维码
随时随地手机看文章
摘要:嵌入式实时图像处理技术是目前结合图像处理、模式识别、传感器以及微电子等多学科门类的一门前沿技术。在电子技术迅猛发展的推动下,嵌入式实时图像处理也成为可能。在目前的电子技术条件下,作者结合DSP技术、CPLD/FPGA技术,以及图像处理技术、传感器技术等,开发设计出一种实用的嵌入式实时图像处理系统——工业用智能相机,实现了产品质量的自动检测和分类。
关键词:DSP CPLD/FPGA 图像处理 智能相机
0、 引言:
在工业生产中,生产设备的自动化程度在很大程度上决定着生产的效率。同时,高技术高科技的生产设备,对提高产品的档次也有很大的作用。在工业生产现场,有许多工作是重复简单的劳动,或工作环境是不适合人进行处理的。这时,可以设计一种智能仪器,代替人进行这种简单重复的工作或在恶劣的工作环境下进行工作。智能相机系统就是这样的一种自动化仪器。它以其工作效率高、性能稳定、能适合复杂和恶劣的工作环境而越来越受到工业生产的重视。本文将介绍一款用于工业生产现场产品质量控制的智能相机的设计方案,并给出该相机的实际工作情况。
1、系统整体设计:
进行相机系统设计,首要考虑的问题是工业现场生产速度和相机处理速度的匹配问题。系统的整体设计必须以需要处理的数据量为基础来选择需要的处理器类型、外围接口元器件工作速度、以及选择传感器的型号和参数等 。工业生产速度一般以每分钟多少个产品来计算,必须将其换算为以秒为单位。综合各方面的因素,在本智能相机系统设计中,图像传感器采用美国国家半导体公司(National Semiconductor)生产的CMOS单色VGA格式图像传感器LM9617 ,系统的逻辑控制和地址发生器则采用LATTICE公司生产的CPLD ispLSI1048C ,中央处理器采用美国德州仪器(TI)公司的高速数字信号处理器TMS320VC5402 ,显示器件则采用台湾元太公司生产的液晶显示屏PD064VT5 。在传感器和图像缓存间采用LVDS电平转换以提高长距离传输时的传输能力和抗干扰能力。在选定系统各部分的工作器件后,对系统的整体结构设计如图1所示。
图1 系统整体结构简图
由传感器输出的图像数据和对传感器的控制信号,经过LVDS电平转换后,分别送入到CPLD逻辑缓存控制单元和传感器。CPLD在DSP的控制下,完成对图像的缓存和传输以及传感器的配置。中央处理器DSP对缓存图像进行处理,完成后,将处理结果图像写入到显示缓存中。当处理结果写入完毕后,由显示驱动控制器完成处理结果图像的显示。
2、系统各部分及功能描述:
(一)、图像传感器单元:
图像传感器主要完成光信息信号向电信号转换,从而获得图像信息。考虑到普通的工业生产线的工作情况,在本系统中,图像传感器采用美国国家半导体公司(National Semiconductor)生产的CMOS单色VGA格式图像传感器LM9617,其工作电压为3.3V,有效像元为648×488,像素尺寸可 。在时钟频率为48MHz时,输出图像为30FPS。由于采用了CMOS工艺,传感器的输出直接是图像的数字信号,输出的图像数据可以是8位、10位或12位。其控制和工作方式配置是在DSP的控制下,通过CPLD和传感器的I2C总线来完成。该CMOS图像传感器采用PLCC48封装 ,其管脚定义和典型应用电路如图2所示:
图2 LM9617引脚和典型应用电路
从典型应用电路图可以看出,该传感器外围电路简单,只需少量的阻容元件就可以完成传感器电路的设计。其控制和寄存器的配置通过传感器的相机控制引脚和串行总线(I C)控制引脚进行,也显得简单方便。
(二)、逻辑和控制单元:
由于传感器产生的图像数据量很大,每秒产生的数据量为648×488×30Byte,在考虑中央处理器DSPVC5402的处理速度的情况下,决定对图像采取双路缓存,分路处理技术。进行图像缓存时,采用CPLD来实现地址发生器和逻辑控制功能。在本系统中,地址发生器和逻辑控制单元采用LATTICE公司生产的大规模复杂可编程逻辑器件ispLSI1048C来完成。ispLSI1048C是具有8000逻辑门,96个I/O口,12个专用输入口,四个时钟输入口,内部具有288个寄存器和48个GLB单元,其工作时钟可达50MHz 。缓存时,存储器的地址和数据隔离均由1048C来实现。同时,当DSP从缓存中读取数据时,数据信号和地址信号的隔离也由1048C来实现。另外,缓存通道的读写控制逻辑是在DSP的主控下,由1048C来完成,并实现和DSP进行数据缓存的通信。该部分的设计如图3所示:
图3 逻辑控制单元结构简图
系统上电初始化后,由DSP向1048C发出写图像命令,1048C接到命令后,先根据场信号判断是否为一帧图像到来,然后根据像素时钟和行信号产生地址,对图像进行缓存。当一幅图像缓存完毕后,向DSP发出图像缓存完毕信号。DSP在接到图像缓存完毕后,一方面,控制1048C继续对下一帧图像进行缓存,另一方面,对缓存完毕后的图像进行检测。
(三)、中央处理单元:
中央处理单元是系统的核心部分,它涉及到系统工作效率、稳定性等问题。在综合考虑系统的处理速度、数据量、控制复杂度、系统设计复杂性、算法复杂性以及系统成本等因素后,本文选用美国德州仪器公司(TI)生产的高速数字信号处理器TMS320VC5402作为中央处理器,其工作频率可以达到100MHz,指令运行可达100MIPS ,能满足通常数字信号处理的需要。
图4 中央处理单元结构简图
在系统设计时,对DSP程序进行了优化设计,其程序储存器采用Atmel 公司生产的FLASH AT29LV020 ,其大小为256K×8Bit,在运行时采用8Bit并行加载模式进行加载。同时考虑到要对处理结果进行实时显示,并考虑到显示过程,系统设计时采用了1M×8Bit的显示缓存。并将该缓存作为了系统的数据缓存器,在设计时将该部分缓存加在了显示控制部分,中央处理单元部分的结构如图4所示。
(四)、显示控制单元:
图像显示部分采用液晶显示屏来完成。液晶显示具有稳定可靠、功耗小、结构紧凑、显示内容丰富的特点,在嵌入式系统的开发设计中常用来作为人机界面并获得了广泛的应用。
在本系统中,要显示的是灰度位图,根据实际情况,图像的灰度级控制为256级,即8Bit。由于目前市场上没有能显示256灰度级的液晶屏,在系统设计时,采用了台湾元太公司生产的6.4’真彩色液晶屏PD064VT5,分辨率为640×480,刷新率为60Hz,其显示可达256K 色。在设计时,根据RGB到YUV的转换,将液晶屏的G通道和B通道并行接到了R通道上,实现了显示64级灰度图。驱动控制器由作者自行开发,其结构如图5所示。
图5 显示驱动控制单元
设计显示驱动控制电路时,控制和逻辑发生器、地址发生器单元仍采用1048C来实现,帧缓存器I和II的容量均为512K×8Bit。在显示时帧缓存器I和II是作为显示缓存来使用,在进行算法处理时,帧缓存器I和II则是作为数据缓存来使用。其逻辑控制均采用1048C来完成。
电源部分是系统中较重要的部分。整个系统采用线性电源供电。其中,传感器采用3.3V供电,CPLD1048C采用5V供电,DSP采用电源模块TPS767D301供电,液晶显示屏则采用5V和12V混合供电。这里不再详述。
3、系统实现:
在完成整个系统的设计后,我们对系统进行了实现,并将该智能相机系统应用在了纸品质量监测线上,主要完成纸品中瑕疵点或污渍点的检测。如发现纸品表面存在瑕疵,则给出纸品不合格信号。在图像处理算法并不复杂时,系统可以做到实时工作,到达30FPS。在添加一些较复杂的处理算法后,系统可以工作在15FPS,换算到工业生产速度为900个产品每分钟。这在一般的工业生产中,已经完全能满足生产需要了。图6给出了应用在检测线上后,检测出不合格纸品的一个典型例子:
(a)原始污渍图像 (b)检测算法处理结果
图6 检测结果
在检测结果中,给出了瑕疵或污渍点的大小和位置信息,并根据实际要求,给出该单个产品是否合格的信号。
4、结论:
智能相机是国内一门新兴的实时图像研究处理方向,它结合实时图像处理、微电子技术、传感器理论等多门学科,其设计和应用具有一定的难度和复杂性。但由于其具有广阔的应用前景,必将越来越受到人们的重视。
本文给出了一种较通用的智能相机的设计方案并实现了整个系统的硬件和软件设计,实践证明,该方案切实可行,按照该方案研制的相机系统工作速度快,性能稳定可靠,并已取得了实际应用。
参考文献:
[1] Data Sheet of: LM9617 Monochrome CMOS Image Sensor VGA 30 FPS. NationalSemiconductor Corporation. March, 2001.
[2] Data Sheet of: Specifications for ispLSI 1048C. Lattice Semiconductor Corporation. August 2000.a
[3] Data Sheet of: TMS320C54XDSP Cpu &Peripherals. TI. April, 1999.
[4] Data Sheet of: 2-Megabit 3-volt Only Flash Memory AT29LV020. Atmel Corporation. May, 2002
[5] Data Sheet of: Technical Specification Model NO.: PD064VT5. PRIME VIEW INTERNATIONAL CO.,LTD. May,2004.
[6] 李刚.数字信号处理器的原理及其开发应用.天津:天津大学出版社.2000.4。
[7] 王沛,李玉山,林裕伦.IEEE1394视觉系统中DSP控制处理器的软硬件设计.电子技术应用.2004.12.