ToF传感器在移动机器人中的作用

原创 | 文 BFT机器人 

图片

在日新月异的机器人技术领域,技术的无缝整合正引领着人类与机器交互方式的革新潮流。ToF传感器作为变革性创新的一个例子,对移动机器人更好地感知周围环境起到了决定性的作用。

ToF传感器与激光雷达技术在创建深度图方面有着异曲同工之妙,但关键的区别在于,ToF传感器能够以更快的速度生成深度图像,并且能够灵活地集成到各类应用系统中。这使得ToF技术在机器人领域得以充分发挥其效用,为那些高度依赖精准导航和交互的行业带来了前所未有的机遇。

移动机器人为什么需要3D视觉

在历史长河中,RGB相机一直是工业机器人的核心传感器,它依赖场景中的颜色信息来捕捉2D图像。几十年来,这些2D相机一直在工业环境中发挥重要作用,指引机器人手臂完成拾取和打包任务。为了使这些2D RGB相机在机器人世界中发挥功能,需要进行相机到手臂的校准序列,确保将场景数据准确映射到机器人的世界坐标系。如果没有这一校准过程,2D相机将无法测量距离,从而无法作为障碍物检测和导航的有效传感器。

图片

自主移动机器人(AMR)必须具备敏锐的感知能力,准确洞察周围不断变化的环境,以避免障碍物、构建世界地图,并持续进行自我定位。自1970年代末以来,飞行时间传感器(ToF)的出现与发展,逐渐成为提取深度数据的领先技术之一。自然而然地,ToF传感器成为了引导AMR在其环境中自由移动的关键工具。

激光雷达是ToF传感器的早期形式之一,主要用于帮助AMR感知和理解周围环境。其运作原理是通过发射激光脉冲并测量脉冲返回的时间来计算传感器与物体表面的距离。然而,早期的激光雷达传感器仅能通过单一激光飞行路径感知机器人周围的环境切片。这些激光雷达通常安装在离地面4至12英寸的位置,使得机器人只能看到处于这一光平面内的物体。

图片

随着技术的进步,下一代AMR开始采用3D立体RGB相机,这类相机可以提供更丰富的3D深度信息数据。这些先进的传感器结合了两个立体安装的RGB相机和一个“光点投影仪”,使得相机阵列能够精确捕捉到投影在相机前的物体上的光线。

Photoneo和Intel RealSense等公司是这一市场早期阶段的3D RGB相机的主要开发商之一。这些相机最初被应用于工业领域,例如从垃圾桶中识别和拾取特定物品。在引入这些先进的传感器之前,垃圾桶拾取一直被认为是视觉引导领域的难题,被认为是难以解决的“圣杯”级应用。

摄像头技术的演进

一个显著的特性是该摄像头具备卓越的低光性能,同时充分考虑了人眼安全。在远距离模式下,其6米(19.6英尺)的检测范围有助于实现最佳的人和物体检测效果。而在近距离模式下,它在体积测量和质量检查方面表现卓越。

该摄像头以“点云”的形式返回数据,为各种应用提供了丰富的3D信息。摄像头内建的处理能力有效降低了计算负担,使其在仓储机器人、服务机器人、机械臂、自动导引车(AGV)、人数统计系统、用于抗欺诈的3D人脸识别以及患者护理和监测等多种应用场景中都具有潜在的应用价值。

图片

与结构光相机/投影仪系统等其他3D深度范围扫描技术相比,飞行时间技术显然更具经济优势。例如,ToF传感器能够通过实时精确测量深度,显著促进户外送货机器人的自主移动能力。在机器人技术领域,ToF摄像头这种多功能的特性预示着它能为依赖精准导航和交互的各个行业提供强有力的支持。

ToF传感器如何进一步提升感知水平 

飞行时间(ToF)摄像头与RGB摄像头之间存在一个根本性的差异,主要体现在它们感知深度的方式上。RGB摄像头主要依赖颜色信息来捕捉图像,而ToF摄像头则是通过测量光线从物体反射并返回所需的时间来呈现深度的复杂性

ToF传感器能够捕获数据,进而生成周围环境的精密3D地图,为移动机器人增添了深度感知的维度。这种深度信息不仅使机器人能够精确测量距离,还为其提供了关于物体形状大小位置的详细数据。

随着技术的进步,立体视觉技术也得到了发展。这种技术使用红外图案投影仪照亮场景,并通过比较两个2D传感器的立体图像差异来确保卓越的低光性能。这种技术结合了ToF传感器的深度测量能力,进一步增强了机器人的环境感知能力。

相比之下,ToF摄像头集成了传感器照明单元深度处理单元于一体。这种设计使得自主移动机器人在开箱即用时即具备完整的深度感知能力,无需进行额外的校准。这一优势大大简化了机器人的部署过程,并提高了其实时性能。

