当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]长期以来用于系统中,以通过取代传统上的人工检查来提高生产质量和产量。从拾取和放置、对象跟踪到计量、缺陷检测等应用,利用视觉数据可以通过提供简单的通过失败信息或闭

长期以来用于系统中,以通过取代传统上的人工检查来提高生产质量和产量。从拾取和放置、对象跟踪到计量、缺陷检测等应用,利用视觉数据可以通过提供简单的通过失败信息或闭环控制回路,来提高整个系统的性能。

视觉的使用并不仅仅在工业领域;我们也看到了相机在日常生活中的大量应用,例如用于计算机、移动设备,特别是在汽车中。摄像头仅仅是在几年前才被引入到汽车中,但是现在汽车中已经配备了大量摄像头,以为驾驶员提供完整的360°车辆视图。

但是谈到机器视觉领域的最大技术进步,可能一直是处理能力。随着处理器性能每两年翻一番,以及对多核CPU、GPU和FPGA等并行处理技术的持续关注,视觉系统设计人员现在可以将高度复杂的算法应用于视觉数据,并创建更智能的系统。

处理技术的发展带来了新机会,而不仅仅是更智能或更强大的算法。让我们看看为制造机器增加视觉功能的应用案例。这些系统传统上设计为形成协作分布式系统的智能子系统网络,该系统允许模块化设计(见图1)。

图1:智能子系统网络,其设计为构成协作分布式。该系统允许模块化设计,但采用这种以硬件为中心的方法可能导致性能瓶颈。

然而,随着系统性能的提高,采用这种以硬件为中心的方法可能遇到困难,因为这些系统通常采用时间关键和非时间关键协议的混合来联接。通过各种通信协议将这些不同的系统联接在一起,会导致延迟、确定性和吞吐量方面出现瓶颈。

例如,如果设计者试图利用这种分布式架构开发应用,并且必须在视觉和运动系统之间保持紧密集成,例如在视觉伺服中所需要的,那么可能遇到由于缺乏处理能力而带来的主要性能挑战。此外,由于每个子系统都具有自己的控制器,这实际上会降低处理效率。

最后,由于这种以硬件为中心的分布式方法,设计人员不得不使用不同的设计工具来设计视觉系统中每个子系统的特定视觉软件,以及用于运动系统的运动专用软件等。这对于规模较小的设计团队而言尤其具有挑战性,因为一个小团队甚至是一名工程师,需要负责设计中的许多部分。

幸运的是,有更好的方法为先进的机器和设备设计这些系统,这是一种简化复杂性、提高集成度、降低风险和缩短上市时间的方法。如果我们将思维从以硬件为中心转向以软件为中心的设计方法,结果会怎么样(见图2)?如果我们使用能用单一设计工具实现不同任务的编程工具,那么设计人员就可以在他们的软件中反映机械系统的模块性。

图2:以软件为中心的设计方法,允许设计人员通过在单个强大的中整合不同的自动化任务(包括视觉检查、、I/O和HMI)来简化控制系统结构。

这允许设计人员通过在单个强大的嵌入式系统(见图3)中整合不同的自动化任务(包括视觉检查、运动控制、I/O和HMI)来简化控制系统结构。这消除了子系统通信的挑战,因为现在所有子系统都在单个控制器上的相同软件堆栈中运行。 高性能嵌入式视觉系统是这种集中式控制器的最佳候选者,因为这些设备中已经内置了这些功能。

图3:将处理器与FPGA和I/O结合在一起的异构架构,不仅是设计高性能视觉系统、也是集成运动控制、HMI和I/O的理想解决方案。

让我们来看看这种集中式处理架构的一些好处。以视觉引导运动应用为例,例如柔性馈送,其中视觉系统为运动系统提供引导功能。这里,零件的位置和取向都是随机的。在任务开始时,视觉系统拍摄零件的图像以确定其位置和取向,并将该信息提供给运动系统。

