基于DSP和FPGA的机器视觉系统设计与实现

发布者:TranquilDreamer最新更新时间:2018-02-17 来源: elecfans关键字:DSP  FPGA  机器视觉系统 手机看文章 扫描二维码
随时随地手机看文章

  创新观点:

  本文将机器视觉与网络技术相结合,使用TI公司新近推出的6000系列DSPsTMS320DM642为核心,应用ALTERA公司的FPGA,用其实现图像预处理,减轻了DSPs的负担。应用网络技术实现图像传输。

  1、引言

  机器视觉自起步发展到现在,已有15年的发展历史。应该说机器视觉作为一种应用系统,其功能特点是随着工业自动化的发展而逐渐完善和发展的。

  目前,国际上视觉系统的应用方兴未艾,1998年的市场规模为46亿美元。在国外,机器视觉的应用普及主要体现在半导体及电子行业,其中大概 40%-50%都集中在半导体行业。具体如PCB印刷电路。主要的机器视觉公司诸如德国克朗斯公司,美国的工业动力机械有限公司等等。

  而在国内,工业视觉系统尚处于概念导入期,导致以上各行业的应用很少,即便是有,也只是低端方面的应用,大多数国内公司多代理国外公司产品,自主研发的相对较少,这样产品在国内售价相对很高,导致很多工厂在权衡利弊之后,放弃了使用机器视觉的想法。

  但随着我国配套基础建设的完善,技术、资金的积累,各行各业对采用图像和机器视觉技术的工业自动化、智能化需求开始广泛出现,同时也由于视频采集系统硬件产品的价格下降,国内有关大专院校和研究所近两年在图像和机器视觉技术领域进行了积极思索和大胆的尝试,逐步开始了工业现场的应用。另外,各行业的领先企业在解决了生产自动化的问题以后,已开始将目光转向视觉测量自动化方面。这些应用大多集中在如药品检测分装、印刷色彩检测等。真正高端的应用还很少,因此,以上相关行业的应用空间还比较大。

  嵌入式系统和网络化是机器视觉系统发展的两个趋势:

  1) 嵌入式系统使得数据采集、自动控制和图像检测集成得更加紧密,另外基于嵌入式系统的机器视觉系统具有极低的功耗。

  2) 网络化是嵌入式系统的发展趋势,其在工业自动化领域的应用也越来越广泛,机器视觉于网络通信等先进技术的结合正在改变工业自动化生产的面貌。

  当前,机器视觉与运动控制,网络通讯等先进技术的结合正在改变工业自动化生产的面貌,而同时具备运动控制,机器视觉,网络通讯几方面技术背景的企业无疑将走在前列。

  2、系统硬件设计

  本次设计以啤酒瓶检测为设计背景,结合机器视觉的这两大发展趋势,开发以TI公司TMS320DM642为核心的嵌入式系统,并应用以太网技术进行图像传输。

  设计模块示意图:

  
