摘要:在机器人视触觉传感领域,如何兼顾成本与性能始终是一大挑战。耶鲁大学在《Science Robotics》上发表最新研究,提出了一种“Forces for Free”(F3)新范式。该研究通过观测一个经过特殊优化的开源柔性手(F3 Gripper)的形变,仅利用标准RGB摄像头,便能精准估算接触力,为机器人赋予了几乎零额外硬件成本的力感知能力。借助这样的感知能力,能完成小孔插销、擦拭曲面,甚至写书法这样需要精细力控的任务。在这里插入图片描述

图:使用该3F柔性手进行写书法实验及其力反馈各项指标图在机器人与物理世界进行交互时,力的感知至关重要。它不仅是完成插拔、打磨等接触式任务(contact-rich tasks)的基础,也是高级人机交互与物理推理的关键。然而,传统的高精度力/扭矩(F/T)传感器价格昂贵、笨重且易因撞击损坏,而集成式的指尖触觉传感器则面临着布线复杂、易磨损和仅能提供局部信息等问题。近年来,视触觉传感技术为解决这一难题提供了新思路,即利用视觉信号来推断触觉信息。但许多方案依赖于在传感器内部嵌入标记点(如GelSight),或需要定制化的传感皮肤。有没有一种更简洁、更低成本的实现路径?耶鲁大学的研究团队给出了一个极具吸引力的答案:Forces for Free。其核心思想是,对于一个已经配备了柔性手爪和腕部摄像头的机器人系统,对于外界力的感知能力可以通过软件算法“免费”获得,无需增加任何额外传感硬件。在这里插入图片描述
图:该系统的核心在于利用已有的摄像头和柔性手爪,通过算法解锁力感知能力,无需额外添置昂贵的F/T传感器(如图中箭头所示,F/T传感器仅用于训练和验证)。这也是“3F”中“Free”的核心。——物理媒介:为“被看见”而优化的F3柔性手——实现视觉力感知的先决条件,是拥有一个在受力时能产生稳定、可观测形变的物理媒介。为此,研究团队并没有随意选择一款柔性手,而是在耶鲁大学经典的开源T42手爪基础上,进行了深度优化,设计出F3 (Forces-for-Free) Gripper。优化目标也非常明确:提升基于视觉的力估算信噪比,可以从两个角度来实现:1.最大化运动学可操纵性 (Kinematic Manipulability):传统柔性手在某些姿态下可能接近“奇异构型”(singular configuration),此时即便利度发生很大变化,其外观形态也几乎不变,导致力无法被识别。研究团队通过优化手指的连杆长度比和静止角度,使其在工作区间内远离奇异点,确保任何方向的力都能引起足够大的视觉形变。这项优化基于对运动学矩阵的分析,旨在最大化这一可操纵性度量。2.最小化摩擦与迟滞 (Friction and Hysteresis):缆绳驱动的柔性手普遍存在摩擦和迟滞效应,这是导致“部分可观察性”(partial observability,即相同的手指形态可能对应不同力值)的根本原因。F3手爪将所有缆绳路径上的金属销钉替换为微型滚珠轴承,并优化布线以减少接触角,从而显著降低了内部摩擦力(从约4.0N降至0.6N),为更精确的力估算奠定了物理基础。在这里插入图片描述
图:F3手爪的设计优化。(左)相较于T42原型,F3采用了等长连杆和滚珠轴承以提升可操纵性并降低摩擦。 (右)运动学可操纵性分析表明,连杆等长且关节角为90°时(黑色连杆所示位置),形变响应最佳。——计算核心:具备时序记忆与视觉焦点的估算器——有了高质量的物理媒介,接下来的挑战便是如何从图像序列中解码出精确的力信息。耶鲁大学的研究团队为此构建了一个精巧的深度学习估算器。为了应对“部分可观察性”,该团队的解决方案是:引入时间记忆。为了解决由残余摩擦和迟滞效应带来的模糊性,该模型不处理单帧图像,而是输入一段包含近期运动历史的图像序列(如20帧,采样频率1Hz)。模型采用CNN-Transformer架构,其中CNN负责提取每帧图像的空间特征,而Transformer则捕捉这些特征在时间维度上的内在关联。这种对时空信息的综合处理,让模型能够根据历史运动趋势来推断当前最可能的力状态,有效缓解了“同形不同力”的问题。消融实验证明,20帧的记忆长度能达到最佳性能。为了应对视觉干扰,该团队采用视觉基础模型加持的方案:真实场景下的背景和被抓物会严重干扰识别。研究团队利用了视觉基础模型SAM (Segment Anything Model),仅通过少量标注数据进行微调,便能稳健地将手爪从复杂的视觉环境中分割出来。这相当于为估算器戴上了一副“滤镜”,使其能完全专注于手爪本身的形变,实现了对背景和物体变化的鲁棒性。此外,通过在训练中引入随机遮挡的数据增强,模型还能抵抗真实世界中常见的部分遮挡情况。在这里插入图片描述
图:估算器神经网络架构概览。图像序列首先由SAM进行分割以消除视觉干扰,随后由共享的CNN提取特征,最后通过Transformer网络处理时序信息,输出最终的力预测值。——实验验证:从0.2N的精度到闭环动态控制——该系统的有效性在一系列严苛的实验中得到了验证:在这里插入图片描述
在对新物体的静态力预测任务中,估算误差在0.2N至0.4N之间。这一预测精度远高于先前相关工作报告的约1.6N的误差,展示了其卓越的性能。对于动态闭环控制的实验设计,该估算器被成功置于控制环路中,完成了三项复杂的动态任务:1.孔中插销:通过感知接触力,引导机器人完成探测、对准和插入的系列动作。在这里插入图片描述
2.曲面擦拭:维持恒定的法向力(1N),在不平整的表面上进行擦拭。3.书法写作:通过实时调整下压力,控制毛笔笔画的粗细,完成汉字书写。在这里插入图片描述
图:估算器在闭环动态任务中的出色表现。无论是精密的装配(上)、力控的表面操作(中),还是需要细腻力度变化的书法(下),系统均能提供准确的力反馈。在这些任务中,系统均表现出高精度和鲁棒性,平均力误差甚至低至0.15N左右。这是一个非常惊人的数字,这表明该系统在没有额外传感器的辅助下,已经能几乎实现完成这些需要精细力控的任务。耶鲁大学的这项研究,为低成本机器人力感知提供了一个优雅且实用的解决方案。它不仅是一个巧妙的工程实现,更提出了一种富有潜力的“Forces for Free”新范式,证明了在不增加额外硬件的前提下,仅通过算法和对现有组件(柔性手)的优化,即可解锁高质量的力感知能力,重新定义了视触觉传感的成本效益边界。在这里插入图片描述
这也是“Free”的核心所在;此外在系统完整性方面,提供了从硬件优化(F3手爪)到算法设计(时序模型与SAM)再到实验验证的一整套完整、开源的解决方案,极大地降低了其他研究者的使用门槛。尽管目前该系统主要处理二维力,且响应速度(10Hz)尚不及商业F/T传感器,不适用于碰撞检测等高速场景,但它为大量接触式操作任务提供了足够精确、鲁棒且几乎“免费”的力反馈。未来,该范式有望扩展至三维力/力矩估算、多指灵巧手,并通过多视角相机来解决更复杂的遮挡问题。这项工作无疑将推动先进力控技术在更广泛的机器人平台(尤其是低成本平台)上的普及与应用。资料链论文原文:https://www.science.org/doi/10.1126/scirobotics.adq5046开源硬件、代码与数据: 详见论文末尾“Data and materials availability”部分

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/88253.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88253.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/88253.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于java项目中maven的理解

