定制的可扩展视觉导引产品
摘要
本文介绍了一种适用于各级用户的可重复、可扩展、经济实惠且易于使用的视觉导引产品。视觉导引指将可执行单元引导到所需位置以执行所需操作,广泛应用于工业自动化制造应用中。我们的可重复产品是一种标准产品,在我们开发出产品之后,客户无需再进行开发。视觉导引产品的一大构成要素是机器视觉算法。我们经济实惠的产品提供定制的、完全自主创新的机器视觉算法,且无需额外购买市场上的任何商用产品,从而大大降低了机器视觉产品的成本。同时,我们机器视觉平台的性能与市场上的商用产品相比具有竞争力。我们的可扩展产品能够根据客户的要求满足不同的视觉导引应用。我们的产品就像智能相机一样易于使用,且可用性高,用户只需拖动和单击鼠标即可快速部署视觉导引应用。我们通过对 UR 机器人和 EPSON 机器人等多种工业机器人进行视觉导引来验证我们产品的性能并获得良好的测试结果。
问题陈述
视觉导引是工业自动化制造中最受欢迎的机器视觉应用之一。从理论上讲,视觉导引指将可执行单元引导到所需位置以执行所需操作。可执行单元包括机器人、气缸、电机等。所需操作包括拾取和放置、焊接、装配等。如图 1 所示,视觉引导型机器人在自动化应用中十分常见。就像给机器人安装上眼睛一样,视觉导引大大提高了机器人运动的精确度,扩大了机器人的应用领域。

为了实现视觉导引应用,需要几种机器视觉技术:a) 对象定位、b) 校准、c) 通信。这些视觉导引技术也广泛应用于工业领域。如图 2 所示,我们将在检测应用中使用对象定位技术,因为在执行检测之前,通常需要通过对象定位算法来确定对象的位置。出于同样的原因,我们还在尺寸测量应用中使用对象定位。因此,视觉导引是应用最广泛的工业机器视觉技术。
市场上有数种商用产品提供视觉导引功能,它们可分为两组:基于智能相机的产品和基于传统相机的产品。智能相机的代表是 Cognex 和 Halcon。传统相机的代表是 Halcon。在表 1 中,我们列出了使用这种机器视觉产品的成本。智能相机可用性良好、产品成本高、开发成本低。传统相机可用性不佳、产品成本低、开发成本高。在图 3 中,我们可以看到智能相机的使用主要通过拖动和点击鼠标来实现。而传统相机需要专业工程师来进行高级编程。因此,这两种产品的总成本都很高。另外,智能相机和传统相机如果想使用视觉导引功能,需要购买整个算法包,这也是成本高的原因。


定制视觉导引产品是填补客户需求和市售商用产品之间差距的必要产品。产品开发面临若干挑战:
- 自主创新的机器视觉算法:商业视觉导引产品成本高的原因是机器视觉算法。为了降低系统成本,我们无法购买任何商业机器视觉库,必须自行开发算法,创新为我们的产品创造核心竞争力
- 成本低而具有竞争力的性能:即使成本低,客户也不会接受性能差的产品,因此我们的自主创新机器视觉算法与商用产品相比,应具有极具竞争力的性能
- 可面向不同类型的导向应用进行配置:我们需要引导不同类型的可执行单元,如 scara 机器人、6 轴机器人、气缸、电机等,因此我们需要一个可配置的系统,这意味着用户可以根据不同应用的要求配置产品
- 便于操作员使用:产品应具有与智能相机类似的可用性
- 符合生产线运行要求的工业级品质:低成本不应降低产品质量
- 具有支持数字化工厂的潜力:数字化工厂对 TE 非常重要,许多客户均对此很感兴趣,因此我们应考虑产品连接网络和交换信息的潜力
我们开创性地开发出可配置的定制视觉导引解决方案。我们自行开发了所有用于视觉导引的机器视觉算法,不购买市场上任何商用产品,这大大降低了系统的成本。我们系统的性能可与商用产品媲美。我们提供可配置的产品,可面向不同的应用进行配置。我们解决方案的操作方法与智能相机类似,用户只需通过拖动和单击鼠标即可配置软件,实现一个视觉导引应用。 我们通过对 UR 机器人和 EPSON 机器人等多种工业机器人进行视觉导引来验证我们产品的性能并获得良好的测试结果。与商用产品的成本相比,每套产品的成本约节省 5, 000 美元,考虑到潜在的部署机会为 200 以上,该技术可节省超过 100 万美元的成本。
方法和结果
AMT 视觉导引产品
我们的产品为视觉导引应用提供完整的解决方案。如图 4 所示,我们的产品包中包括软件、小型控制器和 2 百万像素工业相机。摄像机用于捕获图像,软件可以处理图像并反馈处理结果,小型控制器可以作为主机来运行软件。
软件是整个系统的关键,它不仅与定制的机器视觉算法集成,而且为用户提供可配置的操作。为了给客户提供完整的解决方案,我们还提供相机和控制器。客户不需要花时间选择相机和主机。

