一种RSSI拟合系统的制作方法

文档序号:19075030发布日期:2019-11-08 21:20阅读:253来源:国知局
一种RSSI拟合系统的制作方法

本发明涉及通信领域,尤其涉及一种RSSI测距系统、系统、检测仪、协调器和上位机。



背景技术:

随着经济和科技的发展,人们对生活有了更高的要求,各种新型传感器,各种高新科技层出不穷。而其中,室内定位系统成了科技的爱宠,在室内环境无法使用卫星定位时,使用室内定位技术作为卫星定位的辅助定位,解决卫星信号到达地面时较弱、不能穿透建筑物的问题。而大部分的室内定位系统使用的是RSSI(Received Signal Strength Indication接收信号强度指示)测距原理。

目前,室内定位技术的实现有多种技术方案,其中基于Zigbee协议栈RSSI定位的方案由于耗电少,成本低,高可靠的优点被广泛应用于室内测距,它是根据RSSI-距离衰减规律曲线来进行定位的,RSSI测距原理采用Shadowing渐变理论模型,其公式为:RRSSI=A-10nlg(d),射频参数A被定义为用dBm表示的距离发射器1m接收到的平均能量绝对值,也就是距发射节点1m处的接收信号强度;n为传播因子,传播因子主要取决于无线信号在空气中的衰减、反射、多径效应等干扰,与信号传输环境有关;d为距发射节点的距离。

因此,要应用室内定位,首先需要提前测出定位节点与参考节点之间的RSSI-距离衰减规律曲线值A,n。由于定位精度极大依赖于参数A,n的准确性,特别是n值,n值的正确与否对定位精度的影响能达到2m以上,故有必要准确测出这两个参数。

目前常用有三种系统:

估计法

目前室内定位对信道衰落因子n的确定最简单的是采用估计的系统,这是一种定性的系统,比如,在定位系统完成之后,先通过实验确定射频参数A,并将定位节点安放于测距面中央,通过不断微调信道衰落因子n,使定位较准,则将此时的n确定下来。但在比较混杂的室内定位中,仅仅确定某个位置的n使定位准确是不够的,很有可能出现某点准,但另外一点不准的情况。此时,就需要使用检测仪,才能定量了解周围环境,并作出相应的改变。

加权平均计算法:

中国科学院上海微系统与信息技术研究所,申请号(CN201110300384.5)公开了一种无线传感网中基于RSSI测距的WLS节点自定位系统:

在定位过程中首先对多个信道衰落因子n通过加权计算获得,这种系统实际上采样的距离数相当少,而且各距离值不是等间距的,且过于集中,举个例子,假设实际使用中,用8个信标节点对一片区域做定位(8个已经相当多,最少3个即可),不同信标之间的距离值最多有种,而且这28个距离值并不为等间距,而是相对集中于某个距离区间,原因是,在现实使用定位技术时,这8个信标节点会接近等间距摆放,以使定位面积较大,故此时用不等距且较少的测试样本进行计算,n值会有一定误差。

这种算法会以增加系统资源为代价。不仅如此,该算法为黑盒算法,操作人员无法直观看到n值的计算准确性,实际使用中的定位一旦不准,难以排除是否是因为n值误差大的原因。

现场实测法:

在实际操作过程中,为了测出RSSI特性曲线中的参数A,n。一般有如下过程:

