zigbee RSSI 定位
原文: http://wjf88223.blog.163.com/blog/static/35168001201142581034694/
说明:
1.这个人员定位小方案只是面向于化工厂等一些具有一定危险性的室内空间.
2.采用zigbee协议,因为是室内人员定位所以木有去考虑zigbee模块的功耗问题.
3.只是理论上设计的一个方案,不可避免会有很多不妥之处,木有在实际中应用.
2011.5.25 — 小峰
******************************************************************************
******************************************************************************
4、目标定位算法设计方案
本方案采用基于RSSI测距的定位算法,即已知发射数据的节点(移动目标节点)在发射数据时的发射功率,根据接收节点(参考节点)测量其接收到的信号功率,计算信号的传播损耗,利用理论模型将传输损耗转化为距离,再利用相关算法计算出目标节点的位置。
(1)RSSI测距模型
接收信号强度RSSI是传输功率和传输距离(发送节点与接收节点之间的距离)的函数。RSSI值会随着距离的增加按如式(4—1)递减:
(4—1)
其中n为信号传播常数,与信号的传输环境有关;d为接收节点与发送节点之间的距离;A为距离发送节点1米时的信号强度。
A和n的取值不同,对测量的误差影响会很大,为了尽可能提高基于RSSI测距定位的精度,参数A和n的取值预先由工作人员在实际定位区域进行测量计算。理论上A的值在各个方向上应该是一致的,但由于发射节点和接收节点天线的各向性,使它的值并不一定相同,因此需要进行多次测量并取平均值。因为n与信号传播环境有关,它的值是不断变化的,工作人员需要先在定位区域通过测量得到一组n值,然后在参考节点布置好以后,尝试使用不同的值以寻找一个最适合该区域环境的值。
(2)参考节点RSSI值滤波处理
[本段滤波算法参考文献《基于RSSI的室内无线网络定位研究技术》]
在参考节点接收到 n次(本方案设置 n值为 50)移动目标节点发送的带 RSSI值的信息包后,由于受到视距和多径等外界环境因素影响,得到 RSSI值会具有比较大的波动性,因而先进行滤波处理,得到一个比较准确的值再进行计算。
由于在自然现象和社会现象中,大量随机变量服从或近似服从正态分布,如材料性能、化学成分和测量误差等,因此本方案采用高斯滤波模型进行RSSI滤波。
高概率发生区,选择概率大于0.6的范围(一般工程中的经验值为0.6)。经过高斯滤波后,RSSI的取值范围为
![](http://img837.ph.126.net/sEha2d2yREak54Roi7_G1Q==/1770196128535330807.jpg)
,其中:
![](http://img157.ph.126.net/Zdpes1ytr7swjw6Hy4OF9w==/2244762939268978162.jpg)
然后再把该范围内的RSSI值取出,求几何平均值,得到最终的RSSI值,最后参考节点把这个RSSI值以及本节点的网络地址ID一起发送到移动目标节点。
(3)移动目标节点RSSI值阀值处理
移动目标节点广播RSSI信息包后,会接收所有一跳范围内参考节点发回的最终RSSI值和对应的网络地址ID,本方案网络布局的宗旨为:任意一小块定位区域,至少位于三个参考节点的定位半径内,并且与三个参考节点都保持可视性。如果一块小区域满足上述宗旨,则满足可视性的参考节点所得到的RSSI值是最准确的,利用这些RSSI值测得的移动目标节点坐标的精度也是最高的,但如果移动目标节点一跳范围内还有一些不满足可视性的参考节点,由于障碍物的影响,这些参考节点得到的RSSI值会比那些满足可视性参考节点得到的RSSI值小,最终会降低移动目标节点的定位精度。本方案采用一个阀值处理过程来滤除那些一跳范围内受障碍物影响很大的参考节点所发送的RSSI值。
设阀值为,
的取值预先由工作人员在定位现场测量得到。假设参考节点的定位半径为r,参考节点在距离移动目标节点为r处接收到50个RSSI信息包后,通过(2)中的优化步骤得到一个RSSI值,为了提高定位精度,多次测量,取最终的平均值作为阀值
。
假设移动目标节点接收到一跳范围内n个参考节点的RSSI值RSSIi,i=0,1,…,n,x为的个数。如果x>=3,则打包x个RSSI值以及对应参考节点网络地址ID发送到基站,基站再发送到中心计算机;如果x<3,即对应于一些十分偏僻的特殊区域,则将n个RSSI值以递减方式排列,打包前
个RSSI值(
为向上取整)以及对应参考节点的网络地址ID发送到基站,,基站再发送到中心计算机。
(4)移动目标节点坐标计算
中心计算机接收到参考节点发送上来的RSSI值后,根据式(4—1)得到它们之间的距离,然后进行移动目标坐标的计算。本方案采用极大似然估计法来计算移动目标节点的坐标。已知n个参考节点(P1,P2,...,Pn)的高度分别为(H1,H2,...,Hn),坐标分别为(x1,y1),(x2,y2),...,(xn,yn),移动目标节点D的高度为h,通过RSSI值得到各参考节点距离移动目标节点M的距离为(L1,L2,...,Ln),设各参考节点距离移动目标节点D的距离映射到定位区域坐标轴上为(d1,d2,...,dn),如图10所示。
图10 n个参考节点与移动目标节点
根据式(2—1)可以得到:
(4—2)
设移动目标节点D的坐标为(xD,yD),则有
(4—3)
从第一个方程开始,分别减去最后一个方程,得到
(4—4)
令
由于存在测距误差,合理的线性模型应该是,其中,N为n -1维随机误差向量。可以求解移动目标节点D的极大似然估计和非线性最小二乘估计节点D的位置为:
(4—5)
5、目标跟踪算法设计方案
如何以最低的能量代价高效地融合有效信息是各种目标跟踪算法的核心问题。若要提高目标跟踪精度,必须需要较多节点的数据,这就会带来较高的能量开销。反过来,若要节省能量,就只能在有限范围内进行通信和计算,那么结果精度就会受到影响。由于本方案采用zigbee协议,基站为协调器,参考节点具有路由功能,移动目标节点为终端,参考节点有固定电源供电,可以不用考虑能量消耗的问题,而把重点放在提高移动目标定位精度上。中心计算机将根据已有的移动目标节点历史坐标数据和当前获得的最新坐标数据进行线性拟合,计算移动目标的运动轨迹,并在定位区域示意图上显示移动目标节点的轨迹,实现对移动目标节点的跟踪。
zigbee RSSI 定位相关推荐
- zigbee室内定位
创建一个自定义列表 Markdown Text-to-HTML conversion tool Authors John Luke 有谁可以帮我做个zigbee室内定位的东西吗?有偿qq:113249 ...
- ZigBee室内定位方案的优势在哪里,该技术可靠吗-新导智能
苏州新导ZigBee 是一套专为物联网传感和操控开发的通讯协议,首要使用于才智家居.才智健康.才智动力等新兴技能领域,具有近间隔.低杂乱.低功耗.低速率.自组织.高容量等特性.常用的 ZigBee ...
- android 定位蓝牙,Android开发-蓝牙RSSI定位
RSSI(Received Signal Strength Indication)是接收的信号强度指示,用来判定链接质量,利用RSSI信号值可以计算主设备和蓝牙设备的距离信息.通过至少三个设备的RSS ...
- 蓝牙RSSI定位入门到精通(2)--指纹法
下篇地址蓝牙RSSI定位入门到精通(3)-指纹法实现 点击:室内定位主页目录+一维实战+二维实战+安卓惯性导航基础 前言 继上篇文章,由于信号的严重衰减和多径效应,使得三点定位算法得到的坐标精准度太差 ...
- 蓝牙RSSI定位入门到精通(4)-指纹法实现
下篇文章蓝牙RSSI定位入门到精通(5)-卡尔曼滤波 https://blog.csdn.net/qq_35651984/article/details/82793612 指纹的实现 接上篇文章,指纹 ...
- 蓝牙RSSI定位入门到精通(3)-指纹法实现
下篇文章蓝牙RSSI定位入门到精通(4)-指纹法实现 https://blog.csdn.net/qq_35651984/article/details/82764334 实现步骤 指纹的采集(离线阶 ...
- rssi用matlab编写,matlab实现RSSI定位
文章目录 一.要求 二.设计 三.代码 四.结果 五.结论 一.要求 要求一:RSSI的测量值由对数路径损耗模型产生,为减小波动造成的误差,其值可由多次测量取平均值来得到. 要求二:对数路径损耗模型中 ...
- 蓝牙RSSI定位入门到精通(1)---三点定位
下一篇:蓝牙RSSI定位入门到精通(2)–指纹法 点击:室内定位主页目录+一维实战+二维实战+安卓惯性导航基础 蓝牙5.0的发布,降低了功耗,大大提高了定位的准确度和距离,而它的定位–物联网设备又使室 ...
- 基于RSSI定位算法的matlab仿真
up目录 一.理论基础 二.核心程序 三.测试结果 一.理论基础 Received Signal Strength Indication接收的信号强度指示,无线发送层的可选部分,用来判定链接质量,以及 ...
最新文章
- GA(遗传算法)的Matlab程序原理(from:六分之一工作室)
- MYSQL 取中位数
- 云架构的基础转变会带来哪些变化?
- 学习笔记-----fputs与printf
- android蓝光播放器,安卓播放器真的拥有完美的蓝光原盘菜单导航吗?我来测试下...
- 射线和三角形的相交检测(ray triangle intersection test)
- 转:	android apk 防止反编译技术(1~5连载)
- vue 双向数据绑定
- Mongo 常用操作
- Linux下使用NMON监控、分析系统性能
- idea整个项目乱码解决办法
- C语言中逻辑非和取反的不同
- Android开发——项目实例(一)迷你背单词软件
- Android Sophix热修复集成
- SAE 联合乘云至达与谱尼测试携手共同抗疫
- 网页自动采集之内涵吧内涵段子自动采集
- 立志高远;毕业后计划
- python决策树案例_决策树案例:基于python的商品购买能力预测系统
- Maya的auto save 自動保存
- 计算机图像识别 pdf,计算机图像处理与识别技术.pdf
热门文章
- 认识synchronized(this)与synchronized(非this)
- android 保存 parcelable对象,Android 使用序列化Serializable和Parcelable
- Solr从安装到使用 for Linux(详细教程)
- ip后面的斜杠24是什么意思?(/24)(子网掩码)(32位中的前24位为1,即255.255.255.0,用二进制表示为:11111111.11111111.11111111.00000000)
- OPPO R9m怎么刷机 OPPO R9m的刷机教程 OPPO R9m完美解除账号锁
- phpstudy -sql服务器2008r2 -中控考勤机 -php 组合查询考勤
- cad字体安装_免费的CAD字体去哪找?下载之后如何安装?1分钟教你搞定
- jQuery-添加删除移动表单项
- 半导体器件特性曲线测试方法及半导体二极管特性的研究
- Kring(DACE)Multiple design sites are not allowed