软件的结构与功能
开发可配置的软件是一项复杂工程,我们首先构建软件的概念结构,如图 5 所示。它有三层,每层仅为其上方的层提供服务,并由下方的层为其提供服务。每一层的功能模块各具特点。为了提高每一层的稳健性,每一层的功能模块还负责处理与功能模块相关的错误。

底部是输入/输出 (I/O) 层,负责软件与环境之间的通信。它有四个功能模块。相机接口模块用于触发相机、捕获图像和读取/设置相机参数。TCP/UDP 模块实现 TCP 和 UDP 协议,可与支持 TCP/UDP 协议的设备进行通信。目前,几乎所有工业机器人都支持 TCP/UDP 协议。数字 I/O 模块能够通过传统数字 I/O 进行通信。存档模块用于为图像、系统日志、程序脚本、检测结果等信息进行存档。
中间是算法和控制层,从 I/O 层接收图像,对 I/O 层和 GUI 层进行所需的处理和反馈。并且这一层负责整个软件的逻辑控制,计划每层的复杂任务。
顶层是 GUI 层,用于显示图像和结果,用户还可以通过交互操作调整软件的设置。
机器视觉库的结构与功能
在算法和控制层内部,有一个自主开发的机器视觉算法库。图 6 显示了该库的结构和功能。机器视觉库的两个主要功能是决定如何表示图像数据和如何处理图像。
库的图像表示会影响计算机物理内存中图像数据的读/写效率,从而会极大影响机器视觉算法的效率。例如,对于一个 2 百万像素的图像,当图像要读取图像数据时,算法将执行 200 万次像素读取操作。通常情况下,每个算法都会对图像数据进行多次读取,如果图像表示不佳,算法的效率就会大大降低。在测试我们的图像表示时,表示良好时的速度至少比表示不佳时的速度快 3 倍。
来自 I/O 层的图像数据没有我们定义的图像表示。通常,I/O 层有三种数据格式,分别是来自相机的原始图像数据、QT 格式(Qimage)和 Visual Studio C++ 格式(Cimage)。因此,我们专门提供格式转换算法,将输入的图像数据转换为指定的图像表示。
关于图像处理算法,图像处理库提供三个主要功能模块:1) 图像处理、2) 数学处理、3) 许可
1.图像处理:具有定制的机器视觉算法,在该模块中,视觉导引算法分为多个子组。每个子组负责每种类型的图像处理算法。例如,对象定位子组提供模板匹配的算法,校准子组提供校准功能的算法等。
2.数学处理:数学运算是图像处理算法的基础,在库中经常使用。因此,我们在机器视觉库内部实现了高效的机器视觉库。此模块有四个子组,例如三角法子组提供了计算三角函数值的算法。搜索子组提供了几种查找算法
3.许可:自主创新算法归 TE 所有,因此我们专门提供了加密和解密功能来控制产品的授权
讨论及要点
本文介绍了一种适用于各级用户的可重复、可扩展、经济实惠且易于使用的视觉导引产品。我们通过对 UR 机器人和 EPSON 机器人等多种工业机器人进行视觉导引来验证我们产品的性能并获得良好的测试结果。
致谢
我们衷心感谢 Josef Sinder 先生,他分享了大量关于嵌入式计算机视觉系统的信息及相关技术。
定制的可扩展视觉导引产品
摘要
本文介绍了一种适用于各级用户的可重复、可扩展、经济实惠且易于使用的视觉导引产品。视觉导引指将可执行单元引导到所需位置以执行所需操作,广泛应用于工业自动化制造应用中。我们的可重复产品是一种标准产品,在我们开发出产品之后,客户无需再进行开发。视觉导引产品的一大构成要素是机器视觉算法。我们经济实惠的产品提供定制的、完全自主创新的机器视觉算法,且无需额外购买市场上的任何商用产品,从而大大降低了机器视觉产品的成本。同时,我们机器视觉平台的性能与市场上的商用产品相比具有竞争力。我们的可扩展产品能够根据客户的要求满足不同的视觉导引应用。我们的产品就像智能相机一样易于使用,且可用性高,用户只需拖动和单击鼠标即可快速部署视觉导引应用。我们通过对 UR 机器人和 EPSON 机器人等多种工业机器人进行视觉导引来验证我们产品的性能并获得良好的测试结果。
问题陈述
视觉导引是工业自动化制造中最受欢迎的机器视觉应用之一。从理论上讲,视觉导引指将可执行单元引导到所需位置以执行所需操作。可执行单元包括机器人、气缸、电机等。所需操作包括拾取和放置、焊接、装配等。如图 1 所示,视觉引导型机器人在自动化应用中十分常见。就像给机器人安装上眼睛一样,视觉导引大大提高了机器人运动的精确度,扩大了机器人的应用领域。

