嵌入式机器视觉检测系统硬件设计解读.docx
《嵌入式机器视觉检测系统硬件设计解读.docx》由会员分享,可在线阅读,更多相关《嵌入式机器视觉检测系统硬件设计解读.docx(49页珍藏版)》请在冰豆网上搜索。
嵌入式机器视觉检测系统硬件设计解读
摘要
随着科学技术的快速发展,工业生产的自动化程度越来越高,市场对产品质量和性能的要求也越来越高,这就要求产品检测装置应具有更高的智能化。
将机器视觉系统应用于自动化生产领域是实现工业设备智能、高效、高精度的重要途径。
嵌入式机器视觉系统集图像采集、处理、通信等功能于一体,具有智能化处理的功能,而且系统可被嵌入到其他设备中,实现在工业现场的非接触式检测。
本文采用美国德州仪器(TI)公司的DM6437为主控芯片构建嵌入式图像处理系统并在ProtelDXP2004下实现系统搭建。
结合图像处理技术、光学技术、网络通信技术等,设计实现了一款嵌入式机器视觉系统,嵌入式机器视觉检测系统硬件设计能实现以TMS320DM6437为主控芯片,采用模块化设计,构建包括通讯单元,存储单元,视频输入输出接口的硬件系统,各模块之间协调工作。
DM6437外扩DDR2存储器构成了系统的存储模块,可以存储大量的图像数据和配置信息数据;系统还提供了丰富的通信接口,如以太网接口,可以方便地与很多工业现场设备进行通信。
关键词:
机器视觉;嵌入式系统;Protel;DM6437
Abstract
Withtherapiddevelopmentofscienceandtechnology,industrialproductionautomationdegreeismoreandmorehigh,themarketdemandforqualityandperformanceofproductsisalsomoreandmorehigh,thisrequiresaproductdetectingdevicewithintelligenthigher.Theapplicationofmachinevisionsysteminautomationfieldisanimportantwaytorealizetheintelligent,highefficiency,highprecisionindustrialequipment.Theembeddedmachinevisionsystemintegratesimageacquisition,processingcommunicationandotherfunctionsinone,withintelligentprocessingfunctionsandthesystemcanbeembeddedintootherdevices,toachievethenon-contactdetection.
Inthispaper,TexasInstruments(TI)companyasthemainchipDM6437embeddedimageofthesystemtobuildandimplementthesystemsetupundertheProtelDXP2004.Combinedwithimageprocessingtechnology,opticaltechnology,networkcommunicationtechnology,designandimplementanembeddedmachinevisionsystems,embeddedmachinevisioninspectionsystemhardwaredesigncanbeachievedwithTMS320DM6437asthemainchip,modulardesign,build,includingthecommunicationunit,astorageunit,avideoinputandoutputinterfacehardware,thecoordinationbetweenthevariousmodules.DM6437externalexpansionDDR2memorymodulesconstituteasystemofstorage,youcanstorealargeamountofimagedataandconfigurationinformationdata;systemalsoprovidesrichcommunicationinterfacessuchasEthernetinterface,youcaneasilyandmanyindustrialfielddevicestocommunicate.
Keywords:
MachineVision;EmbeddedSystem;Protel;DM6437
第一章绪论
1.1课题的背景、意义及来源
在现代化的工业大生产中,视觉检测往往是不可缺少的环节。
比如,汽车零件的外观、药品包装、IC字符印刷和电路板焊接质量的好坏等等,都需要众多的检测工人,通过肉眼或结合显微镜进行观测检验。
大量的人工检测不仅影响工厂效率,而且带来不可靠的因素,直接影响产品质量与成本。
另外,许多检测的工序不仅仅要求外观的检测,同时需要准确获取检测数据,比如零件的宽度,圆孔的直径,以及基准点的坐标等等,这些工作是很难靠人眼快速完成的。
随着图像处理技术和模式识别技术的发展,产生了一种新的检测方法——机器视觉。
机器视觉系统是指通过机器视觉产品(即图像摄取装置,分CMOS和CCD两种)把图像抓取到,然后将该图像数模转换后传送至处理单元,根据图像像素分布和亮度、颜色等信息,提取特征要素,最后根据这些特征要素进行判断进而控制现场设备的工作。
嵌入式系统是当前发展很快的热门技术,尤其是面向特定应用的解决方案,具有体积小、价格低、开发环境简单、运用灵活、可靠运行等优点,在各领域得到广泛的应用。
目前机器视觉产品主要有两种形式:
(1)基于PC机的板卡式,它利用图像采集卡和图像传感器在PC机上实现;
(2)嵌入式,它以嵌入式处理器为核心,整体开发包括硬件电路、设备驱动和算法软件等整套系统.传统基于PC的机器视觉系统由于结构没有模块化、可移植差、安装不便,特别是与工业现场设备通信比较困难,诸多以往依赖于PC的机器视觉系统开始向嵌入式平台倾斜,最终用于实际检测、测量和控制。
传统机器视觉系统是基于PC的,系统需要使用采集卡,将图像采集至PC,并使用图像处理算法作相应处理。
传统机器视觉系统有如下缺点:
(1)系统缺乏足够的硬件加速支持,串行的操作实现速度慢。
(2)传统的机器视觉系统体积庞大,在工业现场占用较多空间。
(3)PC机使用操作系统,操作系统不具备实时特性,很难满足实时性需求较高的应
用。
(4)由于PC机需要使用交流供电,传统机器视觉一方面不方便携带,另一方面功耗
较大,容易存在散热问题。
(5)传统机器视觉系统组成部分较多,可靠性会受一定的影响。
随着科技进步,工业生产效率及质量提高,传统的基于PC的机器视觉技术越来越不能满足现在工业检测的实时性,便携性及低功耗等要求。
随之出现的嵌式机器视觉系统集成度高,速度快,便携性好,硬件架构更适合处理数据流形式的视频图像数据。
因此,嵌入式机器视觉系统取代基于PC的板卡式机器视觉系统已经成为一种趋势。
经过近40年的研究,机器视觉在深度和广度两方面都取得了很大的进展,积累了丰富的学术研究成果,各种相关文献大量出现,己成长为一门内容十分丰富的独立学科,在应用研究方面也有了很广泛的应用。
1.2机器视觉技术概括
机器视觉技术,是一门涉及人工智能、神经生物学、心理物理学、计算机科学、图像处理、模式识别等诸多领域的交叉学科。
机器视觉主要用计算机来模拟人的视觉功能,从客观事物的图像中提取信息,进行处理并加以理解,最终用于实际检测、测量和控制。
机器视觉技术最大的特点是速度快、信息量大、功能多。
机器视觉主要用计算机来模拟人的视觉功能,但并不仅仅是人眼的简单延伸,更重要的是具有人脑的一部分功能,从客观事物的图像中提取信息,进行处理并加以理解,最终用于实际检测、测量和控制。
机器视觉伴随计算机技术、现场总线技术的发展,技术日臻成熟,已是现代加工制造业不可或缺的产品,广泛应用于食品和饮料、化妆品、制药、建材和化工、金属加工、电子制造、包装、汽车制造等行业。
机器视觉的引入,代替传统的人工检测方法,极大地提高了投放市场的产品质量,提高了生产效率。
由于机器视觉系统可以快速获取大量信息,而且易于自动处理,也易于同设计信息以及加工控制信息集成,因此,在现代自动化生产过程中,人们将机器视觉系统广泛地用于工况监视、成品检验和质量控制等领域。
机器视觉系统的特点是提高生产的柔性和自动化程度。
在一些不适合于人工作业的危险工作环境或人工视觉难以满足要求的场合,常用机器视觉来替代人工视觉;同时在大批量工业生产过程中,用人工视觉检查产品质量效率低且精度不高,用机器视觉检测方法可以大大提高生产效率和生产的自动化程度。
而且机器视觉易于实现信息集成,是实现计算机集成制造的基础技术。
机器视觉是工业自动化系统中重要的组成部分,近年来正成为工业自动化领域的新兴亮点之一,目前已经在包装、印刷、纺织、制药、工业检测等领域得到了广泛应用。
在工业检测领域使用机器视觉系统有如下优点:
(1)非接触,非接触的检测不会对被检对象造成损害,同时系统设备更方便耐用。
(2)检测更精确,机械方式的检测精确程度低,且受震动等环境因素影响。
(3)光谱响应范围宽,可以获得红外、远红外的检测图像。
(4)成本低,相比于其它传感器,摄像头的成本非常低,且用于工业检测的传感网络
中经常需要用大量的传感器,安装及维护都将带来成本。
(5)不会视觉疲劳,可以长时间稳定的工作。
总之,随着机器视觉技术自身的成熟和发展,可以预计它将在现代和未来制造企业中得到越来越广泛的应用。
1.3嵌入式机器视觉概述
目前,我国的机器视觉行业也出现了不少具备自主创新能力的企业,将嵌入式技术结合传统的机器视觉就是应市场需求变化而推出的一项新技术,该技术实现了实时视觉图像采集、视觉图像处理控制,使其结构更紧凑,甚至完全不需要计算机的介入,提高处理速度,并能有效降低成本的专用机器视觉控制系统,使得该系统具有安装方便、配置灵活、便于携带等突出优点。
传统机器视觉系统是一种基于计算机(以下简称PC)的视觉系统,一般由光源、CCD或CMOS相机、图像采集卡、图像处理软件以及PC构成。
相机和图像采集卡在光源的配合下,完成图像的采集,图像处理软件在PC中完成对采集图像的处理。
嵌入式机器视觉系统应用了嵌入式技术,包括数字信号处理器(DSP)、现场可编程逻辑阵列(FPGA)及大容量存储器(DDR2SDRAM和NANDFLASH)等,将图像采集、图像处理和通信等功能集成于一体,实现了模块化、智能化的嵌入式机器视觉解决方案,系统具有实时性高、可靠性高等特点。
嵌入式机器视觉系统[1]的结构如图1-1所示。
图1-1嵌入式机器视觉系统示意图
嵌入式机器视觉系统和基于PC的机器视觉系统的差别主要体现在3个方面:
1、外观体积。
嵌入式机器视觉系统与普通数码相机的体积相当,安装简单,可以方便的装卸和移动;而基于PC的视觉系统结构复杂,体积相对庞大,不仅包括采集摄像机,在现场还需要提供一台用于图像处理的PC,不便于工业现场的装卸与移动。
2、硬件结构。
嵌入式机器视觉系统将图像采集单元、图像处理单元和网络通信单元等集成于一体,并经过可靠的设计,系统工作效率和可靠性都得到了充分的保证。
但是由于系统的硬件电路已经固定,在后期开发和设计中系统电路缺乏灵活性,各模块之间无法改装或装配。
基于PC的机器视觉系统主要有摄像机、图像采集卡和PC组成,只要各模块之间采用的是标准接口,用户便可以选择不同类型的产品,因此在后期开发和设计上具有较高的灵活性。
但是由于不同的产品来自不同的厂家,各产品之间存在兼容性问题,这在某种程度上又影响了系统工作的可靠性。
3、软件架构。
一般来说,嵌入式机器视觉系统主要用于工业产品的检测和识别应用,软件在功能上具有一定的通用性,是一种比较通用的产品。
由于在嵌入式机器视觉系统中已经固化了成熟的图像处理算法,因此用户无需编程,只需在提供的软件界面上配置用于图像处理的参数(即配置信息),就可以实现有/无判断、工件定位、尺寸测量、目标计数、字符识别、条码读取等功能,这在一定程度上提高了系统集成的效率和速度。
而基于PC的机器视觉系统软件一般是用户针对某个特定的应用而开发,需要用户完全或部分开发适合该应用的图像处理算法,对用户的编程要求较高。
此外,由于每个用户的开发水平和硬件的支持不同,不同用户开发的机器视觉系统也具有很大的差异。
1.4本文的主要研究内容
在前文所述的技术和项目背景下,本文的主要工作是设计基于TI的DSP(DM6437)视频处理开发平台的硬件设计,需要完成原理图的设计以及PCB板的制作及后期调试,论文的主要组织如下:
第一章主要分析了项目的背景,意义及来源,阐述了机器视觉及嵌入式机器视觉在现代工业中的广泛应用。
第二章概述了DSP结构、DSP的开发环境及设计流程,介绍了DSP设计调试的常用工具,介绍了三种视觉检测系统,详细分析了不同视觉处理平台方案的优劣。
第三章介绍了PCB电路板的设计,要实现以TMS320DM6437为主控芯片构建嵌入式图像处理系统,在ProtelDXP2004下完成系统的搭建。
第四章是本文的重点章节,主讲理论,下一章完成设计,对开发平台的各个功能模块进行了详细的设计说明,主要完成对视频输入,视频处理,输出部分,以及辅助模块(电源模块和调试模块)的设计。
第五章要求嵌入式机器视觉检测系统硬件设计能实现以TMS320DM6437为主控芯片,构建包括通讯单元,存储单元,视频输入输出接口的硬件系统,本章完成利用Protel来实现基于DSP图像检测系统硬件设计。
第二章嵌入式机器视觉检测系统
2.1DSP概述
凡是利用数字计算机或专用数字硬件,对数字信号进行的一切变换或按预定规则进行的一切加工处理运算称为数字信号处理[2]。
例如,对信号进行滤波、参数提取、频谱分析、压缩等处理。
对DSP狭义理解可为DigitalSignalProcess数字信号处理,广义理解为DigitalSingalProcessing数字信号处理技术。
数字信号处理(DigitalSignalProcessing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。
20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。
在过去的二十多年时间里,数字信号处理已经在通信等领域得到极为广泛的应用。
数字信号处理是围绕着数字信号处理的理论、实现和应用等几个方面发展起来的。
数字信号处理在理论上的发展推动了数字信号处理应用的发展。
反过来,数字信号处理的应用又促进了数字信号处理理论的提高。
而数字信号处理的实现则是理论和应用之间的桥梁。
如下图2-1为一种DSP芯片。
图2-1DSP芯片
数字信号处理[3]是以众多学科为理论基础的,它所涉及的范围极其广泛。
例如,在数学领域,微积分、概率统计、随机过程、数值分析等都是数字信号处理的基本工具,与网络理论、信号与系统、控制论、通信理论、故障诊断等也密切相关。
近来新兴的一些学科,如人工智能、模式识别、神经网络等,都与数字信号处理密不可分。
可以说,数字信号处理是把许多经典的理论体系作为自己的理论基础,同时又使自己成为一系列新兴学科的理论基础。
数字信号处理的实现方法一般有以下几种:
(1)在通用的计算机(如PC机)上用软件(如Fortran、C语言)实现;
(2)在通用计算机系统中加上专用的加速处理机实现;
(3)用通用的单片机(如MCS-51、96系列等)实现,这种方法可用于一些不太复杂
的数字信号处理,如数字控制等;
(4)用通用的可编程DSP芯片实现。
与单片机相比,DSP芯片具有更加适合于数字信
号处理的软件和硬件资源,可用于复杂的数字信号处理算法;
(5)用专用的DSP芯片实现。
在一些特殊的场合,要求的信号处理速度极高,用通用
DSP芯片很难实现,例如专用于FFT、数字滤波、卷积、相关算法的DSP芯片,
这种芯片将相应的信号处理算法在芯片内部用硬件实现,无需进行编程。
上述几种方法中,第1种方法的缺点是速度较慢,一般可用于DSP算法的模拟;第2种和第5种方法专用性强,应用受到很大的限制,第2种方法也不便于系统的独立运行;第3种方法只适用于实现简单的DSP算法;只有第4种方法才使数字信号处理的应用打开了新的局面。
虽然数字信号处理的理论发展迅速,但在20世纪80年代以前,由于实现方法的限制,数字信号处理的理论还得不到广泛的应用。
直到20世纪70年代末80年代初世界上第一片单片可编程DSP芯片的诞生,才将理论研究结果广泛应用到低成本的实际系统中,并且推动了新的理论和应用领域的发展。
可以毫不夸张地说,DSP芯片的诞生及发展对近20年来通信、计算机、控制等领域的技术发展起到十分重要的作用。
DSP芯片是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法,一般具有如下主要特点:
(1)在一个指令周期内可完成一次乘法和一次加法;
(2)程序和数据空间分开,可以同时访问指令和数据;
(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;
(4)具有低开销或无开销循环及跳转的硬件支持;
(5)快速的中断处理和硬件I/O支持;
(6)具有单周期内操作的多个硬件地址产生器;
(7)可以并行执行多个操作;
(8)支持流水线操作,使取指、译码、和执行等操作可以重叠执行。
TMS320系列芯片基本结构包括:
(1)哈佛结构;
(2)流水线操作;(3)专用的硬件乘法器;(4)特殊的DSP指令;(5)快速的指令周期。
这些特点使得TMS320系列DSP芯片可以实现快速的DSP运算,并使大部分运算(例如乘法)能够在一个指令周期内完成。
由于TMS320系列DSP芯片是软件可编程器件,因此具有通用微处理器方便灵活的特点。
2.2嵌入式机器视觉的硬件平台
现有的视觉处理平台硬件架构有以下几种:
基于PC机的视觉处理平台;基于DSP的视觉处理平台;基于GPU的视觉处理平台;基于DSP+FPGA的视觉处理平台[4]和基于FPGA的视觉处理平台。
本章详细分析了某些平台硬件架构的优势及不足之处,通过分析给出了机器视觉系统硬件平台架构的发展趋势。
2.2.1基于ARM平台的视觉检测系统
ARM是AdvancedRISCMachines的缩写,它是一家微处理器行业的知名企业,ARM公司的特点是只设计芯片,将技术授权给合作伙伴,而不生产。
另外提供软件工具、评估板、调试工具、应用软件、外围模板等服务。
ARM架构是构建每个ARM处理器的基础。
ARM架构随着时间的推移而不断发展,其中包含的架构功能可满足不断增长的新功能、高性能需求以及新兴市场的需要。
ARM架构支持跨跃多个性能点的实现,并已在许多细分市场中成为主导的架构。
ARM架构支持非常广泛的性能点,因而可以利用最新的微架构技术获得极小的ARM处理器实现和极有效的高级设计实现。
实现规模大、性能高和低功耗是ARM架构的关键特性。
ARM架构与精简指令集计算(RISC)架构类似,因为它包含以下典型RISC架构特征:
•统一寄存器文件加载/存储架构,其中的数据处理操作只针对寄存器内容,并不直接针对内存内容。
•简单寻址模式,所有加载/存储地址只通过寄存器内容和指令字段确定。
ARM处理器是Acorn计算机有限公司面向低预算市场设计的第一款RISC微处理器。
ARM处理器本身是32位设计,但也配备16位指令集。
一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。
高端的Cortex系列的处理器最高频率可以高达上GHz,高端处理器上可以集成DSP指令,浮点运算模块,SIMD扩展指令等增强功能。
ARM特点有:
1.加载/存储架构,数据的处理操作只在寄存器里实现,并不直接用内存数据参加运算。
2.简单的寻址模式,所有的加载/存储地址只通过寄存器内容和指令字段确定。
3.支持多级流水线结构,使得指令执行效率更高。
ARM不同架构都具有通用的指令集,
使得软件兼容性很好。
ARM处理器[5]的工作模式除用户模式外,其他都是特权模式,可以通过软件控制实现各个模式的切换。
不同模式下程序可以访问的系统资源和表现的实时性也不同。
ARM是32位单片机,由于结构和计算速度的原因,目前适合做事务处理或者中低端应用,从中高级工控到简单语音/图片(不含视频)处理。
ARM的缺点就是在低端应用时ARM性价比较低,开发难度也更大,新手入门较困难。
2.2.2基于FPGA平台的视觉检测系统
FPGA(FieldProgrammableGateArray,现场可编程门阵列)是在PAL(可编程阵列逻辑)、GAL(通用可编程阵列逻辑)、CPLD(复杂可编程逻辑器件)等基础上进一步发展出来的。
FPGA是近几年发展最快的可编程逻辑器件之一,它作为一种半定制电路,它既解决了定制电路的不足,又克服了原有可编程器件门电路数目有限的缺点。
首先,FPGA对设计的实现均由内部硬件逻辑资源实现,也就是说,设计的结果是由FPGA内部现有的电路来完成,从实现的机制上硬件的速度要优于软件,故而被称为硬件加速。
其次,FPGA内部的基本逻辑单元相互之间都是独立工作的,使用FPGA实现的算法在处理的并行程度上要比通用处理器高,这是FPGA在处理速度上最具有优势的特点。
同时,FPGA具有可重构的特点,其I/O资源可以与其他芯片直接相连,通过内部逻辑设计,完成相应功能。
这就使FPGA设计的可移植性高、设计灵活性强。
另外,FPGA采用基于IP核的资源复用,随着各公司研发的IP核增多,FPGA的使用将越来越方便。
最后,FPGA低成本,低功耗等优势也引起了相当的关注。
目前主流的FPGA是基于查找表技术的,图2-2为查找表结构的FPGA内部结构图[6]。
图2-2查找表结构的FPGA内部结构
随着微电子技术的发展,FPGA硬件资源逐渐增多,其硬件可编程、可并行运算、高速低成本、低功耗等优势越来越突出。
将FPGA技术和视觉处理技术相结合,充分发挥FPGA硬件实现,并行处理,多级流水线技术等在视觉检测处理领域的优势,提高机器视觉检测处理系统的数据吞吐能力和数据处理能力,是机器视觉技术的一个重要研究方向。
2.2.3基于DSP平台的视觉检测系统
ARM是32位单片机,由于结构和计算速度的原因,目前适合做事务处理或者中低端应用,从中高级工控到简单语音/图片(不含视频)处理。
FPGA一般来说比ASIC(专用集成电路)的速度要慢,无法完成复杂的设计,存储空间小,不易使用,不能直接用C语言编程,而且一般情况下构造ARM/DSP不如专用ARM/DSP方便。
数字信号处理器(DSP)采用哈佛结构,将数据总线和地址总线分开,数据和指令存放在不同空间,使DSP在执行指令的