视距必不可少

移动信标(标签)与为其服务的固定信标(锚点)之间必须保持视距。
 
这是任何精确室内定位系统的关键要求。只要保证直接视距,周围是什么材料(金属、木材、玻璃,或什么都没有)都无关紧要,这些表面是否产生反射也无关紧要。周围环境完全不会影响跟踪,精确室内定位系统的性能将非常理想。
 
反之亦然:如果不能保证视距,就会出现各种问题,包括无法跟踪、位置跳变、精度下降和延迟增加。系统会尽力提供尽可能好的性能,但如果数据不足以可靠地确定位置,那在物理上就无法做到,上述各种问题便会随之出现。
 

我们已经多次讨论过直接视距的极端重要性:

 
不过看来,这一点还需要反复强调,因为它始终是困惑、误解和不切实际期望的根源。
 
有些系统声称能在非视距条件下精确跟踪。如果再加上对底层技术了解不足,这类说法可能会让人对室内定位系统的跟踪结果大失所望。我们的建议很简单:

搭建室内定位系统时,务必保证移动信标与为其服务的固定信标之间有视距。

为什么视距至关重要

可以像看待GPS那样看待直接视距要求:如果GPS跟踪器看不到GPS卫星,就无法跟踪,就这么简单。

很多时候情况还要更复杂。假设移动信标与固定信标之间没有直接视距,但存在间接的“可见”路径(反射或回声),例如来自相邻墙面、墙角或反射物体的强反射,而且两条路径的长度相差不大。这种情况下,定位系统往往很难甚至无法发现问题,比如缺少直接视距、固定信标与移动信标之间的测距错误或坐标不准确。

合理的解决办法只有一个:从一开始就正确设计系统,保证移动信标与为其服务的固定信标之间有视距。这样根本不会出现这个问题,也就无需用复杂且没有保证的方案去对付它。

再谈底层物理原理与技术

精确定位系统采用 飞行时间 和 多边测量 方法:

  • GPS——测量来自4颗或更多卫星的无线电波(1.1-1.6GHz)的飞行时间;时间同步依靠原子钟
  • UWB——测量无线电波(3-10GHz)的飞行时间;通过无线电或以太网进行时间同步,或无需同步
  • Marvelmind室内“GPS”——测量超声波的飞行时间;通过ISM频段(主要为868/915MHz)的无线电进行时间同步

基于RSSI的系统

BLE、WiFi、ZigBee和LoRa等依赖无线信号强度(RSSI)的其他技术,本质上就不精确,因为在室内环境中,多径效应会使RSSI剧烈变化。只有借助非常复杂的算法,才能大致确定位置。但其底层物理原理——测量RSSI并据此计算距离——决定了它的性能仍远不如基于飞行时间的系统;后者不依赖信号强度,因为信号强度波动太大。

基于三角测量的系统

基于三角测量的系统不同于基于三边测量的系统。

三角测量——一种基于三条直线交点的定位方法。它需要精确知道角度,但不需要知道距离。当然,引出直线的各点坐标必须已知。

在当今实践中,这类系统通常是激光扫描系统。

在某种程度上,利用多台相隔一定基线的摄像头计算移动目标位置的光学系统,也属于三角测量系统。顺便一提,我们的双眼视觉就是典型的双角测量系统。

三角测量系统可以相当精确,尤其是基于激光技术、且反射标记之间有合适基线的系统。但它们的定位精度取决于距离,而基于三边测量的系统通常受距离影响较小。简单来说,在近距离、且摄像头之间或反射标记之间基线合适时,三角测量系统测得的位置非常准确;距离一远,精度就明显下降。

与基于三边测量的系统相比,基于三角测量的系统精度相对较低,原因很简单:我们测量角度的精度不如测量时间。

对于使用摄像头的光学系统,摄像头分辨率是一个限制因素,因此必须在以下几方面之间权衡:

  • 成本
  • 像素分辨率直接影响角度精度和位置精度。像素分辨率越高,角分辨率越高,但感光度越低(像素更小),更新率也越低(延迟更大)
  • 视场角宽度决定覆盖同一区域所需的摄像头数量。视场角越窄(即变焦倍数越大),角分辨率越好,但覆盖同一区域需要更多摄像头;更糟的是,摄像头之间的数据匹配会复杂得多。结果就是成本更高