为了实现视觉导引应用,需要几种机器视觉技术:a) 对象定位、b) 校准、c) 通信。这些视觉导引技术也广泛应用于工业领域。如图 2 所示,我们将在检测应用中使用对象定位技术,因为在执行检测之前,通常需要通过对象定位算法来确定对象的位置。出于同样的原因,我们还在尺寸测量应用中使用对象定位。因此,视觉导引是应用最广泛的工业机器视觉技术。
市场上有数种商用产品提供视觉导引功能,它们可分为两组:基于智能相机的产品和基于传统相机的产品。智能相机的代表是 Cognex 和 Halcon。传统相机的代表是 Halcon。在表 1 中,我们列出了使用这种机器视觉产品的成本。智能相机可用性良好、产品成本高、开发成本低。传统相机可用性不佳、产品成本低、开发成本高。在图 3 中,我们可以看到智能相机的使用主要通过拖动和点击鼠标来实现。而传统相机需要专业工程师来进行高级编程。因此,这两种产品的总成本都很高。另外,智能相机和传统相机如果想使用视觉导引功能,需要购买整个算法包,这也是成本高的原因。


定制视觉导引产品是填补客户需求和市售商用产品之间差距的必要产品。产品开发面临若干挑战:
- 自主创新的机器视觉算法:商业视觉导引产品成本高的原因是机器视觉算法。为了降低系统成本,我们无法购买任何商业机器视觉库,必须自行开发算法,创新为我们的产品创造核心竞争力
- 成本低而具有竞争力的性能:即使成本低,客户也不会接受性能差的产品,因此我们的自主创新机器视觉算法与商用产品相比,应具有极具竞争力的性能
- 可面向不同类型的导向应用进行配置:我们需要引导不同类型的可执行单元,如 scara 机器人、6 轴机器人、气缸、电机等,因此我们需要一个可配置的系统,这意味着用户可以根据不同应用的要求配置产品
- 便于操作员使用:产品应具有与智能相机类似的可用性
- 符合生产线运行要求的工业级品质:低成本不应降低产品质量
- 具有支持数字化工厂的潜力:数字化工厂对 TE 非常重要,许多客户均对此很感兴趣,因此我们应考虑产品连接网络和交换信息的潜力
我们开创性地开发出可配置的定制视觉导引解决方案。我们自行开发了所有用于视觉导引的机器视觉算法,不购买市场上任何商用产品,这大大降低了系统的成本。我们系统的性能可与商用产品媲美。我们提供可配置的产品,可面向不同的应用进行配置。我们解决方案的操作方法与智能相机类似,用户只需通过拖动和单击鼠标即可配置软件,实现一个视觉导引应用。 我们通过对 UR 机器人和 EPSON 机器人等多种工业机器人进行视觉导引来验证我们产品的性能并获得良好的测试结果。与商用产品的成本相比,每套产品的成本约节省 5, 000 美元,考虑到潜在的部署机会为 200 以上,该技术可节省超过 100 万美元的成本。
方法和结果
AMT 视觉导引产品
我们的产品为视觉导引应用提供完整的解决方案。如图 4 所示,我们的产品包中包括软件、小型控制器和 2 百万像素工业相机。摄像机用于捕获图像,软件可以处理图像并反馈处理结果,小型控制器可以作为主机来运行软件。
软件是整个系统的关键,它不仅与定制的机器视觉算法集成,而且为用户提供可配置的操作。为了给客户提供完整的解决方案,我们还提供相机和控制器。客户不需要花时间选择相机和主机。

软件的结构与功能
开发可配置的软件是一项复杂工程,我们首先构建软件的概念结构,如图 5 所示。它有三层,每层仅为其上方的层提供服务,并由下方的层为其提供服务。每一层的功能模块各具特点。为了提高每一层的稳健性,每一层的功能模块还负责处理与功能模块相关的错误。

底部是输入/输出 (I/O) 层,负责软件与环境之间的通信。它有四个功能模块。相机接口模块用于触发相机、捕获图像和读取/设置相机参数。TCP/UDP 模块实现 TCP 和 UDP 协议,可与支持 TCP/UDP 协议的设备进行通信。目前,几乎所有工业机器人都支持 TCP/UDP 协议。数字 I/O 模块能够通过传统数字 I/O 进行通信。存档模块用于为图像、系统日志、程序脚本、检测结果等信息进行存档。
中间是算法和控制层,从 I/O 层接收图像,对 I/O 层和 GUI 层进行所需的处理和反馈。并且这一层负责整个软件的逻辑控制,计划每层的复杂任务。
顶层是 GUI 层,用于显示图像和结果,用户还可以通过交互操作调整软件的设置。
机器视觉库的结构与功能
在算法和控制层内部,有一个自主开发的机器视觉算法库。图 6 显示了该库的结构和功能。机器视觉库的两个主要功能是决定如何表示图像数据和如何处理图像。
库的图像表示会影响计算机物理内存中图像数据的读/写效率,从而会极大影响机器视觉算法的效率。例如,对于一个 2 百万像素的图像,当图像要读取图像数据时,算法将执行 200 万次像素读取操作。通常情况下,每个算法都会对图像数据进行多次读取,如果图像表示不佳,算法的效率就会大大降低。在测试我们的图像表示时,表示良好时的速度至少比表示不佳时的速度快 3 倍。
来自 I/O 层的图像数据没有我们定义的图像表示。通常,I/O 层有三种数据格式,分别是来自相机的原始图像数据、QT 格式(Qimage)和 Visual Studio C++ 格式(Cimage)。因此,我们专门提供格式转换算法,将输入的图像数据转换为指定的图像表示。
关于图像处理算法,图像处理库提供三个主要功能模块:1) 图像处理、2) 数学处理、3) 许可
1.图像处理:具有定制的机器视觉算法,在该模块中,视觉导引算法分为多个子组。每个子组负责每种类型的图像处理算法。例如,对象定位子组提供模板匹配的算法,校准子组提供校准功能的算法等。
2.数学处理:数学运算是图像处理算法的基础,在库中经常使用。因此,我们在机器视觉库内部实现了高效的机器视觉库。此模块有四个子组,例如三角法子组提供了计算三角函数值的算法。搜索子组提供了几种查找算法
3.许可:自主创新算法归 TE 所有,因此我们专门提供了加密和解密功能来控制产品的授权
讨论及要点
本文介绍了一种适用于各级用户的可重复、可扩展、经济实惠且易于使用的视觉导引产品。我们通过对 UR 机器人和 EPSON 机器人等多种工业机器人进行视觉导引来验证我们产品的性能并获得良好的测试结果。
致谢
我们衷心感谢 Josef Sinder 先生,他分享了大量关于嵌入式计算机视觉系统的信息及相关技术。