基于 RFID 及超声波的室内定位算法
扫描二维码
随时随地手机看文章
引 言
移动机器人在室内定位的应用愈发广泛,其研究的发展趋势日益迅猛 [1-2]。2017年 CES展会上维弦科技(Ewaybot) 推出的 MoRo家居助理机器人可以通过实时语音控制与用户进行自然语言交互,在室内和室外环境中进行导航。2018年9 月 12 日,安博会在连云港工业展览中心展馆开幕。智能安防巡检机器人将巡逻地区的地图输入车辆芯片,然后设置巡防路线,该机器人就能进行自主无人巡防,如果途中遇到障碍物,会自动辨识并避让。沃尔玛采用 BossaNova制造的机器人在货架之间智能穿梭,将捕捉的商店货架上的数码图像反馈给工作人员。
室内移动机器人的自主移动研究逐渐成为一个热点问题 [3]。机器人在室内移动过程中,需要解决三个主要问题, 分别为“在哪里”“去哪里”“怎么去”,而这些问题的核心就是室内定位技术 [4]。
在传统 RFID 传感器定位中,往往采用三点定位方式 [5]。具体方法是已知三个 RFID 传感器的位置坐标,通过信号强度测量得到三个 RFID 传感器分别与目标标签的距离,通过已知点坐标与到目标点距离列方程求解,从而得到目标点位置 [6]。但由于误差因素的影响,通常得到的三个圆是相交成某一区域而非特别精确的一点 [7]。通常的解决方法为计算相交区域的质心 [8],但 RFID 单独进行室内定位的缺点是受环境影响较大,误差较大,计算过程复杂 [9-10]。
本文提出了一种基于 RFID 和超声波结合的室内定位算法,用于解决现有 RFID 室内定位方法中存在的针对不同实际需求灵活性较差、数据处理过程复杂的问题。
1 信号强度定位算法
本算法利用室内移动机器人上的 RFID 传感器测量其与RFID 标签之间的距离,首先利用 RFID 传感器对室内墙壁上水平、均匀地设置的 N 个 RFID 标签进行信号强度值测量,得到 N 个信号强度值 p(dn)。
从得到的 N 个信号强度值 p(dn)中,任意选取两个RFID 标签对应的信号强度值 p(d0)和 p(dn),并将其代入对数 - 常态分布传播损耗模型,得到当前室内环境的信号传播常量 n :
式中:p(dn)为 RFID 阅读器接收到距离为 dn 的标签发送回来的信号强度;p(d0)为 RFID 阅读器接收到距离为 d0的标签发送回来的信号强度。
将信号传播常量 n 代入对数 - 常态分布传播损耗模型,得到当前室内环境下机器人上 RFID 传感器与 RFID 标签之间的距离 :
利用机器人上 RFID 传感器到多点 RFID 标签之间距离最短的一个 RFID 标签坐标(xmin,ymin)和剩余 N-1 个 RFID标签坐标(xi,yi),求取机器人当前位置的 N-1 个待定坐标值, i 表示 N-1 个 RFID 标签坐标中第 i 个 RFID 标签的坐标。
由于采用距离阅读器越近的电子标签估算的位置就越确,因此引入赋权值比例算法给距离阅读器越近的标签坐标赋予更多的权重,并根据权值函数将不同的权值赋予方程中不同的位置标签,对应计算出坐标值。距阅读器越远权值越小,越近权值越大。本实验所使用的权值函数见式(3):
式中:wi 代表第 i 个电子标签坐标所对应的权重,距阅读器di;dmin 为距阅读器最近的标签距离。在该赋权值比例算法下的阅读器坐标如下:
由于较远距离的估算不准确,因此将距离阅读器较远的标签赋予权值为 0,使其不对最终的坐标结果产生任何干扰。舍弃估算的距离大于 80 cm 的阅读器标签坐标,将这些标签的权值赋为 0,即不参与最终的坐标加权求和。各标签节点的权重函数表达式见式(5):
最后利用机器人上的超声波传感器测量与其平行的室内墙面之间的距离,得到机器人当前待定位置的纵向坐标。将得到的横向坐标和纵向坐标结合,得到机器人当前待定位置的最终坐标。
2 定位算法测试结果
在本实验中,我们在室内墙壁的同一条线上每相隔10 cm 贴一个标签,共贴 10 个。将这 10 个标签的坐标分别设置为(0,0)、(10,0)、(20,0)、(30,0)、(40,0)、(50,0)、(60, 0)、(70,0)、(80,0)、(90,0)、(100,0)。将 RFID 阅读器分别放置在不同的位置,阅读器距离墙壁的距离值即为其纵坐标值。每次接收这 10 个标签的一组信号强度值,若无法接收到某标签的信号强度时,则记为 0。为减小实际环境带来的不确定干扰,在每个位置依次测量 10 组数据,并对记录的数据求平均值,作为机器人定位算法的输入数据。使用赋权值算法对实验数据进行加权,最终估算的机器人定位坐标见表 1 所列。
3 结 语
由实验表中的数据可知,结合定位算法估算出的横坐标误差可以控制在 5 cm 范围内,估算出的纵坐标误差可以控制在 2 cm 范围内,超声波结合 RFID 共同定位的算法大大提高了单一传感器定位的精度,减小了定位误差。