CCD采集

2024-05-10

CCD采集(精选7篇)

CCD采集 篇1

电荷耦合器件( Charge - Coupled Device,CCD) ,又称图像传感器,广泛应用在天文观察、卫星成像、医学摄像等领域[1]。在实际应用中,线阵CCD驱动信号一般为复杂的周期信号,导致其驱动电路复杂多样,易受外界干扰,工作不稳定。CCD成像电路的设计重点在于对CCD输出的模拟信号进行放大、相关双采样、A / D转换等,转换为数字信号后再进行处理[2]。高速线阵CCD采集系统,设计难度大、电路实现复杂,采用CPLD ( Complex Programmable Logic Device) 可解决这一难题,应用Verilog HDL语言进行逻辑功能模块的设计,以产生CCD的驱动时序、A/D转换的时序以及采集的数据存储与传输的控制信号[2]。该设计发挥了CPLD高速并行且“可编程”的特点,简化了硬件设计上的难度,能实现CCD的高速采集,成本大幅降低[3]。

1 总体设计

本系统采用外接DC 19 V电源供电,再通过DC /DC电压转换芯片转换到各模块所需的电压。使用自然光作为线阵CCD的光源,通过CCD信号处理及A/D转换电路,将CCD的RGB三通道的数据通过USB2. 0接口实时传至PC上位机,以Altera CPLD为控制核心,系统框图如图1 所示。

2 硬件设计

2. 1 CCD驱动电路设计

线阵CCD生产厂家众多,例如SONY、Toshiba、Kodak、DALSA等。不同厂家的CCD工作原理与驱动时序大致相同,因此在设计上有一定的通用性。综合考虑光谱响应度、性能、价格等方面因素,设计采用Kodak的RGB三色线阵CCD KLI14403 作为感光元件,该元件具有高灵敏度、低暗电流的特点[4],主要特性参数如表1 所示。

KLI14403 是一个三通道单边输出二相驱动的线阵CCD器件,对于RGB中的任何一个通道而言,光敏元直接与一个移位寄存器相连接,在时钟信号的驱动下,像元逐个移位输出。常用的线阵CCD驱动方案有两种,即采用单片机驱动,或采用PLD驱动,单片机驱动电路编程灵活,调试简单,但驱动速度慢、效率低。而采用PLD器件,由于其高速并行的特性,能灵活实现CCD的驱动,并且能实现高速采样、存储、通信。本系统采用Altera MAX II系列的EPM1270T144C5芯片[5]。

参照KLI14403 的数据手册,通过RTL网表设计,实现了KLI14403 的驱动时序,其Modelsim仿真图如图2 所示[6]。h1a和h1b信号是CCD的相时钟1 信号,h2a和h2b信号是CCD的相时钟2 信号,两个相时钟的相位相差180°,时钟频率为500 k Hz。tg_sig控制CCD的积分时间,通过改变tg_sig信号的周期可改变CCD的积分时间[7]。

2. 2 ADC电路设计

在CCD输出的模拟信号中,电荷包在沟道转移和复位过程中均会引入噪声。如图所示,CCD输出信号的每个像素周期都分为复位电平、参考电平和视频信号电平3 部分,每部分均包含有噪声,实践证明,采用相关双采样( Correlated Double Sample,CDS) 技术来抑制噪声是最有效的手段。目前采用双采样A/D器件AD9826 集成了相关双采样电路,可配置增益放大电路等,完成对CCD信号的模数处理等功能[8]。

AD9826 可配置成6 种不同的操作模式,设计采用3 - channel CDS模式。AD9826 同时采样RGB三通道的输入电压,即CCD的RGB三通道的输出电压。每个相关双采样的采样点分别由CDSCLK1 和CDSCLK2时钟控制,频率为1 MHz,CDSCLK1 时钟的下降沿采样CCD输出的参考电平,CDSCLK2 时钟的下降沿采样CCD输出的信号电平,每个CDS放大器输出CCD复位电平和信号电平的差值。ADCCLK控制A/D转换后数据的输出,频率为3 MHz,ADCCLK的上升沿和下降沿分别输出RGB三通道的高8 位和低8 位数据,其Modelsim仿真图如图3 所示。

2. 3 USB2. 0 通信接口的实现

在完成CCD的图像采集系统之后,需将采集到的数据信息实时传输至上位机以便上位机进行图像处理。其次,通过上位机发送指令实现CCD的采集控制。在此采用了Cypress公司的USB2. 0 控制器CY7C68013 来实现数据通信[9]。CY7C68013 基于Cypress公司的EZ - USB FX2 架构,其内部集成了1 个USB2. 0 数据收发器、1 个增强型的8051、1 个智能USB串行接口引擎等。USB2. 0 支持3 种速率: 低速1. 5 Mbit / s,全速12 Mbit / s和高速480 Mbit / s。本设计中采用Slave FIFO从机方式实现CPLD对FX控制并采用高速模式[10]。当CCD一帧数据采集完成后,则将采集数据写入USB的FIFO中,上位机接收FIFO中的数据,然后通过一些算法对信号进行处理,软件编写不做过多阐述。

3 实验结果与分析

为验证设计方案的正确性,将CCD的RGB三通道输出的模拟信号和上位机显示的波形( 从上至下分别是R、G、B通道信号) 进行对比。图4 是实验1 的信号波形对比图,CCD的中间部位没有光照射,其余部位用同等强度的光照射。根据相关双采样的原理,CCD的输出模拟信号的中间部位出现一个“凸”字形的波形,因此处的光照较弱,参考电平和信号电平几乎相同,两者的差值基本为零,因而上位机显示的波形中间会显示一个“凹”字形的波形。图5 是实验2 的信号波形对比图,对整个CCD采用相同强度的光照射,以R通道为例,参考电平和信号电平的差值电压近似为0. 75 V,通过16 位的A / D转换后的数值应为24 576,上位机显示的R通道的数字信号值近似为24 500,两者误差不足1% ,因此该方案具有一定的可行性且精度较高。

4 结束语

系统总体性能较好,上位机能正确显示采集到的CCD数据,噪声在允许的范围内,在不同的工作环境下,系统性能稳定。这得益于CPLD的高速并行处理能力,从而能成功实现数据的高速采集。最终通过USB2. 0 接口实现数据的高速传输,保证了通信速度的要求。同时,本设计具有一定的通用性,只需在程序上稍作改动便可适用于其他多款型号的CCD,有一定的科研价值。

参考文献

[1]王庆友.图像传感器应用技术[M].北京:电子工业出版社,2003.

[2]黄正瑾,徐坚.CPLD系统设计入门与应用[M].北京.电子工业出版社,2002.

[3]于庆广,张晓明,王浩,等.CCD视频采集系统设计和实现[J].仪器仪表学报,2006(S2):1365-1366.

[4]贲永志,陈丽娟.彩色线阵CCD三通道数据采集系统[J].仪器技术与传感器,2008(2):30-31,33.

[5]EDA先锋工作室.Altera FPGA/CPLD设计:高级篇[M].北京:人民邮电出版社,2005.

[6]付天舒,赵春晖.基于Verilog的线阵CCD驱动时序设计[J].光学技术,2010,36(5):740-743.

[7]喻川,邹建.基于CPLD的可调积分时间线阵CCD驱动的设计[J].四川兵工学报,2008,29(3):94-96.

[8]侯新梅,李自田,胡炳樑.AD9822及其在面阵CCD系统中的应用[J].现代电子技术,2010,33(20):191-193,196.

[9]萧世文.USB2.0硬件设计[M].北京:清华大学出版社,2002.

[10]谭安菊,龚彬.USB2.0控制器CY7C68013与FPGA接口的Verilog HDL实现[J].电子工程师,2007,33(7):52-55.

CCD采集 篇2

