求救,如何跟踪记录蓝牙的RSSI值

求救,如何跟踪记录蓝牙的RSSI值,第1张

这个如果framework里面没有的话, 需要从底层直接获取数据。这就是数据通路的问题了, 谁去做底层的话, 让他给你开个接口。当然最好的情况是framework里面有, 而且底层也实现了这个接口。

您是要做一个什么应用呢?小尺寸小体积的蓝牙模块我了解的有SKB369和SKB501都支持做主、从设备。

以SKYLAB蓝牙室内定位方案为例,从设备蓝牙Beacon内的蓝牙模块会连续广播信标信号如UUID,Major,Minor,RSSI等信息。主设备蓝牙网关TD05内的蓝牙模块则每秒收集一次Beacon附近的信息,包括RSSI,MAC等。

蓝牙室内定位方案

1)TD05内蓝牙模块每秒收集一次Beacon附近的信息,包括RSSI,MAC等。

2)蓝牙模块通过UART串口将信标信息发送至WiFi模块,每秒一次。

3)WiFi模块将Beacon信息传输到指定的UDP服务器,并接收服务器返回的信息。

 5/12 TD05-DA-001,A / 0具有POE数据表的蓝牙网关

4)在UDP服务器分析并计算信标信息之后,信标位置可以显示在首页上。然后反向也可以发送控制指令到WiFi模块,然后通过WiFi模块发送到蓝牙模块开发不同的功能(如:照明灯具等)。

备注:TD05可通过POE交换机或无线路由器连接到互联网。

Received Signal Strength Indication接收的信号强度指示,无线发送层的可选部分,用来判定链接质量,以及是否增大广播发送强度。

通过接收到的信号强弱测定信号点与接收点的距离,进而根据相应数据进行定位计算的一种定位技术。如无线传感的ZigBee网络CC2431芯片的定位引擎就采用的这种技术、算法。接收机测量电路所得到的接收机输入的平均信号强度指示。这一测量值一般不包括天线增益或传输系统的损耗。

RSSI(Received Signal Strength Indicator)是接收信号的强度指示,它的实现是在反向通道基带接收滤波器之后进行的。

为了获取反向信号的特征,在RSSI的具体实现中做了如下处理:在104us内进行基带IQ功率积分得到RSSI的瞬时值;然后在约1秒内对8192个RSSI的瞬时值进行平均得到RSSI的平均值,即RSSI(平均)=sum(RSSI(瞬时))/8192,同时给出1秒内RSSI瞬时值的最大值和RSSI瞬时值大于某一门限时的比率(RSSI瞬时值大于某一门限的个数/8192)。由于 RSSI是通过在数字域进行功率积分而后反推到天线口得到的,反向通道信号传输特性的不一致会影响RSSI的精度。

在空载下看RSSI的平均值是判断干扰的最主要手段。对于新开局,用户很少,空载下的RSSI电平一般小于-105dBm。在业务存在的情况下,有多个业务时RSSI平均值一般不会超过-95dBm。从接收质量FER上也可以参考判断是否有干扰存在。通过以发现是否存在越区覆盖而造成干扰,也可以从 Ec/Io与手机接收功率来判断是否有干扰。对于外界干扰,通过频谱仪分析进一步查出是否存在干扰源。测距理论

RSSI是射频信号理论术语,主要应用于发射机和接收机之间的距离测量。该方法是依据接收信号能量强度确定距离,对通信信道参数要求较高。其测距理论是:依据无线电波或声波在介质中传输,信号功率是随传播距离衰减的原理。根据信标节点已知信号的发射功率和节点接收的信号功率,通过信号与距离之间的衰减模型,就可以计算出节点间的距离。由于信号传播的过程中,受到距离和障碍物的影响。信号的功率强度随之衰减,间接影响精度。所以要求得到良好的精度,短距离才会体现这一点。

由于信号发射设备和接收设备简单、成本低、低功耗,比较适合无线传感器网络定位机制。针对室内和室外环境,现阶段流行的估计位置技术中,对提高估计位置的准确性方面,也有很多方法。例如由三个非共线锚定器组成,通过非共线信标节点进行位置估计的最小二乘法,以及使用三个以上的信标节点多点定位技术。对于测距方法的进行对比如图所示:

由图可以看出:RSSI的定位技术作为基于Wi-Fi活动的RFID标签,相比于TOA、TDOA、AOA、GPS具有成本低、容易实现等优势。如果室内定位精度要求不高,基于RSSI的定位技术完全可以满足。而且,现阶段对于作为节点的传感器,都能够完成发射测试信号功率的任务。主要进行实验时,节点发送数据包,也获取RSSI的测量值。该定位技术既无需额外硬件,又能完成复杂信息的分析处理,减小通信消费,节约成本,比较适用于无线传感器网络的定位系统。 [1]

通过WifiManager的方法getScanResults()获取List<ScanResult>的集合,ScanResultlevel就是信号强度是个负数,然后使用 WifiManagercalculateSignalLevel(scanResultlevel, 100);就可得到确定的信号强度(calculateSignalLevel为计算信号等级函数,MAX_RSSI和MIN_RSSI分别为最强和最弱信号强度等级的信号强度阀值)。

以上就是关于求救,如何跟踪记录蓝牙的RSSI值全部的内容,包括:求救,如何跟踪记录蓝牙的RSSI值、请问能否推荐一款体积小的,连接后能够传回rssi值的蓝牙模块,或者一般蓝牙模块怎么获取rssi值、电信rssi原理等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9815483.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存