但为什么必须保证直接视距?

假设1:

基于三边测量的系统利用信号(无线电、光、超声波)的飞行时间来测量距离。它们并不直接测量距离,而是测量时间,原因很简单:我们能够非常精确地测量时间——需要的话可以精确到皮秒;纳秒级相当轻松;微秒级则非常容易。

因此,我们必须拥有精确的时钟,例如原子钟或同步时钟,使时间误差不影响预期精度。

例如,对于基于无线电或光的系统,如果想达到 10厘米 的精度:

  • 1e-1/3e8=0.3(ns)——要求相当严格,但可以做到

对于基于超声波的系统,若要达到更好的 1厘米 的精度:

  • 1e-2/340=30(μs)——要求非常宽松。也就是说,为基于超声波的系统制作足够精确的时钟,要比为基于电磁波(无线电或光)的系统容易约100万倍

假设2:

基于三边测量的系统假设 传播速度a)已知,b)在整个传播路径上保持不变。基于这两个假设,就可以非常精确地测量时间,再乘以精确已知的传播速度(光速或声速)。

而这正是非视距的症结所在。没有视距时,信号(例如UWB的无线电信号)要穿过特性未知的材料(如混凝土、潮湿木材或玻璃)传播。但 无线电波在这些材料中的传播速度与在真空或空气中不同!差别可能相当大,例如无线电波的速度可能比在真空中慢2-3倍。这意味着,测得的1 ns在真空中对应30厘米的距离,而在某些陶瓷中却对应1米。差别巨大!

问题还不止于此。我们无法把这一点考虑进去,因为要计算这些延迟并相应补偿,在技术上极具挑战性。据我们所知,虽然理论上可行,但没有人这样做。更糟的是真实材料的特性:即使在实验室条件下,无线电波在其中的速度也知之甚少;在实际环境中更是无从知晓(厚度、材料种类、传播方向以及由此形成的实际穿透厚度等)。

因此, 切实可行的办法只有一个:搭建系统时保证固定信标与移动信标之间有视距,从根本上避免这一问题。

非视距室内定位系统并不存在

在非视距情况下确定移动信标的位置,在物理上根本不可能。这里所说的“非视距”应理解为“对可见光而言非视距”,即人看不到移动信标,但系统“看得到”。是的,加上这样的说明,NLOS系统(例如UWB)可以存在,但对UWB无线电信号来说,它们仍然处于视距之内。

简单地把UWB称为NLOS系统,会让终端用户在发现只有实验室的薄墙才能被UWB信号穿透时大失所望。现实中的混凝土墙和砖墙会造成很大的测距误差,使跟踪系统在实际中非常不可靠。

我们推荐、也确实可行的办法是:搭建任何精确定位和跟踪系统时,始终满足视距要求。

P.S. 就连人体也会对UWB造成非视距。建议将UWB移动信标(标签)佩戴在肩部或头盔顶部,实在不行也可以戴在手腕上。请不要放在胸前口袋里:身体会挡住来自背后的UWB信号,严重影响性能。

非视距(NLOS)带来的问题

现在应该很清楚了:精确室内定位系统必须有直接视距。下面再补充说明,没有直接视距(NLOS情况)时还会出现哪些问题。

附近反射墙面与NLOS叠加

如上所述,出现非视距(NLOS)情况时,可以通过设计和调校让系统检测到这类事件并滤除相应测量值,或至少提醒用户或其他系统组件结果不可信。系统甚至可以采用某些算法,以不同方式计算距离或位置,或对计算进行修正。总之,还是可以做些什么。这样做复杂且没有保证,但聊胜于无。

当预期的视距距离与实测距离相差足够大时,这种警告或滤除效果还不错:系统有足够可信的数据判断出哪里不对劲,然后提醒用户或直接滤除该测量值。

当实测距离与预期距离相差不大时,系统就必须在以下几种情况中做出判断:a)只是一次测得不准的距离;b)属于NLOS,必须滤除;c)移动目标做了某个非常意外的动作,距离本身没问题。判断很难,因为必须做出许多假设,而且误报与漏报之间总要权衡取舍。

再说一遍,可靠的解决办法只有一个:从根本上不让问题出现——避免NLOS,只按视距条件搭建系统。

静止或慢速移动的目标在NLOS下问题更大