基于CCD图像传感器的尿液信息检测装置通过不同波长LED照射浸过尿液的试纸,试纸上试块的颜色信息在多波长LED照射过后转换成反射光强度信息经线性阵列CCD图像传感器TCD1209D采集,供数据分析系统进行数据分析处理,由此即可得到准确的诊断信息。

本文简介了试纸法尿液检验现状,并详细阐述了尿检仪核心模块———CCD颜色信息采集系统的设计。

1 试纸法尿液检验现状

试纸法是现代临床检验中的一种常用方法,一般是将体液涂敷在经化学处理的试纸上,通过试纸上检测剂与体液中特定成分反应引起的试纸颜色变化诊断病情。试纸检验法由于检测设备成本低、使用方便等特点十分适合家庭医疗应用[2]。

试纸法属于干化学分析方法,其结果分析方法主要有差示电位法和反射光度法两种,尿液试纸主要采用反射光度法进行检验[3]。试纸的反射率R遵循如下公式[4]:

其中,X为试纸上固相反应层厚度,K为单位厚度的光吸收系数,S为固相反应层的散射系数,

尿常规检验试纸瓶上通常印有色标用于比对,但这种人工比对的方法无法实现定量测量,且对于最需要家庭健康检查的中老年人群,通过细微的颜色变化进行自我诊断存在实际的困难。因此,借助仪器来判读试纸信息是有价值的。

2 系统设计

系统主要由供电模块、CPLD可编程逻辑器件、CCD图像传感器和信号的处理电路组成,其中CPLD采用Altera公司的EPM7064S,CCD图像传感器采用东芝公司的TCD1209D,控制及信号处理采用STM32系列ARM芯片。系统的总体框图如图1所示。

电源模块输出+12 V、+9 V直流电供装置使用。EPM7064S产生的CCD控制信号接入6输入的反相器以转换电平并增加其驱动能力,再连接至CCD各控制脚,该控制信号同时作为ARM板的采样标志信号。CCD图像传感器根据采集到的光强输出相应的模拟信号,其输出电压为2.4~5.6 V之间,使用信号处理电路将CCD输出信号放大整形至0~3.3 V,供ARM内置的ADC直接采样。

3 CCD图像传感器TCD1209D简介

TCD1209D是东芝公司的低暗电流[5]、高灵敏度线阵图像传感器,具有2 048个有效光敏单元,光敏单元尺寸为14μm×14μm,其中心距亦为14μm。TCD1209D的内部原理图如图2所示。

从原理图可看出,TCD1209D由光敏单元区(Photo Diode)、转移栅(Shift Gate)、CCD模拟移位寄存器和信号输出缓冲器4部分组成。其中光敏单元区的光敏单元前面部分的D13~D31和最后面部分的D3~D39是虚设单元,虚设单元经光学涂黑,用于校正输出信号的基线温漂[6]。真正有效的是中间的S1~S2048共2 048个光敏单元。转移栅相当于开关,当其关闭时,光敏单元区和CCD模拟移位寄存器被分隔成两个独立部分,光敏单元根据光信号积累电荷(称为光积分阶段),而CCD模拟移位寄存器则运行移位功能,两部分互不干扰,独立进行。转移栅打开时,光敏单元把电荷信号并行传输给移位寄存器,再由移位寄存器串行传输到输出缓冲器中,此时移位寄存器的输出是由脉冲信号准1和准2控制。输出缓冲器将输出的电荷信号进行处理,使信号更加稳定,最后在CP和RS信号的作用下,将稳定的模拟信号输出到OS端,这样即完成了整个CCD传感器的工作流程。

TCD1209D共有22个管脚,其中有用的管脚有9个,其功能如表1所示,时序如图3所示。

从图3可知,TCD1209D传感器的驱动脉冲信号共6个,其中ф2和ф2B信号相同,ф1和ф2互为反相,SH信号的高电平(电荷传输阶段)时间必须大于1 000 ns(典型值为1 500 ns),CP和RS信号的高电平时间须大于10 ns(典型值为100 ns)。根据脉冲间相位要求可知,当SH为高电平时,ф1必须为高电平,而ф2和ф2B以及RS和CP必须为低电平;在RS信号为1时,ф1脉冲信号必须比SH信号提前至少200 ns置高,且比SH信号至少延迟200 ns才能置低,以保证在SH转移门传输电荷信号时不受到移位信号的影响。同样,CP信号置低须比SH置高至少提前200 ns,而RS信号从低置高则至少比SH信号从高置低延迟200 ns。RS信号和CP信号必须出现在ф2B的高电平阶段,且RS信号相位超前于CP的相位,CP信号下降沿提前于准2B信号下降沿的典型时间值为50 ns。在SH为低电平期间(光积分阶段),至少有前面32个虚设单元信号和后面8个虚设单元信号(其中最后一个为校验位输出)以及中间的2 048个有效的光敏单元信号,即共有2 088个信号输出,因此必须保证至少有2 088个ф1、ф2、ф2B、RS、CP信号。

4 CCD驱动电路硬件设计

尿液信息采集系统的硬件核心是CCD图像传感器的驱动。目前CCD图像传感器芯片的驱动方案主要有EPROM、专用芯片、单片机、可编程逻辑器件4种[7],考虑到对多种线阵CCD的通用性,本装置采用基于可编程逻辑器件(CPLD)的驱动方案。驱动电路如图4所示。

由于TCD1209D的驱动信号频率很高,为保证信号完整性,在反相器与TCD1209D连线上串入了小电阻,其作用主要有:(1)提高信号源与信号线间的阻抗匹配以减少信号振荡等不利于信号传输的情况;(2)削弱信号的边沿尖峰,串联上小电阻后电阻与信号线中的分布电容形成RC滤波电路,可以消减尖峰信号的发生,使得输入信号更加平缓[8]。

CCD输出信号经基于运放的电平变换、放大等信号调理电路后方可送入ADC采集。须注意的是,由于CCD输出信号的频率比较高,典型值为1 MHz,所以对运放的要求也非常高,须选择高带宽、高电压摆率的型号,如美国Analog Devices公司的AD8031或AD8051运放。

5 CPLD软件设计

线阵CCD的驱动可分为光积分开始、光积分与电荷移位、光积分结束、电荷转移4个阶段,系统工作即是这4个阶段的不断循环进行。所以只要分析出4个状态各自的波形,再让状态机不断在4个状态中循环执行,即可实现CCD信号的输出。

当外部光源发生显著变化时,需要改变光积分的时间。可通过改变驱动脉冲信号的频率或在一个驱动时序周期末增加空驱动脉冲的方法实现。

编写的Verilog HDL程序在Quartus II中仿真的波形如图5所示(反相)。

软件仿真和硬件调试证明,CPLD输出的波形满足TCD1209D驱动要求[9]。

6 系统调试分析

通过改变CCD外部光线强弱可得到变化的信号输出,波形如图6所示。

通过对比可知,当光线强时CCD输出的信号峰峰值大,在光饱和时甚至产生尖峰信号;当光线减弱时CCD输出信号峰峰值减小且输出电压最小值增大;当完全遮挡住时输出信号与第一个阶梯处持平。其中CCD有效输出电平均为信号最底部的平坦部分。

7 实验结果

用尿液采集系统读取尿10项试纸,各试纸块上的反射光强度AD采集结果如表2所示。

表2中,1、2组数据是在黑暗背景条件下相同样品测试的结果,3~6组数据是在明亮背景条件下不同样品测试的结果。从数据可得出,在特定环境下采集的数据具有一致性能,能满足家庭诊断要求,系统采集的数据稳定可信。但环境光对测量结果有影响,因此在产品化时应在光学检测机构中增设遮光措施,同时,在数据处理过程中需要根据试纸白色基底部分的反射光数据作修正。

CCD采集 篇3