然后,运动系统根据图像坐标将致动器移动到零件所处的位置,并拾起它。它也可以使用此信息在放置零件之前校正方向。通过这种方法,设计者可以消除先前用于定向和定位零件的任何夹具。这不但降低了成本,还允许应用程序能更容易地适应新的零件设计,只需要修改软件即可。

以硬件为中心的架构的关键优点是其可扩展性,这主要归因于系统之间的以太网链路。但是也必须特别注意通过该链路的通信。如前所述,这种方法的挑战在于以太网链路的不确定性,并且带宽有限。

对于大多数仅在任务开始时给出引导的视觉引导运动任务,这是可接受的;但是也可能存在其他情况,其中延迟的变化可能是一大挑战。将这种设计转向集中式处理架构,具有诸多优点。

首先,因为可以使用相同的软件开发视觉系统和运动系统,设计者不需要熟悉多种编程语言或环境,因此降低了开发复杂性。第二,消除了以太网网络上的潜在性能瓶颈,因为现在数据仅在单个应用中的环路之间传递,而不是在物理层之间传递。

这使得整个系统的运行具有确定性,因为一切共享相同的过程。当将视觉直接引入控制回路中时,例如在视觉伺服应用中,这是特别有价值的。这里,视觉系统在运动期间连续捕获致动器和目标零件的图像,直到运动完成。这些捕获的图像用于提供关于运动成功的反馈。有了这一反馈,设计人员可以提高现有自动化的精度和精密度,而无需升级到高性能运动硬件。

现在提出了一个问题:这个系统是什么样子?如果设计人员将要使用能满足机器视觉系统所需的计算和控制需求的系统,并要与其他系统(如运动控制、HMI和I/O)无缝连接,那么他们需要使用具备所需性能的硬件架构,以及每个这些系统所需的智能和控制能力。

这种系统的一个很好的选择是:使用将处理器和FPGA与I/O相结合的异构处理架构。已经有很多行业投资这种架构,包括美国Xilinx公司的Zynq全可编程SoC(将ARM处理器与Xilinx 7系列FPGA架构相结合),以及英特尔数十亿美元收购Altera等。

对于视觉系统,使用FPGA特别有益,这主要是因为其固有的并行性。算法可以分开,运行数千种不同的方式,并且可以保持完全独立。另外,这种架构的好处不仅仅体现在视觉方面,其对运动控制系统和I/O也大有裨益。

处理器和FPGA可用于执行高级处理、计算和制定决策。设计人员几乎可以通过模拟和数字I/O、工业协议、定制协议、传感器、致动器和继电器等,连接到任何总线上的任何传感器。此架构还满足了其他要求,如时序和同步以及业务挑战(如提高生产率)。每个人都希望更快地开发产品,这种架构消除了对大型专业设计团队的需要。

不幸的是,虽然这种架构提供了很多性能和可扩展性,但是实现它的传统方法需要专业知识,特别是在使用FPGA时。这为设计者带来了巨大风险,并有可能导致使用该架构不切实际甚至不可能。然而,使用集成软件(如NI LabVIEW),设计人员可以通过提取低级复杂性,并将所需的所有技术集成到单一开发环境中,来提高生产率,降低风险。

理论是一回事,将其付诸实践是另一回事。Master Machinery是台湾一家生产半导体加工设备的公司(见图4)。这种特定的设备使用机器视觉运动控制和工业I/O的组合,将芯片从硅晶片上取下并封装。这是能使用图1中的分布式架构的机器示例,每个子系统可以单独开发,然后通过网络集成在一起。

图4:使用中央集权的、以软件为中心的方法,Master Machinery公司将其主机控制器、机器视觉和运动系统、I/O和HMI全部集成到单个控制器中,性能是竞争对手的10倍。

行业内这种机器每小时的产量大约为2000个零件。但是Master Machinery公司采取了不同的方法。他们设计了中央集权的、以软件为中心的架构,并将主机控制器、机器视觉和运动系统、I/O和HMI全部集成到单独的控制器中,所有都采用LabVIEW编程。除了不需要单个子系统实现成本节约之外,这种方法还具备性能优势,其每小时大约能生产20000个零件,是竞争产品的10倍。

