基于AT86RF233的室内定位系统
2016-10-14李飞高瑜翔焦启源李晓辉
李飞,高瑜翔,焦启源,李晓辉
(成都信息工程大学通信工程学院,四川成都610225)
基于AT86RF233的室内定位系统
李飞,高瑜翔,焦启源,李晓辉
(成都信息工程大学通信工程学院,四川成都610225)
为了解决室内定位不准确、成本高、安装不方便等问题,提出了一种基于AT86RF233相位差测距的二维定位系统。系统由上位机、网关、基站、协调器、终端五部分组成,通过测量4个基站到终端的距离实现定位。由C#编写的上位机软件控制定位的启动和停止,执行定位算法和在一个图形界面上实时显示终端的所处位置。实验表明本系统具有部署简单、低成本、定位精度较好等优点。
无线通信;室内定位;相位差测距;支持自组网
随着物联网的日趋发展,室外定位的技术成熟和人们对高质量生活的不断需求,越来越多的人投入到对室内定位的研究。现在的室内定位技术主要有:超宽带、超声波、红外线、RFID,Zigbee等[1]。这些定位技术各有缺点:超宽带定位需要基站的精准时间同步,超声波定位为满足精度需大量底层硬件设施成本较高,红外线定位直线视距和传输距离较短,RFID定位结构复杂需要在现场布置大量参考标签,而基于信号场强的Zigbee定位稳定性和精度都比较低。因此一种低成本,高精度,部署方便的室内定位系统就将具有很大的意义。由于采用GPS载波相位差分技术的室外定位甚至可以在动态定位中达到厘米级的精度[2],所以本文的定位系统考虑通过测量无线信号发送和接收时刻相位差值计算出距离从实现定位。由ATEML公司设计的无线芯片AT86RF233具有支持相位差测距功能配合其官网相位差分测距应用能够容易实现基站对终端的距离测量,其还有价格低、体积小等优点,所以为本系统首选无线芯片。
1 相位差测距的实现
如果能够测量出基站在i时刻发送的载波信号相位θi与定位终端在j时刻接收到的该信号相位θj的差值θj-θi和此过程中相位经历的整周相位数N,则有公式:
公式中d为基站与终端的距离,λ为电磁波在空气中的传播速度。但是在单个基站和单个终端的通信中,如何测量或消除初始相位θj和整周相位N是一个算法难点,本文中不论述该算法的原理。本系统是基于ATMEL公司相位差分测距应用的二次开发。由ATMEL公司设计的2.4G收发一体的无线芯片AT86RF233支持相位差分测距功能。AT86RF233内部PHY_PMU_VALUE寄存器值为捕获到的载波信号相位与本地再现参考信号相位差值,配合对ATMEL官网上提供RTB(Rang tool box)软件包里的相位差分测距LIB移植可实现单个基站与终端间的距离测定。
2 定位算法
本系统采用4个基站,其坐标分别为S1(x1,y1),S2(x2,y2),S3(x3,y3),S4(x4,y4);d为移动终端P(x,y)到4个基站的测量距离,可构建如下方程:
将(3),(4),(5)分别减(2)可得方程(6),(7),(8):
对方程(6),(7),(8)采用最小二乘法求解[3]可得定位终端的坐标为:
3 系统组成
本文的定位系统如图1,由上位机、网关节点、基站节点、协调器节点和定位终端节点五部分构成。基站实现对定位终端的距离测定。网关实现基站和上位机的数据交互。上位机负责定位的启动和终止定位算法的实现、定位结果的图形显示。协调器的功能等同于中继,在远距离测距中作为基站和中继的桥梁。
图1 系统组成结构
4 硬件设计
为实现小体积应用,本系统主机或基站等节点仅由单片机最小系统、E2PROM模块和无线模块三部分构成,如图2所示。
图2 基站节点硬件构成
其中MCU采用ATXMEGA256A3[4-5]单片机作为控制芯片,其工作电压为1.6~3.6 V,含有8事件通道系统。该功能可灵活实现多类外部事件触发到多类内部事件的硬件执行,在应用中提高了系统运行效率。
存储模块芯片采用AT24C512C,其功能主要是对系统的配置参数(如:本机地址,信道频率,发射功率等)进行存储,避免掉电后,繁琐的重配置工作。
无线模块芯片采用AT86RF233,其不仅支持相位差分测距还硬件支持IEEE802.15.4协议如自动应答、协议过滤等;AT86RF233接收灵敏度为-101DBM,工作环境为-45~80度,并具有超低功耗,在深度睡眠下可低至20 na,最大功率发射下也才13.8 ma。
为减小多径干扰的影响,AT86RF233天线分集功能支持通过对两根天线的控制来选择有效信号传输路径,在DIG1、DIG2管脚会输出一对差分信号用于控制天线。本系统中每个节点使用了一对天线,两跟天线方向正交,通过外接射频开关控制天线的选通。
5 软件设计
5.1软件结构
本系统通信协议满足IEEE802.15.4标准,可方便以后将本系统扩展为基于此协议的Zigbee、6Lowpan等自组网定位系统。软件结构如图3所示:应用层向底层提出或是完成测距、定位等各类应用。MAC完成IEEE802.15.4标准指定功能包括协议格式帧数据的解析和封装等等。内存和队列管里单元管理各层对内存空间的申请使用和各类事件[6]。PHY层实现IEEE802.15.4规定电气信号的物理连接等。
图3 软件框架
5.2定位协议
本系统采用自定位协议控制定位过程实现,在通信中本协议内容属于IEEE802.15.4规定MPDU[7](协议数据单元的)的MSDU(服务数据单元)。每个指令的协议内容为:首先是3字节协议ID(由LCT3个字符表示),然后是1字节指令ID,根据指令ID后面可添加定位模式、移动终端地址等字节单元,最后是1字节序列号和2字节CRC校验。其中0x11表示手动定位模式,0x12表示自动定位模式其后面不需要接终端地址。0x22表测距成功,0x21表示测距失败其后面不需要添加距离数据。在自动定位模式时网关会在不同时刻向某一基站发送相同的指令,由于各类原因很可能造成后一时刻终端返回数据是对前一刻基站指令的响应,让基站产生误判造成数据时间错位。本设计中采用序列号对比:基站发送含序列号的指令,每次发送时序列号改变,终端返回带序列号的数据,当双方的序列号一致时基站判断数据有效。协议格式如表1所示。
5.3通信防碰撞处理
由于室内面积较小,当两个节点通信时,其他节点也可能同时收到它们的信息,通信碰撞不容忽略。本系统从3个方向进行了防碰撞处理。
5.3.1CSMA-CA算法的执行
IEEE802.15.4规定的MAC通信防碰撞处理机制在本系统中由AT86RF233芯片硬件自动完成[8]。其中心思想为:每次发送数据前对当前信道进行评估,如果当前信道空闲则发送,否则随机延迟一段时间后再次对当前信道评估;然后重复执行上述步骤直到重复执行次数达到设定的最大值(AT86RF233相关寄存器可设,最大次数<7)后,则不管当前信道如何都发送数据。
表1 自定义定位协议格式
5.3.2协议类型过滤
AT86RF233有对IEEE802.15.4协议硬件过滤功能。其原理为对接收到的MAC帧头数据解析:根据FCF字节检查协议类型和版本号,然后将地址域里的终端地址及PAN ID等与本机匹配;当以上条件都满足时该帧数据通过,否则丢弃,以上功能由芯片硬件自动完成。
5.3.3软件设计防碰撞处理
在程序中,也对防碰撞做了处理:程序设计对接收到的数据源地址进行判断,只有该地址为程序逻辑需求地址时数据才有效。
5.4网关软件设计
网关初始化工作完成后,就开始监听上位机发送串口数据。收到停止命令时停止定位;收到启动定位指令时,网关就向第一个基站发送测距指令并将测得距离数据返回给上位机,接着向第二个基站测送测距指令,并依次循环。工作流程如图4所示。
图4 网关工作流程
5.5基站软件设计
基站初始化后,AT86RF233就进入监听状态;当收到网关测距指令后就执行对终端的距离测量。测距流程如图5所示。
5.6上位机软件设计
上位机通过串口向网关发送控制指令,负责定位的启动和终止,并通过串口搜集来自网关的测距数据执行定位算法和图形显示定位目标的位置,软件结构如图6所示。
6 测试结果与分析
6.1动态定位测试
在发射功率为0 dbm,室内面积大小位为8 m*8 m的环境下,手持移动终端节点在室内走一个圈,测试结果如图7所示。
可以看出界面显示了一个较为平滑的闭合图形;说明本系统在较小的室内面积下,有较好的动态定位效果。
图5 基站工作流程
图6 上位机工作流程
图7 动态定位测试效果
6.2定位精准度测试
在发射功率为0 dbm不使用中继的情况下,测得单个基站的通信半径为40 m所以估算出此情形下系统的无盲点定位面积为28 m*28 m。在该面积内实施定位测量,结果如表2所示。
表2 定位测试数据
由上表可以看出在良好环境中远距离定位误差大于近距离定位误差,这反应了信号强弱对定位精度的影响;而当处于狭小空间复杂环境内定位误差随空间大小变化不明显,此时影响定位精度的主要因素应是内部环境复杂度。
7 结论
本文提出的室内定位系统方案仅由几个节点就可完成,节点体积小现场布置容易,系统定位精度较好,在一些对精度要求不高的场合可以实现低成本应用。且本系统通信协议满足IEEE802.15.4标准,软件采用分层结构,系统不仅可以用于定位,也可用于个人无线局域网络的实现。
[1]汪苑,林锦国.几种常用室内定位技术的探讨[J].中国仪器仪表,2011(2):54-57.
[2]王广运.载波相位差分GPS定位技术[J].测绘工程,1999,8(1):12-18.
[3]杨俊,武奇生.GPS基本原理及其Matlab仿真[M].西安:西安电子科技大学出版社,2006.
[4]蒋金元.基于多机通信的AVR单片机高级用户板的设计与开发[D].华东师范大学,2005.
[5]林登.C专家编程[M].徐波,译.北京:人民邮电出版社,2008.
[6]陈媛,何波,涂晓红.算法与数据结构[M].北京:清华大学出版社,2005.
[7]电气和电子工程师协会.IEEE 802.15.4-2006标准.低速率无线个人局域网络的无线多媒体接入控制及物理层规范[S].华盛顿:IEEE计算机协会,2006.
[8]Ateml公司.AT86RF233技术手册[EB/OL].[2014-07].http:// www.atmel.com/Images/Atmel-8351-MCU_Wireless-AT86 RF233_Datasheet.pdf.
Indoor position location system based on AT86RF233
LI Fei,GAO Yu-xiang,JIAO Qi-yuan,LI Xiao-hui
(Communication Engineering Institute,Chengdu University of Information Technology,Chengdu 610225,China)
To solve problems like inaccuracy,high-cost and inconvenience of installing in indoor position system,a twodimensional indoor position system based on AT86RF233 of phase difference measurement is designed.The system consists of five parts:upper computer,gateway,base station,coordinator and terminal and it can realize the positioning by measuring the distance between four base station and terminal.The upper computer software compiled by C#controls starts and stops of location,executes position algorithm and displays real-time location of the terminal on GUI.The test shows that the system has the advantages of simple deployment,low cost and good positional accuracy.
wireless communication;indoor position location;phase difference ranging;support ad hoc networks
TN98
A
1674-6236(2016)12-0108-03
2015-07-07稿件编号:201507060
李飞(1983—),男,四川绵阳人,硕士研究生。研究方向:无线通信及移动互联网。