Ⅰ 目前室内定位观测量的方法有哪些超宽带(UWB)人员定位系统采用的是什么观测量方法
不同的室内定位方法有不同的观测量方法,目前,主要的观测量方法有如下几种: 1.RSSI测量:RSSI测量是通过计算信号的传播损耗,可以使用理论或者经验模型来将传播损耗转化为距离,也可以用于指纹定位建立指纹库; 2.TOA测量:TOA方法主要测量信号在基站和移动台之间的单程传播时间或来回传播时间,TOA测量的定位方法为多边定位; 3.TDOA测量:该方法同样是测量信号到达时间,但使用到达时间差进行定位计算,可利用双曲线交点确定移动台位置,故可以避免对基站和移动台的精确同步; 4.AOA测量:AOA方法是指接收机通过天线阵列测出电磁波的入射角度,包括测量基站信号到移动台的角度或者移动台信号到达基站的角度。 目前,市面上的超宽带(UWB)人员定位系统主要应用以上几种观测量方法,也有的同时采取两种不同的方法,像智物达超宽带定位算法有两种,一种是测距算法,即采用TOF(Time of Flight)的方式,计算A、B两点电磁波飞行的时间,通过时间计算出两点之间的距离。一种是时钟同步算法,通过计算到达时间差(TDOA:Time Difference of Arrival)来确定标签和锚点之间的距离,然后通过三角定位的方式,计算出标签的位置。
Ⅱ 常用的室内定位技术有哪些
室内定位在一些特定场合的实用性和必要 性已经日趋显着,其应用前景广阔,研究意义非常大,目前也是一个非常热门的议题。本文阐述几种常用的室内定位技术手段,并具体阐述这些技术的典型实例,对比其精度及优缺点。在比较中作者认为基于RFID的室内定位系统性价比比较高,对其进行详细介绍。ZigBee则是一种基于RFID的能很好地解决室内定位的方案技术手段。
1 引言
随着时代飞速变迁,科学技术迅猛发展,信息服务质量效率提高,受干扰度小,在人们的生活工作及科学研究中起到了非常重要的作用。室内定位技术非常实用,具有较大的拓展空间,其应用范围广泛,在复杂环境下,如图书馆,体育馆,地下车库,货品仓库等都可以实现对人员以及物品的快速定位。
室内定位系统有最基本的5种算法:
(1) 起源蜂窝小区技术;
(2)时间到达法(TOA);
(3)时间到达差法(TDOA);
(4)信号强度法(RSSI);
(5)到达角度差法(AOA)。
常用的室内定位技术主要包括以下几种:
(1) 基于超声波定位技术;
(2) 基于红外线的定位技术;
(3) 基于超宽带的定位技术;
(4)射频识别定位技术(WLAN、ZigBee)等。
2 几种室内定位技术的比较
2.1 超声波技术
超声波定位目前大多数采用反射式测距法。系统由一个主测距器和若干个电子标签组成,主测距器可放置于移动机器人本体上,各个电子标签放置于室内空间的固定位置。定位过程如下:先由上位机发送同频率的信号给各个电子标签,电子标签接收到后又反射传输给主测距器,从而可以确定各个电子标签到主测距器之间的距离,并得到定位坐标。
目前,比较流行的基于超声波室内定位的技术还有下面两种:一种为将超声波与射频技术结合进行定位。由于射频信号传输速率接近光速,远高于射频速率,那么可以利用射频信号先激活电子标签而后使其接收超声波信号,利用时间差的方法测距。这种技术成本低,功耗小,精度高。另一种为多超声波定位技术。该技术采用全局定位,可在移动机器人身上4个朝向安装4个超声波传感器,将待定位空间分区,由超声波传感器测距形成坐标,总体把握数据,抗干扰性强,精度高,而且可以解决机器人迷路问题。
定位精度:超声波定位精度可达厘米级,精度比较高。缺陷:超声波在传输过程中衰减明显从而影响其定位有效范围。
2.2 红外线技术
红外线是一种波长间于无线电波和可见光波之间的电磁波。典型的红外线室内定位系统Active badges使待测物体附上一个电子标识,该标识通过红外发射机向室内固定放置的红外接收机周期发送该待测物唯一ID,接收机再通过有线网络将数据传输给数据库。这个定位技术功耗较大且常常会受到室内墙体或物体的阻隔,实用性较低。
如果将红外线与超声波技术相结合也可方便地实现定位功能。用红外线触发定位信号使参考点的超声波发射器向待测点发射超声波,应用TOA基本算法,通过计时器测距定位。一方面降低了功耗,另一方面避免了超声波反射式定位技术传输距离短的缺陷。使得红外技术与超声波技术优势互补。
定位精度:5~10m。缺陷:红外线在传输过程中易于受物体或墙体阻隔且传输距离较短,定位系统复杂度较高,有效性和实用性较其它技术仍有差距。
2.3 超宽带技术
超宽带技术是近年来新兴的一项无线技术,目前,包括美国,日本,加拿大等在内的国家都在研究这项技术,在无线室内定位领域具有良好的前景。UWB技术是一种传输速率高(最高可达1000Mbps以上),发射功率较低,穿透能力较强并且是基于极窄脉冲的无线技术,无载波。正是这些优点,使它在室内定位领域得到了较为精确的结果。超宽带室内定位技术常采用TDOA演示测距定位算法,就是通过信号到达的时间差,通过双曲线交叉来定位的超宽带系统包括产生、发射、接收、处理极窄脉冲信号的无线电系统。而超宽带室内定位系统(如图1所示)则包括UWB接收器、UWB参考标签和主动UWB标签。定位过程中由UWB接收器接收标签发射的UWB信号,通过过滤电磁波传输过程中夹杂的各种噪声干扰,得到含有效信息的信号,再通过中央处理单元进行测距定位计算分析。

