基于tms320vc5416和图像传感器0v7620的足球机器人设计

机器人

532人已加入

描述

  本文在简单介绍了全自主足球机器人比赛系统的基础上,分析了传统视觉系统的缺点,给出了用cmos图像传感器 0v7620、SRAM帧存储器 IS61LV25616、CPLD/FPGA控制器 EPF10K10LC84—3以及 DSP器件 tms320vc5416设计的新型嵌入式图像采样处理系统的设计方案。提出了RGB空间到HIS空间的变换方法,从而明显提高了足球机器人视觉系统的速度和可靠性。

  1 全自主式足球机器人概述

  Fira的 RoboSot组是全自主足球机器人。全自主足球机器人比赛系统实际上是一个自主工作的小车。由于自主机器人内部装载有完整的控制系统,因而不需要外界提供计算能力即可完全自主地收集和处理周围环境信息,并进行行为决策。机器人的顶端或其它部位一般安装有彩色摄像头,其镜头可以左右摇摆和上下俯仰,从而为机器人在一定的视角范围内提供彩色的视频信息。此外,机器人还配备有超声波或其它传感器,以用来对环境进行距离探测和障碍探测。而在多机器人参与比赛的时候,为实现机器人间的通信,还应安装无线通信系统,以便其能够共享已经探测到的环境信息,从而构成多机器人的协作系统。机器人还应配备可充电电池组以为嵌入式计算机、传感器、驱动电机等提供电能。

  全自主足球机器人比赛的特点是:不允许在比赛场地的正上方或其它非机器人本体上设置全局视觉系统,而是将摄像机安装在机器人的本体上,这样摄像机只能提供比赛场地的部分信息,机器人需要不断地将摄像机镜头进行摇动及俯仰,必要时还应扭转车体来搜寻需要的信息。

  目前的足球机器人多采用现成的单板机 (如PC104)再配以图像采集卡、无线通信网卡、电机驱动卡等板卡乜味实现。该方法无法获得主板和配套板卡的硬件原理图和主板 BIOS、板卡驱动程序等详细资料,因此不但体积大,而且由于硬件和驱动软件的限制很难达到足球机器人的最佳速度要求,同时可靠性也不高。而自行开发足球机器人全套控制系统的底层硬件和底层控制软件,虽然其自由度和灵活性高,但工作量很大。本文介绍了基于 0v7620图像传感器的足球机器人视觉系统。

  2 Robosot视觉子系统原理

  图 1所示是一个嵌入式视觉子系统的硬件框图。图中,安装在机器人上的cmos图像传感器把“球场”信息转换成电信号,并经视频采集芯片转化为数字信号后在 FleA中进行底层数据处理,然后在其管理下送入 SRAM帧存储器。DSP在读取 SRAM 存储器中的数据并进行高层处理后把处理结果通过DSP的MeBSP口传送给决策子系统。当与决策系统连线小于 15米时,可利用 McBSP口模拟出 RS232信号以实现通信;而当距离较大时,则可采用 RS422或采用无线通信方式。

  TMS320VC5416

  自主式足球机器人视觉系统硬件框图

  2.1图像传感器选择

  CCD摄像器件以其光照灵敏度高、噪声低、像元尺寸小等优点,一直主宰着图像传感器市场。与此相反,cmos图像传感器过去由于存在灵敏度低、信噪比小、像元尺寸大等缺点而一直无法和CCD技术抗衡。但是,随着 cmos大规模集成电路技术的不断发展,这些缺点已逐渐被克服。而 cmos器件所具有的集成度高、制造成本低、单一电源供电(3.3V或5v)、功耗低和像素缺陷低等优点也使其非常适合于自主式移动足球机器人的视觉系统。本系统采用的是Omnivision公司推出的 cmos彩色图像传感器0v7620,该传感器的最大分辨率为 664×492。它不但能工作在逐行扫描方式下,也能工作在隔行扫描方式下。0v7620可通过 I℃总线配置片内寄存器,以使其输出RGB原始数据。系统加电复位后,先由单片机的I/0口产生 I℃总线信号来对 0v7620工作寄存器进行初始化,然后 OV7620即可开始按要求输出图像信号,包括行同步信号HREF、场同步信号VSYNC、像素时钟信号PCLK和数字图像信号。

  2.2 时序控制及图像预处理

  OV7620输出的同步及图像数据信号接至CPLD/Flea芯片后,即可在此进行底层预处理,同时也在其控制下将该信号存人帧存储器 SARM中。

  Flea芯片选用 Ahem公司的 EPFIOKIO来接收行同步信号 HREF、场同步信号VSYNC、像素时钟信号 PCLK及图像数据信号,同时产生 SRAM地址信号及写信号。此外,还可在 FPGA的控制下,对视频数据进行预处理或直接存人SRAM帧存储器。FPGA处理完一场或一帧数据即通知 DSP读取数据。tms320vc5416利用读语句从 SRAM 中获得视频数据,并将处理出的机器人(小车)和球的位置、速度和方向信息经 DSP的McBSP口传给决策系统。

  2.3 帧存储器选择

  视频高速缓存方案通常有三种。

  第一种是双口RAM方式。双口RAM具有两套独立的数据、地址和控制总线,因而可从两个端口同时读写而互不干扰,并可将视频数据从一个端口写入而由DSP(或其他处理器)从另一端口读出。双口RAM能达到很高的传输速度,并且具有随机存取的优点,缺点是大容量的高速双口RAM很难买到且价格昂贵,并且要占用大量的 FPGA引脚。

  第二种是 FIFO先进先出方式。FIFO存储器就象数据管道一样,数据从管道的一侧流人,从另一侧流出,先进入的数据先流出。FIFO具有两套数据线而无地址线,可在其一端写操作而在另一端进行读操作。数据在其中顺序移动,因而能够达到很高的传输效率,且由于省去了地址线而有利于 PCB板布线。缺点是只能顺序读写数据,因而显得比较呆板,而且大容量的高速 FIFO多采用动态 RAM技术来刷新控制电路。

  第三种是高速 SRAM切换方式。高速 SRAM只有一套数据、地址和控制总线,可以通过三态缓冲门分别接到视频采样和 DSP上。进行视频采样时 ,可将SRAM的数据、地址和控制总线切换到采样电路并由采样电路控制,而 DSP的数据、地址和控制总线相对 SRAM处于高阻态而不起作用;当视频采样结束后,SRAM的数据、地址和控制总线又切换到 DSP 一 侧,以便 DSP进行读写。而此时采样电路所控制的数据、地址和控制总线又相对 SRAM处于高阻态而不起作用。这种方式的优点是 SRAM可随机存取,同时较大容量的高速 SRAM容易得到,且价格适中,缺点是切换控制电路比较复杂,且只能由视频采样和 DSP分时读写。为此,可引入双体存储交替访问的方案,即再增加一片SRAM帧存储器以构成双体存储区。这样,两芯片便可交替采样并与 DSP交换数据,从而实现采样与 DSP读取数据的同时进行。

  综合考虑以上三种高速缓存方案的性能、价格和方便性,本设计选用第三种方案并选用一片IS61LV25616芯片来实现。

  2.4视频处理 DSP

  视频处理选用TI公司的 tms320vc5416来读取SRAM中的视频数据,并通过软件计算出机器人及球的位置、方向和速度,再把这些数据传送到决策系统。tms320vc5416的时钟速率可达 160MIPS,并且有先进的指令系统,在 FPGA的“协作”下 ,每秒可保证处理 l0帧 (20场)以上的视频数据,因而可确保比赛的实时性。DSP在系统上电之后,其内部的Bootloader程序首先运行,同时将存储于片外 FLASH 的程序和表格送到片内 RAM中运行。这样每秒可处理20帧以上的视频数据。

  2.5 单片机

  单片机选用可在外部扩展 FLASH ROM 的AT89C51/AT89C52。该单片机有三个作用:OV7620的控制、FPGA的配置及 DSP的启动。由于 EPF10K10在工作期间将配置数据保存在SRAM中,而SRAM是易丢失的。因此,SRAM单元必须在器件加电后装人配置数据,且在配置完成后将其存储器和 I/O引脚初始化。初始化后,器件即可进人用户模式并开始系统运行。在开发调试阶段,可通过下载电缆对器件进行配置,而当整个系统设计完成后,便可利用单片机系统对其进行配置。这样,固化在单片机系统中的数据就可在系统上电时对 FPGA芯片进行配置。

  3 软件原理及调试

  由于 OV7620输出的是 RGB信号 ,因此可直接利用此信号进行图像分割。但 RGB空间各分量具有很高的相关性,而颜色相近点的分散分布也不适于机器人足球系统。为此,可采用具有明确物理意义的HSI空间。该空间模型中的 H为色调,对应于光的主波长;S为饱和度,对应于颜色中掺和白光的程度;I为光强度,对应于光的明亮程度。HSI空间模型以 H 为主要分割参数,但当 I较小时,H的值趋向于不确定,因而此时 H不能作为唯一的识别依据 ,而应把 I 也作为识别依据。实现时,可用下面公式将 RGB空间变换到 HSI空间。

  TMS320VC5416

  由于上述运算中有反三角函数,因而很难用FPGA实现。为此,在不影响识别结论的前提下,可利用下列简化公式来计算 H和 I:

