資源簡介
TOA與最小二乘法聯合直接求解,具有獨創性,TDOA是結合拉格朗日法進行求解,都加有高斯白噪聲干擾。精度都在1m之內。可以進行單點定位,和定位,并通過matlab的視圖功能,相當漂亮的展示出誤差,及三維定位圖。

代碼片段和文件信息
function?[]=TDOA?
MobileSignalPsn=[-0.30.6]?;?????????????%?MobilesignalPsn??為信號初始位置?區間范圍任意取;?
?Radius=1000;???????????????????????????%陣元捕捉信號有效作用半徑及信號保真的有效半徑,單位米;
?S1=-40;S2=20;n=(S2-S1)/5?;???????????????%噪聲強度范圍
?NS_dB=S1:5:S2;
?Esp=zeros(size(NS_dB));
?GS_noise=zeros(1n+1);???????????%節約磁盤空間,給變量開辟固定長度空間
?POINT_noise=zeros(n+12);
?for?i=1:n+1
???GS_noise(i)=wgn(11NS_dB(i));??????%加載的高斯白噪聲
???[TP]=TDOA_Taylor(MobileSignalPsnRadiusGS_noise(i));%迭代次數改變不會出現奇異矩陣
???Esp(i)=T;???????????????????????????%調用函數返回誤差賦值
???POINT_noise(i:)=P;?????????????????%預測坐標返回及賦值
?end
?xr=zeros(1length(Esp));
?yr=xr;
?xr(:)=Radius*MobileSignalPsn(:1);
?yr(1:)=Radius*MobileSignalPsn(:2);
?figure(1)
?h=plot3(NS_dByrxr‘-‘);
?darkgreen=[1/72/30];
?set(h‘MarkerSize‘8‘color‘darkgreen‘lineWidth‘2)
?grid?on
?hold?on
?scatter3(NS_dB(:)POINT_noise(:2)POINT_noise(:1)[]NS_dB(:)‘filled‘)
?c=colorbar(‘Ticks‘[S1:5:S2]‘location‘‘eastoutside‘);
?c.Label.String?=?‘NS-dB‘;
?legend(‘MobileSignalPsn‘‘Noise?location‘‘location‘‘northwest‘);?
?figure(2)
?plot(NS_dBEsp‘b-‘‘MarkerSize‘8‘lineWidth‘1);
?title(‘the?relationship?between?NS-dB?and?Esp-TDOA‘);
?xlabel(‘NS-dB‘);
?ylabel(‘Esp‘);
end
?function???[ESPPOINT_noise]=TDOA_Taylor(?MobileSignalPsn?Radius?GS_noise)???
%????????????????-?MSP??為移動臺的初始位置
%????????????????-?Radius?半徑
%????????????????-?Esp??為噪音位置和真實位置的偏差
%?參數檢查:
if??nargout~=2&nargout~=0
????error(‘Too?many?output?arguments.‘);
end
if?nargin?~=?3
????error(‘Wrong?number?of?input?arguments.‘);
end
%?初始參數:
L_P=1;????%拓撲結構內心到頂點的長度
base_location=[0L_P*cos(pi/10)0-L_P*cos(pi/10)-L_P*sin(pi/5)L_P*sin(pi/5);0L_P*sin(pi/10)L_PL_P*sin(pi/10)-L_P*cos(pi/5)-L_P*cos(pi/5)];
BL?=?Radius*base_location;
MSP?=?Radius*MobileSignalPsn;
K=length(base_location);
%?TDOA協方差矩陣Q:
Q?=?eye(length(base_location)-1);
%?初始估計位置:
iEP?=?MSP;
for?i?=?1:K
????MeaDist(i)?=?sqrt((MSP(1)?-?BL(1i))^2?+?(MSP(2)?-?BL(2i))^2);
end
for?i?=?1:?K-1
????h0(i)?=?MeaDist(i+1)?-?MeaDist(1)?+?GS_noise;???%高斯白噪聲
end
for?n?=?1:2100
????R1?=?sqrt(iEP(1)^2?+?iEP(2)^2);
????for?i?=1:?K-1
????????R(i)?=?sqrt((iEP(1)?-?BL(1i+1))^2?+?(iEP(2)?-?BL(2i+1))^2);????????
????end
????for?i?=?1:?K-1
????????h(i)?=?h0(i)?-?(R(i)?-?R1);
????end
????ht?=?h‘;
????for?i?=?1:?K-1
????????Gt(i?1)?=?(BL(1?1)-iEP(1))/R1?-?(BL(1?i+1)?-?iEP(2))/R(i);
????????Gt(i?2)?=?(BL(2?1)-iEP(2))/R1?-?(BL(2?i+1)?-?iEP(2))/R(i);
????end
????delt?=?(Gt‘*inv(Q)*Gt)\(Gt‘*inv(Q)*ht);
????EP?=?iEP?+?delt‘;
????iEP?=?EP;
end
POINT_noise=EP;
P_error=EP-MSP;
ESP=sqrt(sum(P_error.^2));
?end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????2825??2017-10-24?23:12??修改\TDOA.m
?????文件????????1624??2017-10-27?14:01??修改\TOA.m
?????文件????????2062??2017-10-24?23:28??修改\TOA_EquationSet.m
?????文件????????1702??2017-10-24?23:29??修改\TOA_multiple_points.m
?????文件?????????495??2017-10-24?23:41??修改\說明.txt
- 上一篇:時間序列MATLAB代碼
- 下一篇:反饋解耦simuli
nk2018b模型.rar
評論
共有 條評論