我的理解:maven是java项目的依赖管理工具,通过pom.xml文件配置要下载的依赖,settings.xml配置maven下载的镜像没有就默认在maven中央仓库下载依赖,本地仓库是存储下载好的依赖ai:1. 功能定位局限Maven 不只是依赖管理工具&#xf…

缓存三大问题详解与工业级解决方案

文章目录缓存三大问题详解与工业级解决方案概念总览问题详解1. 缓存穿透 (Cache Penetration)问题描述典型场景危害2. 缓存击穿 (Cache Breakdown)问题描述典型场景危害3. 缓存雪崩 (Cache Avalanche)问题描述典型场景危害工业级解决方案缓存穿透解决方案方案1: 布隆过滤器方案…

FreeRTOS 中主函数 while 循环与任务创建的紧密联系

FreeRTOS 中主函数 while 循环与任务创建的紧密联系 在嵌入式开发领域,FreeRTOS 是一款被广泛应用的轻量级实时操作系统,为开发者提供了高效的多任务调度机制。对于初学者来说,理解主函数中的 while 循环与通过 xTaskCreate 创建的任务之间的…

Flutter基础(前端教程⑦-Http和卡片)

1. 假设后端返回的数据格式{"code": 200,"data": [{"name": "张三","age": 25,"email": "zhangsanexample.com","avatar": "https://picsum.photos/200/200?random1","statu…

pytorch chunk 切块

目录 chunk切块 chunk​​​​​​​切块 import torch# 创建一个形状为 [2, 3, 4] 的张量 x torch.arange(6).reshape(2, 3) print("原始张量形状:", x.shape) print("x:", x) # 输出: 原始张量形状: torch.Size([2, 3, 4])# 沿着最后一个维度分割成 2 …

PCIe基础知识之Linux内核中PCIe子系统的架构

5.1 先验知识 驱动模型:Linux建立了一个统一的设备模型,分别采用总线、设备、驱动三者进行抽象,其中设备和驱动均挂载在总线上面,当有新的设备注册或者新的驱动注册的时候,总线会进行匹配操作(match函数),…

2.2 TF-A在ARM生态系统中的角色

目录2.2.1 作为ARM安全架构的参考实现2.2.2 与ARM处理器内核的协同关系2.2.3 在启动链中的核心地位2.2.4 与上下游软件的关系与底层固件的协作与上层软件的接口2.2.5 在ARM生态系统中的标准化作用2.2.6 典型应用场景2.2.1 作为ARM安全架构的参考实现 TF-A(Trusted …

Chrome 开发者警告:`DELETE err_empty_response` 是什么?jQuery AJAX 如何应对?

在Web开发的世界里,我们时常会遇到各种各样的错误信息,它们像一个个谜语,等待我们去破解。今天我们要聊的这个错误——DELETE err_empty_response,尤其是在使用 jQuery 的 $.ajax 发送 DELETE 请求时遇到,确实让人头疼。它意味着浏览器尝试删除某个资源,却收到了一个空荡…

python作业 1

1.技术面试题 (1)TCP与UDP的区别是什么? 答: TCP建立通信前有三次握手,结束通信后有四次挥手,数据传输的可靠性高但效率较低;UDP不需要三次握手就可传输数据,数据传输完成后也不需要…

centos7 java多版本切换

文章目录前言一、卸载原来的jdk二、下载jdk三、解压jdk三、配置环境变量四、切换JAVA环境变量前言 本来是为了安装jenkins,安装了对应的java,node,maven,git等环境,然后运行jenkins时候下载插件总是报错,我下载的jenkins是 2.346.1 版本&…

用Python和OpenCV从零搭建一个完整的双目视觉系统(四)

本系列文章旨在系统性地阐述如何利用 Python 与 OpenCV 库,从零开始构建一个完整的双目立体视觉系统。 本项目github地址:https://github.com/present-cjn/stereo-vision-python.git 在上一篇文章中,我们完成了相机标定这一最关键的基础步骤…

STM32-中断

中断分为两路:12345用于产生中断;678产生事件外设为NVIC设计流程:使能外设中断设置中断优先级分组初始化结构体编写中断服务函数初始化结构体:typedef struct {uint8_t NVIC_IRQChannel; 指定要使能或禁用的中断通道例如: TIM3_I…

Shader面试题100道之(61-80)

Shader面试题(第61-80题) 以下是第61到第80道Shader相关的面试题及答案: 61. 什么是UV展开?它在Shader中有什么作用? UV展开是将3D模型表面映射到2D纹理空间的过程,用于定义纹理如何贴合模型。在Shader中&a…

C#基础:Winform桌面开发中窗体之间的数据传递

1.主窗体using System; using System.Windows.Forms;public partial class MainForm : Form {public MainForm(){InitializeComponent();}// 打开二级窗体private void btnOpenSecondaryForm_Click(object sender, EventArgs e){// 创建二级窗体并订阅事件SecondaryForm second…

工程改Mvvm

导入CommunityToolKit vs2017只能导入7 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input;namespace WpfApp1.vi…

【HarmonyOS Next之旅】DevEco Studio使用指南(四十二) -> 动态修改编译配置

目录 1 -> 通过hook以及插件上下文实现动态配置 2 -> 在hvigorfile.ts中通过overrides关键字导出动态配置 3 -> 通过hook以及插件上下文动态配置构建配置 3.1 -> 修改每个hvigorNode中的build-profile.json5 3.2 -> 修改module.json5中的配置信息 3.3 -&g…

Android View事件分发机制详解

Android 的 View 事件分发机制是处理用户触摸(Touch)事件的核心流程,它决定了触摸事件如何从系统传递到具体的 View 并被消费。理解这个机制对于处理复杂的触摸交互、解决滑动冲突至关重要。 核心思想:责任链模式 事件分发遵循一个…

【CMake】自定义package并通过find_package找到

在一些场景下我们需要编写一些库,并希望其他程序可以找到这些库并引用。 CMake采用package这个概念来解决这个问题。 关于CMake的find_package文章有很多,但这些文章的内容大多不直观讲了一堆讲不到点子上,让人看了一头雾水。因此我想通过本文…

【MATLAB例程】AOA与TDOA混合定位例程,适用于二维环境、3个锚点的定位|附代码下载链接

本 MATLAB 程序实现了基于 Angle of Arrival (AOA) 与 Time Difference of Arrival (TDOA) 的二维定位方法,通过自适应融合与最小二乘优化,实现对未知目标的高精度估计。本例中固定使用了 3 个基站(锚点),算法框架支持…

磐维数据库panweidb集中式集群配置VIP【添加、删除和修改】

0 说明 panweidb集中式集群为了防止主备切换后应用连接无法切换到新主库,需要配置vip,应用可以只通过该ip与数据库连接,不用感知数据库在哪个节点上。 panweidb中配置 VIP主要依赖 CM 组件的 VIP 仲裁功能,通过回调脚本在主备切换…