出现NLOS时,如果目标移动得相对较快,可以采用多种技术预测其预期位置,并据此进行外推或滤除错误测量值。

快速移动的目标在非视距(NLOS)条件下会产生跳变的距离。距离出现跳变,再结合对移动目标的先验知识(叉车不会“跳”),就比较容易滤除错误的距离。

但当目标静止或缓慢移动时,系统会反复返回某个测量距离,各次测量之间只有微小差异,也就是没有跳变。距离的标准差很小,看起来很可靠。然而,这些重复的测量可能并不准确,不应轻信,而这一点很难察觉。因此,如果没有其他信息来源(例如传感器融合),就很难向用户发出警告,也很难滤除错误的静态测量。系统会稳定而“自信”地把移动目标定位在错误的位置。

更新率低

更新率高时,延迟低,每秒有很多次测量。因此可以先累积一些测量结果再作判断,滤除错误的测量;或者判定全部数据都不可靠而全部滤除,同时仍能把延迟保持在较低水平。

更新率高时,功耗也高。为了降低功耗,就要降低更新率。这时系统无法再用同样的方式累积或过滤数据,否则延迟会高到无法接受。

难上加难:低更新率 + 快速移动目标

即使在视距(LOS)条件良好的情况下,低更新率加上快速移动的目标也是一个复杂的场景,因为目标可能转弯、绕圈等。而低更新率使我们无法察觉转弯或绕圈,因为它们发生在两次位置更新之间。

在非视距条件下,如果还要从正确的测量中识别或滤除错误的测量,任务几乎无法完成:目标带着转弯和绕圈移动时,即使在视距条件下,跟踪轨迹看起来也很混乱;而在非视距条件下,运动本身的混乱又叠加了非视距带来的混乱。没有规律,没有轨迹可循,即使采用先进的附加方法,也根本无法跟踪。

解决所有这些问题的根本办法,是保证移动信标与30米范围内的两个或以上固定信标(2D)或三个或以上固定信标(3D)之间有视距。

如何解决非视距问题

正确布置固定信标

遵循 安装布置手册 ,正确布置固定信标,用尽量少的信标获得可靠的覆盖。

弄清楚谁“看见”谁

什么是视距?是谁和谁之间的视距?是固定信标与移动信标之间的。好……那么,是固定信标的哪个部位与移动信标的哪个部位之间?

答案其实并不那么简单:

  • 在 NIA 和 MF NIA中,由移动信标发射超声波。因此,移动信标的发射换能器与固定信标的接收传感器之间必须有直接视距
  • 在IA中,由固定信标发射,移动信标接收
  • NIA/MF NIA与IA在视距要求上并不总是对称的,请仔细核查
  • 信标的天线可能对麦克风形成非视距,因为它会在麦克风正前方投下一小片阴影。通常问题不大,因为天线相对较小,距离也没有那么近,但仍需注意。对发射换能器来说,天线不构成障碍

固定的Super-Beacon自动构建信标地图时,会在不同时刻分别充当固定信标和移动信标

一个不太明显却相当典型的问题是:一个固定信标位于另一个固定信标的后方。即使两个信标都装在墙上,但并非紧贴墙面,而是离墙的距离不同,也会出现这种情况。

Super-Beacon构建固定信标地图时,例如在一个时隙中,一个信标充当移动信标、另一个充当固定信标;到了另一个时隙,二者角色互换。因此,在这一过程中它们之间必须有直接视距。

如果信标并排装在墙上,由于麦克风的灵敏度方向图,情况本身就已经比较棘手。相关说明见 详细视频(YouTube) 。

但如果其中一个信标靠后,它到相邻信标的角度就会变成负值,于是出现非视距!没错,两个信标的机身彼此“看得见”,但麦克风“看不见”对方的换能器,这显然就是非视距。

解决办法:

  • 避免这种布置
  • 把信标稍微相向转动,使超声波发射器不位于麦克风后方
  • 手动输入距离/坐标

如果现场明显存在非视距,例如房间中央有一根柱子,柱子的阴影会让柱子后方的机器人处于非视距,那么只需创建完全重叠的子地图:

  • 在左墙上布置两个固定信标,构建覆盖整个房间的服务区
  • 在对面墙上布置另外两个信标,再构建一个服务区,形成完全重叠的服务区