图1 UWB室内定位结构图
基于超宽带技术的室内定位系统典型实例为:Ubisense,其定位方法为三边定位,定位精度为:6~10cm,缺陷:造价较高。
2.4 射频识别技术
射频定位技术实现起来非常方便, 而且系统受环境的干扰较小,电子标签信息可以编辑改写比较灵活。下面具体介绍该技术的相关应用。
3 基于射频识别(RFID)的室内定位技术
3.1 RFID技术原理
射频识别(RFID)技术是一种操控简易,适用于自动控制领域的技术,它利用了电感和电磁耦合或雷达反射的传输特性,实现对被识别物体的自动识别。射频(RF)是具有一定波长的电磁波,它的频率描述为:kHz、MHz、GHz,范围从低频到微波不一。
Ⅲ 无线传感器网络体系结构包括哪些部分,各部分的
结构
传感器网络系统通常包括传感器节点EndDevice、汇聚节点Router和管理节点Coordinator。
大量传感器节点随机部署在监测区域内部或附近,能够通过自组织方式构成网络。传感器节点监测的数据沿着其他传感器节点逐跳地进行传输,在传输过程中监测数据可能被多个节点处理,经过多跳后路由到汇聚节点,最后通过互联网或卫星到达管理节点。用户通过管理节点对传感器网络进行配置和管理,发布监测任务以及收集监测数据。
传感器节点
处理能力、存储能力和通信能力相对较弱,通过小容量电池供电。从网络功能上看,每个传感器节点除了进行本地信息收集和数据处理外,还要对其他节点转发来的数据进行存储、管理和融合,并与其他节点协作完成一些特定任务。
汇聚节点
汇聚节点的处理能力、存储能力和通信能力相对较强,它是连接传感器网络与Internet 等外部网络的网关,实现两种协议间的转换,同时向传感器节点发布来自管理节点的监测任务,并把WSN收集到的数据转发到外部网络上。汇聚节点既可以是一个具有增强功能的传感器节点,有足够的能量供给和更多的、Flash和SRAM中的所有信息传输到计算机中,通过汇编软件,可很方便地把获取的信息转换成汇编文件格式,从而分析出传感节点所存储的程序代码、路由协议及密钥等机密信息,同时还可以修改程序代码,并加载到传感节点中。
管理节点
管理节点用于动态地管理整个无线传感器网络。传感器网络的所有者通过管理节点访问无线传感器网络的资源。
无线传感器测距
在无线传感器网络中,常用的测量节点间距离的方法主要有TOA(Time of Arrival),TDOA(Time Difference of Arrival)、超声波、RSSI(Received Sig nalStrength Indicator)和TOF(Time of Light)等。
Ⅳ TOA TDOA RTOF的区别
我发现这个website,它解释了这种差异。但是因为英语不是我的第一语言,所以我不确定我是否理解正确
据我了解,ToA:设备(例如)发送带时间戳的信号。我知道无线电信号有多快,因此可以计算到达基站的时间与传输中的时间戳。 TDoA:设备向多个基站发送信号。那些电台有一个同步时钟。现在距离是根据两个基站到达时间之间的差值来计算的
TOA(Time of Arrival)即到达时间定位法。TDOA(Time Difference of Arrival)即到达时间差定位法。两者都是基于电波传播时间的定位方法。需要同时有三个位置已知的基站来协助定位。TOA基本原理是得到3个达到时间后,可以算出设备到三个基站的距离,然后根据几何只是建立方程组并求解,从而求得Location值。TDOA则不立刻求解距离,而是先计算时间差,然后通过一些巧妙的数学算法建立方程组并求解,从而得到Location值。由于TOA计算完全依赖于时间,对系统的时间同步要求很高,任何很小的时间误差都会被放大很多倍,同时由于多径效应的影响又会带来很大的误差,因而单纯的TOA在实际中应用很少。DTOA由于其中巧妙设计的求差过程会抵消其中很大一部分的时间误差和多径效应带来的误差,因而可以大大提高定位的精确度。由于DTOA对网络要求相对较低,并且精度较高,因而目前已经成为研究的热点。
Ⅳ WSN中常用的测距技术有哪些 (
其常用的测距技术有RSSI,TOA,TDOA和AOA。 4、无线传感器网络的拓扑控制问题是什么? WSN的拓扑控制问题是在网络相关资源普遍受限的情况下,对于固定或具有移动特性的无线传感器网络通过控制传感器节点与无线链路组成网络的拓扑属性来减少网络能量消耗与无线干扰,并有效改善整体网络的连通性、吞吐量、与传播时延等性能指标。
Ⅵ 无线网络定位算法的程序。TOA/RSSI什么算法的都可以,想找个程序作个参考。
我有matlab的。
太多了,我的QQ:39400877
%|
%| SCRIPT: simMLE
%|
%| PURPOSE: Simulate a relative location system by generating
%| random measurements and maximizing the likelihood fcn.
%| After many trials, show the results vs. the Cramer-Rao Bound.
%|
%| AUTHOR: Neal Patwari
%| http://www.engin.umich.e/~npatwari/
%|
%| REFERENCE: Relative Location Estimation in Wireless Sensor Networks
%| (N. Patwari, A. O. Hero, M. Perkins, N. S. Correal, R. J. O'Dea),
%| IEEE Trans. Signal Processing, vol. 51, no. 8, Aug. 2003, pp. 2137-2148.
%|
tic
% Use globals to allow minimization functions access to network info,
% debugging info.
global refDevices blindDevices totalDevices linearRefLocs dhat funcEvals dfuncEvals;
% Basic simulation parameters
roomSize = [1,1]; % Room size, meters
gridSize = 5; % How many sensors per side
refDevices = 4; % How many references (must be same length as actualRefLocs)
trials = 20; % How many indep trials to run
measMethod = 'R'; % Use 'R' for RSS, 'T' for TOA
totalDevices = gridSize^2;
blindDevices = totalDevices - refDevices;
blindCoords = 2*blindDevices;
actualRefLocs = [0,0; 0,1; 1,1; 1,0];
linearRefLocs = [actualRefLocs(:,1)', actualRefLocs(:,2)'];
% Optimization parameters
ftol = 0.00001;
if measMethod == 'R',
func = 'calcError'; % Use for RSS
dfunc = 'calcDError'; % Use for RSS
else
func = 'calcErrorTOA'; % Use for TOA
dfunc = 'calcDErrorTOA'; % Use for TOA
end
%| 1. Set up the blindfolded device locations
delta = 1/(gridSize-1);
coords = 0:delta:1;
xMatrix = ones(gridSize,1)*coords;
yMatrix = xMatrix';
xBlind = [xMatrix(2:gridSize-1), ...
xMatrix(gridSize+1:totalDevices-gridSize), ...
xMatrix(totalDevices-gridSize+2:totalDevices-1)];
yBlind = [yMatrix(2:gridSize-1), ...
yMatrix(gridSize+1:totalDevices-gridSize), ...
yMatrix(totalDevices-gridSize+2:totalDevices-1)];
actualBlindLocs = [xBlind', yBlind'];
actualAllLocs = [actualRefLocs; actualBlindLocs];
xActual = actualAllLocs(:,1)';
yActual = actualAllLocs(:,2)';
actualDist = L2_distance(actualAllLocs', actualAllLocs',0);
%| 2. Define the channel model
if measMethod == 'R';
sigmaOverN = 1.7;
% If C==1, then this simulation runs the _true_ MLE.
% If C==exp( 0.5* (log(10)/10 *sigmaOverN)^2), then this runs a
% bias-corrected (pseudo-) MLE.
% C = exp( 0.5* (log(10)/10 *sigmaOverN)^2);
C = 1;
else
sigma_d = 0.2; % Use for TOA
end
for trial = 1:trials,
if measMethod == 'R';
%| 3.0 Generate a random set of RSS-based distance measurements. When RSS
%| is expressed in dB, errors are Gaussian. Here, dhat is an interim
%| variable which has units of distance, and represents an estimate for
%| the range. It is correctly randomly generated as follows:
dhat = actualDist.*10.^(sigmaOverN/10 .*symrandn(totalDevices))./C;
else
%| 3.1 Generate a set of TOA measurements, which are Gaussian around the
%| true value with variance sigma_d.
dhat = actualDist + sigma_d .* symrandn(totalDevices);
end
%| 4. Make an initial guess of the coordinates.
blindLocs0 = [xBlind, yBlind]; % Use the true coordinates (unrealistic but best case)
%| 5. Find optimum locations of neurfons (fixed and relative)
funcEvals = 0; dfuncEvals = 0;
[coordsMLE, iter, errorMin] = frprmn(blindLocs0, ftol, func, dfunc, 0);
disp(sprintf('%d: Function / Deriv. evals: %d / %d.', trial, funcEvals, dfuncEvals));
%| 6. Save the resulting estimated coords
coordEsts(trial, 1:blindCoords) = coordsMLE;
end % for trial
estMean = mean(coordEsts);
estCov = cov(coordEsts);
estVars = diag(estCov);
estStds = sqrt(estVars);
locVars = estVars(1:blindDevices) + estVars((blindDevices+1):(2*blindDevices));
locStd = sqrt(locVars);
toc % show time of execution
% Plot the location estimates for sensors, one at a time.
if 0,
figure
for i=1:blindDevices,
clf
plot(coordEsts(:,i), coordEsts(:,blindDevices+i),'.', ...
estMean(i), estMean(blindDevices+i), 'ro')
hold on
set(gca,'xlim',[-0.2 1.2])
set(gca,'ylim',[-0.2 1.2])
set(gca,'FontSize',20)
set(gca,'DataAspectRatio',[1 1 1])
xlabel('X Position (m)')
ylabel('Y Position (m)')
set(gca,'xTick',0:0.25:1)
set(gca,'yTick',0:0.25:1)
grid;
pause;
end
end
% Calculate and plot CRB vs. estimator performance.
figure; clf;
if measMethod == 'R';
[locstdCRB, coordCRB] = calcLocalizationCRB('R', [xBlind, actualRefLocs(:,1)'], ...
[yBlind, actualRefLocs(:,2)'], blindDevices, totalDevices, sigmaOverN);
else
[locstdCRB, coordCRB] = calcLocalizationCRB('T', [xBlind, actualRefLocs(:,1)'], ...
[yBlind, actualRefLocs(:,2)'], blindDevices, totalDevices, sigma_d);
end
for i=1:blindDevices,
hold on
R = cov(coordEsts(:,i), coordEsts(:,blindDevices+i));
drawOval(estMean(i), estMean(blindDevices+i), R, 'k-','v', 8, 0, 1);
R_CRB = coordCRB([i, i+blindDevices],[i, i+blindDevices]);
drawOval(xBlind(i), yBlind(i), R_CRB, 'r--','.',20, 0, 1);
end
set(gca,'xlim',[-0.2 1.2])
set(gca,'ylim',[-0.2 1.2])
set(gca,'FontSize',18)
set(gca,'DataAspectRatio',[1 1 1])
xlabel('X Position (m)')
ylabel('Y Position (m)')
set(gca,'xTick',0:0.25:1)
set(gca,'yTick',0:0.25:1)
grid;
% Use for comparison
RMS_est_Std = sqrt(mean(locStd.^2))
RMS_crb_Std = sqrt(mean(locstdCRB.^2))