《基于ARM9的CMOS图像采集系统的设计与实现129849.docx》由会员分享,可在线阅读,更多相关《基于ARM9的CMOS图像采集系统的设计与实现129849.docx(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于ARM9的CMOS图像采集系统的设计与实现系统简介采用32位ARRM微处理器器、CMOSS图像传感器器和CPLDD为核心器件件,设计实现现面向机器视视觉领域的CCMOS图像像采集系统,主主要功能模块块有SDRAAM存储单元元、图像采集集单元、以太太网传输模块块、UARTT串口通信模模块、Flaash模块、电电源模块等;与传统的“图像采集卡卡-PC-终终端控制设备备”模式的机器器视觉系统相相比,具有体体积小、成本本低、功耗低低、实时性强强、设计灵活活等优点。该该系统可应用用于视频图像像监控、图像像自动检测、医医疗及军事检检测等场所,具具有良好的应应用前景。机器视觉在在国民经济、科科学研究以及
2、及国防建设等等领域都有着着广泛的应用用。在大批量量工业生产过过程中,用人人工视觉检查查产品质量效效率低且精度度不高,用机机器视觉可以以提高生产效效率和自动化化程度。图像像采集系统是是机器视觉系系统的重要组组成部分,目目前图像采集集常用的两种种图像传感器器为CCD与与CMOS图图像传感器。CCCD一般输输出带制式的的模拟信号,需需要经过视频频解码器得到到数字信号才才能传入微处处理器中,而而CMOS图图像传感器直直接输出数字字信号,可以以直接与微处处理器进行连连接。不同的的CMOS图图像传感器有有不同的性能能,主要表现现在图像分辨辨率大小不同同、帧速率不不同、曝光方方式不同等,CCMOS图像像传感
3、器可直直接通过I22C来设置图图像分辨率大大小及曝光、增增益等参数,而而CCD图像像传感器则需需要对视频解解码器进行设设置来控制图图像的曝光、增增益等参数信信息。相对于于CCD图像像传感器,CCMOS图像像传感器具有有低功耗、小小体积、高速速数据传输和和方便控制等等优点,因此此,CMOSS图像传感器器更适用于嵌嵌入式系统应应用中1。本文从实实际应用出发发,采用322位ARM99微处理器SS3C24110A作为CCPU来控制制其他功能模模块,设计实实现面向机器器视觉的CMMOS图像采采集系统,主主要功能模块块有SDRAAM存储单元元、图像采集集单元、以太太网传输模块块、UARTT串口通信模模块、
4、Flaash模块、电电源模块等。与与传统的“图像采集卡卡-PC-终终端控制设备备”模式的机器器视觉系统相相比,具有体体积小、成本本低、功耗低低、实时性强强、设计灵活活等优点。11 系统结构构典型的机器器视觉系统一一般包括图像像采集模块、图图像数字化模模块、数字图图像处理模块块、光源系统统、智能判断断决策模块和和机械控制执执行模块22。其中图图像采集和数数字图像处理理模块的速度度是评价嵌入入式视觉系统统硬件设计的的性能指标,文文献366分别给出出了目前常见见的四种嵌入入式视觉系统统结构:(1) 采用UUSB接口摄摄像头结构3:图像像采集部分的的硬件用USSB接口的CCMOS摄像像头,摄像头头应可
5、与集成成的USB的的CPU接口口直接相连。UUSB接口可可以实现高速速的串行通信信,但USBB摄像头要开开发专门的驱驱动,大大增增加了软件的的开发量和难难度。(2)引入异步FFIFO结构构4:在在图像传感器器和主控CPPU间采用异异步FIFOO解决传感器器输出数据频频率和主控CCPU采集频频率不匹配的的问题,当FFIFO满时时CPU再快快速读取FIIFO数据。异异步FIFOO可以是双口口RAM或者者在FPGAA内开辟。(3) CPLLD为核心的的图像采集结结构5:直接由CPPLD根据图图像传感器输输出的时序信信号,控制SSRAM的读读写,当一帧帧数据信息采采集完毕后向向CPU发送送采集完毕信信
6、号;CPUU需要对图像像进行处理时时,再通过CCPLD到SSRAM里读读取数据。(4) 由外部部中断实现图图像采集结构构6:图图像传感器的的帧同步、行行同步和像元元同步信号分分别与CPUU的一个外部部中断连接,CCPU根据中中断次数来判判断一帧图像像是否采集完完成。通过对几种种方案的对比比分析,综合合实际应用及及开发难度等等因素,确定定系统结构如如图1所示,系系统由图像采采集、图像缓缓冲和图像处处理三部分组组成。在图像像缓存中,CCPLD将图图像传感器采采集的10位位数据移位成成32位,再再通过外部请请求DMA的的办法,由主主控CPU的的DMA控制制器将32位位数据送到RRAM保存。这这样可以
7、减少少常见中低速速图像采集的的资源浪费,又又避免了CPPU响应滞后后的缺点。 图1 图像采集集系统框图2 硬件设计系统总体硬硬件结构图如如图2所示。其其中,图像采采集器采用柯柯达公司的CCMOS单色色图像传感器器KAC96638;图像像的缓存由CCPLD芯片片XC951144和外扩扩SDRM(HY57VV5616220)组成;图像处理核核心部分采用用Samsuung公司的的ARM9(S3C24410A),并并外扩了UAART、以太太网通信接口口、USB口口及LCD人人机接口,方方便系统调试试和与其他设设备交换数据据。 图2 系统统硬件结构框框图 硬件系统统工作流程是是:(1)系系统上电后AAR
8、M9通过过I2C接口口直接对图像像传感器进行行初始化,然然后等待上位位机命令;(2)接收到到上位机命令令后,ARMM9先进行DDMA初始化化,然后向CCPLD发送送采集命令。CCPLD启动动图像采集并并申请ARMM9的DMAA,将一帧图图像的数据保保存到ARMM9的SDRRAM中;(3)完成图图像采集后AARM9进入入DMA完成成,进行图像像处理并将结结果通过串口口输出。2.1 存储器器选择S3C24410A芯片片外部可寻址址的存储空间间是1 GBB,被分成88个存储块,每每块128 MB,各个个存储块由片片选信号nGGCS0nnGCS7译译码产生。数数据总线引脚脚为DATAA0DATTA31
9、共332根,可配配置成8 bbit/166 bit/32 biit的数据宽宽度;地址总总线引脚为AADDR0ADDR226共27根根,支持1228 MB空空间。S3CC2410AA是32位的的微处理器,外外部总线也是是32位,要要充分发挥其其32位总线线性能优势,应应采用32位位的存储系统统。方法是采采用两片166位数据宽度度的Flassh存储器芯芯片并联或一一片32位数数据宽度的FFlash存存储器芯片。本本设计采用了了两片Inttel的E228F1288J3A组成成了16M32bitt的NOR Flashh,其中一片片为高16位位,另一片为为低16位。采采用三星公司司的两片半字字SDRAM
10、M (HY557V5611620)共共同组成一个个16 M32 biit的SDRRAM系统,提提高了其与CCPU的通信信效率。2.2 通信接接口设计2.2.1 UUART及UUSB接口设设计S3C24410A的UUART提供供了三个独立立的异步串行行I/O口,每每个串行口可可以独立地工工作在中断模模式和DMAA模式。UAART使用系系统时钟,支支持最高2330.4 kkb/s波特特率的数据通通信。每个UUART串行行口提供两个个16 B的的FIFO分分别用来做发发送和接收缓缓冲。本系统统采用MAXX202芯片片作为RS-232的接接收器/驱动动器,将UAART0和UUART1连连接到9DBB接
11、头与DSSP和PC通通信。S3CC2410AA有2个USSB主设备和和1个USBB从设备,UUSB设备控控制器允许DDMA模式的的批量传输、中中断传输和控控制传输。在在系统设计中中,USB设设备用来和PPC机通信供供调试用,因因此使用从设设备口(兼容容USB VVer1.11标准)。22.2.2 以太网接口口电路设计S3C24410A片上上没有以太网网口,因此必必须外加以太太网控制器才才能扩展。系系统采用166位以太网控控制器CS88900A,该该芯片的特点点是:符合IIEEE8002.3标准准,支持全双双工收发可达达10 Mbb/s,内置置SRAM收收发缓冲,减减轻了对主处处理器的开销销。以
12、太网电电路如图3所所示,S3CC2410AA通过16位位数据线,220位地址线线连接CA88900A。片片选信号为nnGCS3,即即将CS89900A的内内部寄存器和和帧缓冲区映映射到S3CC2410AA的Bandd4中连续44 KB的存存储区中,主主机可以通过过这个存储空空间直接访问问CS89000A的内部部寄存器和帧帧缓冲区。CCS89000A与RJ-45接口直直接连接一个个网络变压器器,起到电平平转换及电气气隔离的作用用。此外,CCS89000A提供两种种操作模式:I/O模式式和内存模式式,本系统通通过CPLDD选择其工作作模式。FB2022网络变压器RJ-45接口CPLD CS8900
13、A控制逻辑 S3C2410A D0-dd15 A0-aa19 nCSC33 R/W 图3 以以太网口连接接电路结构图图2.3 图像采采集模块电路路设计图像传感器器采用柯达公公司生产的CCMOS单色色图像传感器器KAC96638。KAAC96388是高性能、低低功耗、SXXGA CMMOS有源像像元传感器,具具有以下特点点:(1)KKAC96338是1/22英寸,1 0241 2800有效图像阵阵列的CMOOS图像传感感器,在满足足应用场合所所需的分辨率率条件下,还还具有良好的的动态范围(55 dBB),最小照照度(2.440/Luxx-sec)等性能;(2)KACC9638内内置10位的的A/
14、D转换换器,直接输输出8位或110位的数字字灰度值,在在保证精度的的同时不需另另外接A/DD转换器,大大大简化外围围电路;(33)KAC99638具有有良好的电源源管理功能和和低功耗特性性。数据传送送时芯片的总总功耗为1550 mW。此此外,为进一一步降低系统统的功耗,芯芯片还具有可可编程“上电”和“下电”模式。CMMOS图像传传感器目前普普遍采用I22C总线,本本系统通过SS3C24110A的I22C总线与KKAC96338的SCLL、SDA连连接。由S33C24100A直接完成成对图像传感感器的初始化化。KAC99638内部部嵌入了一个个10位A/D转换器,因因而可以同步步输出10位位的数
15、字视频频流,但是SS3C24110A具有332位的外部部总线,直接接将10位数数据接到总线线上会造成资资源浪费,降降低CPU效效率,因此,KKAC96338和S3CC2410AA之间连接CCPLD,由由CPLD完完成10位视视频数据到332位的转换换,图像采集集接口电路结结构框图如图图4所示。 图44 图像采集集接口电路结结构框图为使S3CC2410AA能像访问内内存一样读取取图像传感器器的数据,将将CPLD映映射到S3CC2410AA的存储单元元上。CPLLD上的图像像缓存片选信信号nGCSS4,地址映映射到S3CC2410AA的Bankk4,地址范范围:0x22000000000xx27f
16、ffffff。实实际只用其中中的一个地址址0x2000000000(即DMAA的源地址)。图像传感感器由S3CC2410AA的clocckout00引脚提供。此此外,PCLLK、HREEF、VSYYNC分别为为像素、行、帧帧同步信号;OE为图像像传感器启动动采集信号;XINT是是ARM9与与CPLD的的外部中断联联络信号;XXDREQ和和XDACKK为S3C22410A的的DMA的请请求和握手信信号。3 系系统驱动软件件设计3.11 I2C串串行总线通信信协议I2C总线线是嵌入式系系统常见的网网络接口,由由SCL(串串行时钟)和和SDA(串串行数据)两两根总线构成成。该总线有有严格的时序序要求
17、,总线线工作时,由由串行时钟线线SCL传送送时钟脉冲,由由串行数据线线SDA传送送数据。总线线必须由主设设备控制,主主设备产生串串行时钟控制制总线的传输输方向,并产产生起始和停停止条件。II2C总线传传输一个字节节的时序如图图5所示。当当主设备写从从设备时,传传输的数据要要跟有从设备备的地址。从从设备不能主主动执行数据据传输,所以以主控设备读读从设备时必必须发送一个个带有从设备备地址的读请请求。本系统统中ARM99是主设备,图图像传感器是是从设备,AARM9通过过I2C总线线改写KACC9638寄寄存器的值完完成初始化。根根据I2C通通信协议,改改变某个寄存存器的值的过过程是:先发发送CMOS
18、S传感器特定定写地址(77位地址+00),紧接着着发送需要写写的寄存器的的地址,再发发送数据;而而要读取某个个寄存器的值值的过程是:先发送CMMOS传感器器特定写地址址,紧接着发发送需要读的的寄存器的地地址,再发送送CMOS传传感器特定读读地址(7位位地址+1),最后接收收数据。 图55 I22C总线一个个字节的传输输时序 3.2 图像采采集CPLDD时序控制CPLD采采集两个100位像元数据据组合成322位(不够的的位用0补充充)可以提高高图像采集效效率。并且设设计中使用DDMA的方式式保存图像数数据,可以减减少CPU的的开销。以CCPLD为核核心器件设计计的图像采集集逻辑结构图图如图6所示
19、示。图6 图形采集集逻辑结构图图逻辑结构图的的工作原理如如下:(1) CLKOUUT0为S33C24100A的输出时时钟引脚,根根据S3C22410A内内部寄存器MMisCCRR中46位位的不同设置置可以输出不不同的时钟,如如系统时钟FFCLK、AAHB(内部部)总线时钟钟HCLK和和APB(外外部)总线时时钟PCLKK等。系统将将其作为CMMOS图像传传感器的主时时钟输入MCCLK。(22) 启动信号SSTART为为S3C24410A的一一个I/O,高高电平有效,由由于KAC99638的启启动信号OEE是低电平有有效,所以它它们之间要连连接一个非门门。(3) VSYNCC为传感器的的帧同步信
20、号号,输出一帧帧有效图像时时该信号一直直为高电平,用用该信号连接接S3C24410A的外外部中断XIINT,使CCPU能控制制一帧图像的的开始和结束束。(4) D9:00为图像传传感器输出的的数据流,DD15:110位用00填充,组成成16位数据据输入到缓冲冲。缓冲的写写入允许信号号是启动信号号STARTT和帧有效信信号VSYNNC的逻辑与与。在缓冲内内两个周期移移位成32位位数据。(55) 缓冲写入时时钟WRCLLK由传感器器的像元输出出时钟PCLLK提高,一一个周期写入入一个10位位A/D值,所所以一次输出出32位数据据时,输出时时钟周期是PPCLK的二二分频。并将将PCLK的的二分频作为
21、为S3C24410A外部部DMA的请请求信号XDDREQ。(6) 片选信号线线nGCS44:作为322位缓冲的控控制线,低电电平有效。在在进行数据采采集时将DMMA方式的源源地址设置在在BANK44范围内,读读操作时即选选中该缓冲。3.3 DMAA方式采集图图像数据程序序设计系统统采集一帧图图像数据的流流程图如图88所示。图8 采集集图像数据流流程图 启动图像采采集:主控CCPU从串口口或其他通信信口接收到采采集命令后,通通过STARRT信号线通通知CPLDD采集信号,CCPLD再通通过硬件引脚脚OE启动KKAC96338采集图像像数据。 DMA初始始化:包括DDMA的源地地址、目标地地址、D
22、MAA次数等初始始化。 开外中断:当一帧数据据采集完成后后,通过外部部中断通知CCPU。 DMA数据据传输无需CCPU干预,一一帧图像完成成后产生中断断。(5) DMA中断断产生并且外外部中断产生生才算是一帧帧图像采集完完成,然后交交由主控CPPU进行处理理。若只有其其中一个中断断产生,并且且等待另一个个中断超时,则则是在采集过过程中丢失了了数据,采集集图像失败。4 硬件调试4.1 硬件调试环境在系统硬件调试中,使用集成开发环境配合JATG仿真器进行调试是目前采用最多的一种调试方式7。集成开发环境选用ARM公司的ADS1.2。JTAG仿真器也称为JTAG调试器,是通过ARM芯片的JATG边界扫
23、描口进行调试的设备。属于完全非插入式(即不使用片上资源)调试。4.2 硬件调试步骤(1)BootLoad系统引导测试先使用英蓓特公司开发的Flash烧写工具将BootLoad程序烧写到Flash,若在PC超级终端上能正确接收目标板的串口返回的启动信息,表明系统正常运行,可以用ADS下载程序到SDRAM进行调试。(2)图像传感器测试I2C配置测试将ADS编译好的bin文件下载到目标板的SDRAM,超级终端接收到返回的图像传感器ID正确,则表明I2C通信正常。通过I2C配置图像大小为3(H)5(V),用示波器测量传感器帧同步(vsync)、行同步(hsync)及像元时钟(pclk)的关系。图像采集
24、测测试为方便便检验采集到到的图像,将将ARM采集集到的图像数数据通过UAART口发送送到PC终端端,再将数据据组合成图像像显示。5、应用前景采用CMOOS图像传感感器、CPLLD和ARMM9的DMAA结合完成图图像的采集是是本系统的特特点。该方法法提高了图像像的采集速度度,减少了CCPU的开销销。CMOSS图像传感器器价格适中,外外围简单,且且集成I2CC接口便于编编程控制;CCPLD将CCMOS传感感器输出数据据移位成322位数据,可可以使传感器器以更高的速速度输出;AARM9的DDMA负责图图像采集,使使得CPU可可以解放出来来处理其他任任务。实验测测试结果证明明,该图像采采集系统硬件件平
25、台方案设设计合理、可可行。该系统统在实际中可可以应用于视视频图像监控控、图像自动动检测、医疗疗及军事检测测等场所,具具有良好的应应用前景。参参考文献11 李继军军,杜云刚,张张丽华等.CCMOS图像像传感器的研研究进展JJ.激光与与光电子学进进展,20009(04):45-552.2 付斌,王王科俊,陆扬扬.基于USSB2.0的的CMOS图图像采集系统统的实现JJ.微计算算机信息,22009(110):966-98.3 李洪洪宇机器视视觉图像采集集设计与研究究D大大庆:大庆石石油学院,22007.4 龙再再川,赵凯生生,洪明坚,等等ARM系系统中DMAA方式在数据据采集中的应应用J国外电子元元器件,20007(2):66-669.5 林志琦,张张修谦,富丽丽,等基于于TMS3220F28112和CPLLD的2000万像素数字字图像采集系系统接口的设设计J长春理工大大学学报,22007,330(2):39-411.6 叶权来,郑郑黎明ARRM9平台下下的CMOSS图像传感器器数据采集系系统J电子工程师师,20077,33(66):70-72.77 符意德德,陆阳嵌嵌入式系统原原理及接口技技术北京:清华大学出出版社,20007