历史上的今天
返回首页

历史上的今天

今天是:2025年02月19日(星期三)

正在发生

2018年02月19日 | 基于ARM和CPLD的嵌入式视觉系统设计

2018-02-19 来源:eefocus

  目前,关于视觉系统的研究已经成为热点,也有开发出的系统可供参考.但这些系统大多是基于PC机的,由于算法和硬件结构的复杂性而使其在小型嵌入式系统中的应用受到了限制.上述系统将图像数据采集后,视觉处理算法是在PC机上实现的.随着嵌入式微处理器技术的进步,32位ARM处理器系统拥有很高的运算速度和很强的信号处理能力,可以作为视觉系统的处理器,代替PC机来实现简单的视觉处理算法.下面介绍一种基于ARM和CPLD的嵌入式视觉系统,希望能分享嵌入式视觉开发过程中的一些经验.

  1 系统方案与原理在嵌入式视觉的设计中,目前主流的有以下2种方案:

  方案1图像传感器+微处理器(ARM或DSP)+SRAM方案2图像传感器+CPLD/FPGA+微处理器+SRAM方案1系统结构紧凑,功耗低.在图像采集时,图像传感器输出的同步时序信号的识别需要借助ARM的中断,而中断处理时,微处理器需要完成程序跳转、保存上下文等工作[1],降低了图像采集的速度,适合对采集速度要求不高、功耗低的场合.

  方案2借助CPLD来识别图像传感器的同步时序信号,不必经过微处理器的中断,因而系统的采集速度提高,但CPLD的介入会使系统的功耗提高.

  为了综合以上2种方案的优势,在硬件上采用"ARM+CPLD+图像传感器+SRAM".该方案充分利用了CPLD的可编程性,通过软件编程来兼有方案1的优势,具体体现在以下方面:

  ① 功耗的高低可以控制.对于功耗有严格要求的场合,通过CPLD的可编程性将时序部分的接口与ARM的中断端口相连,仅仅是组合逻辑的总线相连,可以降低CPLD的功耗从而达到方案1的效果;对于采集速度要求高而功耗要求不高的情况,可以充分发挥CPLD的优势,利用组合与时序逻辑来实现图像传感器输出同步信号的识别,并将图像数据写入SRAM中.

  ② 器件的选择可以多样.在硬件设计上,所有总线均与CPLD相连;在软件设计上,不同的模块单独按功能封装.这样以CPLD为中心,系统的其他器件均可更换而无需对CPLD部分程序进行改动,有利于系统的功能升级.

  作为本系统的一种应用,开发了视觉跟踪的程序,可以在目标和背景颜色对比强烈的情况下对物体进行跟踪.通过对CMOS摄像头采集来的数据进行实时处理,根据物体的颜色计算出被追踪物体的质心坐标.下面分别描述系统各部分的功能.

  2 系统硬件2.1 硬件组成及连接系统的硬件主要有4部分:CMOS图像传感器OV6620、可编程器件CPLD、512 KB的SRAM和32位微处理器LPC2214.

  OV6620是美国OmniVision公司生产的CMOS图像传感器,以其高性能、低功耗适合应用在嵌入式图像采集系统中,本系统图像数据的输入都是通过OV6620采集进来的;可编程器件CPLD采用ALTEra公司的EPM7128S,用Verilog硬件编程语言在QUARTusII下编写程序;作为系统的数据缓冲,SRAM选用的是IS61LV5128,其随机访问的特性为图像处理程序提供了便利;而LPC2214在PLL(锁相环)的支持下最高可以运行在60 MHz的频率下,为图像的快速处理提供了硬件支持.

  OV6620集成在一个板卡上,有独立的17 MHz晶振.输出3个图像同步的时序信号:像素时钟PCLK、帧同步VSYNC和行同步HREF.同时,还可以通过8位或16位的数据总线输出RGB或YCrCb格式的图像数据.

  在硬件设计上,有2个问题需要解决:

  ① 图像采集的严格时序同步;② 双CPU共享SRAM的总线仲裁.

  解决第一个问题的关键在于如何实时、准确地读取OV6620的时序输出信号,据此将图像数据写入SRAM中.这里采用的解决方案是用CPLD来实现时序信号的识别以及图像数据的写入.CPLD在硬件上可以识别信号的边沿,速度更快,通过Verilog语言编写Mealy状态机来实现图像数据的SRAM写入,更加稳定.

  对于双CPU共享SRAM,可以通过合理的连接方式来解决.考虑到CPLD的可编程性,将OV6620的数据总线,LPC2214的地址、数据总线以及SRAM的总线都连接到CPLD上.通过编程来控制总线之间的连接,只要在软件上保证总线的互斥性,即在同一时刻有且仅有一个控制器(CPLD或者LPC2214)来操作SRAM的总线,就可以有效地避免总线冲突.这样,硬件上的仲裁就可以通过软件来保证,该过程可以通过在CPLD中编写多路数据选择器来实现.

  各器件之间的连接关系如图1所示.

