历史上的今天

今天是:2024年09月18日(星期三)

正在发生

2020年09月18日 | 基于ARM和FPGA实时图像采集传输系统的设计

发布者:王岚枫 来源: elecfans关键字:ARM  FPGA  实时图像采集  传输系统 手机看文章 扫描二维码
随时随地手机看文章

图像处理技术的快速发展,使得图像采集处理系统在提高农业生产自动化程度中的应用越来越广泛。目前的图像采集系统有的基于CCD摄像机、图像采集卡和计算 机,有的基于CCD摄像机、解码器、FPGA和DSP,而有的基于CMOS图像传感器芯片、FPGA和DSP,它们在实时性,灵活性,可维护性方面各有优 缺点。而在农业生产中,以基于CCD摄像机、图像采集卡和计算机的系统居多。本文结合实际系统中的前端图像处理和图像数据传输需要.充分利用ARM的灵活 性和FPGA的并行性特点,设计了一种基于ARM+FPGA的图像快速采集传输系统。所选的ARM (Ad-vanced RISC Machines)体系结构是32位嵌入式RISC微处理器结构,该微处理器拥有丰富的指令集且编程灵活。而FPGA(Field ProgrammableGate Array)则在速度和并行运算方面有很大优势,适合图像处理的实时性要求。本文选用Intel公司的Xcale PXA255和Xilinx公司的Spartan-3XC3S1000来实现本系统的设计。


1 系统结构设计

本系统的结构框图如图1所示。图中,图像传感器模块负责图像采集,FPGA用来控制CMOS图像传感器芯片,ARM负责图像数据的交换、以太网芯片的控制 及UDP/IP协议的实现,以太网模块主要实现以太网数据传输,SDRAM用于存储图像数据,FLASH为程序存储器。系统工作时,先由FPGA将 CMOS传感器采集的数据存储到双口SRAM,再由ARM从FPGA的双口SRAM中读取数据并存储到SDRAM,存满一帧图像数据后,ARM便通过以太 网芯片将数据发送给上位机。

基于FPGA+ARM的图像采集传输系统

 

2 系统硬件设计

2.1 CMOS图像传感器模块

本系统采用OV9650作为图像采集传感器。OV9650是Omni Vision公司的彩色CMOS图像传感器,可支持SXVGA,VGA,QVGA,QQVGA,CIF,QCIF,QQCIF模式和SCCB接口,并具有 自动曝光控制、自动增益控制、自动白平衡、自动带通滤波、自动黑级校准等功能。OV9650的最大帧速率在VGA格式时为30 fps,在SXVGA格式时为15 fps。本系统采用VGA格式。


2.2 FPGA模块

FPGA主要用于图像传感器的控制、图像数据的缓存及外围芯片时序的产生。考虑到图像处理算法的实现需要,本系统选用了Xilinx公司的XC3S1000,它属于SPARTAN-3系列,容量为100万门。在本设计中,FPGA通常运行于80 MHz。XC3S1000与OV9650的接口电路示意图如图2所示。FPGA的内部结构包括CMOS控制单元、SC-CB接口单元、双口RAM单元、FIFO单元等。其中CMOS控制单元又包括帧同步模块、场同步模块、像素时钟模块等。

基于FPGA+ARM的图像采集传输系统

 

2.3 ARM处理器模块

本系统的ARM处理器选用PXA255,用于实现图像数据交换和以太网数据传输等功能。PXA255是Intel公司推出的基于第五代ARM RISC体系结构ARMV5TE的微处理器。CPU的运行频率最高为400 MHz,有32 KB指令Cache,32 KB数据Cache,2 KB微数Cache,并带有丰富的串行外设接口,并可支持各种存储器芯片。本系统采用两片SDRAM和两片FLASH存储器,其中SDRAM用于图像数据暂存,本系统选用SAMSUNG公司的K4S561632C-TC75,容量为32 MB。而FLASH程序存储器则选用Intel公司的E28F128J3A-150来作为NOR FLASH,容量为16 MB。


2.4 以太网传输模块