伴随着半导体制造工艺的进步,现场可编程门阵列(Field Programmable Gate Array,FPGA)器件的设计技术也取得飞跃性的发展[1]。凭借日益丰富的片内资源以及固有的并行处理能力,FPGA的应用范围已经超出通信行业,逐渐扩大到数字信号处理、硬件加速[2,3,4]、汽车电子等领域。色选机通过对被测物体的图像进行处理,判断被测物体是否符合要求,实现筛选[5],其电子系统涉及图像采集、信号处理、图像显示、串口通信等。FPGA可实现上述功能。与常见的FPGA+ARM/DSP+PC方案相比,在FPGA内实现图像采集、处理与显示可简化色选机系统结构,提高经济性。本设计搭建了实现图像采集、图像处理与图像显示的完整的硬件平台,完成了图像采集与图像显示的逻辑设计,并预留了充裕的FPGA片内资源,留作图像处理模块使用,具有较高的实用性。

1 系统设计

如图1所示,本系统由图像采集子系统与图像显示子系统组成。图1中大虚线框内的各模块均为FPGA内部逻辑设计模块,细箭头表示控制信号流向,空心粗箭头表示图像信号流向。采集子系统包括RS232通信芯片、总线缓冲器、线阵电荷耦合器件(Charge Coupled Device,CCD)传感器、CCD缓冲放大器、CCD模数转换器、双口随机存取存储器(Random-Access Memory,RAM)模块和图像采集模块。显示子系统包括同步动态随机存储器(Synchronous Dynamic Random Access Memory,SDRAM)、视频解码芯片、视频图形阵列(Video Graphics Array,VGA)监视器、图像缓存模块和图像显示模块。顶层控制模块统一控制图像信号的采集、缓存与显示。下文分别就两个子系统进行阐述。

1.1 图像采集子系统设计

图1中,CCD采用东芝公司生产的TCD2566BFG彩色线阵图像传感器。该型传感器灵敏度高,暗电流小,采用两相5 V时钟脉冲驱动,含有3行彩色光电二极管阵列与1行黑白光电二极管阵列,每行阵列中光电二极管数量为5 340个[6]。FPGA采用Altera公司生产的Cyclone III型EP3C5E144C8芯片。该芯片内含5 136个LE、46个M9K Block、23个乘法器,以及414K片内RAM[7]。串口通信芯片为MAXIM公司生产的MAX3232。

图像采集模块完成采集子系统的核心功能———驱动CCD传感器。该模块接收外界指令,配置CCD行频及每英寸点数(Dots Per Inch,DPI),产生CCD时钟脉冲与控制信号。模块由驱动子模块、单口RAM子模块以及RS232子模块构成。驱动CCD传感器前,应先在驱动子模块内设置好CCD的行频与DPI。设置过程如下:单口RAM加载.mif文件进行初始化,在不同的地址预存不同的配置信息。用户根据实际需要,通过RS232子模块,向单口RAM子模块发送不同的读取地址。读取出的不同配置信息传输至驱动子模块,驱动子模块据此向CCD传感器发送不同频率的时钟脉冲,达到改变行频与DPI的目的。参照CCD技术手册,驱动子模块还产生CCD传感器所需的控制信号,经过总线缓冲器传输给CCD传感器,实现驱动。驱动TCD2566BFG需要10路信号,如图2所示。

图2中,SW1为彩色模式与黑白模式选择信号;SW2为时间延迟积分(Time Delay Integration,TDI)功能选择信号;SCG为存储清除栅(Storage Clear Gate)脉冲信号;SH为转移栅(Shift Gate)脉冲信号,其为高电平时,转移栅下势阱允许MOS电容中的信号电荷包转移到模拟移位寄存器中,为低电平时,二极管进入光积分状态[8]。时钟Φ1A与Φ2A为三行彩色光电二极管阵列的驱动时钟,频率均为35 MHz,相位差为180°。时钟Φ1B与Φ2B为一行黑白光电二极管阵列的驱动时钟,CCD工作在彩色模式时维持低电平。Φ1A、SCG、SH、RS、CP可利用计数器产生其波形。对Φ1A取反可得Φ2A。复位信号RS与电平钳制信号CP的占空比为1:8。关键源代码如下(pixel_counter为140 MHz时钟下的18位计数器):

CCD被正常驱动后,产生的模拟图像信号,经过缓冲放大器传输至CCD专用模数转换器AD9945。AD9945完成图像信号的模数转换,并将采集到的一行数字图像信号写入片内双口RAM中。至此,采集子系统完成CCD图像信号的采集。

1.2 图像显示子系统设计

显示子系统中,图像缓存模块与图像显示模块完成显示子系统的核心功能,即缓存图像与显示图像。图1中,SDRAM采用Hynix公司生产的HY57V64820HG芯片,位宽8 bit,内含4个Bank,总存储空间为64 MB,用于缓存双口RAM输出的图像信号[9]。视频解码芯片采用Analog Devices公司生产的ADV7123KSTZ140,最高数据吞吐率为330 MS/s[10],可将数字图像信号转换为VGA标准时序的模拟图像信号。

1.2.1 图像缓存模块逻辑设计

当CCD传感器工作在300DPI模式下且行频为3 500 Hz时,其每秒钟产生的数据量为9.345 MB,小于VGA(1366×768@60Hz)每秒钟显示的数据量73.764 MB,因此有必要对CCD图像数据进行缓存,当缓存的图像数据达到VGA一帧的数据量时,再将数据发送至视频解码芯片进行显示。显然,FPGA片内RAM无法提供足够的存储空间,使用片外SDRAM很有必要。

图像缓存模块内含图像裁剪、片内FIFO以及SDRAM控制器3个子模块。

在缓存图像之前,需要对图像信号进行裁剪,使其符合VGA标准时序。TCD2566BFG传感器工作在300DPI模式下,输出图像一行像素点数量为2 670,工作在600DPI模式下,一行像素点数量则为5 340。对于1 366×768分辨率的监视器,每行能够显示的最大像素点数量为1 366点。为此,对双口RAM输出的图像数据进行了裁剪:即300DPI模式下,每读取双口RAM数据一次,读取地址递增2;600DPI模式下,每读取一次数据,读取地址递增4。经过裁剪后,实际显示的图像每行为1 335像素,在首尾各添加15点空白像素后,图像信号符合VGA显示标准时序。采用多监视器或高分辨率监视器显示,也可以解决CCD图像与监视器每行像素点数量不同的问题。

图像信号从双口RAM输出的时钟频率是40 MHz,而SDRAM读写数据的时钟频率为100 MHz。因此,在SDRAM控制器两端各例化一片异步先进先出(First In First Out,FIFO)存储器,实现图像数据的异步读写。SDRAM工作在页读写模式,突发长度512 B。读写FIFO位宽8 bit,深度1 024 word,利用其先入先出与可同时读写的特性,可实现一帧图像的持续写入与读出。图像缓存模块的工作流程如图3所示。

图像经过裁剪后,即可传输进SDRAM内。SDRAM正常读写数据前必须进行初始化,以设置突发长度、列地址控制器(Column Address Strobe,CAS)潜伏期和操作模式。SDRAM初始化完毕后,即拉高wrfifo的写使能。图像数据以40 MHz的频率从双口RAM向wrfifo写入,直到写完一帧VGA图像后才拉低wrfifo写使能。当wrfifo内部数据大于512 word(半满)时,则拉高wrfifo的读使能,读出图像数据,以100 MHz的频率写入SDRAM。SDRAM完成一页(512 B)数据的写入后,暂时关闭wrfifo的读使能以及SDRAM的写使能,当wrfifo内部数据量再次大于512 word时,则再一次读取数据,写入SDRAM。重复该过程,持续向SDRAM写入图像数据。SDRAM内部写满一帧图像后,开始读SDRAM过程。检测rdfifo内部数据量,小于512 word时,拉高SDRAM读使能,以100 MHz频率向rdfifo写入图像数据。读完SDRAM内一页数据时,暂时关闭SDRAM读使能以及rdfifo写使能,等待VGA显示请求。收到VGA模块的显示请求后,拉高rdfifo的读使能,数据以85.5 MHz的频率传输至显示模块。凭借FPGA的并行特性,缓存模块在每一个时钟上升沿都可检测rdfifo的内部数据量。在rdfifo读出数据到VGA过程中,一旦检测到rdfifo内部数据量小于512 word,即拉高rdfifo的写使能,在读取数据的同时,写入数据。上述过程可实现一帧图像数据的连续写入和读出。由于系统采用的SDRAM无法同时进行写和读两种操作,因此本文采用了两片HY57V64820HG进行乒乓操作:SDRAM1进行读出操作,向ADV7123KSTZ140输出信号时,SDRAM2则从双口RAM写入数据;反之亦然。通过乒乓操作,实现了图像帧与帧之间的连续传输。

