好吊视频一区二区三区-国产精品V欧美精品V日韩精品-老司机亚洲精品影院-国产精品视频免费播放

物聯傳媒 旗下網站
登錄 注冊
RFID世界網 >  技術文章  >  其他  >  正文

基于ZigBee的物聯網故障定位系統設計

作者:李世光,李志文,王曉慧,韓旭
來源:《物聯網世界》
日期:2013-12-19 10:42:22
摘要:傳統的無線定位算法受到非視距、多徑干擾、信道噪聲等因素的影響,無線定位精度往往不高。本文提出一種基于面積的定位算法。該算法以基站之間實際面積不變為基礎,測量移動終端與各基站間的距離,通過誤差處理,實現對移動終端的精確定位。仿真試驗證明,該算法定位精度較高。

  傳統的無線定位算法受到非視距、多徑干擾、信道噪聲等因素的影響,無線定位精度往往不高。本文提出一種基于面積的定位算法。該算法以基站之間實際面積不變為基礎,測量移動終端與各基站間的距離,通過誤差處理,實現對移動終端的精確定位。仿真試驗證明,該算法定位精度較高。

  無線通信、微處理器技術的不斷進步推動了無線定位技術的發展。近年來,無線定位技術在軍事、智能交通、醫療管理、智能家居等多個方面得到了廣泛的應用。對人們的生活帶來了不可替代的作用。

  1 概述

  在無線定位算法中,場強定位算法最簡單,但定位精度較差;AOA定位雖有一定精度,但接收設備較復雜;TOA定位精度較高,但對時間同步有較高要求;TDOA能消除對時間基準的依賴,可降低成本并保持一定的定位精度。但以上算法均不能降低不同信道上不同干擾。

  基于面積的定位算法能夠計算出實際面積與測量求得的面積誤差,對誤差進行處理后,能夠降低各信道上的干擾。

  2 基于面積的無線定位算法

  為便于理解,將基站數量定位4個,分別位于邊長為30m的正方形4個端點A、B、C、D處。移動終端P位于正方形內。平面分布圖如圖1所示。

基于ZigBee的物聯網故障定位系統設計

圖1 平面分布圖

Fig.1 The plane distribution map

  通過采集基站的數據可以得到移動終端到基站A、B、C、D的距離,假設分別為Ra、Rb、

基于ZigBee的物聯網故障定位系統設計

  式中,

基于ZigBee的物聯網故障定位系統設計

  由于傳輸過程受到非視距、多徑干擾、信道噪聲等因素的影響,數據Ra、Rb、Rc、Rd中摻雜了各種噪聲干擾,求得的△APB、△BPC、△CPD、△DPA的面積之和S不等于實際的正方形面積900,則可求出誤差:

基于ZigBee的物聯網故障定位系統設計

  因為e是總面積的誤差,將e等分為4份,則△DPA、△APB的面積誤差約為e/4。再利用△DPA、△APB的邊AD和AB均為30,可求出移動節點到正方形邊AD、AB的距離為;

基于ZigBee的物聯網故障定位系統設計

  則(x y)就是經過誤差修正后的點P的坐標。

  為了進一步降低誤差e對定位精度的影響,單位時間內增加采集次數,將求得的點P坐標取平均值。

  3 實驗仿真

  根據以上原理進行MATLAB仿真,為方便觀察,以y=5作為輸入運動路徑。在移動終端和4個基站的各信道上添加4個不同的隨機噪聲。仿真程序如下:

  X=0:0.01:30;

  n1=randn(size(X));

  n2=randn(size(X));

  n3=randn(size(X));

  n4=randn(size(X));

  Y=5;

  Ra=sqrt(Y.^2+X.^2)+n1;

  Rb=sqrt((30-X).^2+Y.^2)+n2;

  Rc=sqrt((30-X).^2+(30-Y).^2)+n3;

  Rd=sqrt(X.^2+(30-Y).^2)+n4;

  R1=(Ra+Rd+30)/2;

  R2=(Ra+Rb+30)/2;

  R3=(Rb+Rc+30)/2;

  R4=(Rc+Rd+30)/2;

  S1=sqrt(abs(R1.*(R1-Ra).*(R1-Rd).*(R1-30)));

  S2=sqrt(abs(R2.*(R2-Ra).*(R2-Rb).*(R2-30)));

  S3=sqrt(abs(R3.*(R3-Rb).*(R3-Rc).*(R3-30)));

  S4=sqrt(abs(R4.*(R4-Rc).*(R4-Rd).*(R4-30)));

  e=S1+S2+S3+S4-900;

  x=(S1-e/4)./15;

  y=(S2-e/4)./15;

  for i = 1:2950 %對每50個數據均值

  sum = 0;

  for j = i : i+49;

  sum = sum + x(j);

  end

  x(i) = sum /50;

  end

  for i = 1:2950

  sum = 0;

  for j = i : i+49;

  sum = sum + y(j);

  end

  y(i) = sum /50;

  end

  plot(x,y,'*');

  進行誤差處理的MATLAB運動軌跡仿真圖和未進行誤差處理的MATLAB運行軌跡仿真圖如圖2和圖3所示。

基于ZigBee的物聯網故障定位系統設計

圖2 誤差處理后的MATLAB運動軌跡仿真圖

Fig.2 MATLAB trajectory simulation map error after treatment

基于ZigBee的物聯網故障定位系統設計

圖3 未進行誤差處理的MATLAB運動軌跡仿真圖

Fig.3 No MATLAB trajectory simulation map error processing

  由圖2和圖 3可以看到,求得的點P坐標進行誤差處理后能有效地減弱各信道上的噪聲干擾,提高系統的定位精度。

  由圖2可以看出,當x值較小或較大時,由于無法充分對求得的坐標求均值,坐標數值浮動較大。由此可知單位時間內對數據的采集次數越多,求均值的坐標組數越多,數據的浮動越小,定位越準確。

  4 結束語

  本文提出了一種基于面積的無線定位算法,并利用Matlab仿真軟件進行了仿真。實驗結果表明,該算法能在各信道中存在不同干擾的情況下,得到測量的總面積與實際總面積的誤差,對誤差進行處理后能有效的降低干擾對定位系統的影響,提高定位的精度。

  基金項目:山東科技大學2012-2013年度研究生科技創新基金項目。