卫星坐标计算
GPS卫星的坐标计算

第三章GPS 卫星的坐标计算在用GPS 信号进行导航定位以及制订观测计划时,都必须已知GPS 卫星在空间的瞬间位置。
卫星位置的计算是根据卫星导航电文所提供的轨道参数按一定的公式计算的。
3.1卫星运动的轨道参数3.1.1基本概念 1.作用在卫星上力卫星受的作用力主要有:地球对卫星的引力,太阳、月亮对卫星的引力,大气阻力,大气光压,地球潮汐力等。
中心力:假设地球为匀质球体的引力(质量集中于球体的中心),即地球的中心引力,它决定卫星运动的基本规律和特征,决定卫星轨道,是分析卫星实际轨道的基础。
此种理想状态时卫星的运动称为无摄运动,卫星的轨道称为无摄轨道。
摄动力:也称非中心力,包括地球非球形对称的作用力、日月引力、大气阻力、大气光压、地球潮汐力等。
摄动力使卫星运动产生一些小的附加变化而偏离理想轨道,同时这种偏离量的大小随时间而改变。
此种状态时卫星的运动称为受摄运动,卫星的轨道称为受摄轨道。
虽然作用在卫星上的力很多,但这些力的大小却相差很悬殊。
如果将地球引力当作1的话,其它作用力均小于10-5。
2.二体问题研究两个质点在万有引力作用下的运动规律问题称为二体问题。
3.卫星轨道和卫星轨道参数卫星在空间运行的轨迹称为卫星轨道。
描述卫星轨道状态和位置的参数称为轨道参数。
3.1.2卫星运动的开普勒定律 (1)开普勒第一定律卫星运行的轨道为一椭圆,该椭圆的一个焦点与地球质心重合。
此定律阐明了卫星运行轨道的基本形态及其与地心的关系。
由万有引力定律可得卫星绕地球质心运动的轨道方程。
r 为卫星的地心距离,as 为开普勒椭圆的长半径,es 为开普勒椭圆的偏心率;fs 为真近点角,它描述了任意时刻卫星在轨道上相对近地点的位置,是时间的函数。
(2)开普勒第二定律卫星的地心向径在单位时间内所扫过的面积相等。
表明卫星在椭圆轨道上的运行速度是不断变化的,在近地点处速度最大,在远地点处速度最小。
近地点远地点ss s s f e e a r cos 1)1(2+-=(3卫星运行周期的平方与轨道椭圆长半径的立方之比为一常量,等于GM 的倒数。
卫星定位公式

卫星定位公式【原创版】目录1.卫星定位的基本原理2.卫星定位公式的构成3.卫星定位公式的应用4.卫星定位技术的发展正文1.卫星定位的基本原理卫星定位系统是一种利用卫星发射的信号来确定地球表面某一点的精确位置的技术。
其基本原理可以概括为:测量卫星发射的信号从卫星到达地面某一点的时间,根据光速和时间的关系,计算出该点与卫星之间的距离。
同时,通过至少三个卫星的定位,可以确定该点的三维坐标。
2.卫星定位公式的构成卫星定位公式主要包括以下三个部分:(1) 计算卫星与地面点之间的距离公式:d = c * t,其中 d 为距离,c 为光速(约为 3 * 10^8 米/秒),t 为信号传输时间。
(2) 计算卫星的轨道参数公式:T = 2 * π * sqrt(a^3 / μ),其中 T 为卫星的周期,a 为卫星的半长轴,μ为地球的标准引力参数。
(3) 计算地面点的三维坐标公式:x = (t1 * cos(E1) - t2 * cos(E2)) * cos(A) + (t1 * sin(E1) - t2 * sin(E2)) * sin(A),y = (t1 * cos(E1) - t2 * cos(E2)) * sin(A) - (t1 * sin(E1) - t2 * sin(E2)) * cos(A),z = (t1 * cos(E1) + t2 * cos(E2)) * cos(I) + (t1 * sin(E1) + t2 * sin(E2)) * sin(I),其中 x、y、z 为地面点的三维坐标,t1、t2 为卫星 1、卫星 2 的信号传输时间,E1、E2、I 分别为卫星 1、卫星 2 的倾角和地球的倾角。
3.卫星定位公式的应用卫星定位公式广泛应用于各种定位导航系统,如我国的北斗卫星导航系统、美国的 GPS 系统等。
这些系统通过卫星发射的信号,实时计算接收器与卫星之间的距离,从而实现对地球表面的精确定位。
卫星的运动 卫星相关参数,摄动力,星历,卫星位置的计算

卫星的轨道•一、基本概念:轨道;卫星轨道参数;正常轨道;摄动轨道•二、卫星的正常轨道及位置的计算• 1.开普勒三定律• 2.三种近点角• 3.卫星轨道六参数• 4.卫星的在轨位置计算1.开普勒(Johannes Kepler)三定律•开普勒第一定律人造地球卫星的运行轨道是一个椭圆,均质地球位于该椭圆的一个焦点上。
•开普勒第二定律卫星向径在相同时间内所扫过的面积相等。
•开普勒第三定律卫星环绕地球运行的周期之平方正比于椭圆轨道长半轴的立方。
2.三种近点角•真近点角当卫星处于轨道上任一点s时,卫星的在轨位置便取决于sop角,这个角就被称为真近点角,以f表示。
•偏近点角若以长半轴a做辅助圆,卫星s在该辅助圆上的相应点为s’,连接s’o’,s’o’p角称为偏近点角,以E表示。
•平近点角在轨卫星从过近地点时元t p开始,按平均角速度n0运行到时元t的弧,称为平近点角。
3.卫星轨道六参数•长半轴(a)—— 卫星椭圆轨道的长半轴;•偏心率(e)—— 卫星椭圆轨道的偏心率,是焦距的一半与长半轴的比值;•真近点角(f)——在椭圆轨道上运行的卫星S,其卫星向径OS与以焦点O指向近地点P的极轴OP的夹角。
•轨道平面倾角(i)—— 卫星轨道平面与天球赤道平面的夹角;•升交点赤经(Ω)—— 升交点(N),是由南向北飞行的卫星,其轨道与天球赤道的交点。
地球环绕太阳公转的一圈中有一个点(即日历上表示的春分时间),它反映在天球赤道平面上的固定位置,叫做春分点。
升交点赤经是春分点轴向东度量到升交点的弧度;•近地点角距(ω)—— 是由升交点轴顺着卫星运行方向度量到近地点的弧长.4.卫星的在轨位置计算•在卫星导航应用中,一般根据已知的6 个轨道参数求出卫星的在轨实时位置。
•对于任意观测时刻t,•---> n ---> E ---> f•计算卫星在轨道直角坐标系中的位置卫星的摄动轨道• 1.摄动轨道• 2.摄动方程• 3.摄动结果a-b=21.3km1.导航卫星的摄动力•地心引力f0•地球非中心引力fg•地球潮汐摄动力ft•太阳引力fs•月球引力fm•大气阻力fd•太阳辐射压力fr•太阳反照压力fa2.摄动轨道概念:卫星在宇宙空间运行时由于受到地心引力之外的其他各种力的作用,如地球非中心引力,日月引力,太阳辐射压力,大气阻力及潮汐力等的合成作用,使得卫星的实际运行轨道比正常轨道复杂得多,这种实际轨道就叫做摄动轨道。
卫星的位置计算.

• 计算思路
– 以地心为原点,建立轨道直角坐标系; – 计算卫星在轨道直角坐标系下的坐标; – 然后将轨道直角坐标系作一系列旋转,求出卫星在天球坐标 系下的坐标; – 将天球坐标系转换至地球坐标系。
无摄运动下卫星位置的计算
轨道直角坐标系
x0 r cos s f s y0 r sin s f s
u s f s
x0 r cos u y r sin u 0 z0 0
z0 0
轨道坐标系转换为天球坐标系
• 第一步:绕X’轴顺转角度i,以使Z’轴和Z轴重合 • 第二步:绕Z轴顺转角度Ω ,以使X’轴和X轴重合
x x0 y R R i y 1 0 3 z z0 cos sin 0 R3 sin cos 0 0 1 0 0 0 1 R1 i 0 cos i sin i 0 sin i cos i
天球坐标系转换至地球坐标系
• 起始子午面与过春分点的子午面的夹角实质为春分点的格 林尼治恒星时GAST。将瞬时天球坐标系绕Z轴逆转角度 GAST,即与瞬时地球坐标系重合。
X x Y R GAST y 3 Z z
cos GAST sin GAST 0 R3 GAST ቤተ መጻሕፍቲ ባይዱ sin GAST cos GAST 0 0 0 1
GPS卫星坐标计算分解

主要内容 2.1卫星坐标系简介 2.2偏近点角E与真近点角f的关系公式推导 2.3卫星位置计算推导过程 2.4二体问题的星位置计算解析
第二章 GPS卫星位置的计算
2.1卫星坐标系简介
一、WGS-84大地坐标系 1、WGS-84大地坐标系定义
WGS-84(World Geodetic System,1984年)是美国国防 部研制确定的大地坐标系,其 坐标系的几何定义是:
顶为正),以子午线方向为x轴(向北为正 ),y轴与x、z轴垂直(向东为正)。
站心赤道直角坐标系与站心地平直角坐 标系之间的关系
X sin B cos L
Y
sin
B
sin
L
Z
站赤
cos B
sin L cos L
0
cos B cos L x
cos
B
sin
L
y
sin B z 地平
站心地平直角坐标系与球心空间直角坐
椭球第一偏心率: e2=0.00669437999013 地球引力常数: GM=(39860050.6)108(m3/s2)
正常化二阶带谐系数:J2=(–484.166851.30)10–9(rad/s) 地球自转角速度: ω=(72921150.1500)10–11(rad/s)
国际大地测量与地球物理联合会(IUGG)——International Union of Geodesy and Geophysics
1 e2 sin E
cos f
,sin f
1 e cos E
1 e cos E
第二章 GPS卫星坐标的计算 2.3 卫星在轨瞬时位置计算
2.3.1 广播星历
GPS卫星WGS-84坐标计算

������������ = ������0 + ������������ + i������������ (9) 计算卫星在轨道平面上的坐标 ������������ = ������������ ������������������������������ ������������ = ������������ ������������������������������ (10) 计算观测时刻 t 的升交点经度������������ ������������ = Ω0 + Ω − ������������ ������������ − ������������ ������������������ (11) 计算卫星在 WGS-84 坐标系中的坐标 ������������ = ������������ ������������������������������ − ������������ ������������������������������ ������������������������������ ������������ = ������������ ������������������������������ + ������������ ������������������������������ ������������������������������ ������������ = ������������ ������������������������������
下面是用户位置Байду номын сангаас算
估计位置坐标表示估计位置与真实位置的偏移量
设
GPS 卫星的广播星历提供 16 个星历参数,其中包括 1 个参考时刻、6 个相应参考时刻的开普 勒轨道参数和 9 个轨道摄动修正参数。 用广播星历参数计算任一时刻 t 的卫星位置的步骤如 下: (1) 计算卫星运行的平均角速度 n 卫星运行的平均角速度������ = ������0 + ∆������,式中������0 =
C语言计算星历位置GPS广播星历计算卫星位置和速度

C语言计算星历位置GPS广播星历计算卫星位置和速度C语言是一种通用的高级编程语言,可以用于计算星历位置以及计算GPS卫星位置和速度。
下面将详细介绍如何使用C语言来实现这些计算。
首先,我们需要了解星历和GPS广播星历的概念。
星历是一种描述天体位置的方法,它包含了每个天体的位置坐标、速度以及其他相关的信息。
星历常用于天文学研究和导航系统中。
GPS广播星历是由GPS卫星广播的星历信息,它包含了GPS卫星所处的位置、速度等信息。
通过接收并解码广播星历,我们可以计算出卫星的位置和速度。
在C语言中,我们可以使用数学库和一些公式来计算星历位置和GPS 卫星位置以及速度。
首先,我们需要导入数学库,可以使用`#include <math.h>`导入。
数学库提供了一些常用的数学函数,如计算平方根、计算三角函数等。
然后,我们需要根据星历或广播星历的信息,计算出卫星的位置和速度。
对于星历位置的计算,可以使用开普勒方程来逼近天体的真实位置。
开普勒方程的计算公式如下:E - e * sin(E) = M其中,E为偏近点角,e为偏心率,M为平近点角。
通过迭代计算,可以得到E的近似值。
然后,利用半长轴、偏心率和E的值,可以计算出卫星在轨道平面上的坐标。
对于GPS卫星位置和速度的计算,可以使用广播星历中的卫星钟差、偏心率修正项等信息。
具体的计算公式较为复杂,需要使用专门的算法进行计算。
在计算过程中,我们还需要考虑坐标系的转换,以确保最终计算得到的是相对于地球的地心坐标系中的位置和速度。
最后,我们可以将计算得到的卫星位置和速度输出,以便进行后续的处理或导航操作。
总结来说,使用C语言计算星历位置和GPS卫星位置和速度需要导入数学库并使用开普勒方程以及其他相关的计算公式来进行计算。
同时,还需要考虑坐标系的转换和其他相关的因素。
这只是一个简单的介绍,具体的实现可能需要更多的代码和算法。
gps坐标的表示方法

GPS坐标的表示方法GPS(Global Positioning System)是一种通过卫星定位系统来确定地理位置的技术。
在GPS中,坐标是表示位置的关键要素。
本文将介绍GPS坐标的表示方法。
1. 经纬度表示法经纬度是最常用的GPS坐标表示方法之一。
地球可以被看作是一个球体,因此需要使用一个三维坐标系来确定一个地理位置。
经度表示位置的东西方向,而纬度表示位置的南北方向。
1.1 度分秒表示法度分秒(Degrees Minutes Seconds, DMS)是经纬度表示中最常见的一种方式。
它将经度和纬度表示为度、分和秒的组合。
例如,一个地点的经度为114度4分23秒,纬度为30度12分56秒,可以表示为:114°4’23’‘E,30°12’56’’N。
1.2 十进制度表示法十进制度(Decimal Degrees, DD)是另一种流行的经纬度表示法。
它简化了坐标的表示,将度、分和秒合并为一个小数。
例如,上述地点的经度为114.0730556度,纬度为30.2155556度。
在十进制度表示法下,可以表示为:114.0730556°E,30.2155556°N。
2. 坐标系表示法除了经纬度表示法外,GPS坐标还可以用坐标系表示。
坐标系是一个平面定义的二维坐标系统,可以用数学方式来计算位置。
2.1 WGS84坐标系WGS84(World Geodetic System 1984)坐标系是GPS系统默认使用的坐标系。
它由一组数学模型和测量数据所构成,用于在三维球体上进行位置的计算。
WGS84坐标系是国际标准,广泛用于航空、测量和导航等领域。
2.2 UTM坐标系UTM(Universal Transverse Mercator)坐标系是一种广泛应用于地理测量和地图绘制的坐标系统。
它将地球表面划分为60个纵向带和20个横向带,每个带都采用横轴为东西方向和纵轴为南北方向的笛卡尔坐标系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
N[34] = "Transmission time of message";
for (int i = 0; i < arrs.Length; i++)
N[22] = "i0"; N[23] = "Crc"; N[24] = "omega"; N[25] = "omega-spot";
N[26] = "IDOT"; N[27] = "Codes on L2 channel"; N[28] = "GPS Week"; N[29] = "L2 P data flag";
{
ListViewItem li = new ListViewItem();
li.Text = (i + 1).ToString();
li.SubItems.Add(N[i]);
li.SubItems.Add(arrs[i]);
listView1.Items.Add(li);
M[i] = double.Parse(arrs[i]);
string myinfo = readnavigation.ReadToEnd();
readnavigation.Close();
//把卫星广播星历里的D改为e,以便后续计算
string myinfor = myinfo;
myinfor = myinfor.Replace("D", "e");
//把数据分开读入到一个数组中存储
string[] N = new string[arrs.Length];
N[0] = "PRN"; N[1] = "Yer"; N[2] = "Mon"; N[3] = "day"; N[4] = "H"; N[5] = "M"; N[6] = "sec"; N[7] = "a0"; N[8] = "a1"; N[9] = "a2";
string[] split = new string[] { " " };
string[] arrs = myinfor.Split(split, StringSplitOptions.RemoveEmptyEntries);
double[] M = new double[arrs.Length];
StreamReader readnavigation = new StreamReader(filename, Encoding.Default);
string myinfo = readnavigation.ReadToEnd();
readnavigation.Close();
//把卫星广播星历里的D改为e,以便后续计算
N[22] = "i0"; N[23] = "Crc"; N[24] = "omega"; N[25] = "omega-spot";
N[26] = "IDOT"; N[27] = "Codes on L2 channel"; N[28] = "GPS Week"; N[29] = "L2 P data flag";
N[30] = "SV accuracy"; N[31] = "SV health"; N[32] = "TGD"; N[33] = "IODC Issue of Data";
N[34] = "Transmission time of message";
for (int i = 0; i < arrs.Length; i++)
listView1.Columns.Add("星历参数", 80, HorizontalAlignment.Center);
listView1.Columns.Add("参数值", 130, HorizontalAlignment.Center);
listView1.GridLines = true;
listView2.Columns.Add("历元", 55, HorizontalAlignment.Center);
listView2.Columns.Add("X", 115, HorizontalAlignment.Center);
listView2.Columns.Add("Y", 115, HorizontalAlignment.Center);
Ek = Mk + M[15] * Math.Sin(Ek0);
} while (Math.Abs(Ek - Ek0) > 1e-15);
Vk = Math.Atan((Math.Sqrt(1 - Math.Pow(M[15], 2)) * Math.Sin(Ek)) / (Math.Cos(Ek) - M[15]));
string myinfor = myinfo;
myinfor = myinfor.Replace("D", "e");
//把数据分开读入到一个数组中存储
string[] split = new string[] { " " };
string[] arrs = myinfor.Split(split, StringSplitOptions.RemoveEmptyEntries);
namespace20080754
{
public partial class Form1 : Form
{
private string stFilePath = string.Empty;
public Form1()
{
Initialolumns.Add("序号", 40, HorizontalAlignment.Center);
:GPS周开始时刻的升交点经度;
十一:卫星在地固坐标系的空间直角坐标为:
=R(- )(R(- )
R(- ),(R(- )为旋转矩阵,将其代入展开后得:
;
;
具体过程:
一:原始资料(卫星导航文件)
二:进行必要的界面设计:
三:编写代码:
using System;
using System.Collections.Generic;
N[10] = "IODE"; N[11] = "Crs"; N[12] = "delta-n"; N[13] = "M0";
N[14] = "Cuc"; N[15] = "e"; N[16] = "Cus"; N[17] = "sqrt(a)";
N[18] = "t0e"; N[19] = "Cic"; N[20] = "omega0"; N[21] = "Cis";
{
ListViewItem li = new ListViewItem();
li.Text = (i + 1).ToString();
li.SubItems.Add(N[i]);
li.SubItems.Add(arrs[i]);
listView1.Items.Add(li);
M[i] = double.Parse(arrs[i]);
using ponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Diagnostics;
listView1.Items.Clear();
//读取相对路径
string str1 = AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
string filename = str1 + "GPS卫星导航文件.txt ";
//读取卫星广播星历文件
N[10] = "IODE"; N[11] = "Crs"; N[12] = "delta-n"; N[13] = "M0";
N[14] = "Cuc"; N[15] = "e"; N[16] = "Cus"; N[17] = "sqrt(a)";
N[18] = "t0e"; N[19] = "Cic"; N[20] = "omega0"; N[21] = "Cis";
GPS
卫星坐标计算
班级:08测绘一班
姓名:浦绍佼
学号:20080754
实验目的:
根据导航文件求出卫星坐标。