各种不同几何形状布局布阵下的GDOP相对值图matlab仿真
1.算法描述
全球四大导航卫星系统包括:美国GPS、俄罗斯GLONASS(格洛纳斯)、中国北斗和欧洲Galileo(伽利略)卫星系统。四大卫星定位系统靠卫星自身可以达到米级的定位,要实现更精准的定位就需要地面基准站的辅助了。通过购买千寻位置、中国移动、六分科技等企业的RTK(Real-Time Kinematic 实时动态载波相位差分)账号或者CORS账号(Continuously Operating Reference Stations 连续运行定位服务参考站)可以实现厘米级别的定位。
GDOP((Geometric Dilution of Precision)几何精度因子,是衡量GNSS(Global Navigation Satellite System)全球导航卫星系统定位精度的指标。其分量包括:
PDOP( position dilution of precision ) 三维精度因子;
HDOP(horizontal dilution of precision) 水平精度因子;
VDOP(vertical dilution of precision)垂直几何精度因子;
TDOP(time dilution of precision)时间精度因子;
对于经常要使用RTK的测量人来说,掌握一些使用过程中经常用到的专业术语是很有必要的,比如GDOP、差分测量、静态定位等等,了解这些有助于更加熟练地使用RTK,从而高效地进行测量作业。GDOP(Geometric dilution of precision)几何精度因子:包括经度,纬度,高程和时间等因子,称为几何精度因子。
2.仿真效果预览
matlab2022a仿真结果如下:
3.MATLAB核心程序
%布阵方式 clc; clear; close all; warning off; addpath(genpath(pwd)); %%(1)直线形布站 s(:,:,1) = [-90 -60 -30 0 30 60 90;... 0 0 0 0 0 0 0]*1e3; %%(2)楔形布站 s(:,:,2) = [-45 -30 -15 0 15 30 45;... -90*cos(pi/6) -60*cos(pi/6) -30*cos(pi/6) 0 -30*cos(pi/6) -60*cos(pi/6) -90*cos(pi/6)]*1e3; %%(3)工字形布站 s(:,:,3) = [-30 0 30 0 -30 0 30;... 30 30 30 0 -30 -30 -30]*1e3; %%(4)梯形布站 s(:,:,4) = [-30 0 30 -45 -15 15 45;... 0 0 0 -30*cos(pi/6) -30*cos(pi/6) -30*cos(pi/6) -30*cos(pi/6)]*1e3; %%(5)圆形布站 r = 3.45714e4; theta0=2*pi/7; for i = 1:7%七部 s(:,i,5)=[r*cos(theta0*i);r*sin(theta0*i)]; end %%(6)十字形布站 s(:,:,6) = [-60 -30 0 30 60 0 0;... 0 0 0 0 0 30 -30]*1e3; index_s = 2;%步战形式编号 sd_angle = 2*pi/180; %方位角标准差 sd_zhanzhi = 10; %站址标准差 Qa = eye(size(s,2))*(sd_angle)^2; %方位角方差 % Qb = eye(size(s,2)*2)*sd_zhanzhi^2; x = -400e3:10e3:400e3; y = -400e3:10e3:400e3; for i = 1:81 for j=1:81 u = [x(i);y(j)]; [rms1(j,i), ~] = crlb_AOA(u,s(:,:,index_s),Qa);%仅有测角误差时的CRLB的绝对值 rms2(j,i) = rms1(j,i)/norm(u); % [rms1(j,i), ~] = crlb_AOA(u,s(:,:,index_s),Qa,Qb); % rms2(j,i) = rms1(j,i)/norm(u); % diff_rms(j,i) = crlb_AOA1(u,s(:,:,1),Qa,Qb); end end figure(1) switch index_s case 1 title('直线形布阵时的GDOP图'); Q=[5 10 20 30 50 70 90 120 300]; %等位线标识数值 case 2 title('楔形布阵时的GDOP图'); Q=[5 10 20 30 50 70 90 120 300]; case 3 title('工字形布阵时的GDOP图'); Q=[5 10 20 30 50 70 90 120 300]; case 4 title('梯形布阵时的GDOP图'); Q=[5 10 20 30 50 70 90 120 300]; case 5 % title('不存在平台导航误差且圆形布阵时的GDOP图'); % Q=[1 3 5 7 9 12 15 17]; title('圆形布阵时的GDOP图'); Q=[5 10 20 30 50 70 90 120 300]; case 6 title('十字形布阵时的GDOP图'); Q=[5 10 20 30 50 70 90 120 300]; end hold on; [c,handle]=contour(x*1e-3,y*1e-3,rms1*1e-3,Q); clabel(c,handle);hold on; %等位线标识 plot(s(1,:,index_s)*1e-3,s(2,:,index_s)*1e-3,'rd') xlabel('x/km'); ylabel('y/km'); figure(2) switch index_s case 1 title('直线形布阵时的GDOP相对值图'); Q=[0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.12 0.15 0.17 0.2 0.3 0.5]; case 2 title('楔形布阵时的GDOP相对值图'); Q=[0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.12 0.15 0.17 0.2 0.3 0.5]; case 3 title('工字形布阵时的GDOP相对值图'); Q=[0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.12 0.15 0.17 0.2 0.3 0.5]; case 4 title('梯形布阵时的GDOP相对值图'); Q=[0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.12 0.15 0.17 0.2 0.3 0.5]; case 5 % title('不存在平台导航误差且圆形布阵时的GDOP相对值图'); % Q=[0.005 0.01 0.018 0.025 0.045]; title('圆形布阵时的GDOP相对值图'); Q=[0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.12 0.15 0.17 0.2 0.3 0.5]; case 6 title('十字形布阵时的GDOP相对值图'); Q=[0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.12 0.15 0.17 0.2 0.3 0.5]; end hold on;[c,handle]=contour(x*1e-3,y*1e-3,rms2,Q); clabel(c,handle);hold on; plot(s(1,:,index_s)*1e-3,s(2,:,index_s)*1e-3,'rd') xlabel('x/km'); ylabel('y/km'); A74