未标题-3.jpg?imageView2/2/w/550

图1 系统结构框图

由图1可见,微处理器的总线接在CPLD上,在对功耗有严格要求的场合中,只需要在CPLD中,将OV6620的同步时序信号所对应的引脚与LPC2214连接在CPLD上的中断引脚相连,系统就可以转换成方案1的形式。对CPLD而言,引脚相连的仅仅是组合逻辑,降低了功耗。方案1的具体工作过程可见参考文献[1]。

未标题-4.jpg?imageView2/2/w/550

图2 OV6620输出时序图

在Verilog语言中,对上升沿的检测是通过always语句来实现的。例如检测时钟信号cam_pclk的上升沿:
未标题-5.jpg?imageView2/2/w/550

图3 行处理得到的线形图

根据得到的结果,可以计算出更多关于跟踪物体的信息:

① 计算区域面积。计算每条线段的长度l(n),然后将l(n)进行累积叠加,即可获得跟踪区域面积值S。
未标题-6.jpg?imageView2/2/w/550

② 计算质心横坐标。
未标题-7.jpg?imageView2/2/w/550

③ 计算质心纵坐标。
未标题-8.jpg?imageView2/2/w/550

④ 识别物体的形状。根据得到的每行跟踪点的长度,以及同一行中有几段符合要求的连续跟踪点,可以得知物体从摄像头角度看到的形状。特别是在检测平面上线条时,可以识别是否有分支,这一点是帧处理模式无法做到的。
需要指出的是,行处理模式虽然会得到关于跟踪目标的更多信息,但是每行处理的方式增大了处理器的负担,处理速度也没有帧处理快。

4 提高系统的工作速率

目前,系统工作在帧处理模式下的工作速率是25帧/s,作为系统功能的验证,这里采用的算法是颜色跟踪。如果仅做纯粹的图像采集,而不做图像处理,那么系统可以达到OV6620的最高工作速率,即60帧/s。而在图像处理方面,不同的图像处理程序效率对系统的工作频率有较大的影响。下面给出在通用ARM处理器下提高程序效率的几个建议:

① 内嵌(inline)可通过删除子函数调用的开销来提高性能。如果函数在别的模块中不被调用,一个好的建议是用statIC标识函数;否则,编译器将在内嵌译码里把该函数编译成非内嵌的。

② 在ARM系统中,函数调用过程中参数个数≤4时,通过R0~R3传递;参数个数>4时,通过压栈方式传递(需要额外的指令和慢速的存储器操作)。通常限制参数的个数,使它为4或更少。如果不可避免,则把常用的前4个参数放在R0~R3中。

③ 在for(), while() do…while()的循环中,用“减到0”代替“加到某个值”。比如:
for (loop = 1; loop <= total; loop++) //ADD和CMP
替换为:for (loop = total; loop != 0; loop--) //SUBS
第1种方式比较需要2条指令ADD和CMP,而第2种方式只需一条指令SUBS。