由于两个方向都有覆盖,移动信标在任何时刻都能看到两对信标,至少能看到一对,因此能够可靠地在其中一个子地图或两个子地图中被跟踪。

如果选择IA并使用不同的超声波频率,例如19+25 kHz和31+37 kHz,系统会在同一时隙内同时从左、右两个子地图获得位置数据,也就是每次位置更新都能得到。

如果使用相同的超声波频率,例如25+31kHz和25+31kHz,则必须设置TDMA=2,即两个时隙。在时隙1中,系统用左侧子地图确定位置;在时隙2中,则用右侧子地图。

有视距时,跟踪效果良好,只是由不同的子地图提供。

当某个子地图出现非视距时,该时隙内无法跟踪,但在另一个时隙中跟踪会恢复正常。实际效果相当于手动把位置更新率降低了一半。

这是理想的情况。但也可能出现这种情况:左侧子地图的跟踪看似合理(实际上因非视距而出错),而右侧子地图有视距、跟踪正确。在复杂情况下,可能出现轨迹分裂——左、右子地图在各自的时隙中给出不同的位置。这在实践中相当少见,但确实可能发生。通常会借助其他信息来源来判断哪一个正确,并滤除错误的数据。

如果潜在障碍物更多,同样的思路可以扩展到两个以上完全重叠的子地图。但请记住,这可能要以牺牲更新率为代价,因为可用的超声波频率很快就会用完;甚至可能牺牲稳定性,因为关于移动信标位置的“意见”太多,而且可能相互矛盾,系统要从中作出选择会特别困难

参见 完全重叠子地图示例(YouTube).

非视距问题可以在固定信标一侧、移动信标一侧或两侧同时解决

必须清楚地认识到:在可能出现非视距的复杂条件下,固定信标与移动信标之间的额外可见性,可以通过固定信标一侧的附加方案(例如完全重叠的子地图)、移动信标一侧的方案,或两者结合来实现。

移动信标一侧可以做些什么?

有多种现成方案,例如Marvelmind Jacket。Jacket的一侧肩部装有Mini-RX,另一侧肩部装有一个附加麦克风。为什么这样做?为了应对人的头部造成的非视距。如果固定信标位于头部左侧,而头部挡住了右肩上的Mini-RX,那么左侧的附加麦克风就能接收到信号,而且会比可能被遮挡的右肩Mini-RX更早收到。这样,非视距问题就得到彻底解决:要么两个麦克风(外置麦克风和Mini-RX上的麦克风)都能收到信号,要么至少有一个能收到。

Marvelmind Badge也采用了同样的方案。它有两对麦克风,分别位于颈部左侧和右侧。颈部离麦克风太近是个大问题,因为它会挡住很大一部分“天空”,即对固定信标的可见范围。而专门的设计让麦克风离颈部稍远一些,并使用两对麦克风,从而解决了这个问题。

更多移动信标一侧的抗非视距方案:

常见问题

不是。这一要求只针对提供服务的固定信标。每个子地图有1-4个固定信标(对应1D、2D和3D子地图)。因此,移动信标必须与各子地图中提供服务的固定信标之间有直接视距;与其他子地图中的固定信标没有视距是没有关系的。

不是必须的。例如,可以手动输入固定信标之间的距离或它们的坐标。当然,在这种配置下,Super-Beacon无法自动测距,固定信标地图也无法自动构建。此外,还必须确认固定信标没有自动测出距离,以免系统误把某些距离当成正确值,而实际上它们是错误的。

不过,只要提供服务的子地图中的固定信标与该子地图服务区内的移动信标之间有视距,固定信标彼此之间就不一定需要直接视距。

会。对超声波来说,人体显然是非视距障碍。如果信标在人的前方,固定信标在人的后方,人体就会为超声波投下阴影,这就是典型的非视距条件。

此外请记住,Mini-RX或其他信标的天线贴近人体时,信标与调制解调器之间通信信道的无线电信号强度会下降约10dB。通常无线电并不是主要的限制因素,因为超声波的视距要关键得多,超声波非视距会导致无法跟踪或位置跳变。但对于距离较远的信标,人体可能阻断调制解调器与信标之间的无线电连接。这同样会导致无法跟踪——不是因为超声波非视距,而是因为调制解调器与信标之间缺少同步、遥测和测量数据。

返回顶部