本系统的以太网芯片选用LAN91C113。这是SMSC公司推出的快速以太网10/100 Mbps控制器,支持多种嵌入式处理器主机接口。LAN91C1B内部有8 KB的FIFO,可用于接收和发送数据的存储。此外,LAN91C113芯片还集成了CSMA/CD协议的MAC(媒体访问控制层)和PHY(物理 层),IEEE802.3/802.3u-100BASE-TX/10Base-T规范。本系统中,LAN91C113的串行EEPROM接口与 AT93C46相连。PXA255访问LAN91C113采用异步静态存储器方式,LAN91C113的地址使能信号AEN与PXA255的静态芯片片选 四相连。PXA255与LAN91C113接口示意图如图3所示。

基于FPGA+ARM的图像采集传输系统

 

3 系统主要模块的工作原理及实现

3.1 FPGA图像采集的实现

OV9650的数据输出采用Bayer原始数据输出格式,每个象素同时只输出一种颜色。奇数扫描行输出RGRG…,偶数扫描行输出GBGB…。FPGA负责图像传感器数据的采集。

上电后,系统首先对CMOS图像采集芯片进行初始化,以确定其工作模式。这些参数受OV9650内部相应寄存器值的控制。FPGA通过控制SCCB总线来完成参数的配置。

系统配置完毕后,便可进行图像数据的采集。图4和图5是数据采集与输出的时序图。其中VSYNC是场同步信号。HREF是水平同步信号。PCLK是象素数 据输出同步信号。HREF为高时即可开始有效数据采集,而PCLK下降沿的到来则表明数据的产生,PCLK每出现一个下降沿,系统便传输一位数据。在 HREF为高电平期间,系统共可传输640位数据。在一帧图像中,即VSYNC为低电平期间,HREF会出现480次高电平。而下一个VSYNC信号上升 沿的到来则表明分辨率640×480的图像采集过程的结束。

基于FPGA+ARM的图像采集传输系统

3.2 FPGA与ARM的数据交换

FPGA内部用一个8 KByte双口SRAM作为图像存储区。为了实现图像数据的实时采集与处理,应使图像数据的采集与外部图像数据的读取同时进行。因此本系统采用双缓存结 构。实现方法是把8 KB的SRAM划分成两个大小为4 KB的SRAM(设为SRAM1和SRAM2),每片SRAM一次存储六行图像数据。这样,在同一时刻,一片可用于存储图像数据,另一片可用于外部ARM 对图像数据的读取。两块SRAM存储区乒乓式切换。当图像数据写满SRAM1时,FPGA向ARM发送一个中断信号,之后,ARM响应中断并读取 SRAM1中的图像数据,同时将其写入到SDRAM中。之后,图像传感器的数据将写入SRAM2,当图像数据写满SRAM2时,FPGA也向ARM发送一 个中断信号。ARM响应中断并读取SRAM2中的图像数据.同时将其写人到SDRAM中。之后,图像传感器的数据将再次写入SRAM1。


3.3 以太网数据传输的实现

为实现图像数据的网络传输,本系统基于PXA255开发了UDP/IP协议实现程序,以将图像数据存储在SDRAM中。一个完整的数据帧格式包括以太网 头、IP头、UDP头和一行图像数据,其系统工作流程图见图6所示。上电后,系统将等待FPGA中断,如果中断产生,则由PXA255读取FPGA中的数 据并写到SDRAM中。然后判断是否读完一帧图像数据,若读完,则发送UDP包,并将图像数据通过以太网发送到上位机,否则继续等待FPGA中断。

基于FPGA+ARM的图像采集传输系统

 

4 结束语

本文介绍了用ARM和FPGA实现的一个实时图像采集传输系统的设计方案,本系统设计方案采用FPGA技术来为作物识别、杂草识别等图像处理算法的实时实现提供了平台。

关键字:ARM  FPGA  实时图像采集  传输系统 引用地址:基于ARM和FPGA实时图像采集传输系统的设计

上一篇:基于VirtualBox虚拟机-Ubuntu操作系统的ARM嵌入式平台搭建
下一篇:基于arm的嵌入式棒料剪切生产线数控系统

