📄 carrierphase_caluserpose_single.m
字号:
clear all;
close all;
clc;
%导入星历文件
% global navData;
navFile = 'rawdata\1lsu2200.03n';
navData = importNavFile(navFile);
%读取基准站的观测文件
obsFile_Base = 'rawdata\1lsu2212.03o';
fid_Base = fopen(obsFile_Base);
[accuratePos, obsTypeNum_Base] = readObsFileHead(obsFile_Base,fid_Base);
%从基准站的观测文件头里读入基准站的精确坐标
%accuratePos:基准站接收机的精确坐标
%obsTypeNum_Base:基准站观测值类型数量
%读取观测站的观测文件
obsFile_Obs = 'rawdata\1lsu2211.03o';
fid = fopen(obsFile_Obs);
[approxPos, obsTypeNum_Obs] = readObsFileHead(obsFile_Obs,fid);
%从观测站的观测文件头里读入观测站的概略坐标
%approxPos:观测站接收机的概略坐标
%obsTypeNum_Base:观测站观测值类型数量
for i = 1:100
[obsInfo_Base,isEnd_Base] = getEpochObsInfo(obsTypeNum_Base,fid_Base);
if isEnd_Base == 1
break;
end
[N1_Base,N2_Base]=cal_IntegerAmb(obsInfo_Base);
carrierPhaseCorr = getSatCarrierPhaseCorr(accuratePos,approxPos,obsInfo_Base,navData,N1_Base);
%得到基准站的载波相位正数,
[obsInfo_Obs,isEnd_Obs] = getEpochObsInfo(obsTypeNum_Obs,fid);
%读取观测站观测文件中一个历元的信息
if isEnd_Obs == 1
break;
end
%计算整周模糊度
[N1_Obs,N2_Obs]=cal_IntegerAmb(obsInfo_Obs);
%N1: 载波相位L1的整周模糊度
%N2: 载波相位L2的整周模糊度
DT=0;
for i=1:2
[t1,x0,y0,z0,DT]=carrierPhase_Diff_calUserPos(approxPos,obsInfo_Obs,DT,navData,N1_Obs,carrierPhaseCorr);
%approxPos:接收机概略坐标
%obsInfo:存放观测信息的结构体
%x0,y0,z0:真实坐标
%DT:用户钟差
%t1: 当前观测时刻GPST
obsInfo.GPST = t1;
approxPos.X = x0
approxPos.Y = y0
approxPos.Z = z0
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -