- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
一种基于RFID 技术的机器人定位算法
录入:edatop.com 点击:
1. 引言
射频识别(RFID)技术是从20 世纪80 年代起走向成熟的一项自动识别技术。它利用射频方式进行非接触式双向通信交换数据以达到识别目的,和传统的磁卡、IC 卡相比,射频卡最大的优点就在于非接触,因此完成识别工作时无须人工干预,适合于实现系统的自动化且不易损坏。RFID 技术的快速发展使得其应用也在日益壮大,国家有关部门也非常重视。科技部《中国RFID 发展策略白皮书》正式出台,国家高技术研究发展计划(863 计划)的RFID 重大项目全面启动,RFID 的发展及应用前景广阔。
目前,RFID 技术应用于智能机器人的研究也在不断发展。监视幼儿园孩子的机器人,吸尘器机器人对“智能地毯”清洁卫生,商场导购机器人等等,应用RFID 技术的机器人不断推出。机器人在运动过程中存在自身定位的问题,而定位的方法有很多种,多采用机载传感器定位。机器人相对定位技术主要有导航信标、主动或被动标识、地图匹配或卫星导航技术(GPS)等,这几种方法中,信标或标识牌技术的建设和维护成本较高,地图匹配技术处理速度慢,GPS 只能用于室外,目前精度还很差;绝对定位的位置计算方法包括二视角法、二视距法、模型匹配算法等。相对定位优点是机器人的位置是自我推算出来的,不需要对外界环境的感知信息,缺点是漂移误差会随时间累积,不适于精确定位。绝对定位通过感知获取周围环境的信息,利用各种算法来求出机器人的精确坐标,在区域内定位精度高。
本文将探讨利用RFID 技术,通过RF 信号传播损耗模型, 计算读写器和读到各个标签间的距离[2] [4],利用算法求出机器人的坐标位置。
2. 信号传播损耗模型
RFID 标签读写是通过射频信号的收发来实现的。RFID 读写器可以将读到标签的相关信息通过串口发送给机器人。可以采用接收信号强度指示(RSSI)来标示RF 信号在某个位置的强度。一般来说,每个标签发出的信号的强度都是一个定值,但是当读写器与标签的距离不一样时,接收标签发送回来的信号强度也就不一样。这种强度的衰减,称为信号的传播损耗,它与环境有关。根据接收到信号的强度,利用理论和经验传播损耗模型,可以将传输损耗转化为距离。下式(1)是一种对数-常态分布传播损耗模型:
其中,P(d)表示读写器接收到标签发送回来的信号强度;P(d0)表示读写器在参考点d0 接收到标签发送的信号强度,所有标签的初始发送信号强度相同;n 表示路径长度和路径损耗之间的比例因子,依赖于障碍物的结构和使用的材料,它的范围在2 至5 之间;Xσ是平均值为0 的高斯分布随机变数,也就是信号穿过障碍物的衰减,其标准差范围为4 到10;d0表示参考点和标签的距离;d 表示需要计算的标签和读写器间的距离。
图1 是用对数-常态分布模型(公式1)绘制的RSSI 曲线图。从图1 中可以看出,节点到信号源的距离越近,由RSSI 值的偏差产生的绝对距离误差越小。而当距离大于100cm 时,由于上述式(1)中Xσ 的影响,由RSSI 波动造成的绝对距离误差将会很大。基于上面的分析,本文提出信标标签影响力概念,即在定位算法中,信标标签对未知读写器位置都有影响力,RSSI 越大的信标标签,影响力越大,对读写器位置有更大的决定权。本文中的读写器放在移动机器人上,所以,决定了读写器的位置也就是决定了机器人的位置。如图2,读写器收到了4 个信标标签的信号,其中Tag3 的RSSI 最大,对读写器的位置有最大的决定权。本文中只取影响力较大的4 个信标标签来做定位计算。
3. 定位算法计算
3.1 信标
本文采用RFID 标签作为信标。根据RFID 读写器识读标签可穿透性,对标签的布置可以放在地下,也可以放在室内的天花板上。读写器识读到多个标签时,根据RSSI 得知的各个标签的距离,机器人选4 个最近的距离来进行定位。
RFID 标签信标的选择原则:带读写器的机器人在运动过程中,可能读到远处的多个标签信号,应当采用RSSI 值大的前几个信标标签进行定位计算。在保证参与定位计算的信标标签数为4 个的情况下,将距离大于100cm(视应用环境而定)的信标标签去除,以免造成定位误差扩大。后面进行的仿真计算也证明了这点。
在布置标签的时候,两个标签之间的距离设为读写器的准确识读距离,略小于其最大读写距离值,本文中标签布置间隔为1 米。RFID 在读取的范围内,由于各种原因(如反射、金属阻挡、干扰等)对标签的识别会有一点的偏差。本文中一般情况下能读到4 个标签。当可能只读到3 个时,把该正方形区域内的另外一个标签到机器人的距离设为最大值,在本论文中为1;当有其他反射等原因导致读取多于4 个时,则选4 个距离最近的标签,来确定移动机器人的位置。本文中用到的RFID 设备是工作在2.45GHz 下,读写器长宽尺寸为23.6cm×12cm,对其发射功率设定,可以设成4 个等级的读写距离,本文设置为可读最大距离1.4 米左右。
3.2 机器人定位
标签布置好以后,可以将它的位置(坐标)信息写入标签内,移动机器人通过读写器读到4 个标签后,就知道自己到达了哪个区域,再根据读到的标签的坐标信息以及标签到机器人的距离,采用极大似然估计法求取机器人的准确坐标位置。
图3 为室内标签布置简图,把他们用坐标轴划分成格子形式,他们之间的间隔距离为1米,如图每个标签的坐标都已知,当装有读写器的移动机器人在该区域内运动,就可以读取到格子内邻近的4 个标签,通过标签的信息进而得知邻近4 个坐标值,根据RSSI 得到与标签的相对距离就可以计算出机器人的坐标位置,如图2。
已知4 个标签的坐标分别为(x1,y1), (x2,y2), (x3,y3),(x4,y4),它们到移动机器人R 的距离分别为d1,d2,d3, d4,假设装有读写器移动机器人R的坐标为(x,y)。
那么,存在下列公式:
使用标准的最小均方差估计方法可以得到移动机器人R 的坐标为:
本文在UNIX 平台上用C 语言编程仿真计算RSSI。式(1)中的损耗因子n 取3.2,高斯分布随机变数Xσ 的标准差取为4,d0 取0.1m。下表1 为各个数据对照,其中实际坐标为随机选择机器人的分布坐标;通过RSSI 得到的读写器与4 个标签的距离是通过仿真得到的距离值,表中从上到下的距离值依次和4 个标签坐标对应;计算得到的坐标值是根据式(2)仿真计算得出。
图4 为通过定位算法得出的坐标位置与实际坐标位置的比较图,图中的坐标单位为米。
图4 中蓝色点为机器人实际的位置坐标点,红色点为用定位算法得出的机器人相应坐标点,各坐标点相应的偏差分别为:0.1416、0.0775、0.0124、0.0473、0.9536、0.0067、0.136、0.0619,单位为米,最大偏差不到15cm,最小偏差不到1cm,偏差值在读写器尺寸之内,可以说该定位方法精确度还是比较高的,采用4 个点来用极大似然定位估计精确度大大提高。
从各个点的偏差值来看,通过把RSSI 仿真得到的读写器到各个标签距离值与其实际距离值进行比较,发现机器人到各个标签的距离值,对最后定位的精度直接有很大的影响。而极大似然估计是利用到各个标签的距离值,来计算机器人的坐标位置,精确的坐标值依赖于机器人到各个标签的距离值。通过多次仿真进行定位计算比较,到4 个标签距离中若只有一个距离值偏差较大时,如第八个点,它的位置偏差为0.0619 不是很大;而第一和第七个点到3 个标签距离值都有相对较大的偏差时,它的定位精度就很差,偏差有0.1416 和0.136;第三和第六个点到4 个标签的距离值偏差都很小时,其定位精度就很高,偏差为0.0124 和0.0067。
4. RFID 定位其他方法
将RFID 技术引用到机器人的定位中,目前已有人在尝试和研究,主要是结合视觉来配合RFID技术进行定位[1] [3]。韩国学者用RFID和视觉结合[1]读取布置在室内墙壁周围的标签,让机器人在该环境中沿着标签布置多次行走,提取特征值进行制图,机器人获取环境信息后,然后用RFID 来进行特征匹配作导航定位。日本学者在机器人做避障移动到定点目标位置时[3],利用RFID 技术来识别动态障碍物进行避障,同时检测到标签时,就启用视觉来判断各个标的方位角度,然后结合标签的相对距离来对移动机器人进行定位,这样就可以省去大量的视觉图形采样分析计算。
另外,通过RFID 标签导航机器人也可以采用如图5 所示的方式:机器人A 沿着直线ADNM 向前行走,在运动过程中根据读到的标签来确定机器人到达的区域。区域范围的确定:由于能读到某个标签都有个识读半径为d 的圆,装备有RFID 读写器的机器人在运动中会读到不同的标签,再根据读到的各个标签的识读圆区域的重叠范围来确定机器人所到达的位置。如果机器人走偏了,没有读到某个该读的标签,则控制机器人进行相应的位置调整。如图5,若机器人走到B 的左上方,不在ABCD 范围内,没有读到P、F,则要往右调整。该方法为区域定位,精度不高,但是简单实用。可以在机器人上加其他传感器(如电子指南针)来进行改进,作更精确的定位。
5. 结论
随着RFID 技术的快速发展,与机器人的结合应用也将会有很广阔的前景。利用射频识别的这种非接触无线传输特点,机器人可以获取包括定位在内的更多的信息,本文提出的采用RFID 技术来给移动机器人定位,用到无线接收信号强度指示来进行距离的计算,在短距离内其精度较高,对机器人的定位也较准确。在室内环境下,用均匀分布RFID 的标签对机器人的定位也提高了效率和精度。而标签可以布置在地板下面或者天花板上,不占地方也方便应用。值得一提的是,本文中基于RFID 的机器人定位算法,需要标签读写器具备RF 信号强度检测功能;另外,金属障碍物的阻挡可能会影响到读取识别的效果和精度,这也是射频识别技术的关键需要解决的问题。
参考文献
[1] Heesung Chae , Kyuseo Han. Combination of RFID and Vision for Mobile Robot Localization. Intelligent Sensors, Sensor Networks and Information Processing Conference, 2005. Proceedings of the 2005 International Conference on5-8 Dec. 2005 Page(s):75 - 80
[2] Lionel M. Ni, Yunhao Liu, Yiu Cho Lau. LANDMARC: Indoor Location Sensing Using Active RFID.Proceedings of the First IEEE International Conference on Pervasive Computing and Communications(PerCom’03)
[3] Songmin Jia, Erzhe Shang, Takafumi Abe :Localization of Mobile Robot with RFID Technology and Stereo Vision. Proceedings of the 2006 IEEE International Conference on Mechatronics and Automation June 25 - 28,2006, Luoyang, China.
[4] Bahl P, Padmanabhan VN. RADAR: An in-building RF-based user location and tracking system. In: Proc. of the IEEE INFOCOM 2000. Vol.2, Tel Aviv: IEEE Computer and Communications Societies, 2000. 775-784.
射频识别(RFID)技术是从20 世纪80 年代起走向成熟的一项自动识别技术。它利用射频方式进行非接触式双向通信交换数据以达到识别目的,和传统的磁卡、IC 卡相比,射频卡最大的优点就在于非接触,因此完成识别工作时无须人工干预,适合于实现系统的自动化且不易损坏。RFID 技术的快速发展使得其应用也在日益壮大,国家有关部门也非常重视。科技部《中国RFID 发展策略白皮书》正式出台,国家高技术研究发展计划(863 计划)的RFID 重大项目全面启动,RFID 的发展及应用前景广阔。
目前,RFID 技术应用于智能机器人的研究也在不断发展。监视幼儿园孩子的机器人,吸尘器机器人对“智能地毯”清洁卫生,商场导购机器人等等,应用RFID 技术的机器人不断推出。机器人在运动过程中存在自身定位的问题,而定位的方法有很多种,多采用机载传感器定位。机器人相对定位技术主要有导航信标、主动或被动标识、地图匹配或卫星导航技术(GPS)等,这几种方法中,信标或标识牌技术的建设和维护成本较高,地图匹配技术处理速度慢,GPS 只能用于室外,目前精度还很差;绝对定位的位置计算方法包括二视角法、二视距法、模型匹配算法等。相对定位优点是机器人的位置是自我推算出来的,不需要对外界环境的感知信息,缺点是漂移误差会随时间累积,不适于精确定位。绝对定位通过感知获取周围环境的信息,利用各种算法来求出机器人的精确坐标,在区域内定位精度高。
本文将探讨利用RFID 技术,通过RF 信号传播损耗模型, 计算读写器和读到各个标签间的距离[2] [4],利用算法求出机器人的坐标位置。
2. 信号传播损耗模型
RFID 标签读写是通过射频信号的收发来实现的。RFID 读写器可以将读到标签的相关信息通过串口发送给机器人。可以采用接收信号强度指示(RSSI)来标示RF 信号在某个位置的强度。一般来说,每个标签发出的信号的强度都是一个定值,但是当读写器与标签的距离不一样时,接收标签发送回来的信号强度也就不一样。这种强度的衰减,称为信号的传播损耗,它与环境有关。根据接收到信号的强度,利用理论和经验传播损耗模型,可以将传输损耗转化为距离。下式(1)是一种对数-常态分布传播损耗模型:
其中,P(d)表示读写器接收到标签发送回来的信号强度;P(d0)表示读写器在参考点d0 接收到标签发送的信号强度,所有标签的初始发送信号强度相同;n 表示路径长度和路径损耗之间的比例因子,依赖于障碍物的结构和使用的材料,它的范围在2 至5 之间;Xσ是平均值为0 的高斯分布随机变数,也就是信号穿过障碍物的衰减,其标准差范围为4 到10;d0表示参考点和标签的距离;d 表示需要计算的标签和读写器间的距离。
图1 是用对数-常态分布模型(公式1)绘制的RSSI 曲线图。从图1 中可以看出,节点到信号源的距离越近,由RSSI 值的偏差产生的绝对距离误差越小。而当距离大于100cm 时,由于上述式(1)中Xσ 的影响,由RSSI 波动造成的绝对距离误差将会很大。基于上面的分析,本文提出信标标签影响力概念,即在定位算法中,信标标签对未知读写器位置都有影响力,RSSI 越大的信标标签,影响力越大,对读写器位置有更大的决定权。本文中的读写器放在移动机器人上,所以,决定了读写器的位置也就是决定了机器人的位置。如图2,读写器收到了4 个信标标签的信号,其中Tag3 的RSSI 最大,对读写器的位置有最大的决定权。本文中只取影响力较大的4 个信标标签来做定位计算。
3. 定位算法计算
3.1 信标
本文采用RFID 标签作为信标。根据RFID 读写器识读标签可穿透性,对标签的布置可以放在地下,也可以放在室内的天花板上。读写器识读到多个标签时,根据RSSI 得知的各个标签的距离,机器人选4 个最近的距离来进行定位。
RFID 标签信标的选择原则:带读写器的机器人在运动过程中,可能读到远处的多个标签信号,应当采用RSSI 值大的前几个信标标签进行定位计算。在保证参与定位计算的信标标签数为4 个的情况下,将距离大于100cm(视应用环境而定)的信标标签去除,以免造成定位误差扩大。后面进行的仿真计算也证明了这点。
在布置标签的时候,两个标签之间的距离设为读写器的准确识读距离,略小于其最大读写距离值,本文中标签布置间隔为1 米。RFID 在读取的范围内,由于各种原因(如反射、金属阻挡、干扰等)对标签的识别会有一点的偏差。本文中一般情况下能读到4 个标签。当可能只读到3 个时,把该正方形区域内的另外一个标签到机器人的距离设为最大值,在本论文中为1;当有其他反射等原因导致读取多于4 个时,则选4 个距离最近的标签,来确定移动机器人的位置。本文中用到的RFID 设备是工作在2.45GHz 下,读写器长宽尺寸为23.6cm×12cm,对其发射功率设定,可以设成4 个等级的读写距离,本文设置为可读最大距离1.4 米左右。
3.2 机器人定位
标签布置好以后,可以将它的位置(坐标)信息写入标签内,移动机器人通过读写器读到4 个标签后,就知道自己到达了哪个区域,再根据读到的标签的坐标信息以及标签到机器人的距离,采用极大似然估计法求取机器人的准确坐标位置。
图3 为室内标签布置简图,把他们用坐标轴划分成格子形式,他们之间的间隔距离为1米,如图每个标签的坐标都已知,当装有读写器的移动机器人在该区域内运动,就可以读取到格子内邻近的4 个标签,通过标签的信息进而得知邻近4 个坐标值,根据RSSI 得到与标签的相对距离就可以计算出机器人的坐标位置,如图2。
已知4 个标签的坐标分别为(x1,y1), (x2,y2), (x3,y3),(x4,y4),它们到移动机器人R 的距离分别为d1,d2,d3, d4,假设装有读写器移动机器人R的坐标为(x,y)。
那么,存在下列公式:
使用标准的最小均方差估计方法可以得到移动机器人R 的坐标为:
本文在UNIX 平台上用C 语言编程仿真计算RSSI。式(1)中的损耗因子n 取3.2,高斯分布随机变数Xσ 的标准差取为4,d0 取0.1m。下表1 为各个数据对照,其中实际坐标为随机选择机器人的分布坐标;通过RSSI 得到的读写器与4 个标签的距离是通过仿真得到的距离值,表中从上到下的距离值依次和4 个标签坐标对应;计算得到的坐标值是根据式(2)仿真计算得出。
图4 为通过定位算法得出的坐标位置与实际坐标位置的比较图,图中的坐标单位为米。
图4 中蓝色点为机器人实际的位置坐标点,红色点为用定位算法得出的机器人相应坐标点,各坐标点相应的偏差分别为:0.1416、0.0775、0.0124、0.0473、0.9536、0.0067、0.136、0.0619,单位为米,最大偏差不到15cm,最小偏差不到1cm,偏差值在读写器尺寸之内,可以说该定位方法精确度还是比较高的,采用4 个点来用极大似然定位估计精确度大大提高。
从各个点的偏差值来看,通过把RSSI 仿真得到的读写器到各个标签距离值与其实际距离值进行比较,发现机器人到各个标签的距离值,对最后定位的精度直接有很大的影响。而极大似然估计是利用到各个标签的距离值,来计算机器人的坐标位置,精确的坐标值依赖于机器人到各个标签的距离值。通过多次仿真进行定位计算比较,到4 个标签距离中若只有一个距离值偏差较大时,如第八个点,它的位置偏差为0.0619 不是很大;而第一和第七个点到3 个标签距离值都有相对较大的偏差时,它的定位精度就很差,偏差有0.1416 和0.136;第三和第六个点到4 个标签的距离值偏差都很小时,其定位精度就很高,偏差为0.0124 和0.0067。
4. RFID 定位其他方法
将RFID 技术引用到机器人的定位中,目前已有人在尝试和研究,主要是结合视觉来配合RFID技术进行定位[1] [3]。韩国学者用RFID和视觉结合[1]读取布置在室内墙壁周围的标签,让机器人在该环境中沿着标签布置多次行走,提取特征值进行制图,机器人获取环境信息后,然后用RFID 来进行特征匹配作导航定位。日本学者在机器人做避障移动到定点目标位置时[3],利用RFID 技术来识别动态障碍物进行避障,同时检测到标签时,就启用视觉来判断各个标的方位角度,然后结合标签的相对距离来对移动机器人进行定位,这样就可以省去大量的视觉图形采样分析计算。
另外,通过RFID 标签导航机器人也可以采用如图5 所示的方式:机器人A 沿着直线ADNM 向前行走,在运动过程中根据读到的标签来确定机器人到达的区域。区域范围的确定:由于能读到某个标签都有个识读半径为d 的圆,装备有RFID 读写器的机器人在运动中会读到不同的标签,再根据读到的各个标签的识读圆区域的重叠范围来确定机器人所到达的位置。如果机器人走偏了,没有读到某个该读的标签,则控制机器人进行相应的位置调整。如图5,若机器人走到B 的左上方,不在ABCD 范围内,没有读到P、F,则要往右调整。该方法为区域定位,精度不高,但是简单实用。可以在机器人上加其他传感器(如电子指南针)来进行改进,作更精确的定位。
5. 结论
随着RFID 技术的快速发展,与机器人的结合应用也将会有很广阔的前景。利用射频识别的这种非接触无线传输特点,机器人可以获取包括定位在内的更多的信息,本文提出的采用RFID 技术来给移动机器人定位,用到无线接收信号强度指示来进行距离的计算,在短距离内其精度较高,对机器人的定位也较准确。在室内环境下,用均匀分布RFID 的标签对机器人的定位也提高了效率和精度。而标签可以布置在地板下面或者天花板上,不占地方也方便应用。值得一提的是,本文中基于RFID 的机器人定位算法,需要标签读写器具备RF 信号强度检测功能;另外,金属障碍物的阻挡可能会影响到读取识别的效果和精度,这也是射频识别技术的关键需要解决的问题。
参考文献
[1] Heesung Chae , Kyuseo Han. Combination of RFID and Vision for Mobile Robot Localization. Intelligent Sensors, Sensor Networks and Information Processing Conference, 2005. Proceedings of the 2005 International Conference on5-8 Dec. 2005 Page(s):75 - 80
[2] Lionel M. Ni, Yunhao Liu, Yiu Cho Lau. LANDMARC: Indoor Location Sensing Using Active RFID.Proceedings of the First IEEE International Conference on Pervasive Computing and Communications(PerCom’03)
[3] Songmin Jia, Erzhe Shang, Takafumi Abe :Localization of Mobile Robot with RFID Technology and Stereo Vision. Proceedings of the 2006 IEEE International Conference on Mechatronics and Automation June 25 - 28,2006, Luoyang, China.
[4] Bahl P, Padmanabhan VN. RADAR: An in-building RF-based user location and tracking system. In: Proc. of the IEEE INFOCOM 2000. Vol.2, Tel Aviv: IEEE Computer and Communications Societies, 2000. 775-784.
13.56MHz NFC天线,13.56MHz RFID天线设计培训课程套装,让天线设计不再难
上一篇:IC卡在有线电视收费系统中的应用
下一篇:智能IC卡系统在机电井灌溉中的应用及影响