推荐阅读

   昨日晚间美国总统特朗普宣布,再对2000亿美元的中国大陆进口产品加征10%关税。对此,今日商务部官网回应称,中国在世贸组织追加起诉美国301调查项下对华2000亿美元输美产品实施的征税措施。同时,今日商务部新闻发言人也回应表示,美方不顾国际国内绝大多数意见反对,宣布自9月24日起对2000亿美元中国输美产品加征10%的关税,进而还要采取其他关税升...
昨天上午,由工业和信息化部、中国工程院与上海市政府等部门共同主办的第21届中国国际工业博览会,正式在上海国家会展中心盛大开幕。该博览会为亚太地区规模最大、影响力最深远的工业博览会,是全球智能制造发展的风向标。仙知机器人CEO赵越先生、副总经理张绥先生、产品总监叶杨笙先生共同揭开发布仪式随着人工智能、大数据、物联网等新兴技术的发展,移...
9月17日,2020第23届中国集成电路制造年会暨广东集成电路产业发展论坛在广州召开。中微半导体董事长兼首席执行官尹志尧博士发表了以《半导体设备产业的战略重要性及发展战略》为主题的演讲。尹志尧博士表示,国际最先进的芯片生产线需要百亿美元的投资,约70%到80%的经费是要购买3000多台设备。建一条先进的芯片生产线需要十大类设备,300多种细分设备,共...
据外媒报道,法拉利的新“智能头盔”商标申请可能将获得美国专利商标局(United States Patent and Trademark Office)的通过。该技术可能会彻底改变跑车活动和赛车运动。专利申请详细介绍了该头盔,并表示最终可以取代高端性能汽车上的平视显示器或繁忙仪表盘的设备。专利图显示,佩戴头盔的驾驶员将看到投射在他们眼前的各种数据,显示诸如车速、发...

史海拾趣

问答坊 | AI 解惑

蓄电池没电不要慌 应急起动3种办法

 遇到蓄电池没有电或者起动电机出现故障的情况,这时候就需要采取应急起动     推车起动是大家最熟悉也是最有效的应急起动方法,但这是一种不得己的手段,不能经常使用,因为这样做对发动机和离合器有一定的损伤,自动挡 ...…

查看全部问答∨

求救:F2811无法烧写

各位大虾好: 我在应用F2811做烧写时,打开烧写对话框除了unlock键可操作,其他选项均为灰色不可操作状态,请高手点拨呀! 急!!!…

查看全部问答∨

Interfacing op amps to high-speed DACs Part 2 Current-sourcing DACs

 Interfacing op amps to high-speed DACs Part 2 Current-sourcing DACs…

查看全部问答∨

EPM7128S 的以下管脚如何处理?

其中不用的 OE1,OE2/GCLK2,GCLRn 该如何处理?谢谢! [ 本帖最后由 GeorgePCB 于 2010-11-6 22:20 编辑 ]…

查看全部问答∨

版主主STM32I2C的波形图上来了

                                  <img src="https://bbs.eeworld.com.cn/upfiles/img/200710/2007104114629884.jpg" onload="thumbImg(this ...…

查看全部问答∨

大家一起学习PIC单片机之二(独立键盘)

大家好,本人是PIC单片机新手,但是我很勤奋,我买的ND118-877APIC实验开发板,里面有实例,但是没有源代码,本人自己写代码大家一起交流,希望能陆续写下去,本人QQ476857290 希望大家学习指导。本节学习 8位独立按键盘解码1LED显示按键值…

查看全部问答∨

发一个超声波测量距离的应用,自己做的附源码和电路

    先发图片,成功实现   最远距离可测量4.5米。模块高精度,由于声波在介质中传播,受周围环境因素影响,模块带温度补偿,测量更精确。 【模块工作原理】    (1)采用IO触发测距,给至少10us的高电平信号; ...…

查看全部问答∨

求教一下MMU。

初学ARM,对页表的概念理解不好,想请教下: 页表的作用是将MVA转换成Physical Address。 我的疑问是:   1. MVA是在程序中所用到的地址么?如标号。  这样编程时就不用关心具体的Physical Address,只要在初始化时,编制好页表,解 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved