matlab卫星定位

  • 认识星历文件观测文件及位置计算
    • 星历文件
    • 观测文件
    • matlab面对对象卫星位置计算
  • 卫星高度角方位角计算(待更新。。。)

认识星历文件观测文件及位置计算

初学者,欢迎指正批评。qigezhubajie@163.com

星历文件



星历文件表头部分不做介绍。
第一张图片为导航数据文件中数据记录部分说明,第二章为数据记录部分。
第二张图片中的数据部分与第一张图片中的参数一一对应。
第二张图片中加灰部分为数据有效范围。

观测文件


观测文件表头部分不做介绍。

matlab面对对象卫星位置计算

时间转化模块不做介绍,自行查阅文件。
一定要自己敲一遍,理解的更深刻。
classdef satlite < handle
properties
PRN; af2; M0; sqrtA; delta_n; e ;
omega; Cuc; Cus; Crc; Crs; i0;
i_dot; Cic; Cis; OMEGA; OMEGA_dot;
toe ; af0; af1; toc;
X ; Y ; Z;
miu = 3.986005e14; % 地心引力常数
we = 7.2921151467e-5; % 地球自转角速度
tg%观测时间
end
methods
function self = satlite(PRN, af2, M0, sqrtA, delta_n, e, omega, …
Cuc, Cus, Crc, Crs, i0, i_dot, Cic, Cis, OMEGA, OMEGA_dot, …
toe, af0, af1, toc,tg)
self.PRN = PRN;self.af2 = af2;self.M0 = M0;
self.sqrtA = sqrtA;self.delta_n = delta_n;self.e = e;
self.omega = omega;self.Cuc = Cuc;self.Cus = Cus;
self.Crc = Crc;self.Crs = Crs;self.i0 = i0;
self.i_dot = i_dot;self.Cic = Cic;self.Cis = Cis;
self.OMEGA = OMEGA;self.OMEGA_dot = OMEGA_dot;
self.toe = toe;self.af0 = af0;
self.af1 = af1;self.toc = toc;
self.tg = tg;
end
function position(self)
%计算平均角速度
a = self.sqrtA^2;
n0 = sqrt(self.miu)/(self.sqrtA^3);
n = n0 + self.delta_n;
%计算归化时间
tb = self.af0 + self.af1*(self.tg - self.toc) + self.af2*(self.tg - self.toc)^2;
ts = self.tg - tb;
tk = ts - self.toe;
% 计算平近点角
Mk = self.M0 + n * tk;
% 计算偏近点角Ek
%迭代计算:相邻两次计算差之绝对值值<1e-15时结束迭代计算,Ek的迭代初始值为0
Mk = rem(Mk+2pi,2pi);
Ek0=0;Ek=Mk;
while abs(Ek0-Ek)>1e-15
Ek0 = Ek;
Ek=Mk + self.e * sin(Ek0);
end
% 计算真近点角:取值在(-pi,pi]
v1=sqrt(1-self.e^2)sin(Ek);
v2=cos(Ek)-self.e;
vk=atan2(v1,v2);
% 计算升交点角距
Faik = vk + self.omega;
% 计算升交点角距改正值摄动改正项计算
Sigmauk=self.Cuc
cos(2Faik)+self.Cussin(2Faik);
% 计算卫星地心向径改正值
Sigmark=self.Crc
cos(2Faik)+self.Crssin(2Faik);
% 计算卫星轨道倾角改正值
Sigmaik=self.Cic
cos(2Faik)+self.Cissin(2Faik);
% 修正升交点角距
uk=Faik+Sigmauk;
% 修正卫星地心相径
rk=a
(1-self.ecos(Ek))+Sigmark;
% 修正卫星轨道倾角
ik=self.i0+Sigmaik+tk
self.i_dot;

        % 计算卫星轨道平面直角坐标xk=rk*cos(uk);yk=rk*sin(uk);% 计算升交点赤经Omegak=self.OMEGA + (self.OMEGA_dot-self.we)*tk-self.we*self.toe;% 将卫星坐标由轨道平面转换到ECEF坐标系self.X=xk*cos(Omegak)-yk*cos(ik)*sin(Omegak);self.Y=xk*sin(Omegak)+yk*cos(ik)*cos(Omegak);self.Z=yk*sin(ik);endend

end

卫星高度角方位角计算(待更新。。。)

