发明名称 一种基于RSSI测距的空气质量监测点网络定位的方法
摘要 本发明公开了一种基于RSSI测距的空气质量监测点网络定位的方法,步骤为:Ⅰ、获取RSSI值;Ⅱ、建立RSSI测距模型;Ⅲ、RSSI测距初步估算;Ⅳ、基于RSSI的测量距离矫正;Ⅴ、目标监测节点的定位;其应用RF无线通信模型,无需求出路径衰减指数,推导出简便的距离估算方法,减少了环境因素对测距的不良影响,选取相对距离误差系数进行测距校正,获得精度较高的距离信息,定位估算部分采用递推最小二乘的定位算法估计未知监测节点的坐标。仿真试验表明,本算法将非线性观测方程线性化,从而采用线性方法求解,既降低了位置计算复杂性,充分考虑已有的网络先验信息的同时又达到了良好的定位效果。
申请公布号 CN106093854A 申请公布日期 2016.11.09
申请号 CN201610415476.0 申请日期 2016.06.14
申请人 江南大学 发明人 张新荣;熊伟丽;徐保国
分类号 G01S5/02(2010.01)I 主分类号 G01S5/02(2010.01)I
代理机构 徐州市淮海专利事务所 32205 代理人 华德明
主权项 一种基于RSSI测距的空气质量监测点网络定位的方法,在多个监测节点中对部分节点的位置进行标定,标定已知的节点为锚节点,其特征在于,该方法的具体步骤为:Ⅰ、获取RSSI值:通过无线通信获取各个监测节点的RSSI值;Ⅱ、建立RSSI测距模型:采用对数正态分布无线传播模型建立RSSI测距模型,其表达式为:<maths num="0001"><math><![CDATA[<mrow><msub><mi>P</mi><mi>r</mi></msub><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>P</mi><mi>t</mi></msub><mo>-</mo><mi>P</mi><mi>L</mi><mrow><mo>(</mo><msub><mi>d</mi><mn>0</mn></msub><mo>)</mo></mrow><mo>-</mo><mn>10</mn><mi>n</mi><mi>lg</mi><mrow><mo>(</mo><mfrac><mi>d</mi><msub><mi>d</mi><mn>0</mn></msub></mfrac><mo>)</mo></mrow><mo>+</mo><msub><mi>N</mi><mi>&sigma;</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000011.GIF" wi="1046" he="127" /></maths>其中d<sub>0</sub>为信号传播参考距离,单位为m;d为节点之间的测量距离,单位为m。P<sub>r</sub>(d)是距离为d时节点接收到的信号强度,单位为dBm;n是与监测环境有关的路径损耗因子;P<sub>t</sub>代表节点无线信号发射强度,单位为dBm;测量噪声N<sub>σ</sub>为服从N<sub>σ</sub><img file="FDA0001016083610000014.GIF" wi="182" he="63" />的高斯随机变量;PL(d<sub>0</sub>)为无线信号经传播距离d<sub>0</sub>后的信号强度损耗,单位为dB,可由信号传播的自由空间模型获得,即<maths num="0002"><math><![CDATA[<mrow><mi>P</mi><mi>L</mi><mrow><mo>(</mo><msub><mi>d</mi><mn>0</mn></msub><mo>)</mo></mrow><mo>=</mo><mo>-</mo><mn>10</mn><mi>lg</mi><mo>&lsqb;</mo><mfrac><mrow><msub><mi>G</mi><mi>t</mi></msub><msub><mi>G</mi><mi>r</mi></msub><msup><mi>&lambda;</mi><mn>2</mn></msup></mrow><mrow><msup><mrow><mo>(</mo><mn>4</mn><mi>&pi;</mi><mo>)</mo></mrow><mn>2</mn></msup><msubsup><mi>d</mi><mn>0</mn><mn>2</mn></msubsup><mi>L</mi></mrow></mfrac><mo>&rsqb;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000012.GIF" wi="830" he="143" /></maths>其中G<sub>t</sub>是节点发射天线增益,单位为dBi;G<sub>r</sub>为节点接收天线增益,单位为dBi;L是系统损耗系数;λ是RF信号波长,单位为m;在网络中节点z<sub>i</sub>通信范围内,设其邻居节点z<sub>j</sub>到z<sub>i</sub>的测量距离为d,则z<sub>i</sub>处的无线信号接收强度为P<sub>r</sub>(d),令P<sub>r</sub>(d<sub>0</sub>)=P<sub>t</sub>‑PL(d<sub>0</sub>)   (3)由式(1)可知<maths num="0003"><math><![CDATA[<mrow><msub><mi>P</mi><mi>r</mi></msub><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>P</mi><mi>r</mi></msub><mrow><mo>(</mo><msub><mi>d</mi><mn>0</mn></msub><mo>)</mo></mrow><mo>-</mo><mn>10</mn><mi>n</mi><mi>lg</mi><mrow><mo>(</mo><mfrac><mi>d</mi><msub><mi>d</mi><mn>0</mn></msub></mfrac><mo>)</mo></mrow><mo>+</mo><msub><mi>N</mi><mi>&sigma;</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000013.GIF" wi="974" he="135" /></maths>其中,d>d<sub>0</sub>,P<sub>r</sub>(d<sub>0</sub>)是参考距离d<sub>0</sub>对应的无线信号接收强度;Ⅲ、RSSI测距初步估算:RSSI测距的距离估算的精度直接决定其定位精度;由式(4)可写为P<sub>r</sub>(d)=PN‑10nlgd   (5)其中PN=P<sub>r</sub>(d<sub>0</sub>)‑N<sub>σ</sub>   (6)则有10nlgd=PN‑P<sub>r</sub>(d)   (7)设定无线网络中的监测节点在监测区域内均匀随机部署,且节点具有统一相同的通信半径,考虑通信范围是规则的圆形区域。若某个监测节点的通信范围内均匀随机部署多个的其他监测节点,可依据P<sub>r</sub>(d)与测量距离d成反比,认为监测节点接收的最小信号强度P<sub>min</sub>所对应的距离最大即d<sub>max</sub>,因此有10nlgd<sub>max</sub>=PN‑P<sub>min</sub>   (8)先由式(8)求出n为<maths num="0004"><math><![CDATA[<mrow><mi>n</mi><mo>=</mo><mfrac><mrow><mi>P</mi><mi>N</mi><mo>-</mo><msub><mi>P</mi><mrow><mi>m</mi><mi>i</mi><mi>n</mi></mrow></msub></mrow><mrow><mn>10</mn><msub><mi>lgd</mi><mi>max</mi></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000021.GIF" wi="534" he="126" /></maths>再代入式(7)中,求出估算距离为<maths num="0005"><math><![CDATA[<mrow><mi>d</mi><mo>=</mo><msubsup><mi>d</mi><mi>max</mi><mfrac><mrow><mi>P</mi><mi>N</mi><mo>-</mo><msub><mi>P</mi><mi>r</mi></msub><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow></mrow><mrow><mi>P</mi><mi>N</mi><mo>-</mo><msub><mi>P</mi><mrow><mi>m</mi><mi>i</mi><mi>n</mi></mrow></msub></mrow></mfrac></msubsup><mo>&ap;</mo><msup><mi>r</mi><mfrac><mrow><mi>P</mi><mi>N</mi><mo>-</mo><msub><mi>P</mi><mi>r</mi></msub><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow></mrow><mrow><mi>P</mi><mi>N</mi><mo>-</mo><msub><mi>P</mi><mrow><mi>m</mi><mi>i</mi><mi>n</mi></mrow></msub></mrow></mfrac></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000022.GIF" wi="830" he="122" /></maths>由此可见,依据式(10)就可以计算出任一监测节点z<sub>i</sub>与其邻居节点间的测量距离。在未知节点获得的多个P<sub>r</sub>(d)值中,取最小的P<sub>r</sub>(d)值即为P<sub>min</sub>,对应d<sub>max</sub>=r,即为通信半径,从而可由式(10)获得未知节点到锚节点的d值;Ⅳ、基于RSSI的测量距离矫正:首先对锚节点间的测量距离与真实距离进行比较,获得由P<sub>r</sub>(d)计算得到的测距误差,然后对监测节点与锚节点间的测量距离进行校正以减少随机测距误差;设网络中锚节点A<sub>i</sub>(x<sub>i</sub>,y<sub>i</sub>)至其他锚节点的实际距离为r<sub>ik</sub>,k=1,2,…,n,k≠i;其中n为网络中锚节点个数;锚节点A<sub>i</sub>至其他锚节点的测量距离为d<sub>ik</sub>,k=1,2,…,n,k≠i;则有锚节点A<sub>i</sub>处实际距离与测量距离的距离平均相对误差系数μ<sub>i</sub>为<maths num="0006"><math><![CDATA[<mrow><msub><mi>&mu;</mi><mi>i</mi></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>&NotEqual;</mo><mi>i</mi></mrow><mi>n</mi></munderover><mfrac><mrow><msub><mi>r</mi><mrow><mi>i</mi><mi>k</mi></mrow></msub><mo>-</mo><msub><mi>d</mi><mrow><mi>i</mi><mi>k</mi></mrow></msub></mrow><msub><mi>d</mi><mrow><mi>i</mi><mi>k</mi></mrow></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000023.GIF" wi="837" he="175" /></maths>其中n为监测区域内锚节点A<sub>i</sub>的邻居锚节点个数;μ<sub>i</sub>反映锚节点A<sub>i</sub>处RSSI测距的精确程度,称为相对测量误差系数;事先设定好阈值τ,若|μ<sub>i</sub>|≥τ,则测距误差过大,锚节点A<sub>i</sub>被认作状况异常锚节点,不参与定位,否则参与定位计算;监测节点接收到锚节点的广播消息,即将接收到的RSSI值通过式(10)计算,得到监测节点与锚节点之间的测量距离d,再利用锚节点的相对误差系数,即依据式(12)对测量距离d进行测距校正<maths num="0007"><math><![CDATA[<mrow><msubsup><mi>d</mi><mrow><mi>u</mi><mi>i</mi></mrow><mi>c</mi></msubsup><mo>=</mo><msub><mi>d</mi><mrow><mi>u</mi><mi>i</mi></mrow></msub><mrow><mo>(</mo><mn>1</mn><mo>+</mo><msub><mi>&mu;</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000031.GIF" wi="590" he="63" /></maths>其中d<sub>ui</sub>是监测节点和锚节点A<sub>i</sub>之间的测量距离,单位为m;<img file="FDA0001016083610000032.GIF" wi="67" he="62" />是监测节点和锚节点A<sub>i</sub>之间的校正距离,单位为m;μ<sub>i</sub>为锚节点A<sub>i</sub>的相对误差系数;Ⅴ、目标监测节点的定位:设网络中N个锚节点记为A<sub>i</sub>(x<sub>i</sub>,y<sub>i</sub>),i=1,2,…,N;各个锚节点到未知位置的盲节点B(x<sub>1</sub>,y<sub>1</sub>)的测量距离为d<sub>i</sub>,i=1,2,…,N,即有N个测量方程为<maths num="0008"><math><![CDATA[<mrow><msub><mover><mi>d</mi><mo>^</mo></mover><mi>i</mi></msub><mo>=</mo><msub><mi>d</mi><mi>i</mi></msub><mo>+</mo><msub><mi>v</mi><mi>i</mi></msub><mo>,</mo><mi>i</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mo>...</mo><mo>,</mo><mi>N</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000033.GIF" wi="942" he="63" /></maths>其中<maths num="0009"><math><![CDATA[<mrow><msub><mi>d</mi><mi>i</mi></msub><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>-</mo><mi>x</mi><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msub><mi>y</mi><mi>i</mi></msub><mo>-</mo><mi>y</mi><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt></mrow>]]></math><img file="FDA0001016083610000034.GIF" wi="606" he="72" /></maths>v<sub>i</sub>为测量误差;式(13)两边平方,有:<maths num="0010"><math><![CDATA[<mrow><msup><mi>x</mi><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>-</mo><mn>2</mn><msub><mi>x</mi><mi>i</mi></msub><mi>x</mi><mo>-</mo><mn>2</mn><msub><mi>y</mi><mi>i</mi></msub><mi>y</mi><mo>=</mo><msup><mrow><mo>(</mo><msub><mover><mi>d</mi><mo>^</mo></mover><mi>l</mi></msub><mo>-</mo><msub><mi>v</mi><mi>i</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>-</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mi>i</mi><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>y</mi><mi>i</mi><mn>2</mn></msubsup><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000035.GIF" wi="1030" he="86" /></maths>采用批处理数据方式的最小二乘整理,可简写为h=Gθ+v  (14)其中,<maths num="0011"><math><![CDATA[<mrow><mi>G</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><mo>-</mo><mn>2</mn><msub><mi>x</mi><mn>1</mn></msub></mrow></mtd><mtd><mrow><mo>-</mo><mn>2</mn><msub><mi>y</mi><mn>1</mn></msub></mrow></mtd><mtd><mn>1</mn></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mrow><mo>-</mo><mn>2</mn><msub><mi>x</mi><mi>N</mi></msub></mrow></mtd><mtd><mrow><mo>-</mo><mn>2</mn><msub><mi>y</mi><mi>N</mi></msub></mrow></mtd><mtd><mn>1</mn></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0001016083610000036.GIF" wi="506" he="175" /></maths><maths num="0012"><math><![CDATA[<mrow><mi>h</mi><mo>=</mo><msup><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><msubsup><mover><mi>d</mi><mo>^</mo></mover><mn>1</mn><mn>2</mn></msubsup><mo>-</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mn>1</mn><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>y</mi><mn>1</mn><mn>2</mn></msubsup><mo>)</mo></mrow><mo>,</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>,</mo></mrow></mtd><mtd><mrow><msubsup><mover><mi>d</mi><mo>^</mo></mover><mi>N</mi><mn>2</mn></msubsup><mo>-</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mi>N</mi><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>y</mi><mi>N</mi><mn>2</mn></msubsup><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mi>T</mi></msup></mrow>]]></math><img file="FDA0001016083610000037.GIF" wi="1054" he="87" /></maths><maths num="0013"><math><![CDATA[<mrow><mi>v</mi><mo>=</mo><msup><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><mn>2</mn><msub><mover><mi>d</mi><mo>^</mo></mover><mn>1</mn></msub><msub><mi>v</mi><mn>1</mn></msub><mo>-</mo><msup><msub><mi>v</mi><mn>1</mn></msub><mn>2</mn></msup><mo>,</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>,</mo></mrow></mtd><mtd><mrow><mn>2</mn><msub><mover><mi>d</mi><mo>^</mo></mover><mi>N</mi></msub><msub><mi>v</mi><mi>N</mi></msub><mo>-</mo><msup><msub><mi>v</mi><mi>N</mi></msub><mn>2</mn></msup></mrow></mtd></mtr></mtable></mfenced><mi>T</mi></msup></mrow>]]></math><img file="FDA0001016083610000038.GIF" wi="942" he="87" /></maths>θ=[x y R]<sup>T</sup>R=x<sup>2</sup>+y<sup>2</sup>则LS解为:<maths num="0014"><math><![CDATA[<mrow><msub><mover><mi>&theta;</mi><mo>^</mo></mover><mrow><mi>l</mi><mi>s</mi></mrow></msub><mo>=</mo><msup><mrow><mo>(</mo><msup><mi>G</mi><mi>T</mi></msup><mi>G</mi><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>G</mi><mi>T</mi></msup><mi>h</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>15</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000041.GIF" wi="645" he="70" /></maths>则WLS解为:<maths num="0015"><math><![CDATA[<mrow><msub><mover><mi>&theta;</mi><mo>^</mo></mover><mrow><mi>w</mi><mi>l</mi><mi>s</mi></mrow></msub><mo>=</mo><msup><mrow><mo>(</mo><msup><mi>G</mi><mi>T</mi></msup><mi>W</mi><mi>G</mi><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><msup><mi>G</mi><mi>T</mi></msup><mi>W</mi><mi>h</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>16</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001016083610000042.GIF" wi="774" he="63" /></maths>其中W设置为单位阵;最终通过得出的<img file="FDA0001016083610000043.GIF" wi="83" he="63" />估计值确定实时监测节点的位置。
地址 214000 江苏省无锡市滨湖区蠡湖大道1800号