1.2.2 图像显示模块逻辑设计

VGA是IBM公司于1987年提出的一个使用模拟信号的显示标准。在1 366×768@60 Hz模式下,扫描一帧图像需要16.7 ms,其中实际显示图像的时间为12.3 ms。图像扫描过程从左往右,从上往下。设置一个计数器记录扫描的位置。当扫描至一行图像的左端点时,则开始将一行图像信号传输至视频解码芯片,扫描至右端点时,则停止图像信号的传输。纵向扫描的原理与此相似。图像显示模块还生成视频解码芯片需要的时钟脉冲、行场同步信号以及消隐信号。图像显示模块关键源代码如下:

2 软硬件综合调试

利用FPGA集成开发环境Quartus II 11.0软件自带的Signal Tap工具,可以检测FPGA内部信号的真实值。将逻辑设计的顶层模块文件在Quartus II 11.0软件中全编译,生成.sof文件,利用JTAG接口将文件烧录进FPGA在线调试。驱动模块输出的驱动信号以及双口RAM输入的数字图像信号如图4所示。对比技术手册时序图,Signal Tap抓取的信号表明,驱动线阵CCD所需的10路信号被正确地产生了。结果如图4中的DATA_R、DATA_G、DATA_B信号所示,FPGA成功接收到了由线阵CCD产生的数字图像信号。图像采集子系统完成了设计目标。图像在监视器上显示结果如图5所示。线阵CCD传感器需以特定速度扫描被测物体才能得到二维图像。测试中,被测物体油茶果匀速通过CCD传感器下方,CCD传感器保持固定。显示设备为通用即插即用监视器,分辨率1 366×768。显示画面稳定,无失帧,无噪点。

3 结论

Signal Tap抓取的信号波形和监视器显示的画面表明系统基本上实现了设计目标,即使用FPGA芯片完成CCD图像信号的采集和显示,证明了系统软硬件设计的正确性。全编译结果显示,FPGA内部LE只使用了44%。利用剩余的资源,可以对图像信号进行图像处理,处理结果通过串口传输至筛选执行机构,执行筛选动作。配合不同的CCD传感器,该系统可广泛应用于安检、医疗影像、遥感测绘等领域,具有较高的实用价值。

参考文献

[1]杨海钢,孙嘉斌,王慰.FPGA器件设计技术发展综述[J].电子与信息学报,2010,32(3):714-727.

[2]RUBIN G,OMIELJANOWICZ M,PETROVSKY A.Reconfigurable FPGA-based hardware accelerator for embedded DSP[C].14th International Conference on Mixed Design of Integrated Circuits and Systems,2007:147-151.

[3]POSSA P,SCHAILLIE D,VALDERRAMA C.FPGA-based hardware acceleration:A CPU/accelerator interface exploration[C].Electronics Circuits and Systems(ICECS),2011 18th IEEE International Conference on.IEEE,2011:374-377.

[4]ZARIFI T,MALEK M.FPGA implementation of image processing technique for blood samples characterization[J].Computers&Electrical Engineering,2014,40(5):1750-1757.

[5]温强,胡明明,桑楠.基于彩色线阵CDD的大米色选算法[J].农业机械学报,2008,39(10):105-108.

[6]TOSHIBA.TCD2566BFG[Z].2012.

[7]ALTERA.Cyclone III Device Handbook[Z].2011.

[8]王庆有.CCD应用技术[M].天津:天津大学出版社,2000.

[9]HYNIX.HY57V64820HG[Z].2002.

CCD采集 篇4

这里介绍的运动物体图像采集和计时系统, 利用高速彩色线阵CCD作为图像传感器, mcs-51单片机89c52作为主控制芯片, 扩充相关外围设备, 不仅实现运动物体图像采集、数据传输、存储等功能, 还提供由外部控制信号控制的计时功能, 由单片机将图像与计时时间数据相互融合, 通过计算机软件的后期处理程序, 可得到图像与时间两个数据源, 可为测距、测速、图像识别等领域提供良好的方案支持。

1 系统结构示意图

系统结构示意图如图1所示:

2 线阵CCD及其驱动电路的硬件设计

2.1 CCD所需脉冲信号电路设计

本系统所用的图像传感器芯片是高速低暗电流的R、G、B彩色三线的线阵CCD“TCD2252D”, 像敏单元数为2700;像元尺寸为8μm×8μm;像元中心距为8μm;像元总长为21.6mm。线阵CCD器件需要复杂的二相交叠驱动脉冲信号, 主要包括SH:移位脉冲 (又称光积分脉冲) ;/RS:复位脉冲信号;/SP:采样保持脉冲信号;/CP:箝位脉冲信号;Φ1、Φ2:交叠移位脉冲信号。这些控制信号的时序要求比较高, 因此, 需要选用大规模逻辑处理芯片cpld来作为驱动脉冲信号的发生器件。tcd2252d典型的最佳工作频率是1MHz, 该器件具有2700个有效像元输出。tcd2252d正常工作时要有若干暗电流哑元、测试校验信号, 每线的完整输出为2776点。由cpld产生的各脉冲信号经过74HC245进行整形和驱动能力的放大后, 然后再送至tcd2252d器件的相应输入端, 在CCD的模拟信号输出端将得到信号OS和补偿信号DOS。

2.2 CCD模拟信号的数字化处理及传输

CCD输出的模拟信号是与光电荷量成正比的弱电压信号, 由于其输出的模拟信号很微弱, 需要经过滤波、放大处理。根据TCD2252D的输出特性 (其输出电压信号与光强信号成反比) 和放大器的功能, 采用“反向放大+射极跟随”的运算放大电路, 放大器的反向输入端叠加图像信号和一个-5V的电压, 在下一级运算放大电路中加入射极跟随器, 并通过实验确定放大倍数, 经过信号整理后, 转化为一个幅值在为0~5v之间变化的标准A/D转换输入模拟信号, 提供给A/D转换器TLC5510。

TCD2252D能够提供三线2700个有效图像像元, 而设计的目标是得到三线768个有效图像像元, 这就需要进行图像像元的择取。本设计中, 采用三片相同的A/D转换器分别将相互对应的三线 (红、绿、蓝) 像元信号同时进行A/D转换, 设计A/D转换器转换时钟脉冲信号频率为数据时钟信号频率的的1/3, 然后, 利用A/D转换器的转换保持功能, 控制输出数据的时序, 使其转换后的三个数据输出按设计好的时序依次输出。这样, 图像像元的数量变为原来的1/3, 并且三路数据融合为一路数据输出, 大大减少了数据总线的宽度, 为数据传输提供了方便。

在数据传输方面采用标准的RS422数据传输方式, 将数据信号, 相对应的控制时钟信号传递给下一级功能部分, 实现数据的存储及计算机数据交换功能。

3 数据存储及各外部设备的协调设计

这一部分的设计需要完成以下功能: (1) 图像数据缓存; (2) 计算机数据交换; (3) 相对时间计时统计; (4) 计时时间显示; (5) 外部中断信号响应。

根据以上要求, 采用MS-51系列单片机89C52作为控制器, 完成各部分设备的控制协调工作:统计计时时间, 响应外部中断信号, 并且发布计时时间数据给外部显示设备;用静态RAM作为存储器, 完成图像数据的缓存功能, 并通过单片机实现与计算机的数据传递。