④ ARM核不含除法硬件,除法通常用一个运行库函数来实现,运行需要很多个周期。一些除法操作在编译时作为特例来处理,例如除以2的操作用左移代替余数的操作符“%”,通常使用模算法。如果这个值的模不是2的n次幂,则将花费大量的时间和代码空间避免这种情况的发生。具体办法是使用if()作状态检查。

比如,count的范围是0~59:
count = (count+1) % 60;
用下面语句代替:
if (++count >= 60)
count = 0;

⑤ 避免使用大的局部结构体或数组,可以考虑用malLOC/free代替。

⑥ 避免使用递归。

结语

本文介绍了一种基于ARM和CPLD的嵌入式视觉系统,可以实现颜色跟踪。在硬件设计上,图像采集和图像处理分离,更利于系统功能的升级。而视觉处理算法更注重处理的效率和实时性,同时根据不同的需要有两种模式可供选择。最后给出了提高程序效率的一些建议和方法。与基于PC机的视觉系统相比,该系统功耗低、体积小,适合应用于移动机器人等领域。


推荐阅读

史海拾趣

General Dynamics SATCOM Technologies公司的发展小趣事

对于集成电路控制方式的恒水压自动控制电路,网友可能会提出多个问题,以下是一些常见问题及其回答:

1. 恒水压自动控制电路的基本工作原理是什么?

回答
恒水压自动控制电路主要利用集成电路(如单片机、微处理器等)对水压进行实时监测与控制。其基本工作原理是通过压力传感器采集水系统中的水压信号,将模拟信号转换为数字信号后送入微处理器进行处理。微处理器根据预设的水压值与实际水压值进行比较,通过控制水泵电机或其他执行机构的启停或转速来调节水流量,从而实现水压的恒定控制。

2. 如何实现精确的水压控制?

回答
实现精确的水压控制需要依赖于高精度的压力传感器和先进的控制算法。首先,选择具有高精度和良好稳定性的压力传感器是关键。其次,在控制算法上,常采用PID(比例-积分-微分)控制算法,通过不断调整比例、积分和微分系数来优化控制效果,使系统能够快速响应水压变化并保持稳定。此外,还可以引入模糊控制、神经网络控制等先进算法,以进一步提高控制系统的智能化水平和控制精度。

3. 恒水压自动控制电路中的集成电路如何选择?

回答
在选择集成电路时,需要考虑多个因素,包括控制精度、处理能力、成本、功耗以及是否易于编程等。对于恒水压自动控制电路来说,单片机或ARM等微处理器是常见的选择。这些微处理器具有较高的集成度和较强的数据处理能力,能够满足实时控制和复杂算法的需求。同时,还需要考虑其外部接口和扩展性,以便与压力传感器、电机驱动器等其他元件进行连接和通信。

4. 如何解决电路中的噪声和干扰问题?

回答
在恒水压自动控制电路中,噪声和干扰可能会影响压力传感器的测量精度和控制系统的稳定性。为了解决这些问题,可以采取以下措施:

  • 在电路设计阶段,采用合理的布局和布线方式,减少信号线之间的串扰和耦合。
  • 使用屏蔽线和滤波器来抑制高频噪声和电磁干扰。
  • 对模拟信号进行滤波处理,提高信号的信噪比。
  • 在软件层面,采用数字滤波算法进一步滤除噪声干扰。

5. 如何实现远程监控和故障诊断?

回答
为了实现恒水压自动控制电路的远程监控和故障诊断,可以将控制系统与物联网技术相结合。通过在控制系统中集成无线通信模块(如Wi-Fi、蓝牙、NB-IoT等),将实时水压数据、运行状态等信息传输到云端服务器或远程监控中心。同时,可以通过手机APP、网页等客户端远程查看和控制系统状态,及时发现并处理故障问题。此外,还可以利用大数据分析技术对历史数据进行挖掘和分析,为系统的优化和维护提供数据支持。

以上是对集成电路控制方式的恒水压自动控制电路可能遇到的问题及其回答的总结。希望这些信息能够对网友有所帮助。

