文献标识码:A
DOI:10.16157/j.issn.0258-7998.2015.08.037
中文引用格式:王浩健,姚远程,秦明伟. 基于FPGA的高速图像数据采集系统设计[J].电子技术应用,2015,41(8):131-134.
英文引用格式:Wang Haojian,Yao Yuancheng,Qin Mingwei. Design of high-speed image data acquisition system based on FPGA[J].Application of Electronic Technique,2015,41(8):131-134.
0 引言
高速图像数据采集系统实现高速相机拍摄图像数据的采集、实时传输、处理和图像数据存储。通过采集的高速数据,可以观测到高速运动物体的细微变化,从而能够更全面地改进目标,提高目标性能。图像数据采集使用高速面阵相机,相机数据传输接口为Camera Link接口。通过Camera Link接口将图像数据传输到FPGA开发板上进行实时处理,处理后的数据能够用显示器显示以便更好地观测。本文主要研究高速相机和Camera Link接口协议[1],设计一个能够实现数据实时高速传输的Camera Link接口电路,节省FPGA内部资源消耗。同时通过FPGA的缓存处理,在VGA显示器上实现实时图像显示。
Camera Link协议是由一些高速相机生产商和图像采集卡供应商为了降低相机与采集卡之间连接的成本而联合推出的一个标准。设计选用了Teledyne Dalsa公司的PT-41-04M60[2]相机(以下简称为4M60),FPGA板卡采用Xilinx公司Virtex-6系列的XC6VLX240T,相机数据通过Camera Link接口传输到FPGA芯片上进行高速缓存处理。
1 PT-41-04M60相机简介
4M60相机[2]采用Teledyne DALSA专利的CMOS传感技术,在全分辨率4M时帧率可达62 f/s。4M60相机分辨率为2 352×1 728,像素尺寸7.4 μm×7.4 μm,有8/10 bit可选数据位,4路传感器通道,基本(Base)和中级(Medium)两种配置方式。相机上电后电源指示灯会闪烁一段时间表示正在初始化,初始化完毕之后指示灯变为稳定的绿色。在实际操作中可依据相机电源指示灯状态变化情况来判断相机是否正常工作。
计算机可通过向串口发送命令来控制相机工作状态,异步串口命令[3]为ASCII字符,默认1位起始位,1位停止位,无奇偶校验位和握手位,波特率默认为9 600 b/s,通过串口命令sbr m可以改变波特率,m可选择9 600(默认)、19 200、57 600、115 200几种。相机上电后的波特率总是9 600 b/s,通过rc命令可重置相机,但重置后的波特率不是上电后的9 600 b/s,而是最近一次使用过的波特率。
串口每条命令以回车键
2 Camera Link标准与协议
Camera Link接口主要是利用低压差分信号(LVDS),将相机采集的并行数据通过LVDS转换成串行数据高速传输,在接收端再将串行数据转换成并行,以便于FPGA进行处理。Camera Link协议主要包括相机信号和Channel Link技术两个方面。
2.1 相机信号
Camera Link接口规定了相机信号主要分为高速视频信号、相机控制信号、串行通信信号和电源。
(1)高速视频信号
高速视频信号传输图像数据信号,其中包括图像数据和图像使能信号。使能信号有4个:帧有效(FVAL)、行有效(LVAL)、数据有效(DVAL)和备用(Spare)。FVAL为高时表明输出有效行;LVAL为高时表明输出有效像素;DVAL为高时表明输出有效数据。备用信号(Spare)留作备用。相机必须给每个Channel Link芯片提供上述4个使能信号。
(2)高速相机控制信号
Camera Link协议定义了4对LVDS信号用来传输相机控制信号,分别是Camera Control 1(CC1)、Camera Control 2(CC2)、Camera Control 3(CC3)、Camera Control 4(CC4)。4对信号是由图像采集卡发给相机,相机生产商可以根据自己的需要来定义这4组信号。本文使用的4M60相机将CC1作为外同步信号(EXSYNC)来触发相机输出帧数据。其他3个信号未使用。
(3)低速串行通信信号
Camera Link协议使用了两对LVDS信号来传输相机与图像采集卡之间的异步串行通信信号,分别为:由相机发给采集卡的信号SerTFG(Serial communications to The Frame Grabber)和采集卡发送给相机的信号SerTC(Serial communications to The Camera)。两对信号实现了计算机与相机的通信,计算机可以通过串口用ASCII字符对相机进行配置。
(4)电源
Camera Link连接器并不为相机提供电源,相机要通过独立的电缆来供电,本设计中使用的4M60相机的电源插座如图1所示,其引脚配置[4]如表1所示。
2.2 Channel Link
Channel Link接口是利用低压差分信号传输视频信号的新技术。如图2[2]所示为Channel Link主要原理图,Channel Link是由一个并转串驱动器和一个串转并接收器构成一对信号传输线路。在一片Channel Link接口芯片上有5对这样的信号,4对用来传输数据,另外一对用来传输时钟信号。传输数据时,在并转串驱动器端,发送数据按照7:1的比例串行化,这样就将28 bit数据串行转化为4路数据,分别通过差分信号对传输;在接收器端又将4路串行数据转换回28 bit并行数据,方便FPGA进行数据处理。
3 系统设计
高速图像采集系统一般分为图像获取、图像接收、图像控制、图像存储和图像显示几个部分,本设计主要是实现图像的接收和显示,总体框图[5]如图3所示。
3.1 图像的接收和接口控制
图像数据由高速相机发送过来,在基本模式下相机发送的数据包括了24 bit图像数据和4个同步信号,并串转换为4路串行差分信号。在接收端需要将这4路串行信号转换为FPGA能够识别的并行CMOS/TTL信号,所以在图像采集端就需要串并转换芯片实现信号转换。本设计采用了美国国家开云棋牌官网在线客服公司的DS90CR288A[6]芯片实现上述要求。此外,相机控制信号和串行通信信号也需要转换芯片,分别使用美国国家开云棋牌官网在线客服公司的DS90LV031A和DS90LV019芯片实现。基本配置模式具体实现框图如图4所示。
如图4,Camera Link接口选用3M公司生产的MDR26作为信号传输的连接器。在基本模式下相机端和采集卡端各有一个,中级和高级模式下则各有两个MDR26连接器。其详细引脚接口可参照文献[1]。FPGA接收288A芯片转换的28 bit 数据,并可根据相机提供的FVAL、LVAL和DVAL 3个同步信号将接收到的数据通过液晶显示器显示出来。FPGA还可以通过019和031A芯片实现对相机的控制,例如设置曝光模式、输出模式、外同步等。
图5为Camera Link接口基本(Base)配置模式的硬件实现原理图。中级(Medium)配置比图5多了一个MDR26连接器和一块288A芯片,连接方法与图5类似。图中最右边的28个引脚为采集到的图像数据和同步信号的输出引脚,将采集到的数据送到FPGA的FMC连接器上,这样FPGA就可以方便地对数据进行操作。图5中每对差分对之间跨接一个100 ?赘的电阻,用来确保信号的完整性,减少终端信号的反射。硬件模块搭建完毕,就可以进行数据的采集。图6所示为图像数据采集的时序图,从图中可以看出,相机输出的FVAL和LVAL信号都为周期信号,第一个FVAL低电平出发相机发送数据,当FVAL和LVAL同时为低电平时,数据无效。FVAL的两个低电平之间为一行数据。
3.2 图像的显示
4M60相机在Medium模式下,可以同时输出4路(Taps)80 MHz数据,即一个时钟周期可以同时输出4个像素点的数据。像素点的输出方式如图7所示,像素数据从屏幕左边到右边、从屏幕下方到上方依次输出。4通道输出方式下,4个通道依次输出像素点,即通道1依次输出第1、5、9、13、17…2 349个像素点的数据。
像素4通道同时输出时,每个通道的时钟率为80 MHz,4个通道同时输出则为320 MHz的数据率[3]。而VGA显示标准中,最大只能显示108 MHz、1 280×1 024分辨率的图像,达不到要求。所以在显示过程中选一路数据进行显示来验证设计结果。此时,图片的分辨率就变为588×432,根据VGA显示标准表,选择640×480@60显示标准,60为每秒显示帧数,与相机要求匹配,但是640×480显示标准的时钟只有25 MHz,达不到相机的数据率,所以在FPGA中采用了乒乓存储结构[7]对数据进行缓存,从而达到实时显示的效果,显示效果如图8所示。图像未经处理显示效果略有失真,但总体还是比较理想。
4 结论
本文根据Camera Link协议要求,设计和实现了Camera Link硬件电路。充分利用FPGA的高速特性,将采集到的高速图像数据信号以帧为单位选择性地送到显示器上进行显示,达到了单路60 f/s的显示速率,提高了图像处理系统图像接收部分的数据传输量和数据传输速率。
参考文献
[1] Basler.Specification of the camera link interface standard for digital cameras and frame grabbers[Z].Ahrensburg,Germany:Basler,2000.
[2] DALSA. Falcon 4M30 and 4M60 monochrome and color camera manual[Z].2011.
[3] 郝伟,朱明.新型数字相机DS-21-01M60的原理及其硬件接口设计[J].电子技术应用,2007,33(2):56-59.
[4] DALSA.Teledyne DALSA implementation road map[Z].Revision level 02.2011.
[5] 朱齐丹,刘进业,康岭.Camera Link硬件接口电路设计[J].应用科技,2008,35(10):57-60.
[6] National Semiconductor.DS90CR288 28-Bit camera link-75MHz datasheet[Z].Santa Clara,USA:National Semiconductor Corporation,2002.
[7] 董琰,彭琦,李健志,等.基于Camera Link协议的CCD图像采集系统[J].吉林大学学报:信息科学版,2010,28(4):372-377.