单片机等待外部中断信号来启动数据缓存及计算机数据交换。当外部中断信号有效时, 单片机将时间数据清零, 同时将时间数据通过串口发送给外部显示设备。利用RS422驱动器接收采集后的数据及行信号, 锁存信号。对数据进行缓存处理, 分为两个RAM区, 分别分时进行读/写操作, 并由单片机利用中断通过P0口将时间数据写入RAM区。相应的RAM写操作完成后, 采取计算机存储器映射及交替存储方式将RAM区映射为E0000~EFFFF段寄存器区, 通过ISA总线读相对应的RAM区, 同时对另一组RAM区执行相对应的写操作, 这样读/写操作交替进行, 实现连续的数据存储及交换。在与计算机进行数据交换的同时, 单片机管理及协调各部分工作, 利用P1口, 部分P3口作为普通I/O判断各外围设备状态、各功能键状态, 并利用单片机P2口通过I/O口方式向计算机传递各类控制信息, 通过串口向外部现实设备发送时间数据及外部中断信息。

这部分的设计, 大量的运用了三态门及单片机的中断查询功能, 利用三态中的高阻状态, 实现计时时间数据和图像像元数据的融合, 为了不影响外部中断的响应, 在串口传输过程中采用查询外部中断的措施, 避免了中断嵌套带来的不稳定影响。

总结:以上介绍了利用线阵CCD进行运动物体图像采集的具体设计方案, 详细地阐述了其设计原理及设计思路, 设计方案中运用了单片机及大规模可编程逻辑器件作为控制器件和脉冲信号发生器件, 使系统通用性大大增强, 并提高了系统的稳定性, 使系统在时序同步性能方面得到加强。就像前面所说的一样, 本系统可以为测距、测速、图像识别等领域提供良好的方案支持, 经过二次专业开发后, 能够在相关领域得到应用。

摘要:介绍了基于线阵CCD图象传感器TCD2252D的图像采集及计时系统的构成及设计方案, 分几部分详细描述了CCD驱动脉冲产生电路的设计, CCD输出信号的调整放大电路、A/D换电路的设计, 利用单片机AT89C52作为控制器, 实现了数据采集和存储, 同时协调各种外部设备同步工作, 并利用计算机物理内存映射的方式将采集来的数据传递给计算机, 实现计算机数据存储及采集图像的还原显示, 为计算机软件处理提供图像数据和相对时间数据。

关键词:CCD,D/A转换,单片机,内存映射,数据存储

参考文献

[1]何立民.MCS-51系列单片机应用系统设计系统配置与接口技术[M].北京:航空航天大学出版社.

[2]仇玉章.32位计算机原理与接口技术[M].北京:清华大学出版社.

CCD采集 篇5

近年来基于CCD的微型光谱仪已经得到飞速发展, 国外一些公司 (如Ocean Optics, Aventis等) 已经生产出了一些成熟产品。国内光谱仪的研制起步晚, 虽然有一些研究所和高校已经投入研发力量, 但是与国外相比还有一定的差距。从光谱的硬件采集系统、数据分析系统和软件设计系统方面介绍微型光谱仪数据采集与分析系统的研究过程。

1 微型光谱仪的结构

基于CCD的微型光谱仪工作原理如图1所示, 光线经过狭缝之后进入光谱仪, 经过平面镜M3反射到准直镜M1, 使得光线转换成平行光束, 照射到光栅G后进行分光, 再经过透镜M2成像在CCD的感光面上, 线阵CCD将感光面上的光信号转换成电信号, 经过采集电路的数字化处理之后传输到PC机。微型光谱仪的数据处理系统对采集到的光谱信号进行进一步处理。

2 硬件电路设计

采用索尼公司生产的ILX551线阵CCD, 硬件采集系统主要包括MSP430部分、线阵CCD与电压跟随器部分、AD转换电路、存储电路、通信电路和电源部分。光谱采集系统由MSP430作为主控单元, 完成整个硬件电路的控制, CPLD产生与线阵CCD和外围电路同步的时序信号;电压跟随电路能够让CCD输出信号更加稳定;AD转换电路是将光电转换的模拟信号转换成数字信号;数字处理和存储电路能够缓存数字信号, 等待传送指令;通信电路是让信号更有效的传送到上位机。硬件电路结构如图2所示。

2.1 MSP430部分

硬件采集系统选用MSP430F149作为主控单元对电路进行控制, 同时使用了单片机的一些片上资源, 包括基础时钟模块、IO及外部中断模块和Flash存储器模块。

MSP430F149具有灵活的时钟来源, 包括一个内置的数控振荡器DCO, 该振荡器与外界晶振相连, 经过单片机的时钟模块处理, 产生系统所需要的辅助时钟信号。MSP430F149有6组I/O, 每组8位。MSP430F149是一款Flash存储器芯片, 支持在线编程, 可以方便地对程序代码进行写入与擦除操作。在系统设计中, Flash主要作为程序代码存储器, 通过JTAG方式进行写入。

2.2 线阵CCD与电压跟随电路

该系列CCD的输出阻抗为250Ω, 阻抗较大, 为了提高信号的输出效果, 在ILX551和AD转换之间添加信号放大器, 能够将高输入阻抗转变为低输出阻抗。考虑到CCD的工作频率和单电源的特性, 选择运放AD8041作为电压跟随器。CCD与电压跟随器的电路如图3所示。

2.3 数据处理与存储

(1) AD转换:CCD输出的电荷属于模拟信号, 需要对这些信号进行模数转换。采集系统选择的AD转换芯片为AD9220, 一种低成本、低功耗、高速运行的CMOS模数转换器。

(2) AD转换电路处理的采集数据通过RS-232串口传送到上位机, AD转换产生的数据流大于RS-232的最高通信速率时, 需要一个高速数据缓存器在ADC和上位机之间进行缓存。

光谱采集系统使用的AD9220每次转换产生12bit数据, 但是每片IDT7203只有9bit, 因此要采用两片IDT7023进行拓展。AD9220和IDT7203的连接如图4所示。

2.4 数据处理与存储

采集系统中下位机与PC直接连接, 因为通信距离较短、干扰较小, 所以使用RS-232标准通信协议。MSP430F149完成光谱数据采集, 通过串口将采集到的数据发送到上位机。

光谱采集系统中MSP430F149、CPLD的核心电路都使用3.3V电压, FIFO、AD9220、CCD电路使用5V电压。系统供电电路如图5所示。

3 光谱数据处理

在微型光谱仪的数据处理系统研究中, 主要包括光谱的去噪、寻峰算法处理和波长定标。CCD采集的光谱数据必然包含噪声, 需要对光谱数据进行去噪处理, 否则将影响光谱曲线的准确率;同时寻峰算法和波长标定也是光谱仪生产过程中不可缺少的一个环节。在寻峰算法和定标的过程中, 实验需要采用低压汞灯作为标准光源。

3.1 组合滤波器去噪处理

微型光谱仪所获得的光谱数据含有高斯白噪声和较强的脉冲噪声, 而小波阈值去噪法不能很好地去除脉冲噪声, 而中值滤波也不能很好地去除高斯白噪声, 如果只采用其中一种方法, 虽然可以去噪, 但是效果不是很理想。根据小波阈值和中值滤波器分别对高斯白噪声和脉冲噪声有很好的去噪效果, 提出一种组合去噪方法———小波阈值法和中值滤波相结合的光谱去噪方法。组合去噪方法有以下两种模式:

(1) 模式1:首先对含噪信号f (x) 进行小波阈值处理, 得到处理后的信号;再对进行中值滤波, 其相应的数学表达式为:

(2) 模式2:首先对含噪信号f (x) 进行中值滤波;然后再进行小波阈值处理。其数学表达式为:

3.2 寻峰算法

