发明名称 基于修正的仿真曲线拟合的非测距定位算法
摘要 本发明涉及一种基于修正的仿真曲线拟合的非测距定位算法,其特征在于:该算法所需设备以及实现步骤如下:所需设备:无线传感器节点组,包括400个无线传感器节点,其中80个无线传感器节点已知自己的位置,称为锚节点,用<img file="DEST_PATH_IMAGE001.GIF" wi="70" he="19" />表示,<img file="DEST_PATH_IMAGE002.GIF" wi="71" he="21" />表示<img file="DEST_PATH_IMAGE003.GIF" wi="70" he="20" />在平面直角坐标系上的x轴和y轴坐标;320个无线传感器节点的位置未知,称为未知节点,用<img file="DEST_PATH_IMAGE004.GIF" wi="146" he="33" />表示,<img file="DEST_PATH_IMAGE005.GIF" wi="153" he="25" />表示<img file="DEST_PATH_IMAGE006.GIF" wi="70" he="23" />在平面直角坐标系上的x轴和y轴坐标。其改善在复杂环境下定位精度低的问题,通过对原算法的跳段距离和锚节点选择上进行修改,从而减小距离误差,提高定位精度。
申请公布号 CN104994578A 申请公布日期 2015.10.21
申请号 CN201510354778.7 申请日期 2015.06.25
申请人 长春理工大学 发明人 冯欣;刘壮;张昕;韩成;张剑飞;张晶晶;王雁龙;李腾;杨文龙
分类号 H04W64/00(2009.01)I 主分类号 H04W64/00(2009.01)I
代理机构 吉林长春新纪元专利代理有限责任公司 22100 代理人 王薇
主权项 1.基于修正的仿真曲线拟合的非测距定位算法,其特征在于:该算法所需设备以及实现步骤如下:所需设备:无线传感器节点组,包括400个无线传感器节点,其中80个无线传感器节点已知自己的位置,称为锚节点,用<img file="144130DEST_PATH_IMAGE001.GIF" wi="71" he="21" />表示,<img file="88953DEST_PATH_IMAGE002.GIF" wi="146" he="33" />表示<img file="503753DEST_PATH_IMAGE003.GIF" wi="70" he="23" />在平面直角坐标系上的x轴和y轴坐标;320个无线传感器节点的位置未知,称为未知节点,用<img file="10083DEST_PATH_IMAGE004.GIF" wi="76" he="26" />表示,<img file="510335DEST_PATH_IMAGE005.GIF" wi="159" he="37" />表示<img file="993269DEST_PATH_IMAGE006.GIF" wi="75" he="24" />在平面直角坐标系上的x轴和y轴坐标;400个无线传感器节点随机分布在200m×200m的网络区域中;无线传感器节点的通信半径均为60m,一个无线传感器节点通信半径内的其它节点,称为该无线传感器节点的邻居节点;任意两个无线传感器节点,如果它们间的真实距离小于或等于通信半径,则两个无线传感器节点间的跳数值为1,如果它们间的真实距离大于通信半径,两个无线传感器节点通信需要经过另外<i>N</i>(<i>N</i>≥2)个无线传感器节点,则两个无线传感器节点间的跳数值为<i>N</i>+1;实现步骤:1、构建矩阵<i>Hop_A</i>,<i>Hop_A</i>(<i>p</i>,<i>q</i>)为矩阵<i>Hop_A</i>的第<i>p</i>行,第<i>q</i>列元素,<i>Hop_A</i>(<i>p</i>,<i>q</i>)表示<i>Node_A</i>(<i>p</i>)与<i>Node_A</i>(<i>q</i>)间的最小跳数值,如果<i>p</i>=<i>q</i>,那么<i>Hop_A</i>(<i>p</i>,<i>q</i>)=0,<i>p</i>=1,2,…,80,<i>q</i>=1,2,…,80;2、构建矩阵<img file="528155DEST_PATH_IMAGE007.GIF" wi="146" he="24" />为矩阵<i>Hop_U</i>的第<img file="939807DEST_PATH_IMAGE008.GIF" wi="9" he="21" />行,第<img file="865038DEST_PATH_IMAGE009.GIF" wi="11" he="21" />列元素,<img file="151663DEST_PATH_IMAGE010.GIF" wi="91" he="30" />表示<img file="541056DEST_PATH_IMAGE011.GIF" wi="79" he="29" />与<img file="887724DEST_PATH_IMAGE012.GIF" wi="77" he="28" />间的最小跳数值,<img file="858173DEST_PATH_IMAGE013.GIF" wi="185" he="25" />;3、构建向量<img file="682909DEST_PATH_IMAGE014.GIF" wi="50" he="28" />为向量<i>R</i>中的第<img file="926809DEST_PATH_IMAGE015.GIF" wi="13" he="21" />个元素;对应矩阵<i>Hop_U</i>中的跳数值,设<i>Node_U</i>(<img file="444378DEST_PATH_IMAGE015.GIF" wi="13" he="21" />)到<i>Node_A</i>(<img file="907982DEST_PATH_IMAGE016.GIF" wi="11" he="18" />)经过的无线传感器节点个数用<img file="536410DEST_PATH_IMAGE017.GIF" wi="45" he="30" />表示,<img file="634816DEST_PATH_IMAGE018.GIF" wi="87" he="23" />;4、构建<img file="260969DEST_PATH_IMAGE019.GIF" wi="36" he="20" />个路径向量<img file="710405DEST_PATH_IMAGE020.GIF" wi="156" he="25" />为向量<img file="378409DEST_PATH_IMAGE021.GIF" wi="64" he="28" />中的第<i>r</i>个元素,对应矩阵<i>Hop_U</i>中的跳数值,设<img file="596901DEST_PATH_IMAGE022.GIF" wi="73" he="22" />到<img file="456272DEST_PATH_IMAGE023.GIF" wi="69" he="26" />经过的无线传感器节点用路径向量<img file="65108DEST_PATH_IMAGE024.GIF" wi="77" he="23" />表示,<img file="300918DEST_PATH_IMAGE025.GIF" wi="287" he="28" />;5、构建向量<img file="875381DEST_PATH_IMAGE026.GIF" wi="58" he="21" />为向量L中的第<img file="905654DEST_PATH_IMAGE027.GIF" wi="11" he="21" />个元素;在路径向量<img file="64102DEST_PATH_IMAGE028.GIF" wi="63" he="28" />中,设<img file="572444DEST_PATH_IMAGE029.GIF" wi="72" he="24" />到<img file="284571DEST_PATH_IMAGE030.GIF" wi="71" he="22" />经过的锚节点的个数用<img file="485745DEST_PATH_IMAGE031.GIF" wi="27" he="24" />表示,<img file="131490DEST_PATH_IMAGE032.GIF" wi="162" he="21" />;6、构建<img file="443523DEST_PATH_IMAGE033.GIF" wi="37" he="19" />个向量<img file="992578DEST_PATH_IMAGE034.GIF" wi="123" he="22" />为向量<img file="302337DEST_PATH_IMAGE035.GIF" wi="43" he="23" />中的第<img file="435378DEST_PATH_IMAGE036.GIF" wi="16" he="20" />个元素,<img file="551101DEST_PATH_IMAGE037.GIF" wi="366" he="29" />为路径向量<img file="453198DEST_PATH_IMAGE038.GIF" wi="65" he="24" />中的第<img file="497640DEST_PATH_IMAGE039.GIF" wi="14" he="19" />个锚节点;7、构建矩阵<img file="852398DEST_PATH_IMAGE040.GIF" wi="94" he="20" />为矩阵<img file="771812DEST_PATH_IMAGE041.GIF" wi="26" he="21" />的第<img file="528416DEST_PATH_IMAGE042.GIF" wi="9" he="21" />行,第<img file="743759DEST_PATH_IMAGE043.GIF" wi="9" he="19" />列元素,<img file="789075DEST_PATH_IMAGE044.GIF" wi="61" he="25" />表示路径向量<img file="246601DEST_PATH_IMAGE045.GIF" wi="63" he="22" />中<img file="857711DEST_PATH_IMAGE046.GIF" wi="74" he="24" />与<img file="8070DEST_PATH_IMAGE047.GIF" wi="61" he="25" />间的跳数值,<img file="833026DEST_PATH_IMAGE048.GIF" wi="179" he="26" />;8、构建向量<img file="828663DEST_PATH_IMAGE049.GIF" wi="158" he="21" />为第<img file="559859DEST_PATH_IMAGE050.GIF" wi="9" he="18" />个元素,根据公式<img file="818802DEST_PATH_IMAGE051.GIF" wi="315" he="83" />计算每两个锚节点之间的平均每跳距离<img file="369869DEST_PATH_IMAGE052.GIF" wi="178" he="24" />;9、<img file="998559DEST_PATH_IMAGE053.GIF" wi="75" he="24" />将平均每跳距离<img file="521944DEST_PATH_IMAGE054.GIF" wi="79" he="18" />发送给所有无线传感器节点,<img file="748526DEST_PATH_IMAGE055.GIF" wi="166" he="26" />接收向量<img file="52468DEST_PATH_IMAGE056.GIF" wi="63" he="17" />的多个元素;构建向量<img file="156953DEST_PATH_IMAGE057.GIF" wi="97" he="22" />为第<img file="597161DEST_PATH_IMAGE058.GIF" wi="9" he="19" />个元素,<img file="260224DEST_PATH_IMAGE059.GIF" wi="54" he="22" />表示<img file="785883DEST_PATH_IMAGE060.GIF" wi="74" he="24" />第一个接收的向量<img file="694059DEST_PATH_IMAGE061.GIF" wi="59" he="18" />的元素,<img file="254353DEST_PATH_IMAGE062.GIF" wi="86" he="21" />;<b> </b>10、构建矩阵<img file="822738DEST_PATH_IMAGE063.GIF" wi="193" he="17" />为第<img file="101272DEST_PATH_IMAGE064.GIF" wi="8" he="22" />行,第<img file="541700DEST_PATH_IMAGE065.GIF" wi="8" he="17" />列元素,根据公式<img file="956501DEST_PATH_IMAGE066.GIF" wi="491" he="41" />计算对应<img file="633470DEST_PATH_IMAGE067.GIF" wi="255" he="22" />间的真实距离<img file="133721DEST_PATH_IMAGE068.GIF" wi="295" he="25" />;11、构建矩阵<img file="882234DEST_PATH_IMAGE069.GIF" wi="191" he="20" />为第<img file="653006DEST_PATH_IMAGE070.GIF" wi="8" he="22" />行,第<img file="828773DEST_PATH_IMAGE071.GIF" wi="6" he="18" />列元素,根据公式<img file="816320DEST_PATH_IMAGE072.GIF" wi="261" he="29" />计算对应<img file="102945DEST_PATH_IMAGE073.GIF" wi="167" he="25" />与<img file="993803DEST_PATH_IMAGE074.GIF" wi="64" he="23" />之间的估算距离<img file="340471DEST_PATH_IMAGE075.GIF" wi="298" he="22" />;12、构建矩阵<img file="487418DEST_PATH_IMAGE076.GIF" wi="175" he="20" />为第<img file="640051DEST_PATH_IMAGE077.GIF" wi="9" he="20" />行,第<img file="821634DEST_PATH_IMAGE078.GIF" wi="6" he="15" />列元素,根据公式<img file="840668DEST_PATH_IMAGE079.GIF" wi="349" he="25" />计算<img file="802807DEST_PATH_IMAGE080.GIF" wi="73" he="22" />到<img file="431235DEST_PATH_IMAGE081.GIF" wi="73" he="22" />的估算距离<img file="529641DEST_PATH_IMAGE082.GIF" wi="274" he="22" />;13、对于<img file="713717DEST_PATH_IMAGE083.GIF" wi="73" he="22" />,从<img file="897573DEST_PATH_IMAGE084.GIF" wi="80" he="23" />中任意找三个不同的锚节点<img file="329692DEST_PATH_IMAGE085.GIF" wi="215" he="28" />和<img file="485866DEST_PATH_IMAGE086.GIF" wi="288" he="21" />;14、根据公式<img file="345238DEST_PATH_IMAGE087.GIF" wi="554" he="271" />计算未知节点<img file="517856DEST_PATH_IMAGE088.GIF" wi="74" he="26" />在平面直角坐标系上的位置<img file="488086DEST_PATH_IMAGE089.GIF" wi="166" he="23" />;通过以上步骤可以通过找到未知节点到每个锚节点所经过的第一个锚节点,从而直接用两个锚节点的真实距离代替原来的估算距离,大大提高了未知节点的定位精度。
地址 130022 吉林省长春市卫星路7186号科技大厦B座1603室