基于MATLAB计算卫星位置相关推荐

  1. matlab计算空间坐标,通过matlab计算卫星位置

    卫星星历是描述卫星运动轨道的信息.也可以说卫星星历就是一组对应某一时刻的轨道参数及其变率.有了卫星星历就可以计算出任意时刻的卫星位置及其速度.GPS卫星星历分为预报星历和后处理星历.预报星历又称广播星 ...

  2. python读取导航电文并计算卫星位置

    python简单计算卫星位置 前言 一.思路 总的可分为两个部分:获取导航参数和计算卫星位置. ①获取导航参数:首先讲导航星历中的数据切片,存入csv文件中,再读取csv文件的数据并赋值给各参数 ②计 ...

  3. 如何用Matlab建立信用风险模型,基于Matlab计算的KMV模型在商业银行信用风险管理中的实践应用.pdf...

    科技论坛 2014.6 基于Matlab计算的KMV模型在商业银行信用风险管理中的 应用 李 园 (天津大学管理与经济学部,天津,300072) 摘要:社会经济的不断发展,金融行业也处于不断发展之中, ...

  4. 用matlab计算卫星的瞬时位置,用MATLAB计算GPS卫星位置.PDF

    用MATLAB计算GPS卫星位置 高 新 技 术 用MATLAB计算GPS卫星位置 罗利娟 杨乐 (西安翻译学院 陕西西安 710061) 摘 要:本文主要介绍了GPs测量数据的常用格式RINEX标准 ...

  5. 用c++根据轨道六根数计算卫星位置

    轨道六根数是描述卫星轨道的一组参数,包括: 轨道长半径(a):卫星轨道的半径,表示卫星到地球中心的平均距离. 轨道偏心率(e):卫星轨道的偏心率,表示轨道的椭圆程度. 轨道倾角(i):卫星轨道与地球赤 ...

  6. 用matlab计算卫星的瞬时位置,用MATLAB计算GPS卫星位置

    GPS定位的基本原理简单来说就是在多时候需要把来自不同型号的接收机的RINEX标准文件里不是单一的一个文WGS-84空间直角坐标系中,确定未知点与数据放在一块进行处理,这就需要数据件,而是包括如下几种 ...

  7. 基于matlab计算aom衍射效率,傅里叶望远镜大气湍流模拟实验

    引用本文 曾志红, 罗秀娟, 王保峰, 夏爱利, 程志远, 司庆丹. 傅里叶望远镜大气湍流模拟实验.光子学报, 2014,43(6): 601002 ZENG Zhi-hong, LUO Xiu-ju ...

  8. 基于matlab计算aom衍射效率,实验七激光位相调制光谱特性检测-华东师范大学.ppt...

    <实验七激光位相调制光谱特性检测-华东师范大学.ppt>由会员分享,可在线阅读,更多相关<实验七激光位相调制光谱特性检测-华东师范大学.ppt(9页珍藏版)>请在人人文库网上搜 ...

  9. 采用morison方程基于matlab计算大直径波浪力,用Morison方程计算分析悬浮隧道所受波浪力初探...

    用Morison方程计算分析悬浮隧道所受波浪力初探 用Morison方程计算分析悬浮隧道所受波浪力初探 第16卷第3期石家庄铁道学院第卷第期后豕饮迥r子阮子很 2003年9月JOURNALOFSHIJ ...

最新文章

  1. SAP WM初阶之移动类型设置里的Additional Data?
  2. python如何读取txt文件-如何在python中读取文件夹中的txt文件列表
  3. MapReduce 模式、算法和用例
  4. 专访阿里 iDST 语音组总监鄢志杰:智能语音交互从技术到产品,有哪些坑和细节要注意?
  5. 百度关键词抓取工具_VBA利用XMLHTTP抓取百度查询关键词结果的个数
  6. 9 C++ Boost 多线程,线程同步
  7. 程序员实际情况_程序员实际上是做什么的?
  8. MySQL innodb每行数据长度的限制
  9. java根据wait,notify,synchronize关键字自定义队列
  10. 两个整数求平均值,防止溢出的问题
  11. RIA 应用程序模式
  12. 如何将几个变量相加减乘除(图文+数据集)【SPSS 075期】
  13. 新手如何备考GRE考试作文
  14. qpsk的映射过程_qpsk原理
  15. OpenJudge NOI题库 入门 116题 (一)
  16. 易企秀12.4 模板编辑无法删除页面问题分析
  17. [51nod 1051 最大子矩阵和]前缀和+dp
  18. 怎样批量将图片转成PDF格式?图片转换PDF操作方法
  19. php微信零钱明细,微信钱包的收支记录明细在哪里查看,看完就明白了
  20. php linux unoconv,Linux-CentOS 安装 Unoconv

热门文章

  1. [日推荐]『爱比趣』有意思的体育社区
  2. CVPR2022 | 无需对齐就能胜任大运动超分的内存增强非局部注意方法
  3. DEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在
  4. 30个免费和精美的简历模板下载
  5. matlab khatri rao,一种基于Khatri-Rao积3DMU-MIMO的预编码方法
  6. 在Mplus安装JAVA_Mplus教程-Mplus安装和入门一文搞定
  7. 《安富莱嵌入式周报》第304期:开源硬件耳机设计,AI单片机STM32N6已确定为M55内核,另外还有新品STM32H5, H50X, H7R, H7S发布
  8. linux-常用命令整理
  9. 设计解析-封面/banner
  10. 纯文本还是HTML邮件