线阵CCD采集的光谱信号经过模数转换后, 得到的是CCD像元序列与光照强度的光谱图, 而在实际工作和实验中, 需要得到的是光照强度与波长之间的关系, 因此, 波长定标在微型光谱仪的设计中有必要的。而在光谱定标的过程中, 对峰值的定位是关键的步骤。采用对称零面积寻峰算法对光谱数据寻峰。

对称零面积卷积变换寻峰的原理就是用面积为零的对称窗函数与采集到的光谱数据进行卷积变换, 再对变换后的数据寻找到最大值以获得光谱的波峰位置。若yi为采集到的光谱数据, 经过对称零面积卷积变换后y′i可以表示为

由于Cj的“0”面积性质和对称性质, 其对信号的基底和趋势的卷积变换的结果都为零, 在光谱存在波峰的地方不为零 (大于零) , 变换值最大的地方就是波峰的位置。

3.3 波长定标

假设六条谱线的波长分别为y1, y2, y3, y4, y5, y6, 通过寻峰算法找到与之相关的像元序列号为x1, x2, x3, x4, x5, x6。寻峰处理之后的光谱数据峰值与CCD像元序列有一一对应的关系, 即 (x1, y1) , (x2, y2) , (x3, y3) , (x4, y4) , (x5, y5) , (x6, y6) 。采用四阶多项式拟合完成光谱的定标, 四阶多项式拟合方程为:

将通过寻峰算法求得的数据代入式 (4) , 得到方程组为:

求解方程组, 得到四阶多项式拟合曲线系数a0, a1, a2, a3, a4, 将该组系数代入式 (4) , 则得到波长与像元序列的对应关系。

4 软件界面设计

选择Visual Studio作为开发平台, C#作为开发语言设计微型光谱仪的软件处理系统。光谱仪软件系统主要包括用户登陆界面, 人机交互界面, 光谱采集界面、数据处理界面、寻峰界面和波长定标界面几个部分。图6为软件设计框架。

各主要界面功能如下:

(1) 人机交互界面:整个软件的主界面, 是整个软件设计的关键。界面主要包括菜单栏、操作区域、状态栏。其中菜单栏包括光谱采集、光谱去噪、寻峰算法、波长标定和用户管理五个部分, 单击这些按键, 便可以进入相应的功能菜单。

(2) 光谱采集界面:主要功能是提供给操作者一个进行数据采集操作的界面。打开通信串口, 选择合适的串口号和波特率, 点击采集按键就可以开始数据的采集。

(3) 波长定标界面:对寻峰处理的实验所得的波峰与像元系列进行波长定标处理, 得到波长与像元序列曲线的各阶系数。

5 实验与仿真

利用研制的CCD微型光谱仪采集到低压汞灯光照强度与对应像元序列号之间的对应关系, 将得到的光谱数据进行去噪处理和寻峰算法处理, 将寻峰算法得到低压汞灯的6条特征谱线以及对应像元序列号代入方程组 (5) , 求解得到四阶拟合曲线的系数, 则光谱波长和线阵CCD各像元间的四阶拟合多项式:

图7为通过光谱数据处理软件得到的波长定标效果图, 波长定标系统能够自动显示曲线的拟合系数。

将寻峰得到的像元序列号代入拟合曲线方程, 计算得到光谱波长。将其与标准的低压汞灯光谱进行对比, 结果如表1所示。

由表1可以看出四阶拟合波长的最高误差为0.204nm, 计算出最小二乘法四阶多项式拟合的均方根误差为0.125nm, 测量结果较为理想, 完全在误差控制范围之内。

6 结语

实验证明该微型光谱仪能够达到预计的性能指标, 最终得到定标波长的最高误差不超过0.25nm, 均方根误差也在误差范围之内。

摘要:从硬件采集电路、光谱数据处理和软件设计等方面, 介绍基于线阵CCD的数据采集与处理系统的开发。

关键词:微型光谱仪,线阵CCD,采集电路,软件设计

参考文献

[1]李腾飞, 李松, 王雅培, 等.钢铁检测微型光谱仪的研制[J].应用光学, 2014, 35 (6) :981-986

[2]施海亮, 熊伟, 邹铭敏, 等.空间外差光谱仪定标方法研究[J].光谱学与光谱分析, 2010, 30 (6) :1683-1687

[3]刘恩超, 郑小兵, 李新, 等.绝对光谱辐照度仪的波长定标[J].光学精密工程, 2013, 21 (3) :608-615

[4]邓奔, 王杰, 姜培培, 等.高峰值功率微片激光器及其在LIBS中的应用[J].中国激光, 2014, 41 (11)

[5]武传龙, 冯国英, 韩旭, 等.微型光纤光谱仪的波长定标分析[J].激光技术, 2012, 36 (5) :682-685

[6]杨少鹏, 高美凤.一种高速线阵CCD采样系统的设计[J].电子设计工程, 2014, 22 (11) :126-129

[7]王伟兰, 谈图, 汪磊, 等.基于线阵CCD的微型光谱仪的研制[J].大气与环境光学学报, 2011, 6 (4) :299-304

[8]毕云峰, 李颖, 郑荣儿.LIBS-Raman光谱对称零面积变换自动寻峰方法研究[J].光谱学与光谱分析, 2013, 33 (2) :438-443

[9]庞巨丰, 郑桂芳, 侯晓凤.对称零面积变换法找峰[J].原子能科学技术, 1987, 21 (3) :270-279

CCD采集 篇6

在现代通信和雷达领域中,宽带、高增益、实时并行处理是现代接收机的重要标志。因而,这种具有高速并行处理能力和特有的大带宽性能的声光处理系统具有巨大的潜在优势。以声光器件为基础的接收机除了具有宽带、高增益、实时并行处理等特点外,还具有容量大,体积小,功耗低等优点。因而,采用声光信号处理技术解决带宽、高增益和实时并行处理问题具有重要意义[1],声光信号的采集系统的设计是整个声光系统关键之一。这里设计了一个基于FPGA和USB 2.0的高速CCD声光信号采集系统,为声光信号采集提供了硬件平台。

1 系统概述

声光信号采集系统框图如图1所示。系统主要由CCD声光信号采集模块、A/D转换模块、FPGA驱动和控制模块及USB接口传输模块四部分组成。

系统上电后,USB设备按照上位机的命令完成对FPGA数据采集参数的初始化设置及采集控制。RL2048P在驱动时序的严格控制下工作,采集的模拟信号经专用CCD信号处理芯片AD9822的相关双采样及模/数转换后,缓存在EP2C35内部配置的FIFO中,然后判断当FIFO中的数据达到2 048 B时,向USB控制器CY7C68013A中异步写数据,由于USB设置自动IN模式,可以直接把FIFO中数据传输到PC上位机硬盘文件中,因而可完成CCD声光信号的采集、传输及存储。

2 系统各模块设计

系统各模块设计为:

FPGA驱动及控制模块 系统采用Altera公司的CycloneⅡ系列EP2C35F672C6芯片,具有高性价比及丰富的逻辑资源,可满足系统的要求。有4个PLL,33 216个LE,48 KB存储器资源,可以配置成各种模式的ROM,RAM及FIFO,35个18×18的专用乘法器[2]。FPGA的主要功能是产生RL2048P驱动时序,控制AD9822采样及对其寄存器实现串行编程,内部配置FIFO缓存数据[3]以及与USB接口通信,并传输数据到上位机中。

CCD声光信号采集模块 选用PerkinElmer公司的RL2048P线阵CCD。该芯片主要用于高速信号采集,2 048个有效像元,具有高灵敏度、大动态范围、宽光谱范围等特点[4],最高工作频率为40 MHz,该系统设计为10 MHz。EP2C35的时序驱动输出是3.3 V的LVTTL电平,不能直接驱动RL2048P(多电平要求)。因此,使用DG642和74FCT16244TV芯片完成电平转换,增强驱动能力。图2为RL2048P驱动时序图;图3为使用Verilog HDL编写驱动时序的Quartus Ⅱ仿真。由比较可见,设计完全能满足时序的严格要求。

A/D转换模块 AD9822是ADI公司的专用CCD信号处理芯片,内部集成CDS,PGA,14位ADC、暗电平自动校准、偏置电压控制以及串行接口等功能,采样速度高达15 MHz[5]。ADCCLK的下降沿输出数据的高8位,ADCCLK的上升沿输出数据的低6位。AD9822采样控制时序及寄存器编程都是由EP2C35实现,与RL2048P输出信号同步,保证采集数据的正确性。采用相关双采样模式可以抑制CCD的复位噪声,本系统设置其寄存器分别为0x0058,0x10C0,0x2000,0x50FF。

USB接口传输模块 USB 2.0协议的传输速度高达480 Mb/s,且具有接口简单及误码率低等优点,能够满足该系统高速传输的需要。选用Cypress公司的新一代低功耗CY7C68013A芯片,与之相应的开发包和开发文档较齐全,缩短了开发周期,降低了开发难度[6]。为了保证数据传输的速度,CY7C68013A工作于Slave FIFO模式,不需要EZ-USB FX2LP的CPU干预,即可完成与FPGA的数据传输[7]。EP2C35与CY7C68013A的通信采用了Slave FIFO模式下的异步方式,向大端点EP6写数据,配置其为512 B四重缓冲区,批量AUTO IN传输模式,每次自动提交512 B数据。图4为EP2C35与CY7C68013A的接口连接。

3 系统软件设计

系统软件设计包括:

固件程序(Firmware)设计 设备固件的主要功能是控制CY7C68013A接收并处理USB驱动程序的请求[8]。如请求设备描述符,请求或设置设备状态,请求或设置设备接口等USB 2.0标准请求;辅助硬件完成设备的重新枚举、端点配置、控制和监测USB的活动,根据PC主机的命令与外围电路进行数据交换等。Cypress公司为用户提供了一个固件程序框架,是通用性强的模块化程序。在框架的基础上,用户只需要编写Function.c文件[9]即可完成USB功能开发。主要包括:Slave FIFO模式的初始化和用户自定义请求。

驱动程序开发 系统包括两个USB驱动程序:一个驱动专用于下载芯片的固件程序ccdloader.sys,另一个通用驱动程序ccdusb.sys用来实现USB设备与应用程序的通信和控制。芯片固件程序在主机上,当系统上电时,前者将其下载到芯片的RAM中,并由增强型8051微处理器执行。当固件下载完成后,模拟一次断开重新连接,此时下载的固件响应USB枚举,并加载USB设备通用驱动程序。USB的驱动程序是WDM类型,可以使用Windows DDK,WinDriver,DriverStudio开发。

应用程序开发 它的主要任务是与USB驱动程序通信,控制声光信号采集过程。在此用Visual C++6.0进行程序设计。CyAPI控制函数类为FX2LP系列USB接口芯片提供了十分精细的控制接口,只需在应用程序中加头文件CyAPI.h和库文件CyAPI.lib即可调用相应的控制函数,打开USB设备读取数据并存储到主机硬盘中的CcdData.txt文件。

4 实验数据分析

使用TEKTRONIX公司的示波器,对经过隔直处理后的RL2048P输出信号在各种实验条件下进行了测试和分析。如图2所示,VOUT为像元输出信号,每一个像元输出信号的开始都有一个同步参考信号,后面部分才为有效信号输出,由于CCD输出信号为负极性信号,所以有效信号值相对于参考信号为负。

图5为全暗条件RL2048P的输出,由于光敏面上没有光,只有暗电平信号输出,所以像元的输出有效信号几乎为零。图6为弱光条件RL2048P的输出,有效信号幅值发生了变化。图7为全亮条件RL2048P的输出,有效信号到达了饱和值。RL2048P的实际输出和理论分析一致,工作正常。声光信号通过中间有孔的不透光遮挡板照在CCD上,使用应用软件进行数据采集。从CCD Data.txt数据文件中连续提取8 192个像元点即四帧CCD数据,Matlab软件分析如图8所示。

有光照射的位置对应为高,实测数据和理论值吻合。在其他条件下也做相关实验,结果与理论基本一致。由于篇幅所限,本文不做详细介绍。实验结果表明,系统功能完整,可以实现声光信号的高速采集、传输及储存。

5 结 语

系统采用现场FPGA作为硬件设计核心,使用Verilog语言[10]进行硬件描述,使系统更灵活,可在线编程,便于扩展和升级。这里的CCD驱动时序采用状态机与分频相结合的新方法,实际测试驱动波形稳定且没有毛刺,CCD输出信号质量高。USB应用于Slave FIFO高速传输模式,满足了高速CCD声光信号采集的要求,具有实时性、高速、稳定、可靠等特点。

参考文献

[1]程乃平,江修富,邵定蓉.声光信号处理及应用[M].北京:国防工业出版社,2004.

[2]ALTERA Corporation.CycloneⅡDevice Handbook Vol-ume 1[EB/OL].2007.

[3]吴继华,王诚.Altera FPGA/CPLD设计(高级篇)[M].北京:人民邮电出版社,2005.

[4]Perkin Elmer Corporation.P-Series Linear Photodiode ArrayImagers Datasheet[Z].2004.

[5]Analog Devices.Complete 14-Bit CCD/CIS Signal Proce-ssorAD9822.(C)[Z].1999.

[6]Cypress Semiconductor Corporation.EZ-USB FX2 TechnicalReference Manual[Z].2001.

[7]薛园园.USB应用开发技术大全[M].北京:人民邮电出版社,2007.

[8]李英伟,王成儒,练秋生,等.USB 2.0原理与工程开发[M].北京:国防工业出版社,2007.

[9]钱峰.EZ-USB FX2单片机原理、编程及应用[M].北京:北京航空航天大学出版社,2006.

[10]夏雨闻.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,2008.

[11]刘爽,王浩,龙再川,等.一种高速CCD数据采集系统的设计[J].现代电子技术,2008,31(14):1-2,8.

CCD采集 篇7

随着图像处理技术的不断发展与国民生活质量的不断提高,图像处理系统已经被广泛应用于军事、工农业自动化生产等各个领域。目前,常见的图像处理系统主要由图像传感器、图像采集设备、图像处理设备与相关外设组成,图像处理系统组成示意图由图一所示。

常用的图像传感器主要有线阵CCD传感器、面阵CCD传感器和CMOS传感器;图像采集、处理平台的组成主要有PC+图像采集卡、DSP+CPLD等架构,它们在性能、价格、功耗等方面各有优缺点。目前,应用于铁路、公路等行业的移动检测设备当中,仍以面阵CCD图像传感器居多,这类设备不仅需要采集视频图像,还需对外部各种传感器的数据进行采集,并且对系统的体积与功耗有一定的要求。本文针对移动检测设备的特点设计了一种基于ARM7与FPGA架构的面阵CCD图像采集系统,系统利用FPGA的灵活性与ARM微控制器丰富的外设接口,不仅可以满足各种数据采集的需要,同时满足低功耗、小型化的要求。

1 系统设计

系统由图像采集单元与图像处理单元两部分组成,系统结构框图由图二所示。系统图像采集单元由图像A/D转换芯片、FPGA与两片SRAM组成,主要完成对CCD输出的视频信号进行模数转换、解码、视频信号预处理和视频图像数据的缓存等功能;图像处理单元由ARM7微控制器以及相关外设组成,主要完成从视频采集单元中读取视频信号数据并能够对视频数据进行显示、转储、控制其它外部设备等功能。

系统工作流程:CCD输出的视频通过图像A/D转换芯片完成模拟视频信号到数字视频信号的转换,并解码为标准的数字视频信号;FPGA控制检测图像A/D转换芯片输出的各种时序信号对两片SRAM进行乒乓操作,产生相应地址总线与控制总线逻辑输出,将数字视频信号存放在当前空闲的SRAM中,当完成一帧图像存储后向ARM微控制器发送中断信号;ARM微控制器通过FPGA读取将缓存SRAM中的视频信号读取到自身的SRAM中完成显示、处理等功能。

2 系统主要单元硬件设计

2.1 图像A/D转换芯片

本系统中使用图像A/D转换芯片是PHILIPS公司提供的可编程视频输入处理芯片SAA7111A。SAA7111A是一款功能强大的模拟前端和数字视频译码器,它由双通道模拟预处理电路、自动钳位和增益控制、时钟产生电路、数字多标准译码器、色度/饱和度/对比度控制电路、彩色空间矩阵和27MHz数据处理通道七部分组成,可将PAL、NTSC等不同制式的模拟复合视频数据解码成亮度、色度和相关同步的数字信号,适用于各种嵌入式图像采集领域。SAA7111A内部带有彩色空间矩阵,支持YUV4:2:2(16-bit)、RGB565(16-bit)、RGB(24-bit)等多种格式数字图像数据输出,系统设计过程中无须过多关注视频信号的色彩转换单元的设计,提高了系统的灵活性。SAA7111A有32个内部寄存器,所有寄存器均在IIC总线控制下完成配置,系统中使用LPC2210的IIC总线接口完成对SAA7111A芯片的配置。主要配置的寄存器:a.模拟输入控制寄存器(02H),该寄存器低三位用于设置SAA7111的信号输入方式,共8种输入方式可供选择,本系统中使用的为输入通道1输入格式为CVBS,故该寄存器低三位设置为000;b.输出格式控制寄存器(10H),寄存器中的最高两位OFTS1、OFTS0为输出格式选择位,用于决定四种输出格式,系统中设置为00,即输出RGB565格式图像。

2.2 图像缓冲单元

系统中采用的FPGA芯片为Alteral公司ACEX系列的EP1K100QC208,该芯片是Alteral公司着眼于通信、多媒体处理及类似场合的应用推出的一款芯片。该器件采用查找表(LUT)和EAB结合的结构,提供了高效低耗的优良性能。基于LUT的结构适用于实现高效的数据通道、增强型寄存器、数学运算及数字信号处理设计,EP1K100QC208适用于实现复杂逻辑功能和存储器功能,采用2.5V内核,器件功耗低,可以满足嵌入式应用。视频解码芯片的视频数据的输出与ARM的视频图像采集是一个异步过程,为了使系统能够连续的工作,需要在视频解码芯片与ARM之间增加数据缓冲单元。常用的缓冲电路有双口RAM结构、FIFO结构和乒乓缓存结构。系统采用FPGA控制两块SRAM构成乒乓缓存电路,更有利于高速数据的采集以及ARM对图像数据读取的控制。LLC2为SAA7111A输出RGB565的像素时钟信号,HREF为行同步信号,VREF为场同步信号,RTS0为奇、偶场标志信号。在RGB565格式数据输出下,像素时钟信号为13.5MHz,因此两次写数据的间隔约为74ns,系统采用IS61LV51216AL SRAM作为图像缓存,读写速度为10ns,可以满足系统速度要求,使用时将SRAM控制总线与数据总线连接在FPGA的IO引脚上,SRAM的数据读、写时序由FPGA产生。SAA7111A与FPGA数据接口电路图如图三所示。

2.3 图像处理单元

图像处理单元中采用PHILIPS公司提供的LPC2210作为主控芯片,LPC2210是一个基于实时仿真和跟踪的16/32位ARMTTDMI-S CPU的微处理器,通过片内PLL可实现最大为60MHz的CPU操作频率,LPC2210芯片内集成丰富外设,而且具有非常低的功率消耗。LPC2210微控制器带有外部存储控制器(EMC),EMC模块为AHB系统总线和外部存储器件之间提供了一个接口。EMC模块支持4个独立配置的存储器组,每个存储器组的总线宽度可设置为8、16或者32位,但是同一个存储器组的器件必须宽度相同,每个存储器组最大支持16MB寻址空间。系统中,将在BANK1配置一块SRAM用于图像数据处理存储,为减少FPGA的IO管脚的使用,在系统设计中将FPGA映射在LPC2210 BANK2空间,器件映射地址为0x82000001-0x82000002,FPGA与LPC2210接口设计与相关电路如图四所示。FPGA采集完一帧图像后向ARM发送外部中断信号,FPGA检测到ARM读视频数据的控制信号时,自动产生地址信号读取当前存满的SRAM中的数据,并在LPC2210读时序周期内将16bit数据送至LPC2210数据端口。

3 软件设计

系统采用μC/OS-II实时操作系统对系统中各个任务进行管理。μC/OS-II是一个源码公开、可移植、可固化、可裁剪、占先式的实时多任务操作系统。其绝大部分源码是用ANSI C写的,使其可以方便的移植并支持大多数类型的处理器。μC/OS-II在LPC2210中启动代码及主任务流程图如图五所示,系统中图像采集数据量大且对时序要求严格,因此将视频采集任务设置为最高优先级任务。程序采用静态数组的方法申请一块与一帧图像大小相同的存储区域,数组中的每一个元素代表一个像素的数据,系统中为图像采集任务创建了一个信号量,用于在中断激活任务。为提高系统的效率减少系统的切换时间,系统中尽量把与视频处理有关的程序都放在视频采集任务中且每一帧图像的处理时间不应超过30ms。μC/OS-II要求系统函数具有可重入性,因此任务在访问图像存储数组时应关闭中断,这在μC/OS-II中由OS_ENTER_CRITICAL()宏完成,图像存储数组访问完毕后应调用OS_EXIT_CRITICAL()重新开启中断,视频采集任务示意性代码如下所示:

4 结束语

本文采用ARM7微控制器与FPGA架构实现了一种便于小型化与低功耗的面阵CCD图像采集系统,最终可完成数字视频的单帧和连续帧的采集。系统使用接口丰富的ARM7微控制器,可扩展显示、通信、存储以及连接各种传感器等外部设备;采用μC/OS-II实时操作系统管理多任务,提高系统软件的可移植性与开发效率。系统通过扩展GPS模块、距离传感器、角度传感器、LCD显示电路与存储电路在移动检测设备中取得良好的效果。除此之外,还可在FPGA内部实现灰度变换、动态目标检测等图像处理算法,使系统更加灵活。

摘要:针对用于铁路、公路等行业移动检测的面阵CCD图像采集系统对于小型化与低功耗的需求,设计了一种基于ARM7与FPGA架构的面阵CCD图像采集系统。本文介绍了系统设计的基本原理,并着重阐述了图像A/D转换单元、图像缓冲单元、图像处理单元等系统主要组成部分的软、硬件设计。本系统利用FPGA控制视频信号的采集、ARM7微控制器作为图像处理单元,并利用μC/OS-II实时操作系统对多任务进行管理,系统扩展灵活,满足小型化与低功耗的要求。

关键词:面阵CCD,图像采集,FPGA,乒乓缓存

参考文献

[1]周立功.ARM嵌入式系统基础教程[M].广州周立功单片机发展有限公司,2005.

[2]JENAJ.LABROSSE.邵贝贝等译.嵌入式实时操作系统μC/OS-Ⅱ[M].北京:北京航空航天大学出版社,2003.

[3]Philips Semiconductors.SAA7111A PAL/NTSC/SECAM video decoder with adaptive PAL/NTSC comb filter,VBI-data slicer and high performance scaler[DB/OL].http://www.semiconductors.philips.com2000.

【CCD采集】推荐阅读:

采集现状05-12

地震采集05-12

采集信息05-31

智能采集06-14

采集方案06-21

采集监控06-27

准确采集07-02

采集应用07-03

采集能力07-07

采集分析07-12

上一篇:非语言交际能力下一篇:全程就业