加载中...
加载中...
在机器人遥操作领域,如何实现低延迟、高保真的实时数据传输一直是核心技术挑战之一。传统的遥操作系统往往面临配置复杂、延迟高、可扩展性不足等问题,限制了其在复杂任务中的应用。随着扩展现实(XR)技术的快速发展,基于 XR 设备的机器人遥操作系统逐渐成为研究热点,而数据格式的标准化和优化则是实现高质量遥操作的关键。
PICO 格式作为 XRoboToolkit 框架的核心数据格式,正是为了解决这些挑战而设计的。XRoboToolkit 是 PICO 团队于 2024 年发布的基于 OpenXR 标准的跨平台 XR 机器人远程操作框架,旨在提供沉浸式、低延迟的机器人遥操作体验。PICO 格式作为该框架的数据传输标准,不仅支持实时流式输入,还实现了端到端低于 100 毫秒的延迟,为实时遥操作提供了强大的技术支撑。
PICO 格式的价值不仅体现在其技术先进性上,更体现在其实际应用中。它被集成到 GMR(General Motion Retargeting)通用动作重定向框架中,支持与 TWIST2(Teleoperated Whole-Body Imitation System)系统的无缝集成,实现了从 XR 设备到人形机器人的实时动作重定向。PICO 格式支持多种追踪模式,包括头部追踪、手柄追踪、手势识别、全身追踪以及外部追踪器,为不同应用场景提供了灵活的解决方案。
本文将全面深入地探索 PICO 格式的方方面面,从 XRoboToolkit 框架的概述到 PICO 格式的技术特性,从数据结构和传输机制到实际应用和集成方法。无论您是刚开始接触机器人遥操作的新手,还是希望深入了解 PICO 格式技术细节的资深开发者,都能从本文中获得有价值的知识和实践指导。
XRoboToolkit 是 PICO 团队开发的基于 OpenXR 标准的跨平台 XR 机器人远程操作框架。该框架于 2024 年首次发布,旨在解决现有机器人遥操作方案中存在的配置复杂、延迟高、可扩展性不足等问题。XRoboToolkit 通过标准化的接口和优化的通信协议,实现了 XR 设备与机器人系统之间的无缝集成。
XRoboToolkit 的核心特点
XRoboToolkit 具有以下核心特点:
基于 OpenXR 标准:遵循 OpenXR 规范,确保跨平台兼容性,支持包括 PICO 4 Ultra 在内的多款头显设备。
低延迟体验:通过定制视频流与通信协议,在端到端立体视频回传中实现了低于 100 毫秒的延迟,大幅降低眩晕感,提升用户体验。
多模态追踪:支持头部追踪、手柄追踪、手势识别、全身追踪以及外部追踪器等多种追踪模式。
模块化设计:提供 Python 和 C++ 的模块化接口,支持真实机器人与 MuJoCo 等仿真平台的无缝集成。
多机器人支持:适用于机械臂、移动平台和灵巧手等多种机器人形态。
AI 训练支持:可用于采集高质量的机器人示范数据,支持 Vision-Language-Action 模型的微调。
XRoboToolkit 的应用场景
XRoboToolkit 在实际应用中已成功应用于多种高精度遥操作任务:
双臂操作任务:如双臂地毯折叠、双臂毫米级容差的装配操作等。
移动操作:基于摇杆的全向底盘控制,实现移动机器人的远程操控。
精密装配:通过高精度力反馈手柄,实现精密装配任务的远程操作。
数据采集:采集高质量的机器人示范数据,用于强化学习和模仿学习。
XRoboToolkit 的系统架构可以分为三个主要部分:XR 端、PC 服务端和机器人端。
XR 端
XR 端运行在头显设备上,负责:
动作捕捉:通过内置传感器和外部追踪器,捕捉操作员的头部、手部、身体姿态等信息。
视觉反馈:接收并显示来自机器人端的立体视频流,提供沉浸式的视觉反馈。
数据编码:将捕捉到的动作数据编码为 PICO 格式,通过优化的通信协议传输到 PC 服务端。
PC 服务端
PC 服务端作为中间层,负责:
数据解码:接收来自 XR 端的 PICO 格式数据,解码为标准的动作数据格式。
动作重定向:通过 GMR 等动作重定向算法,将人类动作转换为机器人动作。
机器人控制:将重定向后的动作数据发送到机器人端执行。
视频编码:将机器人端的视频流编码并传输回 XR 端。
机器人端
机器人端运行在机器人控制器上,负责:
动作执行:接收来自 PC 服务端的动作指令,控制机器人执行相应动作。
状态反馈:采集机器人的状态信息(位置、速度、力等),反馈给 PC 服务端。
视频采集:通过机器人上的摄像头采集视频,传输到 PC 服务端。
PICO 格式是 XRoboToolkit 框架中用于描述和传输机器人遥操作数据的标准化格式。该格式旨在提供统一的数据结构,以支持多种机器人平台和应用场景。PICO 格式的设计遵循以下原则:
标准化:基于 OpenXR 标准,确保跨平台兼容性。
高效性:优化的数据结构和传输协议,实现低延迟的数据传输。
可扩展性:模块化设计,支持轻松添加新的数据字段和功能。
实时性:支持实时流式输入,满足实时遥操作的需求。
跨平台兼容性
PICO 格式基于 OpenXR 标准设计,确保了在不同的 XR 设备和机器人系统之间的兼容性。这意味着使用 PICO 格式开发的遥操作系统可以轻松适配不同的硬件平台,无需针对每个平台进行单独开发。这种跨平台兼容性大大简化了集成过程,降低了开发和维护成本。
低延迟数据传输
PICO 格式通过优化的数据结构和通信协议,实现了低延迟的数据传输。在使用 PICO 4 Ultra 设备时,端到端的立体视频回传延迟低于 100 毫秒,大幅降低了眩晕感,提升了用户体验。这种低延迟特性对于实时遥操作至关重要,它使得操作员能够实时感受到机器人的状态,实现更精确的控制。
模块化设计
PICO 格式采用模块化设计,提供 Python 和 C++ 的模块化接口。这种设计使得开发者可以根据具体需求选择合适的使用方式,同时支持真实机器人与仿真平台(如 MuJoCo)的无缝集成。模块化设计还使得系统易于扩展和维护,可以轻松添加新的功能模块。
多模态追踪支持
PICO 格式支持多种追踪模式,包括:
头部追踪:捕捉操作员头部的姿态和位置,用于控制机器人的视角。
手柄追踪:捕捉手柄的位置和姿态,用于控制机器人的末端执行器。
手势识别:识别操作员的手势,用于控制机器人的灵巧手。
全身追踪:捕捉操作员全身的姿态,用于控制人形机器人的全身动作。
外部追踪器:支持外部追踪器,提供更高精度的追踪能力。
虽然 PICO 格式的具体数据结构可能因版本而异,但通常包含以下核心信息:
追踪数据
追踪数据包含各个追踪器的位置和姿态信息:
位置信息:3D 位置坐标(x, y, z),表示追踪器在世界坐标系中的位置。
姿态信息:旋转信息,通常使用四元数表示(w, x, y, z),表示追踪器的方向。
时间戳:数据的时间戳,用于同步和时序控制。
控制数据
控制数据包含操作员的控制指令:
按钮状态:手柄按钮的按下状态。
触发器值:手柄触发器的数值(0.0 到 1.0)。
摇杆值:摇杆的二维坐标值。
配置数据
配置数据包含系统的配置信息:
追踪器配置:各个追踪器的配置参数。
坐标系设置:坐标系的定义和转换参数。
通信参数:网络通信的相关参数。
实时流式传输
PICO 格式支持实时流式传输,这意味着数据以连续流的形式传输,而不是批量传输。这种传输方式使得系统能够实时响应操作员的动作,实现低延迟的遥操作。流式传输还支持数据的动态调整,可以根据网络状况自动调整传输速率和质量。
数据压缩
为了降低传输延迟和带宽需求,PICO 格式支持数据压缩。压缩算法针对动作数据的特点进行了优化,在保持数据精度的同时,大幅减少了数据量。这种压缩机制使得系统能够在有限的带宽下实现高质量的数据传输。
错误处理
PICO 格式包含完善的错误处理机制,能够检测和处理数据传输过程中的错误。当检测到数据丢失或错误时,系统会自动进行重传或使用预测算法进行补偿,确保系统的稳定性和可靠性。
GMR(General Motion Retargeting)是一个开源的通用动作重定向框架,支持将人类动作数据实时重定向到多种人形机器人平台。GMR 支持多种输入格式,包括 SMPLX、BVH、FBX 和 PICO 格式。PICO 格式在 GMR 中的应用主要体现在实时流式输入和 TWIST2 系统集成两个方面。
实时流式输入
PICO 格式支持实时流式输入,这使得 GMR 能够实时接收来自 XR 设备的动作数据,并立即进行重定向处理。这种实时处理能力对于遥操作应用至关重要,它使得操作员的动作能够实时反映到机器人上,实现真正的实时控制。
TWIST2 集成
GMR 支持通过 PICO 格式与 TWIST2(Teleoperated Whole-Body Imitation System)系统集成。TWIST2 是一个实时全身遥操作系统,允许操作员通过 XR 设备控制人形机器人。通过 PICO 格式,TWIST2 系统可以将操作员的动作数据传输到 GMR,GMR 再将动作重定向到目标机器人。
数据接收
GMR 通过 PICO SDK 接收来自 XR 设备的 PICO 格式数据。接收到的数据包含操作员的头部、手部、身体等各个部位的姿态和位置信息。
数据转换
接收到的 PICO 格式数据需要转换为 GMR 的内部表示格式。转换过程包括:
坐标系转换:将 PICO 格式中的坐标系转换为 GMR 使用的坐标系。
数据格式转换:将 PICO 格式的数据结构转换为 GMR 需要的字典格式,包含身体部位名称、3D 全局位置和全局旋转等信息。
时间同步:确保数据的时序正确,处理可能的延迟和抖动。
动作重定向
转换后的数据进入 GMR 的核心重定向算法,通过四个关键技术组件进行处理:
人-机器人关键身体匹配:建立人类和机器人关键身体部位之间的映射关系。
笛卡尔空间静息姿态对齐:通过初始方向偏移,将人类身体部位对齐到机器人的静息姿态。
非均匀局部缩放:根据源人类骨架的高度计算全局缩放因子,并为每个关键身体部位调整局部缩放因子。
两阶段逆运动学:通过两阶段优化,找到最佳匹配重定向人类动作的机器人运动。
结果输出
重定向后的机器人动作数据被输出,可以直接用于控制机器人执行相应动作。
TWIST2 系统概述
TWIST2(Teleoperated Whole-Body Imitation System)是一个实时全身遥操作系统,允许操作员通过 XR 设备控制人形机器人。TWIST2 系统集成了 GMR 动作重定向框架,通过 PICO 格式实现从 XR 设备到机器人的实时动作传输。
集成步骤
要使用 PICO 格式与 TWIST2 系统集成,需要完成以下步骤:
安装 PICO SDK
在 PICO 设备上安装 PICO SDK,用于在 XR 端采集和编码动作数据。
在 PC 上安装 XRoboToolkit PC Service,用于接收和处理来自 XR 端的数据。
构建 PICO PC Service SDK 和 Python SDK,用于在 PC 端解码和处理 PICO 格式数据。
配置系统
配置 XR 端和 PC 端的网络连接,确保数据传输的稳定性。
配置追踪器,包括头部追踪器、手柄追踪器、全身追踪器等。
配置坐标系和转换参数,确保数据的准确性。
运行遥操作
运行遥操作脚本:
bash teleop.sh
这将启动 TWIST2 系统,打开 MuJoCo 可视化窗口,显示重定向后的机器人动作。操作员可以通过 XR 设备控制机器人,实时看到机器人的动作反馈。
双臂操作任务
在实际应用中,PICO 格式已成功应用于双臂操作任务,如双臂地毯折叠、双臂毫米级容差的装配操作等。在这些任务中,操作员通过 XR 设备控制两个机械臂,实现复杂的双臂协调操作。PICO 格式的低延迟特性使得操作员能够实时感受到机械臂的状态,实现精确的控制。
移动操作任务
PICO 格式还支持移动操作任务,如基于摇杆的全向底盘控制。操作员可以通过 XR 设备中的摇杆控制机器人的移动,同时通过手柄控制机器人的手臂。这种多模态控制方式使得操作员能够同时控制机器人的多个自由度,实现复杂的移动操作任务。
精密装配任务
通过高精度力反馈手柄,PICO 格式支持精密装配任务的远程操作。操作员可以通过手柄感受到机器人的力反馈,实现更精确的控制。PICO 格式的低延迟特性确保了力反馈的实时性,使得操作员能够及时调整控制策略。
数据采集
PICO 格式还可用于采集高质量的机器人示范数据。通过 XR 设备,操作员可以自然地演示各种操作任务,系统将这些动作数据记录下来,用于强化学习和模仿学习。这些数据的高质量和真实性使得训练出的策略在实际任务中取得了良好的效果。
低延迟
PICO 格式通过优化的数据结构和传输协议,实现了端到端低于 100 毫秒的延迟。这种低延迟特性对于实时遥操作至关重要,它使得操作员能够实时感受到机器人的状态,实现更精确的控制。低延迟还降低了操作员的眩晕感,提升了用户体验。
跨平台兼容性
基于 OpenXR 标准的设计使得 PICO 格式具有出色的跨平台兼容性。这意味着使用 PICO 格式开发的遥操作系统可以轻松适配不同的硬件平台,无需针对每个平台进行单独开发。这种兼容性大大降低了开发和维护成本。
模块化设计
PICO 格式的模块化设计使得系统易于扩展和维护。开发者可以根据具体需求选择合适的使用方式,同时支持真实机器人与仿真平台的无缝集成。模块化设计还使得系统易于添加新的功能模块。
多模态支持
PICO 格式支持多种追踪模式,包括头部追踪、手柄追踪、手势识别、全身追踪以及外部追踪器。这种多模态支持使得系统能够适应不同的应用场景,提供灵活的控制方式。
网络延迟
虽然 PICO 格式实现了低延迟的数据传输,但在网络条件不佳的情况下,仍然可能面临延迟问题。为了应对这一挑战,系统需要实现智能的数据压缩和错误处理机制,确保在有限的带宽下实现高质量的数据传输。
数据同步
在多模态追踪场景下,如何同步不同追踪器的数据是一个挑战。PICO 格式需要确保各个追踪器的数据在时间上保持一致,避免因时序问题导致的重定向错误。
精度要求
对于精密操作任务,PICO 格式需要提供足够高的数据精度。这要求系统在数据压缩和传输过程中保持数据的精度,同时确保数据的完整性。
系统集成
将 PICO 格式集成到现有系统中可能面临一些挑战,包括坐标系转换、数据格式转换等。为了简化集成过程,PICO 格式提供了完善的文档和示例代码,帮助开发者快速上手。
PICO 团队正在推动 PICO 格式的标准化工作,包括扩展对更多仿真平台和机器人硬件的支持,增加机器端自定义数据回传支持,以及推进 OpenXR 在全身追踪等能力上的统一标准。这些标准化工作将进一步提升 PICO 格式的兼容性和可扩展性。
未来,PICO 格式将继续优化数据传输性能,进一步降低延迟,提升数据质量。这可能包括更高效的数据压缩算法、更智能的错误处理机制,以及更优化的网络传输协议。
PICO 格式将支持更多的功能,包括力反馈、触觉反馈等。这些功能的加入将进一步提升遥操作系统的用户体验,使得操作员能够更直观地感受到机器人的状态。
随着 XR 技术和机器人技术的不断发展,PICO 格式将在更多应用场景中得到应用,包括医疗机器人、服务机器人、工业机器人等。这些应用将推动 PICO 格式的进一步发展和完善。
PICO 格式作为 XRoboToolkit 框架的核心数据格式,为机器人遥操作提供了高效、低延迟、跨平台的解决方案。它基于 OpenXR 标准设计,支持实时流式输入,实现了端到端低于 100 毫秒的延迟,为实时遥操作提供了强大的技术支撑。
PICO 格式的价值不仅体现在其技术先进性上,更体现在其实际应用中。它被集成到 GMR 动作重定向框架中,支持与 TWIST2 系统的无缝集成,实现了从 XR 设备到人形机器人的实时动作重定向。PICO 格式支持多种追踪模式,为不同应用场景提供了灵活的解决方案。
随着 XR 技术和机器人技术的不断发展,PICO 格式将继续发展和完善,为机器人遥操作提供更好的支持。无论是研究人员、工程师还是开发者,都可以从 PICO 格式中获得价值,推动机器人遥操作技术的发展。
发表评论
请登录后发表评论
评论 (0)