Master Machinery公司成功的关键因素之一是能够将多个子系统组合在单个软件堆栈中,特别是机器视觉和运动控制系统。使用这种统一的方法,Master Machinery公司不但简化了设计机器视觉系统的方式,而且还简化了如何设计整个系统。

机器视觉是一项复杂的任务,需要大量的处理能力。随着摩尔定律继续增加处理元件(如CPU、GPU和FPGA)的性能,设计人员可以使用这些组件来开发高度复杂的算法。设计人员还可以使用此技术来提高设计中其他组件的设计性能,特别是在运动控制和I/O领域。

随着所有这些子系统性能的提高,用于开发这些机器的传统分布式架构将面临压力。将这些任务整合到单个控制器中,运行在单个软件环境下,消除了设计过程中的瓶颈,使设计人员可以专注于创新,而不必担心实施问题。

0次

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

机器人操作系统(ROS)驱动程序基于ADI产品而开发,因此可直接在ROS生态系统中使用这些产品。本文将概述如何在应用、产品和系统(例如,自主导航、安全气泡地图和数据收集机器人)中使用和集成这些驱动程序;以及这样将如何有助...

关键字: 电机控制器 机器人 嵌入式

在嵌入式系统开发、调试和测试过程中,J-Link作为一种高效的调试工具,为开发者提供了极大的便利。然而,要想充分发挥J-Link的功能,首先需要正确安装其驱动程序。本文将详细介绍J-Link驱动的安装过程,并深入解析其中...

关键字: jlink 嵌入式系统 嵌入式开发

与谷歌的合作使 Nordic 能够在 nRF Connect SDK 中嵌入开发人员软件,以构建与安卓移动设备兼容的谷歌Find My Device和未知跟踪器警报服务

关键字: 谷歌 SoC 嵌入式开发

支持高达48V@5A的PD受电模式,达到目前USB PD最高标准。

关键字: 嵌入式 开发板

【2024年4月8日,德国慕尼黑讯】低碳化和数字化是当今时代人们面临的两大核心挑战,人类社会需要依靠创新和先进的技术,才能破除挑战、推动转型进程。在德国纽伦堡举办的2024国际嵌入式展(Embedded World 20...

关键字: 半导体 微控制器 嵌入式

TDK 株式会社(TSE:6762)进一步扩充 Micronas 嵌入式电机控制器系列 HVC 5x,完全集成电机控制器与 HVC-5222D 和 HVC-5422D,以驱动小型有刷(BDC)、无刷(BLDC)或步进电机...

关键字: 嵌入式 电机控制器 内存

嵌入式开发作为当今电子工程和信息技术领域的核心分支,涵盖了广泛的软硬件技术和系统集成方法,用于构建高性能、低成本、低功耗、体积小巧且功能专一的嵌入式系统。这些系统无处不在,从微型传感器节点到复杂的工业控制设备,从日常使用...

关键字: 嵌入式开发 Python

嵌入式开发是当今信息技术领域不可或缺的一部分,它融合了硬件设计、软件开发和系统集成等多个学科,专门用于创建那些被嵌入到特定设备或系统中的专用计算机系统。嵌入式开发的主要过程包括利用分立元件或集成器件进行电路设计、结构设计...

关键字: 嵌入式开发 硬件设计 软件开发

嵌入式开发作为一种专业且技术密集型的领域,涵盖了从硬件底层驱动、中间件到应用层软件开发等多个层面的工作,其所需的工具种类繁多,各有针对性,旨在提升开发效率、保证代码质量以及简化调试过程。

关键字: 嵌入式开发 keil

嵌入式开发作为信息技术领域的重要分支,其涉及的语言种类繁多,各具特色。这些语言的选择取决于目标平台的特性、性能需求、开发者的熟练程度以及项目的具体要求。本文将详细介绍几种常见的嵌入式开发语言,包括C语言、C++、汇编语言...

关键字: 嵌入式开发 C语言
关闭
关闭