Futaba Electric Co Ltd公司的发展小趣事

Futaba Electric Co Ltd公司的发展故事

故事一:从真空管到VFD的转型

Futaba Electric Co Ltd,原名双叶电子,成立于1948年,最初以生产收音机收讯真空管起家。然而,随着电子技术的飞速发展,公司在1970年做出了重大战略调整,决定结束真空管业务,转而专注于萤光表示管(VFD)的生产。这一转型标志着公司进入了新的发展阶段。VFD以其高清晰度、广阔视角和卓越亮度迅速赢得了市场认可,特别是在高级消费性电子设备领域。Futaba的VFD产品不仅品质稳定可靠,还因其抗震性能好、温差适应性强以及高可靠性,在汽车仪表盘和抬头显示器等领域占据重要地位。自1983年起,Futaba的VFD产品被福特汽车公司采用,并迅速在美国三大汽车厂实现100%市场占有率,这一成就进一步巩固了其在VFD市场的领导地位。

故事二:无线电控制技术的突破

1962年,面对工业控制领域对供应商品质和交货期的严格要求,Futaba推出了无线电控制设备和冲压金属模用部件,这些创新产品不仅提升了工业品质,还显著缩短了模具开发周期,引领了当时的行业标准。这一举措不仅为Futaba在模具制造领域奠定了坚实基础,还为其后续的技术发展开辟了新方向。随着技术的不断进步,Futaba在无线电传输模组(R/C)领域也取得了显著成就,特别是在高频无线展频通讯技术的研发上,其产品具有高可靠性和抗干扰性,甚至被应用于卫星通讯领域,进一步巩固了其在无线遥控技术的领先地位。

故事三:工业与娱乐的双重发展

Futaba不仅在工业控制领域取得了卓越成就,还将其技术延伸至休闲娱乐领域。公司开发的遥控飞机、车、船等产品,凭借其出色的性能和稳定的品质,迅速成为户外休闲运动的热门选择。特别是2.4G接收机的推出,进一步丰富了Futaba的产品线,满足了不同消费者的多样化需求。这一举措不仅拓宽了公司的业务范围,还提升了其品牌知名度和市场占有率。

故事四:全球化布局与市场拓展

随着公司业务的不断发展和市场需求的日益增长,Futaba开始积极实施全球化战略。为了更好地服务于中国市场,公司成立了双叶电子科技开发(北京)有限公司,专营Futaba的全线产品,包括VFD真空荧光显示管和RC无线遥控设备等。这一举措不仅加强了Futaba在中国市场的竞争力,还为其进一步拓展全球市场奠定了坚实基础。通过在全球范围内的市场布局和业务拓展,Futaba已成为一家闻名世界的跨国公司。

故事五:技术创新与可持续发展

Futaba始终将技术创新作为企业发展的核心驱动力。公司不断投入研发资源,致力于新技术的开发和应用。通过不断的技术创新和产品升级,Futaba不仅保持了其在VFD和无线遥控技术领域的领先地位,还积极探索新的业务领域和市场机会。同时,公司还注重可持续发展和社会责任,致力于实现经济效益、社会效益和环境效益的和谐统一。这一理念不仅为Futaba赢得了良好的社会声誉和品牌形象,还为其长期发展奠定了坚实基础。

台湾义隆电子(ELAN)公司的发展小趣事

作为一家有社会责任感的企业,义隆电子一直关注可持续发展问题。公司积极推广绿色生产理念,采取环保措施减少生产过程中的污染排放。同时,义隆电子还关注社会公益事业,积极参与各种慈善活动,回馈社会。这些举措不仅提升了公司的品牌形象,也为公司的长期发展奠定了坚实基础。

请注意,以上故事框架仅供参考,具体的故事内容需要根据义隆电子的实际情况进行撰写。

DELTA公司的发展小趣事

Delta公司始终将技术创新作为推动企业发展的核心动力。公司不断投入巨资进行技术研发和创新,积极引进先进技术和设备,培养高素质的研发人才。这些努力使Delta在电源管理、能源管理、智能绿生活等领域取得了多项技术突破和专利成果,不仅提升了公司的核心竞争力,还引领了整个行业的发展方向。

