ADIBlackfin®处理器助力网络制造流程缺陷检测系统的发展

简介
工业机器视觉的目标之一是开发计算机和电子系统在工业生产质量控制中取代人类视觉。网络检查系统目前用于许多应用中的缺陷检测和质量控制,例如高压电缆绝缘,纸张,塑料袋,带钢,燃料芯块,芯片包装,木材,布料和织机的制造。自动检测系统与手动检查相比具有许多优点。手工检查表面缺陷是一项繁琐的工作(如果不是不可能的话) - 通常是因为许多缺陷的尺寸很小,而且要检查的区域非常大。
传统的检测系统包括线扫描相机,主机,图像采集卡和一个或多个专用处理电路板。在本文中,我们将讨论用于实时缺陷检测的新集成设计环境的开发 - 无需外部帧抓取器,并消除或减少对其他相关主机外围系统的需求。包含可重新配置的现场可编程门阵列(fpga)的处理板安装在dalsa ccd相机内。 fpga直接连接到视频数据流,并将数据输出到相关的adi blackfin型adsp-bf535p处理器,以便进一步处理。单独使用fpga进行低级处理代表了软件和专用硬件实现之间的良好折衷。处理后的数据可以通过usb或firewire端口传输到pc进行存储,监控和其他处理。本系统的目标是网络检查,但具有更广泛的适用性。图1显示了一个没有帧抓取器的工业检测系统的基本框图。
缺陷检测任务被委托给两个算法。第一个(预处理)承担保守过滤器的角色。其目标是检测所有可能的缺陷。该任务将主要使用fpga作为视频流滤波器实时执行。这里的目的是提供一种快速识别可能或可能不会被归类为有缺陷的可疑区域的可靠方法。在后处理中,我们的目标是使用adi blackfin adsp-bf535p处理器识别缺陷的类型和严重程度。通常后一个过程是在主机上进行的,但是使用功能强大的adi blackfin处理器,可以在修改后的摄像机系统本地完成该过程的重要部分。
为实时应用程序(例如web检查)建立适当的计算环境是一项具有挑战性的任务。在本文中,“实时”描述了能够接收和处理连续视频数据的任何成像系统。实时系统必须在分配的关键时间范围内执行所有必需的操作。即使在极端系统负载的情况下,系统响应的执行时间和逻辑顺序也必须正确。本说明中描述的系统可实现每秒多达30百万样本的实时视频处理。
测试设置
模拟测试夹具已经建立了一个带有变速操作装置的卷筒纸制造工艺,如图2所示。测试装置包括一个dalsa tdi线扫描相机,一个带有用于tdi同步的轴编码器的电动滚筒,以及一个带有直流光源的直流光源。光纤光导。我们的fpga / dsp处理板安装在常规摄像机控制板上方。来自各种web源的缺陷样本用于测试和验证候选算法。
硬件
完整的硬件组件如图3所示。
图4显示了处理系统的框图。来自fpga的预处理数据存储在fifo中,fifo缓冲数据以供数字信号处理器(dsp)进一步处理。处理硬件组件包括三个pcb-- fpga板,dsp板和用于连接pc的usb / firewire板。其他资源由董事会共享。
fpga与dsp
我们的处理板支持fpga或dsp或两者的处理。如何选择应用程序处理能力的配置?
dsp是一种专用微处理器,通常用c语言编写,偶尔使用汇编代码来提高系统性能。 dsp非常适合极其复杂的数学密集型任务,涉及条件处理。它的性能受时钟速率和每个时钟可以执行的有用操作数量的限制。相比之下,fpga是未提交的“门之海”。通过将门连接在一起以形成乘法器,寄存器,加法器等来对器件进行编程。数学是通过互连这些构建块在硬件中完成的。这些块的复杂程度可以从单个栅极到非常高的fir滤波器级别,也可以是fft给定的足够的栅极以及互连它们的能力。性能受到芯片上可用门数和时钟速率的限制。
fpga和dsp因此代表了两种截然不同的信号处理方法 - 每种方法都具有不同的优势。 fpga可以轻松实现许多高采样率应用,但dsp不适用。同样地,存在许多复杂的软件问题 - 易于dsp - fpga无法解决这些问题。
由于这些互补特性,理想的系统将分离fpga与数字信号处理器之间的工作。在我们的网络检查系统中,图像本身上的大多数操作都很简单且非常重复;所以这些原始操作最好在fpga中实现。然而,成像管道通常用于识别被检查对象中的“斑点”或“感兴趣区域”。这些斑点的大小可以变化,因此后续处理往往更复杂。使用的算法通常是自适应,具体取决于blob的结果。考虑到所有因素,基于dsp的方法通常在成像流水线的后端更有效。
xilinx spartan iie系列fpga用于我们的系统,因为它具有额外的可配置逻辑块(clb)功能,可以更快的速度运行,用于基于存储器的设计 - 并且它支持系统时钟速率最高200 mhz。 clb包括四输入函数发生器,进位逻辑和存储元件。每个clb还包含组合函数发生器以提供五个或六个输入功能的逻辑。
目前我们的设计使用xc2s200e,它具有5292个逻辑单元和200k系统门。该fpga具有足够的资源用于我们的许多目标应用,并且适合打包以构建单板相机内系统。
选择合适的dsp
这非常重要为我们的应用选择合适的处理器。正确的外设和开发工具的功耗,成本和封装,速度,性能和可用性是我们决定选择adsp-bf535p的主要因素。
adsp-bf535p是analog的成员器件blackfin dsp产品系列。它将双mac dsp引擎,risc类微处理器指令集和单指令多数据(simd)多媒体功能整合到一个指令集架构中。
电源
电源在网络检测系统中发挥着重要作用。在现场使用十几个这样的相机并不罕见。可能存在不需要通过dsp进一步处理数据的应用程序,或者应用程序可以以较低的dsp时钟速度运行。通过使用adsp-bf535p,我们不需要为了性能而牺牲功率。在blackfin adsp-bf535p中,可以通过降低核心电压和频率来降低功耗。为此,外部配套电源管理芯片adp3053可用于动态控制核心电压电平。 blackfin dsp通过动态调度每个外设的时钟输入,提供额外的功率控制功能。此外,内部时钟仅路由到设备的启用部分。例如,256kb片上l2存储器被分成8个32kb存储体。此功能可以降低功耗,因为这些存储区仅在访问时才会计时。
成本和封装
blackfin adsp-bf535p是一种通用dsp远远低于其最接近的数字处理同行。在这个应用中,其紧凑的pbga260封装格式非常适合我们的3.5“×3.5”pcb。
速度
web检测系统要求使用密集的实时算法处理应用程序。因此,需要快速可编程的通用数字信号处理器来处理高速数据速率带来的挑战。 adsp-bf535p的最大内核时钟(cclk)为350 mhz。我们能够以300 mhz成功运行我们的应用程序(在某些情况下减少功率)。 cclk脉冲通过pll产生,cclk与系统时钟(sclk)的比率为1至31.使用20mhz外部振荡器,我们能够实现300 mhz的cclk。根据cclk,可以实现133 mhz的最大sclk。
性能
blackfin处理器经过高度优化,可高效执行dsp应用程序代码。在图像处理应用中,我们通常处理不同大小和种类的滤波器(无限脉冲响应,iir;和有限脉冲响应,fir)或应用快速傅立叶将(fft)转换为数据。表1显示了在adsp-bf535p上完成的一些基准测试。
表1. adsp-bf535p信号处理算法基准测试。
基准描述 时钟周期数
256点复数fft 3,176
阻止fir滤波器 [(样本数量)/ 2]×[(抽头数)+2]
biquad iir filter 2.5×(双二阶段数)+ 3.5
外围设备
adsp-21535p包含一组丰富的外设,通过多条高带宽总线连接到内核,提供系统配置的灵活性和出色的整体系统性能。它提供usb和pci总线,无需外围无外设扩展用于昂贵的外部组件。
为了以中等数据速率将处理后的数据从相机传输到pc,usb似乎是一个很好的解决方案。但是,由于处理板的功耗相对较高,我们无法使用usb的总线供电功能.usb最有用的功能之一就是可热插拔,扫描摄像头可以插入或拔出监控系统(本例中为pc),无需关闭pc。对于高数据速率应用,使用一系列监控摄像头,ieee std.1394 firewire是被推荐 - 它的带宽是usb 1.1的30倍。
开发工具
我们使用visualdsp ++ ™来开发和调试我们的代码。 visualdsp ++包括一个集成开发环境(ide)和一个提供高效项目管理的调试器,使我们能够在程序的编辑,构建和调试之间轻松移动。还提供adsp-bf535评估平台。
算法
在fpga / dsp处理系统中成功模拟并实现了不同的算法。这里我们简要描述模糊逻辑和1d ar算法。感兴趣的读者可以参考参考文献了解更多细节。
模糊逻辑
模糊逻辑的一种新的令人兴奋的应用是用于网络检测系统中的缺陷检测。手动检测系统中的缺陷通常由语言变量描述和识别,例如较暗或较亮区域; 更小或更大的对象,因此模糊逻辑似乎是缺陷检测应用程序的良好候选者。为了应用该算法,从“黄金”(无缺陷)模板离线导出一组纹理特征。这些纹理特征用作模糊决策引擎的输入。获得整个可能输入范围的输出并存储在查找表(lut)中。所提出的算法已经在具有多个染色缺陷的随机纹理样本上进行了测试(图5);图像以256行×256列的分辨率数字化,具有8位灰度信息。应用算法的结果如图6所示。
使用adsp-bf535p,采用一维自回归(1d ar)算法,定位缺陷的确切位置。
1d ar算法的硬件实现
图7显示了1d ar算法的简化信号流。
1d ar算法可以很容易地在adsp-bf535p中实现,并结合模糊逻辑算法来检测缺陷线中缺陷的确切位置。
ar算法是iir滤波器(ar预测器)。由于iir滤波器比fir滤波器更快,因此它们更适合实时应用。实验表明,8阶滤波器适用于大多数纹理。计算单元执行单周期操作,并且没有计算流水线。缺陷线像素的灰度级可以存储在片上sram中,然后通过dma控制器将它们无形地转移到外部存储器或pc中。
结论
<我们已经描述了一个相机原型处理板,它基本上由一个fpga和一个adi blackfin处理器组成。讨论了实时web检测系统的一些重要问题,以及参数 - 例如:功耗,成本,封装,速度,性能以及对正确外设和开发工具的需求 - 这些都促使我们选择adsp- bf535适合我们的应用。我们展示了blackfin adsp-bf535为实现低功耗,高性能,实时嵌入式应用提供了一个极好的平台。

详细介绍钳位滤波器的工作原理、特点和应用
双洎能源洛阳有限公司专业生产锂亚电池Lisocl2
村田 | 导体传导和共模 - 噪声的导体传导
SEMI报告称,晶圆厂设备支出将在2019年下半年摆脱低迷
比较PCB质量控制选项:确保正确构建电路板
ADIBlackfin®处理器助力网络制造流程缺陷检测系统的发展
2020年3月国内增值电信业务许可情况分析
ESP32在1.54寸彩屏的应用
共模电感和差模电感在电路中的区别
qudpsocket是怎么用的
高通5G基带不断驱动行业应用 5G精彩体验刚刚开始
世上最大圆柱形锂电池在研制成功
美媒:微信小程序正潜移默化的改变智能手机
人机协同的未来该往哪里走
瞄准城市停车难“痛点” 超声波传感器助力智能停车黑科技
创意diy吊车制作图解
漫谈八木天线
Windows 10二月度更新补丁引发网络链接问题 微软推出可选更新解决相关问题
机器人终于流上了机器血
VK0192 LQFP44 192点阵3/4线串行接口LCD驱动芯片,LCD显示驱动芯片