【发布时间】:2018-07-17 15:57:07
【问题描述】:
我在理解 ROS 中的远程操作概念时遇到了一些困难,所以希望有人能澄清一些事情。
我正在尝试使用 HTC Vive 设备控制 Baxter 机器人(在模拟中)。我有一个节点(发布者),它成功地从控制器中提取了 PoseStamped 数据(包含参考灯塔基站的姿势数据),并将其发布在左右控制器的单独主题上。
所以现在我希望创建从控制器接收姿势数据并将其转换为机器人姿势的订阅者。我对映射感到困惑......在阅读了有关 Baxter 和机器人转换的文档后,我真的不明白如何将人体姿势映射到 Baxter。
我知道我需要使用 IK 服务,该服务主要计算实现姿势所需的坐标(给定末端执行器的所需位置)。但也不是把 PoseStamped 数据从发布控制器数据的节点插入到 ik_service 这么简单吧?
就像人类和机器人的解剖结构完全不同,所以我不确定我是否错过了其中的重要一步。
看到其他人尝试做同样事情的示例代码,我看到有些人创建了一个“基础”/“人类”姿势,该姿势硬编码四肢的坐标以模仿人类。这基本上是我需要的吗?
对不起,如果我的问题非常广泛,但我一直无法找到我理解的解释......非常感谢任何见解!
【问题讨论】:
-
如果您可以为来自您的 VR 设置和真实机器人的数据渲染一个公共参考框架,那么您从 VR 获得的任何姿势都可以通过适当的转换发送以控制机器人。这假设您有机器人的任务空间控制器。然后,您可以完全避免人类和 Baxter 之间的任何配置映射,因为它们都在一个共同的操作(任务)空间中运行。
标签: ros virtual-reality robotics