BVLED公司的发展小趣事

为了进一步扩大市场份额和提升品牌影响力,BVLED公司开始积极拓展国内外市场。在国内,公司加强了与大型照明企业的合作,通过联合推广和定制服务等方式提高了产品知名度。在国外,公司积极参加国际展览和贸易洽谈会,与国际知名企业建立了合作关系,成功打开了国际市场的大门。

Goldentech Discrete Semiconductor Inc公司的发展小趣事

进入21世纪后,随着全球电子市场的竞争加剧,Goldentech意识到单靠技术创新已不足以维持其市场地位。因此,公司开始积极寻求与行业领先企业的战略合作。通过与一家知名芯片设计公司的深度合作,Goldentech成功将其高性能离散半导体器件集成到对方的芯片设计中,从而实现了产品的广泛应用。这一合作不仅扩大了Goldentech的市场份额,还提升了其品牌知名度和行业影响力。

问答坊 | AI 解惑

新型显示系统引领汽车仪表技术新潮流

加拿大一家企业最近推出可取代现有汽车液晶显示器的显示系统。该系统在仪表盘内部设置小型投影机,可以向整个仪表盘投射内容并显示,既可使画面尺寸大型化,又可在仪表盘之类的曲面上显示。另外,如只需改变投影图像,就能更改仪表盘的外形,以满足 ...…

查看全部问答>

请帮忙推荐一款元器件I-V曲线测试仪

请帮忙推荐一款元器件I-V曲线测试仪,用作手机领域电子器件的失效分析用,要求价格适中。 我们工厂现在用的是Sony 370A programmable curve tracer,我需要与之功能类似的I-V曲线测试仪。 我的邮箱为liuping_davy@yahoo.com.cn 谢谢大家。 [ 本 ...…

查看全部问答>

LED3216电子钟硬件电路正式版

看到坛子里正在带着大家做电子钟,看到了一个博客,写的很清晰,引用过来供大家参考:        LED3216电子钟是由LED3216点阵显示系统升级过来的,在这个过程中硬件电路也有过几次变动,如果不是跟着我一起升级过来的爱好者, ...…

查看全部问答>

单片机实例8X8点阵显示出入平安

RT,再附带一个取字模软件,…

查看全部问答>

好家伙,TI又推了个6核DSP TMS320C6472

这是我找到的一些信息,供大家参考下~~~~ 日前,德州仪器 (TI) 宣布推出业界最低功耗 6 核 DSP,该款 TMS320C6472 器件旨在满足要求极低功耗的处理密集型应用的需求。此外,为了更便捷、更经济地评估 C6472 器件的性能,TI 还同步推出了一款多核处 ...…

查看全部问答>

Windows CEnet的智能移动信息终端设计.pdf

Windows CEnet的智能移动信息终端设计.pdf…

查看全部问答>

SPI 使用DMA方式如何来做?

需要一些提示! 因为对数据的传输要求高!    我是利用SPI 来实现向设备写数据的,而且写数据时在设备触发的IST中的! 我想用DMA的方式来做!   【平台】 2440 wince5.0…

查看全部问答>

【参与有分】EBoot升级Image时会用到带有"N000FF"的Image文件,这种文件怎么得到?

**************************问题描述******************************* 使用MS的EBoot升级Image的时候,代码上依次会走下面的流程:     OEMPlatformInit( )----初始化板上设备(初始化显示、RTC、OAL与eboot共享参数、打印用户菜单、网 ...…

查看全部问答>

在open at程序中如何让调用at命令?

能不能在open at程序中调用at的命令?如何调用?…

查看全部问答>

跪求compactPCI 相关规范

急需compactPCI 相关规范,尤其compactPCI hot swap specification 哪个好心人给发一份吧, 邮箱:dashu124@yahoo.com.cn QQ: 277642914…

查看全部问答>