在检测仪端不断发送Zigbee数据包至协调器,协调器收集到数据包后,把初始值米所测的所有RSSI值封装成包。重复以上过程,把检测仪在米所测的RSSI值数据包按序全部发送至上位机。(其中Di+1-Di=a(常,即操作人员在检测的时候需要等间隔操作)

上位机用串口助手收集RSSI数据包,人工复制其中的RSSI值,把等间隔所得的RSSI值按顺序排放整理形成RSSI矩阵,放入已经写好的拟合代码中,拟合得出A,n。实测RSSI矩阵示例如下:

将A,n值当作该环境所测的准确值,代入RRSSI=A-10nl中,即可从RSSI中换算得出距离d,用于后续定位算法。

由于现有技术有拟合精度不高,或拟合过程不直观,较繁杂,难以检验等缺点,故亟待设计了一个RSSI拟合系统,让RSSI测距实验变得简单易行,减少了误操作的同时提高了拟合精度。



技术实现要素:

本发明实施例提供了一种RSSI拟合系统,能够有效降低测距实验的难度,防止操作误差,提高拟合精度。

本发明实施例提供的一种RSSI拟合系统,包括:

检测仪、协调器和上位机;

检测仪,用于根据预定移动规则在不同位置分别向协调器发送携带检测仪与协调器之间的实际距离值的点播包;

协调器包括:

第一接收单元,用于接收点播包,并获取RSSI值;

第一提取单元,用于提取点播包中实际距离值;

整合单元,用于将预定数量的点播包中的RSSI值和实际距离值整合成一个RSSI数据包;

第一发送单元,用于协调器向上位机发送RSSI数据包;

上位机包括:

第二接收单元,用于接收RSSI数据包;

第二提取单元,用于从RSSI数据包中提取所有RSSI值和对应的实际距离值;

显示单元,用于用曲线图对所有RSSI值和对应的实际距离值进行显示;

获取单元,用于获取曲线图的离散程度特征;

第一判断单元,用于判断离散程度特征是否显著;

精确化处理单元,用于对所有RSSI值进行精确化处理,得到RSSI精确值;

拟合处理单元,用于所述RSSI精确值进行拟合处理,得到A和n。

可选的,

协调器还包括:保存单元和累计单元;

保存单元,用于协调器将每点播包的RSSI值保存在一个数组中;

累计单元,用于协调器累计接收的点播包的数量。

可选的,

上位机还包括:

读取单元,用于使用LABview串口控件读取当前RSSI数据包。

可选的,

精确化处理单元包括:

滤波子单元,用于使用LABview用高斯滤波法,滤去所有RSSI值中的突变值;

平均数处理子单元,用于对滤去突变值的RSSI值进行平均数处理,得到RSSI精确值。

可选的,

上位机还包括代入单元,用于将RSSI精确值代入公式,得出测量距离值;

上位机还包括第二发送单元,用于向协调器发送测量距离值;

协调器还包括第三发送单元,用于向检测仪发送测量距离值;

检测仪还包括第二判断单元,用于判断测量距离值与真实距离值差值的绝对值是否满足误差要求。

可选的,

检测仪还包括第一距离显示单元,用于显示所实际距离值。

可选的,

检测仪还包括第二距离显示单元,用于显示测量距离值。

从以上技术方案可以看出,本发明实施例具有以下优点:

本发明实施例中,首先检测仪根据预定移动规则在不同位置分别向协调器发送携带检测仪与协调器之间的实际距离值的点播包;接着,协调器接收点播包,并获取RSSI值;然后,协调器提取点播包中实际距离值;当点播包的数量到达预定数量时,协调器将预定数量的点播包中的RSSI值和实际距离值整合成一个RSSI数据包;再由协调器向上位机发送RSSI数据包;接着,上位机接收RSSI数据包;然后,上位机从RSSI数据包中提取所有RSSI值和对应的实际距离值;接着,上位机用曲线图对所有RSSI值和对应的实际距离值进行显示;再由,上位机获取所述曲线图的离散程度特征;然后,上位机判断所述离散程度特征是否显著,若是,则返回步骤检测仪根据预定移动规则在不同位置分别向协调器发送携带检测仪与协调器之间的实际距离值的点播包;否则,上位机对所有RSSI值进行精确化处理,得到RSSI精确值;最后,上位机则根据预定处理规则,对RSSI精确值进行拟合处理,得到A和n。与现有技术相比,本发明技术方案通过绘制曲线图,再获取离散程度特征,并根据离散程度来判断是否拟合。从而操作人员能够直观分析RSSI在环境中衰减过程,判断其衰减是否稳定,从而提高拟合精度。

附图说明

图1为现有技术中的RSSI拟合系统第一实施例结构示意图;

图2为现有技术中的RSSI拟合系统第二实施例结构示意图;

图3为现有技术中的RSSI拟合系统第三实施例结构示意图;

图4为现有技术中的RSSI拟合系统第四实施例结构示意图。

具体实施方式

本发明实施例提供了一种RSSI拟合系统,能够有效降低测距实验的难度,防止操作误差,提高拟合精度。

请参阅图1,本发明提供的一种RSSI拟合系统第一实施例包括:

检测仪100、协调器200和上位机300;

检测仪100,用于根据预定移动规则在不同位置分别向协调器发送携带检测仪与协调器之间的实际距离值的点播包;

协调器200包括:

第一接收单元201,用于接收点播包,并获取RSSI值;

第一提取单元202,用于提取点播包中实际距离值;

整合单元203,用于将预定数量的点播包中的RSSI值和实际距离值整合成一个RSSI数据包;

第一发送单元204,用于协调器向上位机发送RSSI数据包;

上位机300包括:

第二接收单元301,用于接收RSSI数据包;

第二提取单元302,用于从RSSI数据包中提取所有RSSI值和对应的实际距离值;

显示单元303,用于用曲线图对所有RSSI值和对应的实际距离值进行显示;

获取单元304,用于获取曲线图的离散程度特征;

第一判断单元305,用于判断离散程度特征是否显著;

精确化处理单元306,用于对所有RSSI值进行精确化处理,得到RSSI精确值;

拟合处理单元307,用于所述RSSI精确值进行拟合处理,得到A和n。

下面以一个实际应用中的例子对上述单元之间的通信关系进行说明:

首先检测仪100根据预定移动规则在不同位置分别向协调器发送携带检测仪与协调器之间的实际距离值的点播包;

在本实施例中,检测仪100根据预定移动规则在不同位置分别向协调器200发送携带检测仪与协调器之间的实际距离值的点播包;

需要说明的是,检测仪100可以是基于Zigbee协议栈运行的CC2530芯片,它能够以非常低的总的材料成本建立强大的网络节点。CC2530芯片具有一个IEEE 802.15.4兼容无线收发器。RF内核控制模拟无线模块。另外,它提供了MCU和无线设备之间的一个接口,这使得可以发出命令,读取状态,自动操作和确定无线设备事件的顺序。无线设备还包括一个数据包过滤和地址识别模块。检测仪硬件上主要由四个模块组成,包括检测仪芯片CC2530,显示模块LCD1602,电源模块(充电模块TP4056,500mAh锂电池),按键模块。我们使用CC2530作为zigbee协议栈中的终端设备,用按键触发,向协调器200发送点播包。

检测仪100在不同的位置向协调器200发送点播包的目的是为了提高RSSI值的稳定性,由于其服从高斯分布,因此一般可以发送至少20个点播包。

其中,预定的移动规则包括:该预定移动规则为从当前位置移动固定距离。例如,以当前位置为圆心,以0.5米为半径,任意移动到该圆上的任意一点,再以该点为圆心进行下一次移动。

或者,预定移动规则为从当前位置移动特定距离,移动特定距离的指令由上位机发出。由于上位机能够绘制特性曲线,而在特性曲线的离散程度表征RSSI在环境中衰减过程,判断其衰减是否稳定,并提前估计影响,同时进行调整。其中调整距离是一个可行的方案。从而上位机可以直接向检测仪发送移动指令,要求检测仪移动特定的距离。

需要说明的是,检测仪100在向协调器200发送点播包之前需要进行初始化,初始化的目的是为了使实验更顺畅。检测仪100初始化zigbee协议栈,包括af地址类型、端点描述、简单描述格式。

接着,第一接收单元201接收点播包,并获取RSSI值;

在本实施例中,第一接收单元201接收点播包,并获取RSSI值;检测仪100中CC2530芯片有一个内置的接收信号强度指示器,自动计算一个8位有符号的无限功率数字值,RSSI值总是通过8个符号周期内(128微秒)取平均值得到的,与IEEE 802.15.4相符合。协调器zigbee协议栈在收到点播包时,会将其从寄存器读出,并自动附加到收到的帧中。

需要说明的是,为了使实验更顺畅。协调器200初始化zigbee协议栈,包括af地址类型、端点描述、简单描述格式。

然后,第一提取单元202提取点播包中实际距离值;

在本实施例中,第一提取单元202从点播包中提取实际距离值。该实际距离值为检测仪100和协调器200之间的实际距离,该距离将随着检测仪100的移动而改变。可以认为,协调器200没接收到一个点播包,其中就包含一个实际距离值。

当点播包的数量到达预定数量时,整合单元203将预定数量的点播包中的RSSI值和实际距离值整合成一个RSSI数据包;

在本实施例中,当点播包的数量到达预定数量时,整合单元203将预定数量的点播包中的RSSI值和实际距离值整合成一个RSSI数据包;

需要说明的是,为了提高RSSI值的稳定性,由于其服从高斯分布,因此一般接受至少20个点播包才进行整合,例如得到一个携带50个RSSI值和实际距离值的RSSI数据包。

再由第一发送单元204向上位机300发送RSSI数据包;

在本实施例中,第一发送单元204用串口将RSSI数据包发给上位机300。其中上位机300可以是专用电脑、PC和平板中一种或者多种组合。

上位机300的第二接收单元301首先接收RSSI数据包;

读取单元312通过LABVIEW串口控件读取当前RSSI数据包。

第二提取单元302从RSSI数据包中提取所有RSSI值和对应的实际距离值;

在本实施例中,第二提取单元302从RSSI数据包中提取所有RSSI值和对应的实际距离值。

然后,显示单元303用曲线图对所有RSSI值和对应的实际距离值进行显示;

在本实施例中,显示单元303用曲线图对所有RSSI值和对应的实际距离值进行显示。

需要说明的是,上位机300的UI界面上具有RSSI特性曲线检测仪界面,其中横坐标可以表示距离,纵坐标可以表示RSSI值,上位机所有RSSI值和对应的实际距离值在图上标注,并生成特性曲线。

接着,获取单元304获取所述曲线图的离散程度特征;

在本实施例中,获取单元304获取曲线图的离散程度特征,该离散程度表征RSSI在环境下是否稳定。

然后,第一判断单元305判断所述离散程度特征是否显著;

若否精确化处理单元306对所有RSSI值进行精确化处理,得到RSSI精确值;

最后,拟合处理单元307根据预定处理规则,对RSSI精确值进行拟合处理,得到A和n。

在本实施例中,第一判断单元305判断所述离散程度特征是否显著,若是,则返回步骤检测仪100根据预定移动规则在不同位置分别向协调器200发送携带检测仪100与协调器200之间的实际距离值的点播包;否则,精确化处理单元306对所有RSSI值进行精确化处理,得到RSSI精确值。具体预定处理规则将在后续实施例中详细说明。

本发明实施例中,与现有技术相比,本发明技术方案通过绘制曲线图,再获取离散程度特征,并根据离散程度来判断是否拟合。从而操作人员能够直观分析RSSI在环境中衰减过程,判断其衰减是否稳定,从而提高拟合精度。

上面对本发明提供的一种RSSI拟合系统第一实施例进行了说明,下面请参阅图2,本发明提供的一种RSSI拟合系统第二实施例与第一实施例不同在于,

协调器200进一步包括:

保存单元205,用于将每点播包的RSSI值保存在一个数组中;

累计单元206,用于累计接收的点播包的数量;

在本实施例中,保存单元205将每点播包的RSSI值保存在一个数组中,该数组可以预先定义其容量,例如一个[50]数组,表示数组存放50个对象。累计单元206累计接收的点播包的数量。

在本实施例中,上位机判断所述离散程度特征是否显著,若是,则返回步骤检测仪根据预定移动规则在不同位置分别向协调器发送携带检测仪与协调器之间的实际距离值的点播包;否则,上位机对所有RSSI值进行精确化处理,得到RSSI精确值。具体预定处理规则将在后续实施例中详细说明。

本发明实施例中,除具备第一实施例的有益效果外,本发明实施例通过数组储存和累计对象的数量,从而降低了操作系统的难度。

上面对本发明提供的一种RSSI拟合系统第二实施例进行了描述,下面对本发明提供的一种RSSI拟合系统第三实施例于前述任意实施例不同在于,

上位机300还包括:

滤波子单元3061,用于使用LABview用高斯滤波法,滤去所有RSSI值中的突变值;

平均数处理子单元3062,用于对滤去突变值的RSSI值进行平均数处理,得到RSSI精确值。

在本实施例中,滤波子单元3061使用LABview用高斯滤波法,滤去所有RSSI值中的突变值;

平均数处理子单元3062对滤去突变值的RSSI值进行平均数处理,得到RSSI精确值。

在本实施例中,50个RSSI进行高斯滤波,算法如下:

概率密度函数为:

其中:

m为测量数(本设计设置为50)

高概率事件发生在概率大于0.6(经验值):

0.6≤f(x)≤1,0.15σ+μ≤x≤3.09σ+μ,经过高斯滤波把其中不稳定的RSSI值滤除,再对剩余的有效值进行算术平均运算,求出较为准确的无线接收功率值RSSIexnet。

拟合算法如下:

例如通过线性回归分析来估计A和n的值,假设从室内环境得到的实验测量数据为(RSSIi,Di),,i=1,2,...,n,RSSIi表示经过高斯滤波后所对应的RSSI测量值。

定义:ρi=-10lgDi,i=1,2,...,m;

其中,m为信号强度采样数,如果每隔0.5m采样一次,采样20米,则m=40。有下列估计:

其中:

回归系数R2,定义为:

其中

预测信号强度的标准差

本实施例中,除具备前述任意一项实施例的有益效果之外,通过高斯滤波降噪后,保障了实验样品的精确性,再对其进行平均值处理得到的RSSI精确值拟合结果将更精确。

上面对本发明提供的一种RSSI拟合系统第三实施例进行了描述,下面对本发明提供的一种RSSI拟合系统第四实施例进行说明:

该实施例与前述实施例不同在于,

上位机300还包括代入单元308,用于将RSSI精确值代入公式,得出测量距离值;

上位机300还包括第二发送单元309,用于向协调器200发送测量距离值;

协调器200还包括第三发送单元207,用于向检测仪100发送测量距离值;

检测仪100还包括:

第二判断单元101,用于判断测量距离值与真实距离值差值的绝对值是否满足误差要求;

第一距离显示单元102,用于显示实际距离值;

第二距离显示单元103,用于显示测量距离值。

代入单元308将RSSI精确值代入公式,得出测量距离值;第二发送单元309向协调器200发送测量距离值;第三发送单元207向检测仪100发送测量距离值;第二判断单元101判断测量距离值与真实距离值差值的绝对值是否满足误差要求。

本实施例中,除具备前述任一项实施例的有益效果之外,判断测量距离值与真实距离值差值的绝对值是否满足误差要求;若是则结束进程,若否,则返回步骤检测仪100根据预定移动规则在不同位置分别向协调器200发送携带检测仪100与协调器200之间的实际距离值的点播包。从而进一步提高了拟合精度。

需要说明的是,检测仪200能够显示实际距离值和测量距离值。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1