图1 硬件结构框图

  2.1 视频采集模块

  模拟视频信号采用非标准制式,相机工作在外触发方式下,由FPGA提供触发信号,每触发一次,相机传送一场信号。进入电路板的视频信号幅值为1V,先经过视频运算放大器EL4089放大并嵌位,使幅值升为2V.之后信号分两路,一路送ISL59885视频同步分离芯片产生行同步、场同步信号,一路经 AD9200进行模数转换。将视频信号解码出行同步、场同步及8位的亮度信号送入FPGA模块。

  2. 2 FPGA模块

  Altera公司的EP1K100系列是性价比较高的可编程逻辑器件,它具有10万等效系统门,核电压为2.5V,端口电压兼容5V、3.3V,工作频率可达250MHz,可满足本卡多电压高频率工作要求。

  这一部分主要负责整个板卡的逻辑控制,时序调整。FPGA接收视频的行、场同步及亮度信号,并在FPGA中进行图像的预处理,可以在FPGA中进行二值化、sobel边缘分割、中值滤波。将处理后的亮度信号送入DM642的视频口。由于ISL59885产生的行同步信号每两行分离出一个,为了正确的采集,FPGA须在每两个行同步的中间加入一个行同步信号,送往DM642的视频口。另外FPGA还负责视频采集部分的采样频率、嵌位信号的产生,并行IO 控制信号的产生,以及串行接口部分通信协议RS-232、RS-442的选择等等。

  2.3 DM642模块与存储模块

  2.3.1 TMS320DM642模块:

  DM642是TI公司新近推出的一款应用于视频和图像处理方面的芯片,他采用TMS320C64X系列DSPs的内核,集成了一些面向视频及图像处理的外围设备,例如集成了三个可配置的视频口,10/100Mbps Ethernet MAC,多通道串行音频接口(McASP)及66MHz32位PCI总线。TMS320DM642采用TI公司开发的第二代高性能超长指令字结构 VelociT1.2TM,在每个时钟周期内可执行2个16*16位的乘法或4个8*8位的乘法。TMS320DM642内含6个算术逻辑单元,在每个时钟周期内都可执行2个16位或4个8位的加减\比较\移动等运算。在600MHz的时钟频率下,DM642每秒可以进行24亿次16位的乘累加或48亿次 8位的乘累加。这样强大的运算能力,使得DM642可以进行实时的多视频处理和图像处理。

  本设计利用视频口进行图像采集,用以太网接口实现图像传输。

  视频口能够支持BT.656、HDTV Y/C、MPEG-2 Transport stream input等多种格式的视频数据的输入输出。本次设计采用逐行扫描且只采集亮度数据,视频口工作在YcbCr 4:2:2方式下。视频口与DM642的EDMA结合,每采集一行图像数据便启动一次EDMA同步事件,将数据从接收FIFO中倒到SDRAM中暂存下来。一场图像数据采集之后,采用EDMA链接自动重新配置EDMA参数。整个图像采集只消耗极少的CPU时间,使CPU能够把精力集中到后面的图像处理工作中。

  2.3.2 存储器模块

  外扩了SDRAM及FLASH两种存储器。

  1 )SDRAM存储器

  在CE0空间连接了64bit的SDRAM总线。选取2片48LCHM3282来构成SDRAM。这32M的SDRAM空间用来存储程图像数据和图像处理中间结果等信息。总线由外部PLL驱动设备控制,在133MHz的最佳运行状态下运行。SDRAM的刷新由TMS320DM642自动控制。

  2 )FLASH存储器

  本系统扩展了1M的FLASH,映射在CE1空间的低位。FLASH存储器选用1M*8的MBM29DL800。FLASH存储器主要用于DSPs程序的存储。CE1空间被配置成8bit,异步接口,FLASH存储器也是8bit。复位后的默认地址是000,并进行1K数据的上电自动引导。

  2. 4 以太网模块

  DM642上的EMAC接口为DSP处理内核与网络提供了一个有效的接口。他支持10Base-T、100 Base-TX,可工作在10Mbits/second 和 100Mbits/second的速度下进行全双工或半双工传输。并提供硬件流量控制和QOS支持。

  DM642的EMAC接口支持到计算机网络协议的数据链路层,支持标准的MII接口(媒体无关接口)与物理层设备相连。物理层设备使用BROADCOM公司的BCM5221,加Pulse公司的1:1型隔离变压器H1102。

  网络图像及控制信息的传输采用非面向连接的UDP协议,对于480*480大小的8位灰度的图像,每秒可传送20幅。

  2.5 IO模块与串行接口模块

  IO接口由FPGA控制,用于向机械部分、自动控制部分发送控制信号,并行IO接口有两路,一路经LV162245驱动输出,一路经光耦进行隔离输出。

  串行接口使用TI公司的TL16C752B UART,他与ST16C550 UART引脚兼容,并具有更大的发送、接收FIFO缓存(发送、接收各64Byte ),支持硬件、软件流量控制。电平转换采用MAXIM公司的MAX3160,RS-232、RS-485、RS-422等多种传输协议。

  3、FPGA实现图像预处理算法

  以FPGA实现3*3 Sobel边缘检测为例,介绍FPGA实现图像预处理的方法。

  首先,应从视频信号中提取出3*3 大小的图像框。须使用三个FIFO,其大小与一行像素大小相同,将三个FIFO串行连接在一起。用视频信号的前三行充满三个FIFO,之后每来一个像素在写入FIFO的同时,从每个FIFO中读出一个像素的亮度值,分别放入三个移位寄存器。如此,在三个像素点之后就得到一个3*3的矩形框。随着视频信号的不断流入,矩形框将遍历整个图像区域。

  之后,就可以对提取出来的像素点,进行各种算法的处理。

  以下是用Verilog语言描述的3*3 Sobel算子:

  wire[10:0] temp1,temp2,temp3,temp4;

  wire[7:0] sobel1,sobel2,sobel3,sobel4;

  wire[7:0] dataout;

  assign temp1 = temp[1] + temp[2] + temp[3];

  assign temp2 = temp[7] + temp[8] + temp[9];

  assign temp3 = temp[1] + temp[4] + temp[7];

  assign temp4 = temp[3] + temp[6] + temp[9];

  assign sobel1 = (temp1>temp2)?(temp1-temp2):0 ;

  assign sobel2 = (temp3>temp4)?(temp3-temp4):0 ;

  assign sobel3 = (sobel1>8’d 255) ? 8’d255 : sobel1;

  assign sobel4 = (sobel2>8’d 255) ? 8’d255 : sobel2;

  assign dataout[7:0] = ((sobel3 > sobel4)?sobel3[7:0]:sobel4[7:0]);

  其中,考虑到了数据计算的溢出或结果为负值的情况,边缘检测效果良好。

  4、结束语

  本次设计为机器视觉系统搭建图像处理部分的硬件平台,结合机器视觉系统发展的两大趋势:嵌入式系统与网络技术。基于美国德州仪器公司新近推出的6000系列DSPs芯片TMS320CDM642,利用TMS320DM642芯片上提供的Video Port和Ethernet Media Access Controller实现视频采集与网络技术的结合。利用在线可编程技术,在FPGA中实现必要的图像预处理算法,减轻TMS320DM642的负担,为后续的图像实时检测打下了良好的基础。

  本次设计实现了对于480*480的灰度图像,通过以太网进行25 Frames/s的流畅的传输。

  以下为FPGA实现的Sobel边缘提取算法的效果:

  

  图3.原始图像与Sobel边缘提取后的图像