图片

ToF摄像头的一个关键优势在于它们能够以高帧率提取3D图像,从而实现快速的前景和背景区分。此外,它们还通过使用主动照明组件在各种照明条件下工作,包括明亮和暗淡的环境。这种适应性使其成为各种环境下的理想选择。

总的来说,与传统的RGB摄像头相比,ToF摄像头在低光环境中表现出色,且无需进行校准。此外,ToF摄像头单元可能比立体RGB摄像头或大多数激光雷达单元更具成本效益。

然而,ToF摄像头也存在一些局限性。一个主要的缺点是它们通常需要独立使用,因为其发射器可能会对附近的摄像头造成干扰。此外,过于明亮的环境也可能影响ToF摄像头的性能,因为环境光会淡化发射的光源。这些问题在特定应用中可能需要额外的考虑和调整。

ToF传感器的应用 

ToF摄像头在仓库环境中为AMR/AGV应用带来了革命性的变革。这种摄像头为仓库操作提供了深度感知智能,使机器人能够更清晰地“看”到周围的世界。基于这些数据,机器人能够以更加准确、高效的方式做出关键的业务决策。

图片

以下是ToF摄像头在仓库应用中的主要功能:

  • 定位:ToF摄像头帮助AMRs通过扫描周围环境并创建地图,进而将收集到的实时数据与已知数据进行匹配,从而精确定位其位置。

  • 地图绘制:结合从目标物体反射的光的传输时间和SLAM(同时定位与地图构建)算法,ToF摄像头能够创建详细的环境地图。

  • 导航:基于已知的地图信息,AMRs能够精确地从点A移动到点B,避免了不必要的碰撞和路径偏差。

  • 避障:通过ToF技术,AMRs能够以3D的方式深入了解其周围环境,从而在决定路径时有效地避开障碍物。

  • 里程计:这是通过分析来自运动传感器的数据,估算移动机器人在一段时间内位置变化的过程。ToF技术可以与其他传感器融合,进一步提高AMR的定位精度。

总的来说,ToF摄像头为仓库中的AMR/AGV应用提供了前所未有的深度感知能力,推动了仓储管理的智能化和自动化进程。

若您对该文章内容有任何疑问,请与我们联系,我们将及时回应。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/368037.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot实战2

目录 1.如何返回两个类型的数据?User和Booth 2.如何使用MyBatis遍历一个数组进行查询? 3.前端要的数据太多太杂,我们拼接多个List,前端找数据困难,浪费时间。因此我们进行三表联表查询。 1.首先创建一个vo包&#x…

c++ STL less 的视角

c less 函数在不同的地方感觉所起的作用是不一样的, 这中间原因是 less 的视角不一样, 下面尝试给出解释下, 方便记忆 1、 左右视角 符合 排序sort less(value, element) less 表示一种 “符合关系“, 表示sort 后…

大数据环境搭建(一)-Hive

1 hive介绍 由Facebook开源的,用于解决海量结构化日志的数据统计的项目 本质上是将HQL转化为MapReduce、Tez、Spark等程序 Hive表的数据是HDFS上的目录和文件 Hive元数据 metastore,包含Hive表的数据库、表名、列、分区、表类型、表所在目录等。 根据Hive部署模…

蓝桥杯第九届省赛题-----彩灯控制系统笔记

题目要求: 一、 基本要求 1.1 使用 CT107D 单片机竞赛板,完成“彩灯控制器”功能的程序设计与调 试; 1.2 设计与调试过程中,可参考组委会提供的“资源数据包”; 1.3 Keil 工程文件以准考证号命名&#xff0c…

在VM虚拟机搭建NFS服务器

NFS共享要求如下: (1)共享“/mnt/自已姓名的完整汉语拼音”目录,允许XXX网段的计算机访问该共享目录,可进行读写操作。(说明:XXX网段,请根据你的规划,再具体指定&#xf…

VUE开发记录

1、VUE模板传递参数到JS方法 <select-language :value"item.language" change"selectLanguage($event, key)"></select-language>selectLanguage(value, key){console.log(value, key) }, 2、Element框架el-form-item自定义label和内容 <…

远秋医学培训系统未授权查看密码

指纹特征 title"远秋医学培训报名系统v1.0"漏洞复现 POC&#xff1a;/User/ManagerList.aspx?ty1&ty1

好的问卷设计标准:确保数据质量与准确性的关键要素

问卷的主要由三个部分组成&#xff1a;问卷说明、问卷主题、问卷结束。而这三个部分又包含了很多因素&#xff0c;比如问卷主题、问卷标题、问卷题目、问卷调查对象等。制作问卷不仅仅是简单的问题罗列&#xff0c;然后进行发放。不同质量的调查问卷会反馈出不一样的效果&#…

高级变量赋值和变量的间接引用

1.高级变量赋值 var${str-lucky} 变量配置方式 var${str:-lucky} 变量配置方式 var${strlucky} 变量配置方式 2.变量的间接引用 eval 命令 eval命令将会首先扫描命令行进行所有的置换&#xff0c;然后再执行该命令。该命令适用于那些一次扫描无法实现其功能的变量,该命令对变…

MySQL学习记录——일 MySQL 安装、配置

文章目录 1、卸载内置环境2、安装MySQL3、启动4、登录5、配置my.cnf 当前环境是1核2G云服务器&#xff0c;CentOS7.6。要在root用户下进行操作 1、卸载内置环境 云服务器中有可能会自带mysql还有mariadb这样的数据库服务&#xff0c;在安装我们mysql前&#xff0c;得先查找一下…

Java学习六、数组的定义与使用

一、数组的创建及初始化 数组是相同类型元素的集合&#xff0c;在内存中是一段连续的空间。 1.数组的创建 T[] 数组名 new T[N]; T&#xff1a;表示数组中存放元素的类型 N:表示数组长度 int[] array1 new int[10];//创建一个可以容纳10个int类型元素的数组 double[] array…

BeanDefinitionRegistry学习

Spring版本5.1.x 简介 在Spring框架中&#xff0c;BeanDefinitionRegistry是一个接口&#xff0c;它主要用于向注册表中注册BeanDefinition实例&#xff0c;完成注册的过程。该接口的主要方法是registerBeanDefinition&#xff0c;用于将一个BeanDefinition实例注册到注册表中…

2023年09月CCF-GESP编程能力等级认证Python编程一级真题解析

Python等级认证GESP(1~6级)全部真题・点这里 一、单选题(共15题,共30分) 第1题 我们通常说的“内存”属于计算机中的 ( )。 A:输出设备 B:输入设备 C:存储设备 D:打印设备 答案:C 第2题 以下Python不可以作为变量的名称的是 ( )。 A:redStar B:RedStar C:red…

在RunnerGo测试平台中做WebSocket、Dubbo、TCP/IP接口测试

大家好&#xff0c;RunnerGo作为一款一站式测试平台不断为用户提供更好的使用体验&#xff0c;最近得知RunnerGo新增对&#xff0c;WebSocket、Dubbo、TCP/IP&#xff0c;三种协议API的测试支持&#xff0c;本篇文章跟大家分享一下使用方法。 WebSocket协议 WebSocket 是一种…

前端面试拼图-数据结构与算法

摘要&#xff1a;总结一些前端算法题&#xff0c;持续更新&#xff01; 一、数据结构与算法 时间复杂度-程序执行时需要的计算量&#xff08;CPU&#xff09; 空间复杂度-程序执行时需要的内存空间 前端开发&#xff1a;重时间&#xff0c;轻空间 1.把一个数组旋转k步 arr…

UnityShader(十四)纹理

目录 前言&#xff1a; 单张纹理实现效果&#xff1a; 效果&#xff1a; 前言&#xff1a; 纹理最初的目的是用一张图片来控制模型的外观。使用纹理映射技术我们可以把一张图“贴”在模型表面&#xff0c;逐纹素&#xff08;文素的名字是为了和像素进行区分&#xff09;控制…

开源软件:引领技术创新、商业模式与安全的融合

序 在信息技术日新月异的今天&#xff0c;开源软件以其独特的魅力和影响力&#xff0c;正逐渐成为软件产业的新常态。开源软件的低成本、高度可协作性和透明度等特点&#xff0c;不仅吸引了无数企业和个人用户的青睐&#xff0c;更为软件行业带来了前所未有的繁荣景象。 一、…

代码随想录算法训练营DAY11 | 栈与队列 (2)

一、LeetCode 20 有效的括号 题目链接&#xff1a;20.有效的括号https://leetcode.cn/problems/valid-parentheses/ 思路&#xff1a;遇到左括号直接进栈&#xff1b;遇到右括号判断站顶是否有匹配的括号&#xff0c;没有就返回flase&#xff0c;有就将栈顶元素出栈&#xff1…

利用OpenCV实现物流与生产线自动化的革命性突破

背景介绍&#xff1a; 在当今高度自动化的时代&#xff0c;物流和生产线上的每一个环节都关乎企业的核心竞争力。传统的生产方式往往依赖于人工检测和操作&#xff0c;这不仅效率低下&#xff0c;而且容易出错。为了解决这一问题&#xff0c;越来越多的企业开始寻求利用计算机视…

pintia6-2符号函数 6-1两点距离

pintia的函数题&#xff0c;只需要把函数写上去就可以了&#xff0c;6-2函数题比较简单&#xff0c;三个if就可以解决: 6-1则套用数学公式即可&#xff0c;注意把函数名复制粘贴过去&#xff0c;以免抄错