TMS320VC5416

  FPGA使用的开发软件为 MAX+PLUSI。该软件是一个集设计输人、编译、仿真和编程为一体的超级集成环境。FPGA的设计有 4个基本阶段:设计输人 、设计编译、设计验证和器件编程。设计时应首先根据系统的逻辑功能生成顶层结构图,然后分成几个小模块进行下一级设计。接下来可由上而下分析其逻辑功能,并从底层进行设计编译,再对每一级进行波形验证。当最后的顶层模块的逻辑功能在波形仿真中满足系统时序要求时,即可进行器件编程。

  用FPGA实现 RGB空间到 HIS空间的转换,并进行色标图像分割以及色标及机器人中心的计算时,其数据处理量虽然远小于FPGA处理的数据量,但算法本身比较复杂,因而可用 DSP完成。初始调试时,应先尽量减少 FPGA的运算量 ,然后把运算任务交给DSP。当DSP中的算法经实践检验成熟后,便可将其移植到 FPGA中,以进一步提高整个系统的速度。

  4 结论

  本文讨论的嵌人式视觉系统方案综合运用了cmos图像传感器、FPGA、高速SRAM、数字信号处理器及单片机等先进电子技术,充分发挥了 FPGA的快速并行处理能力,同时利用了DSP强大灵活的数值运算能力。目前,本系统已应用到某足球机器人系统中,具有很强的实用性。但该系统仅实现了软硬件的初步研制与开发。进一步的FPGA图像预处理算法及视觉系统的变焦距问题还没有考虑,因而还有许多工作要做。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分