关键字:DSP  FPGA  机器视觉系统 引用地址:基于DSP和FPGA的机器视觉系统设计与实现

上一篇:以太网标准与驱动系统设计
下一篇:电力线通信在路灯照明自动化中的应用

推荐阅读最新更新时间:2024-05-03 02:29

通用DSP的RISC核心开发单处理器VoIP
  各种服务不断匯整至IP网路环境,促使业者开发各种创新的Voice over IP (VoIP)终端产品,包括IP电话、商用与家用VoIP闸道器以及无线IP电话等。市场亦开始朝向将IP系统与语音功能整合的方向发展,例如:PDA等掌上型装置、汽车、全球卫星定位系统以及其它装置。虽然某些具备更高密度语音频道的系统仍需搭配传统的多重处理器与独立的专属RISC与DSP核心,但更多的设计方案在面临成本、功耗及复杂度持续紧缩的限制下,採用单处理器架构更能达成最好的功效。此外,同业竞争压力以及急迫的上市时程,更激发系统设计业者对完整单处理器VoIP平台的迫切需要,协助业者克服不同处理器之间的整合挑战。   单处理器VoIP设计方案能够协助业
[嵌入式]
通用<font color='red'>DSP</font>的RISC核心开发单处理器VoIP
CEVA授权ASR(翱捷科技)提供用于智能手机和IoT的DSP和连接技术
集微网1月18日消息,CEVA宣布,翱捷科技(上海)有限公司已经获得多种CEVA技术授权许可,用于即将推出的面向智能手机和窄带物联网(NB-IoT)边缘设备的片上系统芯片(SoC)产品。翱捷科技将在其无线产品中融入一系列CEVA IP以提供蜂窝、蓝牙和Wi-Fi连接支持,并实现计算机视觉、语音和音频领域的新兴应用。 翱捷科技首席执行官戴保家评论道:“CEVA为智能和连接设备提供了全面的技术组合,完全满足了我们对高成本效益的低功耗技术的严格要求。作为翱捷科技的重要知识产权合作伙伴,CEVA为我们的产品贡献了巨大的价值,使我们能够为智能手机和IoT市场提供一流的调制解调器、连接、视觉和声音特性。” CEVA首席执行官Gideon We
[手机便携]
安全通信系统的FPGA实现的方法
绪论   信息安全的解决方案目前主要集中于采取单一的措施来保证信息的安全性,针对各种攻击手段,防范措施主要集中于信息加密技术、安全交换机技术、防火墙技术、认证技术,入侵检测技术等,这些技术从不同的方面对安全性提供了较好的保障,但各有缺点和不足,这将成为网络防护的软肋,因此,本文也尝试性地提出了一种集数据加密技术和访问控制策略于一体的信息安全解决方案。   加密算法的硬件实现具有高速率、高可靠性、高安全等特点,因此,加密算法在 FPGA 平台中实现是一种很好的硬件实现方案。本文在xilinx公司的spartan-3e平台中构建一个嵌入式系统来实现安全网络通信。 系统设计   该系统主要针对信息传输过程中存在信息泄露、信
[嵌入式]
安全通信系统的<font color='red'>FPGA</font>实现的方法
集成式电源管理单元简化基于FPGA的系统
医疗和仪器设备(如便携式超声设备和手持式仪器)的趋势也是尺寸越来越小,要求在更小的面积上以更有效的方式为FPGA、处理器和存储器供电。典型的FPGA和存储器设计需要密度非常高的电源,它能以快速瞬变响应输送大电流以便为内核和I/O电源轨供电,同时通过低噪声轨为锁相环(PLL)等片内模拟电路供电。电源时序至关重要,应确保FPGA在存储器使能之前上电并运行。带精密使能输入和专用电源良好输出的稳压器支持电源时序控制和故障监控。电源设计师通常希望将同一电源IC用在不同应用中,因此,必须能够改变电流限值。这种设计重用可大幅缩短产品上市时间——任何新产品开发流程中的关键要素之一。 考虑具有1路12 V输入和5路输出的FPGA的多轨电源管理常见设
[电源管理]
集成式电源管理单元简化基于<font color='red'>FPGA</font>的系统
基于MPC8260和FPGA的DMA接口设计
引言   在基于软件无线电的某无线通信信号侦收平台的设计中,天线接收到的信号经过变频器处理和A/D变换之后,经过高速通道把采集的信号送入主控板进行数据分发处理。系统的结构框图如图1所示。 图1 主控板的系统结构框图   主控板的硬件核心是嵌入式微处理器MPC8260,负责系统软件的加载、数据的分发以及与外界命令控制的交互。软件上,采用高性能的VxWorks嵌入式实时操作系统。从天线接收到的射频信号经过变频和A/D变换之后作为数据源连接到FPGA,FPGA对接收到的数据进行中频变换和信道估计等预处理后,在CPU的控制下将数据传输到本地内存,最后CPU对数据打包后进行快速分发。因此,将40~50 Mbps的高速数据流从FPGA传给CP
[单片机]
基于MPC8260和<font color='red'>FPGA</font>的DMA接口设计
自适应计算在机器人领域的应用:如何借助ROS 2实现基于FPGA的软件定义硬件
: Víctor Mayoral-Vilches 和 Giulio Corradi,公司 序言 2021年 4 月, 赛灵思创新性地推出自适应系统模块(SOM)产品组合 Kria SOM。作为一种量产型小尺寸嵌入式板卡,该平台经济实惠、开箱即用,最主要是赛里思通过工具创新,借助SOM赋能上百万软件开发者,使其可以获益于赛灵思自适应计算平台的高性能和灵活性优势,而且可以使其将应用部署时间缩短多达 9 个月。 “一石激起千层浪”, Kria 的出现,在其所面向的广泛的边缘应用领域引起积极的反响,而机器人应用就是其中之一。 传统的机器人软件开发,是基于预定义的架构和约束条件在给定机器人 中进行功能编程。然而采用自适应
[机器人]
莱迪思更新O-RAN堆栈,推动5G小型基站发展
近日,莱迪思半导体公司宣布了其莱迪思O-RAN堆栈的最新更新,为5G小型基站带来了低功耗和灵活桥接功能。这一更新标志着莱迪思在推动5G技术发展方面迈出了重要的一步。 通过最新的更新,莱迪思引入了适用于室外集成无线电应用的全新5G数据路径参考设计。这一设计旨在帮助客户改进智能工厂、智能城市、智能汽车等领域的无线基础设施。借助莱迪思的解决方案,用户可以更轻松地部署和管理5G网络,从而满足不断增长的数据需求。 莱迪思O-RAN解决方案堆栈的推出,旨在加速安全、适应性强的O-RAN系统和应用的部署。O-RAN作为一种开放和灵活的无线接入网络架构,正逐渐成为5G网络的重要组成部分。莱迪思的解决方案堆栈通过提供集成的硬件和软件组件,简
[嵌入式]
基于DSP的车载GPS/DR组合导航系统硬件设计
摘要 针对低成本组合导航技术发展的需要,结合主要传感器特点,本文介绍了以浮点DSP TMS320VC33为组合导航算法实现的核心处理器,利用TL16C554进行通信口扩展的GPS/DR组合导航系统的设计方案,给出了系统硬件的设计方法。所设计的系统具有体积小、成本低、实时性好、可靠性高、扩展性好等特点,具有广泛的应用价值。 1 引言 目前,差分GPS水平定位精度已经达到3~5m,完全满足车辆定位精度的要求。但是,由于在城市高建筑群中或穿过立交桥时,常常会出现GPS信号遮挡问题,导致GPS不能正常定位。航位推算(DR)是常用的车辆定位技术,但方向传感器随时间积累误差较大,不能单独、长时间地使用。 采用组合导航系统能够
[汽车电子]
基于<font color='red'>DSP</font>的车载GPS/DR组合导航系统硬件设计
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved