微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于新型嵌入式机器视觉系统的设计研究

基于新型嵌入式机器视觉系统的设计研究

时间:01-23 来源:3721RD 点击:

相机通过DS90LV047A收到指令后,将拍摄到的图像数据分为4路LVDS数据信号和1路LVDS时钟信号,通过接口连接器MDR26传输到DS90CR288A;DS90CR288A将串行数据转换成28路并行信号和1路随路时钟信号,并传送至TMS320DM8168视频捕捉端口VIP0进行采集。

2.3图像存储模块

从上述设计方案,系统存储速率约为160 MB/s,数据量较大,可选择大容量、高速的固态硬盘,通过其SATA2接口写入。

数据采集结束后,通过配置HDVPSS子系统将数据送入VPDMA,最后转入DDR内存,当DDR内存的数据量达到设定的数据量时产生中断,中断发生后,根据存放地址启动内存和固态硬盘之间的DMA传输,将采集的图像通过SATA2接口存储在SSD上,实现数据存储。

然后启动定时器产生下一个帧频脉冲,开始下一周期的数据采集。

外部扩展存储器选取系统支持的DDR3(1 600)存储器。按照系统存储控制器位宽32 b来算,内存速率可达32/8×1 600M=6.4 GB/s.在该模式下,采集和存储可并行处理。缓存所采集的数据移动到DDR3内存,其速率远高于端口采集的每秒数据量。因为该方案的采集方式是每帧轮流采集,并且帧内数据已按顺序紧凑排列,可大幅减少数据的重排工作,仅需去除一些辅助数据。采集系统将其余相关信号全部置成一帧一行的形式,让相机的时钟信号与系统采集端口的时钟信号通信,图像信号前有少量的辅助数据,设置DMA起始地址时直接跳过辅助数据。所以在本系统几乎不运行程序的情况下,固态硬盘可以最少有80%的时间占据DMA控制权进行内存图像数据的存储。按所选取的硬盘的持续写入速率250 MB/s来算,250×0.8=200 MB/s大于160 MB/s,所以1 s采集的数据可以进行实时存储。数据上传后,可以选择清除原有数据,释放硬盘空间。

2.4外围接口模块

基于TMS320DM8168芯片丰富的外设接口,本系统能够灵活的进行外部接口设计来控制外围设备,并实现与外部处理器的通信功能。根据需求可供选取的接口有:2个具有GMII和MDIO接口的千兆位以太网MAC(10 Mb/s,100 Mb/s,1 000 Mb/s);2个具有集成2.0 PHY的USB端口;双DDR2/3 SDRAM接口等,可参考图2.

TMS320DM8168的两个USB口可满足将采集的图像数据上传给上位机时连接键盘鼠标,LCD、VGA接口可用来直接显示图像。串口亦可用来同上位机进行通信,且可用来控制本设计方案用到的Camera Link相机。千兆网接口以其超高的速率可满足图像数据的高速传输。

上述技术的实现主要通过软件编程驱动外设接口来实现,具体方案见软件设计。

3软件设计

本系统采用Linux操作系统,带有友好的界面,使操作更加灵活自如,能运行多任务。可以通过界面进行相机控制、图像的采集、停止、显示、图像上传等。这部分的开发可由两部分组成,移植和自主开发。软件设计如图4所示。



3.1移植的程序

移植的程序包括Linux内核、网卡驱动、USB 2.0驱动、LCD驱动、串口驱动、VGA驱动、SATA2驱动。在这个方面,TI公司提供了很好的支持,有专门针对DM8168的Linux操作系统,版本为Linux 2.6.37,可以通过TI公司提供的Linux EZ软件开发套件(EZ SDK)进行开发。

3.2自主开发的程序

3.2.1驱动程序

为了规范地在Linux操作系统下操作,图像采集的电路部分需要图像采集应用程序相关的驱动程序进行支持。采集电路可分为多个功能模块分别进行驱动程序的编写,其中包括相机采集驱动(相应于VIP0进入数据后的操作);控制驱动(相应于对Timer进行控制);如果要根据外界环境改变相机工作状态,还需该部分驱动支持。采集驱动实现open,close方法。控制部分实现open,close,ioctl方法。自适应速率调整要实现open、close、ioctl、read方法。在/DEV目录下分别建立设备节点,然后应用程序通过对设备节点进行操作。

3.2.2应用程序

应用程序的开发拟采用QT开发工具。应用程序拟设计成一个多线程程序,一个主线程,一个自适应调节参数线程,应用程序主要实现采集程序,停止,显示,配置,上传程序,分别对应于相应按钮。

采集按钮相应程序调用设备节点的open方法,open方法中对相应硬件进行配置,注册中断程序,启动Timer开始采集。流程如图5所示。

因为系统已经带有串口驱动,配置程序可以直接对串口编程。自适应环境速率调整程序由主界面程序开启一个新线程,该线程通过相应设备节点读取数据,判断是否调整,如需调整,通过上面所述串口设备节点或者控制设备节点进行重设。

4结语

本文所构建的机器视觉系统是一个具有操作系统的独立、可控制的小型多功能系统,通过硬件设计和软件设计两部分实现,其功能模块包括视频图像采集与处理、视频图像存储、视频图像通信和视频图像显示等模块。采用先进的双内核嵌入式处理器,将多路图像传感器获取的视频图像信号高速并行采集,并根据需要进行图像无损压缩和图像融合,数据可大容量实时存储,并通过多种接口与上位机通信,具有友好的人机交互界面,可驱动多种显示屏幕完成高清显示和信息回放等功能。

由于该平台具有Linux操作系统,无需上位机即可完成系统参数设置、功能选择等操作。该系统可为机载、弹载、车载光电系统完成高速扫描、快速探测、主动识别、精确跟踪任务提供所需要的高清目标信息,并有望在平安城市、安防行业、工业控制、医疗教育、物流管理、电网运行、智能家居、智能汽车、食品安全等多领域得到应用。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top