用于表演机器人的室内定位系统
我们简要回顾一个非常典型的自主机器人案例。这次是表演机器人:
- 客户犯的错误
- 我们的建议和修正
我们根据这个案例给出的建议,对您自己的项目也会有帮助。
如果您的项目遇到困难或没有时间,随时可以 联系我们,我们将完全远程地部署您的系统: 全远程网络规划与实施 ——就像我们在这个案例和许多其他案例中所做的那样。
任务
大约10台轮式机器人来到舞台上跳舞。它们表演几分钟的编排舞蹈,然后离开舞台。非常简单。
机器人
这些机器人是为娱乐而设计的——笑脸、挥动的手臂、说话功能等——但在舞台环境中它们没有足够的自主能力(即自我定位),因为它们本来就不是为此设计的。而我们的系统恰恰是为这项任务设计的——为机器人提供精确的室内定位和导航。
设置
客户联系我们时,距离演出只剩大约一周,他们卡住了。
这个案例相对简单:
- 只是一个直径约12米的大型开放舞台
- 固定 Super-Beacon 安装在舞台上方10米处
- 只有大约10台机器人
- 机器人移动缓慢(即不是无人机)
客户的初始配置
客户有专业的工程师,在联系我们时,已经构建了一张相当复杂的地图:
错误与修正
配置中有几处错误。我们逐一来看。
1)子地图太多
要在2D(XY)中覆盖一个12米的舞台,两个固定信标就足够了。使用几个部分或完全重叠的子地图是一种好方案,但只适用于特殊情况:
- 被遮挡的可能无法控制:机器人周围有高个子的人、其他机器人、其他移动物体
- 地图大于30米
- 对高更新率有非常强烈的需求,即子地图必须很小
- 外部噪声非常强,必须缩短最大距离,才能获得足够的信噪比
在这个案例中,这些都不是迫切的问题。
因此,我们做的第一件事是保存他们的初始地图,然后只用2个固定 Super-Beacon构建了一张非常基础的2D地图。 见下图:
2)用错误的工具解决问题
由于客户的机器人有头部,头部挡住了固定信标到安装在机器人肩部的移动信标之间的路径,形成阴影,也就是说,违反了主要要求——直接视距。跟踪效果很差,方向就更差了。
客户的思路很清楚:增加更多固定信标,使一个子地图中被破坏的视距在另一个子地图中仍然有效。没错,可以创建重叠的子地图,这样当头部遮挡了机器人的某个移动信标时,另一个子地图可以补上。但针对同一个问题用了这么多子地图和其他手段,显然不是好办法,因为地图的复杂度急剧上升,而真正成功的机会却很小。
一个简单得多、稳健得多、只要可能就推荐采用的方案是:把移动信标放在完全不会被遮挡的位置——在这个案例中,就是不被机器人的身体/头部遮挡:
- 使用小型 Omni-Microphones ,安装在头部周围和头顶上方——像小天线一样
3)没有创建切换区
不过,如果您遵循 建议1),就根本不会有这个问题。但如果必须创建多个子地图,就必须有切换区——即相邻子地图服务区的重叠部分。在这个案例中,重叠厚度为零。对于缓慢移动的机器人,切换区应为50–100厘米左右。切换区内至少要有3–4次位置更新,才能保证切换平滑(软切换)。
4)跳步
急于直接搭建最终配置,很可能是室内定位系统使用中遇到困难的常见原因。我们有好几个相关视频。
道理很简单:不要跳步。先搭建尽可能简单的配置,只有在其中实现完美跟踪后,才每次增加一步复杂度。
这种简单的循序渐进方法,是构建任意复杂的室内定位系统时既快速又可靠的方法。
在室内自主无人机的例子中,我们也解释了同样的道理: 从开箱到自主行驶/飞行的八个关键步骤.
因此,这个案例的正确步骤应该是:
- 构建一个基础的2D(XY)IA地图,只包含一个子地图,以及一个放在三脚架上的移动信标
- 优化性能:构建一个小而够用的 服务区(YouTube),这样可以提高 更新率
- 跟踪成功后,将另一个移动信标放在 三脚架 上,两者间距(基线)与机器人上的相同。单独跟踪这个信标,与第一个信标分开。让第一个信标进入休眠
- 同时跟踪两个移动信标(hedge),但不配对
- 将信标配对,获得位置 + 方向
- 只有在这之后,才把移动信标安装到机器人上,并达到同样的跟踪效果
- 再之后,才引入另一台机器人
结果
我们按照上述步骤,很快就达到了所需的跟踪质量。与客户合作的大部分时间,其实花在了安排合适的移动互联网连接上,以便远程部署系统。
同时跟踪两个移动信标
以配对模式跟踪两个移动信标,获得位置 + 方向
只有在成功跟踪两个独立的移动信标之后,才可以将它们配对,获得位置 + 方向。注意那个“鼻子”——它准确地显示出机器人的朝向。
上机器人之前先用三脚架
在驾驶自主机器人之前,先在三脚架上实现完美跟踪,三脚架上信标的高度和间距(基线)应接近真实机器人。
无线电干扰
如您所见,跟踪中有一些中断。由于这个案例时间紧张,而且中断并没有真正影响机器人的行驶能力,我们没有花时间查明确切原因。我们的系统总有可能存在某些缺陷,或者现场设置存在特殊问题(远程、未知PC上运行着未知的Linux和其他应用等),但更可能是现场的无线电干扰,因为信标到调制解调器以及调制解调器到信标的RSSI都很好:约-50 dBm至-80 dBm。
快速的解决办法是把所有设备换到另一个信道——随便换一个——看看是否有变化。也许,这种无线电干扰是固定的,在频率上相对窄带。
而且问题并没有那么简单。很可能是:
- 由于某种原因,信标n6失去了无线电连接
- 由于只有两个固定信标,这会影响该区域内所有移动信标的跟踪
- 因此,例如,一个完全重叠的子地图可能是不错的解决方案——但只是理论上。因为在实践中,根据问题的真正根源,另一个子地图的信标很可能同样会受到无线电干扰的影响。此外,更新率会略有下降,因为每个移动信标都必须监听并过滤4个不同的频率,而不是2个。更低的更新率可能导致其他问题,例如对于快速行驶的叉车或无人机。因此,一个小问题可能会牵出好几个其他问题
正如在关于 错误的工具的章节中讨论的那样,理论上可以用完全重叠的子地图解决这个问题。不过,推荐的做法是深入调试,解决问题的根源——很可能是外部无线电干扰——而不是用重叠子地图之类的补丁把问题掩盖起来。
机器人的最终画面
遗憾的是,我们无法展示机器人的最终画面,因为和通常一样,该案例受保密协议(NDA)约束。
总结
只要遵循基本指导,部署精确的室内定位系统来为多台表演机器人提供自主室内导航,一点也不复杂。同时,如果不按推荐的循序渐进方法操作,即使是相对简单的案例也很容易陷入困境。
| M | T | W | T | F | S | S |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 | |