GPS卫星定位坐标讲义计算与程序设计
卫星导航定位算法与程序设计_常用参数和公式讲解
《卫星导航定位算法与程序设计》课程常用参数和常用公式一览编制人:刘晖最后更新:2010年11月26日1、常用参考框架的几何和物理参数1.1 ITRFyy 主要的大地测量常数长半轴a=6.3781366×106m;地球引力常数(含大气层)GM=3.986004418×1014 m3/s2;地球动力因子J2=1.0826359×10-3;地球自转角速度ω=7.292115×10-5 rad/s。
扁率1/f =298.25642;椭球正常重力位U0=6.26368560×107 m2/s2;γ=9.7803278 m/s2;赤道正常重力e光速c=2.99792458×108 m/s。
1.2 GTRF主要的大地测量常数长半轴a=6.37813655×106 m;地球引力常数GM=3.986004415×1014 m3/s2;地球动力因子J2=1.0826267×10-3;扁率1/f =298.25769。
1.3 WGS84(Gwwww)主要的大地测量常数长半轴a=6.3781370×106 m;地球引力常数(含大气层)GM=3.986004418×1014 m3/s2;地球自转角速度ω=7.292115×10-5 rad/s。
扁率1/f =298.257223563;椭球正常重力位U0=62636860.8497 m2/s2;γ=9.7803267714m/s2;赤道正常重力e短半轴b=6356752.3142m;引力位二阶谐系数2,0C=-484.16685×10-6;第一偏心率平方2e=0.00669437999013;e'=0.006739496742227。
第二偏心率平方21.4 PZ90 主要的大地测量常数长半轴a=6.378136×106m;地球引力常数GM=3.9860044×1014 m3/s2;fM=3.5×108 m3/s2;地球大气引力常数a地球自转角速度ω=7.292115×10-5 rad/s。
GPS卫星坐标计算ppt课件
第二章 GPS卫星位置的计算
2)轨道摄动九参数 卫星平均运动角速度与计算值之差⊿n,或称⊿n为平近地点角速度的改正数;升交点赤经的变化率 ;轨道倾角的变化率 ;升交角距的正余弦调和改正项之振幅Cus、Cuc;轨道倾角的正余弦调和改正项之振幅Cis、Cic;轨道向径的正余弦调和改正项之振幅Crs、Crc。
第二章 GPS卫星位置的计算
*
最后得到各空间坐标系之间的转换关系:
第二章 GPS卫星位置的计算
*
第二章 GPS卫星位置的计算
在卫星运行轨道平面上,以地心为原点,至升交点方向为x轴方向, y轴垂直于x轴指向地极北方向,z轴向上垂直于轨道平面,构成的右手坐标系。由任意观测时刻t的卫星的开交角距为 t时刻卫星的三维坐标为
*
第二章 GPS卫星位置的计算
3) 2个时间参数 从星期日子夜零点开始度量的星历参考时刻toe ;星历表的数据龄期AODE, 即预报星历的外报时间间隔。
*
2.31卫星位置计算推导过程
在用GPS信号进行导航定位以及制定观测计划时,都必须已知GPS卫星在空间的瞬时位置。卫星位置的计算是根据卫星电文所提供的轨道参数按一定的公式计算的。 1、计算卫星运行的平均速度n 根据开普勒第三定律,卫星运行的 平均角速度n0可以用下式计算
*
3、地心空间直角坐标系
以地球自转轴为Z轴,而以地球赤道面为其基准面。由于地球坐标系是随同地球自转的旋转坐标系,显然X轴的方向不能指向与地球自转无关的春分点,而是采用地球赤道面与格林尼威治子午面交线的方向。
第二章 GPS卫星位置的计算
平均经度零点X`T(t)
GAST
平均经度零点X`T(t)
第二章 GPS卫星坐标的计算
2.3 卫星在轨瞬时位置计算
GPS卫星定位坐标计算及程序设计_97
2 2 2 ( X X ) ( YY ) ( Z Z ) c s p s p s p
3.2绝对定位基本方程
X X Y Y Z Z s p 0 s p 0 s p 0 d = d X d Y d Z d t R R R 0 0 0
a
s
2
式中:n和as 为广播星历参数。
用广播星历参数计算卫星位置
• 2、计算归化时间
t t toe
• 3、计算t时刻卫星的平近点角 M
s
M0为广播星历中给出的参考时刻toe的平近点角度 。 Es • 4、计算t时刻卫星的偏近点角 E Me s i n E
s
M Mnt ( t ) s 0 o e
2.3GPS卫星的信号
• 导航电文 导航电文是包含有关卫星的星历、卫星工作状态 时间系统、卫星钟运行状态、轨道摄动改正、大 气折射改正和C/A码捕获P码等导航信息的数据码 (或D码),是利用GPS进行定位的数据基础。 导航电文的内容包括遥测码(TLW)、转换码( HOW)、第一数据块、第二数据块和第三数据块5 部分。
• 以2009年5月7日南京工业大学江浦校区控 制网20号控制点观测数据为例,来说明如 何利用该程序计算卫星坐标和地面点的近 似坐标。该数据利用华测GPS接收机观测, 观测时间为2小时。
5.实例计算和精度分析
• 利用本程序计算得到的20号控制点的坐标如表5-1 所示:
表5-1 本程序计算的20号点坐标
• 11、计算观测时刻升交点的经度 = - G A S T
( t t ) 0 e 0 e
则:
G A S T = G A S T ( t ) ( tt ) 0 e 0
GPS卫星位置的计算(C++程序计算)
GPS卫星位置的计算利用C++编写了一段能计算单一瞬时卫星坐标的程序,在运行程序之前,需做部分准备工作:(1)在F盘下建立一名为“单一卫星广播星历”的txt文件。
(2)从“广播星历.txt”文件中拷贝从卫星PRN号开始的8行数据到“单一卫星广播星历.txt”中(3)在编辑选项中,将全部的“D”替换为“E”。
下面为我所选取的一个广播星历:18 06 8 25 6 0 0.0-2.472363412380E-04-1.023*********E-12 0.000000000000E+001.410000000000E+02-1.721875000000E+01 4.502687555010E-09 1.413760604187E+00-7.990747690201E-07 7.598234573379E-03 1.118145883083E-05 5.153709835052E+034.536000000000E+05-1.303851604462E-08-1.095067942661E-01 1.527369022369E-079.571235745530E-01 1.640000000000E+02-2.656176299285E+00-8.0374********E-09-5.193073455211E-10 1.000000000000E+00 1.389000000000E+03 0.000000000000E+002.000000000000E+00 0.000000000000E+00-1.024*********E-08 1.410000000000E+024.464490000000E+05 4.000000000000E+00程序设计部分:#include<stdio.h>#include<math.h>int main(){int i = 0;double n[50], n0, nn, t, tk, Mk, Ek, Vk, Yk, Gu, Gr, Gi, uk, rk, ik, xk, yk, zk, X, Y, Z, Lk, UT, yy, mm, JD, gpsz;FILE *fp;fp = fopen("F:\\单一卫星广播星历.txt", "r");if (fp == NULL){printf ("文件打开失败!\n");return 0;}while (! feof (fp)){fscanf(fp, "%lf", &n[i]);i++;}n0 = (sqrt(3986005E+8))/pow(n[17], 3);nn = n0 + n[12];/*计算卫星运行的平均角速度*/UT = n[4] + (n[5] / 60) + (n[7] / 3600);/*民用日的时分秒化为实数时*/if (n[1] >= 80)/*广播星历中年只有后两位,化为4位,参考1980年1月6日0点*/ {if (n[1] == 80 && n[2] == 1 && n[3] < 6){n[1] = n[1] + 2000;}n[1] = n[1] + 1900;}else{n[1] = n[1] + 2000;}if (n[2] <= 2){yy = n[1] - 1;mm = n[2] + 12;}if (n[2] > 2){yy = n[1];mm = n[2];}JD = (int)(365.25 * yy) + (int)(30.6001 * (mm + 1)) + n[3] + (UT / 24) + 1720981.5;/*化为儒略日*/gpsz = (int)((JD - 2444244.5) / 7);/*计算GPS周*/t = (JD - 2444244.5 - 7 * gpsz) * 24 * 3600;/*得出GPS秒*/tk = t - n[18];/*tk1为中间值,用以判断tk与正负302400的关系,然后返回到tk上*/ while (tk > 302400 || tk < -302400){if (tk > 302400){tk = tk - 604800;}else{tk = tk + 604800;}}/*计算归化观测时间*/Mk = n[13] + nn * tk;/*观测时刻的卫星平近点角*/Ek = Mk;Ek = Mk + n[15] * sin(Ek);Ek = Mk + n[15] * sin(Ek);/*迭代两次计算观测时刻的偏近点角*/Vk = atan(sqrt(1 - n[15] * n[15]) * sin(Ek)) / (cos(Ek) - n[15]);/*真近点角*/Yk = Vk + n[24];/*升交距角*/Gu = n[14] * cos(2 * Yk) + n[16] * sin(2 * Yk);Gr = n[23] * cos(2 * Yk) + n[11] * sin(2 * Yk);Gi = n[19] * cos(2 * Yk) + n[21] * sin(2 * Yk);/*摄动改正项*/uk = Yk + Gu;rk = n[17] * n[17] * (1 - n[15] * cos(Ek)) + Gr;ik = n[22] + Gi + n[26] * tk;/*经摄动改正后的升交距角、卫星矢径、轨道倾角*/xk = rk * cos(uk);yk = rk * sin(uk);zk = 0;/*卫星在轨道坐标系的坐标*/Lk = n[20] + (n[25] - 7.29211515E-5) * tk - 7.29211515E-5 * n[18];/*观测时刻t的升交点经度*/X = xk * cos(Lk) - yk * cos(ik) * sin(Lk);Y = xk * sin(Lk) + yk * cos(ik) * cos(Lk);Z = yk * sin(ik);/*卫星在WGS-84坐标系的坐标*/printf("该卫星在WGS-84坐标系中的坐标为:\nX = %lf m\nY = %lf m\nZ = %lf m\n", X, Y, Z);fclose(fp);return 0;}计算结果:该卫星在WGS-84坐标系中的坐标为:X = 9223153.692525 mY = 24133486.931401 mZ = 6032585.919385 m。
卫星导航定位算法与程序设计讲义
第1章
1.1 GPS 算法与程序设计 .......................................................................................... 1 1.2 MATLAB ................................................................................................................ 1 1.3 课程目的及内容 ................................................................................................. 3 第2章 程序设计基础........................................................................................ 4 2.1 程序设计基本思想 ............................................................................................. 4
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 单点定位程序流程亠、计算流程1、读取RlNEX N 文件,将所有星历放到一个列表(数组)ephlst 中2、读取RINEX C 文件,读取一个历元观测值epoch3、数据预处理根据epoch 中的卫星号和历元时刻T R 在ephlst 查找相应的卫星星历 准则 TR-ToEl < 3600.0 s 。
4、程序初始化,置测站概略位置为X r ,接收机钟差初值dt r5、选择epoch 中一颗卫星S i 观测值,设其伪距为T S& 计算卫星S i 的信号发射的概略时刻T S方法如下:a ) 卫星S i 的信号传播时间:∙°S= S i /c -dt r ∙ dt S i;dt S i为卫星钟差,需要进行相对论改正;b ) 卫星S i 的信号发射时刻:T Si=T R - O S i;C )卫星 S i 在T S i时刻的位置 X S (T Si)=(X S iY S iZS i I T S;d ) 对卫星位置X S iT S i进行地球自转改正,得到X W ST S;e ) 根据X W i(T S i 闲测站概略位置X r 计算卫星和测站的几何距离 R Sf ) 根据几何距离R S i求信号传播时间∙ιS = R S i/ c 。
I X 〕∣Xr1Y-Cdt r 0Zcdt r 一X 0 =第一次迭代,取X 。
=■01 0∣g)如果”I S70S l <10-,则退出迭代。
T l Si=T R―补即为卫星信号发射时刻h)否则-S = .i Si,回带到b)进行迭代。
7、求卫星S i方向余弦SSS(X-X i)bi S i (Y-Y i)-S i (Z-Z i)R S i R S R S8、求卫星S i在观测方程式中的余数项:C dt -∙d trop -'d iono 'D RTCM其中:J S ------ 卫星S i的伪距观测值;R S i――卫星S i到测站的几何距离;C dt S以米表示的卫星S i的钟差;d tro——对流层延迟改正量,单位米,用简化的hopfi模型计算;d iono――电离层延迟改正量,单位米,采用无电离层伪距组合观测值时,此项为0;D RTC M——对伪距的差分改正值,此处为°;9、选择epoch中下一颗卫星S j观测值,设其伪距为10、重复第6—9步,计算每颗卫星的系数和余数项11、将所有卫星的系数组成误差方程,以x,y, Z I Cdt r为未知参数进行求解,形式应该是:AX=Lb S0b S0b2S° 1A= b0 bl: b2 1X = [χy z Cdtl T L=[卢IS …I S I.b S b S i b S 1ji = 0,1, ,svnu mT12、求解法方程— A T PA J A T PL,求出定位结果X 。
GPS卫星位置的计算(C++程序计算)
GPS卫星位置的计算利用C++编写了一段能计算单一瞬时卫星坐标的程序,在运行程序之前,需做部分准备工作:(1)在F盘下建立一名为“单一卫星广播星历”的txt文件。
(2)从“广播星历.txt”文件中拷贝从卫星PRN号开始的8行数据到“单一卫星广播星历.txt”中(3)在编辑选项中,将全部的“D”替换为“E”。
下面为我所选取的一个广播星历:18 06 8 25 6 0 0.0-2.472363412380E-04-1.023*********E-12 0.000000000000E+001.410000000000E+02-1.721875000000E+01 4.502687555010E-09 1.413760604187E+00-7.990747690201E-07 7.598234573379E-03 1.118145883083E-05 5.153709835052E+034.536000000000E+05-1.303851604462E-08-1.095067942661E-01 1.527369022369E-079.571235745530E-01 1.640000000000E+02-2.656176299285E+00-8.0374********E-09-5.193073455211E-10 1.000000000000E+00 1.389000000000E+03 0.000000000000E+002.000000000000E+00 0.000000000000E+00-1.024*********E-08 1.410000000000E+024.464490000000E+05 4.000000000000E+00程序设计部分:#include<stdio.h>#include<math.h>int main(){int i = 0;double n[50], n0, nn, t, tk, Mk, Ek, Vk, Yk, Gu, Gr, Gi, uk, rk, ik, xk, yk, zk, X, Y, Z, Lk, UT, yy, mm, JD, gpsz;FILE *fp;fp = fopen("F:\\单一卫星广播星历.txt", "r");if (fp == NULL){printf ("文件打开失败!\n");return 0;}while (! feof (fp)){fscanf(fp, "%lf", &n[i]);i++;}n0 = (sqrt(3986005E+8))/pow(n[17], 3);nn = n0 + n[12];/*计算卫星运行的平均角速度*/UT = n[4] + (n[5] / 60) + (n[7] / 3600);/*民用日的时分秒化为实数时*/if (n[1] >= 80)/*广播星历中年只有后两位,化为4位,参考1980年1月6日0点*/ {if (n[1] == 80 && n[2] == 1 && n[3] < 6){n[1] = n[1] + 2000;}n[1] = n[1] + 1900;}else{n[1] = n[1] + 2000;}if (n[2] <= 2){yy = n[1] - 1;mm = n[2] + 12;}if (n[2] > 2){yy = n[1];mm = n[2];}JD = (int)(365.25 * yy) + (int)(30.6001 * (mm + 1)) + n[3] + (UT / 24) + 1720981.5;/*化为儒略日*/gpsz = (int)((JD - 2444244.5) / 7);/*计算GPS周*/t = (JD - 2444244.5 - 7 * gpsz) * 24 * 3600;/*得出GPS秒*/tk = t - n[18];/*tk1为中间值,用以判断tk与正负302400的关系,然后返回到tk上*/ while (tk > 302400 || tk < -302400){if (tk > 302400){tk = tk - 604800;}else{tk = tk + 604800;}}/*计算归化观测时间*/Mk = n[13] + nn * tk;/*观测时刻的卫星平近点角*/Ek = Mk;Ek = Mk + n[15] * sin(Ek);Ek = Mk + n[15] * sin(Ek);/*迭代两次计算观测时刻的偏近点角*/Vk = atan(sqrt(1 - n[15] * n[15]) * sin(Ek)) / (cos(Ek) - n[15]);/*真近点角*/Yk = Vk + n[24];/*升交距角*/Gu = n[14] * cos(2 * Yk) + n[16] * sin(2 * Yk);Gr = n[23] * cos(2 * Yk) + n[11] * sin(2 * Yk);Gi = n[19] * cos(2 * Yk) + n[21] * sin(2 * Yk);/*摄动改正项*/uk = Yk + Gu;rk = n[17] * n[17] * (1 - n[15] * cos(Ek)) + Gr;ik = n[22] + Gi + n[26] * tk;/*经摄动改正后的升交距角、卫星矢径、轨道倾角*/xk = rk * cos(uk);yk = rk * sin(uk);zk = 0;/*卫星在轨道坐标系的坐标*/Lk = n[20] + (n[25] - 7.29211515E-5) * tk - 7.29211515E-5 * n[18];/*观测时刻t的升交点经度*/X = xk * cos(Lk) - yk * cos(ik) * sin(Lk);Y = xk * sin(Lk) + yk * cos(ik) * cos(Lk);Z = yk * sin(ik);/*卫星在WGS-84坐标系的坐标*/printf("该卫星在WGS-84坐标系中的坐标为:\nX = %lf m\nY = %lf m\nZ = %lf m\n", X, Y, Z);fclose(fp);return 0;}计算结果:该卫星在WGS-84坐标系中的坐标为:X = 9223153.692525 mY = 24133486.931401 mZ = 6032585.919385 m。
卫星导航定位程序设计
卫星导航定位程序设计
1.接收器硬件设计
接收器硬件设计主要包括天线、收发器和处理器等组件的选择和连接。
天线是接收卫星信号的设备,需要选择合适的频段和增益。
收发器用于接
收和发送信号,需要选择能够接收卫星导航信号的收发器。
处理器是用于
处理和计算接收到的信号,需要选择能够处理卫星导航算法的处理器。
2.接收器软件设计
接收器软件设计主要包括信号接收和解码、数据处理和位置计算等功
能的实现。
信号接收和解码需要将接收到的卫星信号转换成数字信号,并
解码出导航数据。
数据处理包括对接收到的导航数据进行误差校正和数据
筛选等处理。
位置计算是根据接收到的导航数据计算出接收器所处位置的
过程,常用的定位算法有精确度位置系统(PPP)和差分GPS(DGPS)等。
3.位置数据处理和计算
4.界面设计与用户交互
总结:
卫星导航定位程序设计涉及到接收器硬件和软件的设计,以及位置数
据的处理和计算。
在接收器硬件设计中,需要选择合适的天线、收发器和
处理器等组件。
在接收器软件设计中,需要实现信号接收和解码、数据处
理和位置计算等功能。
在位置数据处理和计算中,需要进行数据预处理、
数据校正和数据融合等过程。
在界面设计与用户交互中,需要设计简洁明
了的界面,提供实时的位置信息,并方便用户进行操作和查询。
GPS卫星位置计算
GPS卫星位置计算实验学校:工业大学学号:20104168专业班级:测绘工程10-1班学院:土木与水利工程学院指导教师:庭叶一、实验目的1、通过对GPS卫星位置的计算,增强我们对《GPS测量原理与应用》课程的理解,使我们牢固掌握GPS测量的基本原理和过程,熟悉GPS测量数据处理的基本技能和计算方法。
2、提高运用计算机语言编程开发能力,运用测量平差知识、数学知识和计算机知识,通过给定的程序算法,编制程序实现GPS卫星位置的计算过程。
二、实验容与要求1、通过课堂对GPS测量原理的学习,在课后自主完成GPS卫星位置的计算过程并按照课本上的步骤设计程序完成GPS卫星位置的计算过程;2、要求每位同学独立完成GPS卫星位置的计算过程,编写程序,调试程序,并编写程序设计文档。
要求过程和算确、程序运行正确、设计文档完备;三、课程设计工具运用自己熟悉的编程开发语言(C、C#、C++、VC、VS、VB、FORTRAN等)。
四、实验总结1、实验简单介绍运行后的主界面比以前做的程序要漂亮些,给界面增加了一副图片,让界面看起来还是比较的漂亮,但由于起始的参数较多,因此,界面整体看起来比较的拥挤,但这个不影响程序的计算过程。
整个程序的功能不是很多,但满足了基本的要求,能够进行卫星的位置计算,并且能够达到很好的精度,与课本上给出的结果相差很小,符合实验的要求。
为了避免繁琐的数据的输入,在本次程序中我增加了一个的功能按钮,点击后,程序自动给相关的起始数据赋值并显示在界面上,如图所示:这些数据是教材《GPS测量原理与应用》41页的卫星星历数据;用户也可以根据需要更改相应的数据,如上图所示,当点击按钮时,就可以在对话框相应的位置计算出卫星的坐标,如下图所示:其中,计算出的卫星的坐标为Xk = 4589210.3510074820,Yk = 25371005.6999580190,Zk = -5618292.2998269377,这是卫星在地固坐标系中的坐标,如果还知道极移参数就可以计算出卫星在协议地球坐标系中的坐标了。
卫星导航定位算法与程序设计_常用参数和公式讲解
《卫星导航定位算法与程序设计》课程常用参数和常用公式一览编制人:刘晖最后更新:2010年11月26日1、常用参考框架的几何和物理参数1.1 ITRFyy 主要的大地测量常数长半轴a=6.3781366×106m;地球引力常数(含大气层)GM=3.986004418×1014 m3/s2;地球动力因子J2=1.0826359×10-3;地球自转角速度ω=7.292115×10-5 rad/s。
扁率1/f =298.25642;椭球正常重力位U0=6.26368560×107 m2/s2;γ=9.7803278 m/s2;赤道正常重力e光速c=2.99792458×108 m/s。
1.2 GTRF主要的大地测量常数长半轴a=6.37813655×106 m;地球引力常数GM=3.986004415×1014 m3/s2;地球动力因子J2=1.0826267×10-3;扁率1/f =298.25769。
1.3 WGS84(Gwwww)主要的大地测量常数长半轴a=6.3781370×106 m;地球引力常数(含大气层)GM=3.986004418×1014 m3/s2;地球自转角速度ω=7.292115×10-5 rad/s。
扁率1/f =298.257223563;椭球正常重力位U0=62636860.8497 m2/s2;γ=9.7803267714m/s2;赤道正常重力e短半轴b=6356752.3142m;引力位二阶谐系数2,0C=-484.16685×10-6;第一偏心率平方2e=0.00669437999013;e'=0.006739496742227。
第二偏心率平方21.4 PZ90 主要的大地测量常数长半轴a=6.378136×106m;地球引力常数GM=3.9860044×1014 m3/s2;fM=3.5×108 m3/s2;地球大气引力常数a地球自转角速度ω=7.292115×10-5 rad/s。
卫星导航定位算法与程序设计_第11课_SP3文件读取
内容
概述 SP3文件格式
SP3文件的组织格式 SP3文件格式说明
SP3文件的组织形式
结构划分
节、记录(行)、字段和列
组织形式
文件均分为两节
文件头:前20行 数据记录:20行之后
每个记录占一行,不超过60列宽
9
SP3文件格式说明①
内容
#aP2001 ## 1106 0.00000000 900.00000000 51986 0.0000000000000 + 28 1 2 3 4 5 6 7 8 9 10 11 13 14 17 18 19 20 + 21 22 23 24 25 26 27 28 29 30 31 0 0 0 0 0 0 + 0 0 0 卫星轨道 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0 数据的精 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0度 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++ 4 5 5 5 4 5 5 4 5 4 5 5 5 5 5 5 4 ++ 5 5 5 4 4 4 4 7 5 4 4 0 0 0 0 0 0 ++ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 %c cc cc ccc ccc cccc cccc cccc cccc ccccc ccccc ccccc ccccc %c cc cc ccc ccc cccc cccc cccc cccc ccccc ccccc ccccc ccccc %f 0.0000000 0.000000000 0.00000000000 0.000000000000000 %f 0.0000000 0.000000000 0.00000000000 0.000000000000000 %i 0 0 0 0 0 0 0 0 0 %i 0 0 0 0 0 0 0 0 0 /* RAPID ORBIT COMBINATION FROM WEIGHTED AVERAGE OF: 历元时刻 一个历元 /* cod emr esa gfz igu jpl ngs sio usn 卫星 卫星坐标 PRN 卫星钟差 轨道数据 /* REFERENCED TO GPS CLOCK AND TO WEIGHTED MEAN POLE: 的卫星轨 号 类型标示 /* CLK ANT Z-OFFSET (M): II/IIA 1.023; IIR 0.000 道数据 符 * 2001 3 18 0 0 0.00000000 P 1 1137.662333 24450.419935 10434.025839 168.957503 P 2 22554.164846 6701.404774 -12156.548088 -354.131603 P 3 -12835.803249 19823.526060 12033.738279 12.655252 P 4 26036.203647 -5147.508988 -2778.935922 693.981565 P 5 -8981.105708 -20915.047563 -13823.748269 291.406843 P 6 -7243.996679 -19828.275194 16147.726225 -0.315725 P 7 15634.362803 -542.356344 -21103.968489 578.771698
卫星导航定位算法与程序设计(2014) - 第1课
12
软件开发前的准备工作
• 问题定义
– 必须弄清楚你想要解决的问题是什么 – 本课程的问题定义:实现事后处理的GPS标准单点定 位、测速的软件。
13
准备工作
• 需求分析
– 需求详细描述了一个软件系统需要解决的问题
• 明确的需求可以保证是由用户而不是程序员决定系统的功能。 • 明确的需求也可以避免引起争议。 • IBM、GTE、TRW 的数据表明.修正在总体结构阶段发现的 需求错误,将比当时就发现并 修正的成本要高出 5 倍,如果 是在编码阶段,要高出 10 倍,在单元或系统测试阶段,高 20 倍, 在验收测试阶段,高 50 倍,而在维护阶段,竟要比原来 高出多达 100 倍! • 充分进行需求分析是一个项目成功的关键
时间与坐标转换算法 卫星位置与速度计算方法 误差改正算法 。。。。。。
掌握C/C++程序设计方法
项目设计方法 数据结构 编码方法 调试方法
3
课程内容①
软件创建方法与基本过程 C/C++程序设计方法:开发工具,编译,调试 C/C++编码标准 基本算法
5
课程安排①
讲 课 内 容 及 时 数 日/月 至 日/月 周 次 学 时 练习内容及时数 习题课 等 课堂 时数 课外 时数 实验(上机)内容及时数 课堂实习(实验、上 机)内容 课堂 时数 (教 材 章 节 、 名 称)
课 外 时 数
17/1021/10 24/1028/10 31/104/11 7/1111/11 14/1118/11 21/1125/11 28/112/12 5/129/12
有关时间的算法 有关坐标的算法 矩阵运算
GPS卫星坐标计算
卫星定位技术与方法--根据播送星历参数计算卫星坐标作业报告指导教师:熊永良班级:测绘二班学生姓名:段海东学生学号:2 0 0 8 0 7 8 3作业日期:2021年12月08日一 .数据2..二 .计算步骤2..1.平均角速度(mean angular speed)22.规化时亥U (normal time)3.3.平近点角(mean anomaly)34.偏近点角(eccentric anomaly) 35.真近点角(true anomaly) 36.升交距角(argument of ascending node) 37. 轨道向径(Orbital radius ) 38.扰动改正(Perturbed correction) 410.卫星在开交点轨道直角坐标系中的坐标 411. 升交点经度(Longitude of ascending node ) 5三 .源程序5..四.程序运行结果1.4七.作业体会15根据播送星历参数计算卫星坐标数据:根据以下的播送星历参数计算 UTC2004年1月30日8点分00秒一20分00秒,每隔一分钟的PRN7的卫星坐标.Compute the coordinate of PRN7 withinterval of 1 minute. Navigation data:2NAVI^TIQII MTARINEX VERSION / TEPEEFHTOt 解£3-L 版本3Q-JAN-04 碌;41 PCM / RUH BY / DATEHMD OF HEADEB4 i i sc, s o a a- a, 5/ ::a21332157D-04-0. eaz 17 55 IT ? 23> 11 a. oa maoa oaaoo CHOO D. 13SDOOD0OOQ(nm)3 QB6先町50叩0加02 0.14755430 13TD-O0 (J. ]LDO13O<7339[H)1 D,号g 然BD~05 Q 朋0026源B 360Mz 飙 5口密5309995巾45 0,5L535T^7]7[KM口,4B 口 BOOOOOOOmm)6 0. SieeOSFSaGgtD-OT 0. 305054077a39t>HJL 0.仇 9663^65662 D~07 Q,照l 『旄7例^计00 0.27946875000ai>+03-0.10S701071O0M0-0,8L86L98K3€3D -08 J. i ;L_J.L.7_L.liJ T ,, Il QJQ 口 QOWW® ⑪用 I 0 …一,一 一」〔二「」.,二刀匚 CO 工加// D, QDO(XX)(X)(XKOIM)0 Q OQOOTOOOOWaCHQO-O- 60时蹒糕0 AOS 0F 13 90000 OOOOOOX^ D, QEX)瞅MQtXDM)口7 4 1 a0 9 0 Oi 0 Q62932S3&7313M 3-0 54K96鸵1064D-11 QQOQQWQIXKKKJtHOO D,31(JWJQ[XKMKD[M)3 Q 5肝312印叩0研02 0.4350059387771)-09-0,31<9904TfiaT3IHOl 0. 2754B5ZL7571[>-0S 0. 125S56591351D-01 0. 90375542640715-05 (J. 5 L5SF3Q 38319(^04 口, 4W 瞅(XKXXKMHOg UZ067码611册处■能 0.193198315097W1-0.7254313062001)-07 D, 93了曲094"5网口 0. ISierSODOOdOMa-O. L85137234909DKIL-0. 7SlflS»109M2IH)8 -0,】3]醛4"42alM )9 CH 口QOOOOOOOQg+Ql 0. L25EOOOOOCK)OOKH Q. 000000000000 1nm D, ODODOODOOWDQHIO 0,OOOOOOOOOOOOIHK-O. Lafi2M514923D-O8 0.2100000000001X)3 D. QQOOCOO3QOOCWQ卫星导航文件格式:PRN 购/H 工SKit (iicotid^?[登二财弓〕K)IX@>出比小〕r radian 曲 MXtsifirs)四侬艰t驶际回: 不以:这「如 U {sec cfGPS^tek^口神必 埼孰礴由国〕年 Iraier s)而〔诬皿j |港徊好;OMGA DC 7 (2也 5 稣 tDOT 值蒯噌胆; C 湎 ctt L2 diannel GP5AV«k - LiPlitafla? SV anzrzcy .底:g SVhtlrETGDf^irafc'33C cfDi :i Tstfm :<s :cti \at M mt*sa«>fcondispare5pafispine计算步骤 :The steps for satellite coordinates1 .平均角速度 (mean angular speed):n由播送星历获得,GM=3.986005e+14n n 0 nGM2.规化时刻(normal time):t k t t ot0(由播送星历获得),t为GP姗秒3.平近点角(mean anomaly):M k M o n t kM0(由播送星历获得)4.偏近,电角(eccentric anomaly) :E k M k e sin E k迭代求解:初始值取E=M以弧度为单位5.真近点角(true anomaly):1e2 sin E kV k arctancosE k e6.升交品巨角(argument of ascending node)0 V k 近地点角距(argument of perigee) 7.轨道向径(Orbital radius ):r k a (1 e cosE k)8 .扰动改正(Perturbed correction ):升交角距(Argument of ascending node轨道向径(Orbital radius)?轨道顷角(Orbital inclination)是升交角品巨 (the argument of ascending node)9 .改正后升交角距、轨道向径、轨道倾角 改正后开交角品E ( Corrected argument of ascending nodu k 0 u改正后的轨道向径(Corrected orbital radius)r ka (1 e cosE k ) r改正后的轨道倾角(Corrected orbital inclination :i k i . i (IDOT)t k10 .卫星在开交点轨道直角坐标系中的坐标:如下列图所示u= Gccos2 C uS sin 2 0rC © C O S 2C rS sin 2 0iC iC cos 2C iS Sin 2 0x k r k cosu kY k r k sinu k11.升交,电经度(Longitude of ascending node ):如下列图所示t 0 ( e)t ke t 0e__ -5e 7.2921151467 10 rad/s12.在地固坐标系中的卫星位置 ( Expressed in spheric coordinate systemk X k cos k Y k cosi k sin k Y k X k sin k Y k cosi k cos k Z k Y k sini k 三.源程序:using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;using System.Text.RegularExpressions;namespace Test (private void button1_Click(object sender, EventArgs e) (// 读取相对路径 string str1 =AppDomain.CurrentDomain.SetupInformation.ApplicationBase;string filename = strl + "navigation data.txt "//读取卫星播送星历文件public partial class Forml : Form (public Form1() (InitializeComponent(); listView1.Columns.Add(" listView1.Columns.Add(" listView1.Columns.Add(" listView1.GridLines = true; // listView1.View = View.Details;// listView1.HeaderStyle头进行设置listView2.Columns.Add(" listView2.Columns.Add("x listView2.Columns.Add("y listView2.Columns.Add("z listView2.GridLines = true; // listView2.View = View.Details;// listView2.HeaderStyle头进行设置}序号", 40); 星历内容",130); 导航数据", 130);显示表格线 显小表格细节=ColumnHeaderStyle.Clickable;// 对表时间〞,60); 坐标",150); 坐标",150); 坐标",150);显示表格线 显小表格细节=ColumnHeaderStyle.Clickable;// 对表StreamReader myreader = new StreamReader(filename, Encoding.Default);string myinfo = myreader.ReadToEnd();myreader.Close();// 把卫星播送星历里的D改为e,以便后续计算string mystring = myinfo;string myinfor = mystring;myinfor = mystring.Replace("D", "e");//把数据分开读入到一个数组中存储string[] split = new string[] { " " };string[] arrs = myinfor.Split(split, StringSplitOptions.RemoveEmptyEntries);double[] M = new double[arrs.Length];// 星历代码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";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";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++){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]);}double t0e=460800.00;double t;double[] XK = new double[21];double[] YK = new double[21];double[] ZK = new double[21];for (int l = 0; l < 21;l++ ){//计算平均角速度double GM = 3986004.418e008;double n, n0;n0 = Math.Sqrt(GM / (Math.Pow(M[17], 6)));n = M[12] + n0;//规划时刻t=t0e+l*60;double tk = t-t0e;double Mk = M[13] + n * tk;//迭代计算平近点角的计算double Ek, Ek1;Ek = Mk;Ek1 = Mk + M[15] * Math.Sin(Ek);do(Ek = Ek1;Ek1 = Mk + M[15] * Math.Sin(Ek);)while (Math.Abs(Ek1 - Ek) > 1e-15);//计算真近点角double Vk = Math.Atan(((Math.Sqrt(1 - M[15] * M[15]) * Math.Sin(Ek))) / (Math.Cos(Ek) - M[15]));//反正切值的象限处理double A1 = Math.Atan(((Math.Sqrt(1 - M[15] * M[15]) * Math.Sin(Ek))));double A2 = Math.Cos(Ek) - M[15];if (Vk < 0)(if (A1 < 0 && A2 > 0)Vk += 2 * Math.PI;)if (A1 > 0 && A2 < 0)(Vk += Math.PI;))else(if (A1 <= 0 && A2 <= 0)Vk = Vk + Math.PI;)//计算升交角距double fk = Vk + M[24];//摄动改正值的计算doubledu = M[14] * Math.Cos(2 * fk) + M[16] * Math.Sin(2*fk);doubledr = M[23] * Math.Cos(2 * fk) + M[11] * Math.Sin(2*fk);doubledi = M[19] * Math.Cos(2 * fk) + M[21] * Math.Sin(2*fk);//摄动改正double uk = fk + du;doublerk = Math.Pow(M[17], 2) * (1 - M[15] * Math.Cos(Ek)) + dr;double ik = M[22] + di + M[26] * tk;//计算卫星在开交点轨道直角坐标系的坐标double xk = rk * Math.Cos(uk);double yk = rk * Math.Sin(uk);//计算开交点经度double we = 7.2921151467e-05;double jdt = M[20] + (M[25] - we) * tk - we * M[18];//卫星在地固坐标系中的空间直角坐标XK[l] = xk * Math.Cos(jdt) - yk * Math.Cos(ik) * Math.Sin(jdt);YK[l] = xk * Math.Sin(jdt) + yk * Math.Cos(ik) * Math.Cos(jdt);ZK[l] = yk * Math.Sin(ik);)//输出卫星在地固坐标系中的空间直角坐标for (int i = 0; i < 21; i++)(ListViewItem list = new ListViewItem();list.Text ="第"+ i.ToString() + " 分钟";list.SubItems.Add(XK[i].ToString());list.SubItems.Add(YK[i].ToString());list.SubItems.Add(ZK[i].ToString());listView2.Items.Add(list);)private void button2_Click(object sender, EventArgs e)(// 读取相对路径string str1 =AppDomain.CurrentDomain.SetupInformation.ApplicationBase;string filename = str1 + "navigation data.txt ";//读取卫星播送星历文件StreamReader myreader = new StreamReader(filename, Encoding.Default);string myinfo = myreader.ReadToEnd();myreader.Close();//把卫星播送星历里的D改为e,以便后续计算string mystring = myinfo;string myinfor = mystring;myinfor = mystring.Replace("D", "e");//把数据分开读入到一个数组中存储string口split = new string[] { " " };string[] arrs = myinfor.Split(split,StringSplitOptions.RemoveEmptyEntries);// 星历代码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";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";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";//把卫星播送星历文件内容输出到listView进行查看for (int i = 0; i < arrs.Length; i++){ListViewItem li = new ListViewItem();li.Text = (i + 1).ToString();li.SubItems.Add(N[i]);li.SubItems.Add(arrs[i]);listView1.Items.Add(li);}}} }四.程序运行结果星历内容的读取、显示:卫星坐标计算结果:时间支坐标建标第咐钥 1-13113645.4&3S005 1609ZCE7.2&E309ZieSZ6OZ4.39269T& 第1分1-13W56BT,T535£57 ■110556,南1303 165(ng 31Kx 4第渤钥 1T 3557口16,2703413 1632^9,1953Z22 16385603.3302314 第3分1-13力7在乙5T 65569 16H6S96.633TOOT 16 烟 543.7533164 第吗钥 1-13396496.3567713IB1&5239.29E3028 161302&3,475666& 第5分1-1^014335.424OCK 16163EL7,4^64011 16012771.1636663 第凶朝 1-14132225,721007516202471.5293033 l5S8607B.^75&04 第俏智 1-1 <1243651.3214094 16221241.635Z33T 15756138.3209013 第吩钓 1-14X4134.430894716240116.579861915 陷 116.4 10132 第涉智 1-1447363T,333356G16259091.9QEB50Z154 兆 B69.35 比第 1 口分钟 -1459216£. 8&7口子曰 16278151,6&923S515357457.1625691第 1L 分钟 -14704702.3T56222 16297236 47124T3 152348S8.9691003 第1工分钟 -14S 葭印.彩93449 1631&49J.6500163 — 117% &114355 第 13分钟 -14926799.201Q522 16335751.1375349 14966323.8101145 第 14分钟 -15036341. EE2E512 16353056.S561E9T 14B303银41总咨 第 15 分钟 -15144869,93113^3 1637^96.630576 14日93252.羽 6792 第 16 分钟 -15E523T6.1r B 35 国 9 163937S5.6&97655 14555051.472E第17分钟 T5358朋1,592.15 16413146.2&85T02 1441s7弭 02 笔 543 第归分钟 -15<1&4310,4^2116 16432535.359609914ZT53T0,1200T4B第1日分钟-15%仃级电721, 16451-9L6.61T5113KL33910.02=36661第匆分钟 -15&T20S5,4436巩8 16411231.45^80113991334. J7S2333运行界面:品三~p 星早历却嘻 用弓里历的考刷藏苗Jk汴同理奇百标理标1FFJ 7?Yer 4 3M CIL 1 4d 班30 5Ji E 6M Q 7see 0.d8W 讯眈Q 区小乱31^ @Alfl 543^00210^-11L 0衣Q.. OODDCOXDaUDafa] LL ICBE 0..2:OtO :CCOOCiD e KiO 12Crs0.5JT!H?5nOOOn**T2 L3Me (M853J5Q£8T 『TE L4MO -O.EL4,39e4TW7Ze+01 l 与CtocL&g OJ2S3DOCG1351.-Ol IT Cus Q ^03F55®ftinT^C&L8%r 七1>0..5L5OT3O398lB «HX L9tCe O..460»LCC00ODel£fi ZDCic D 20&?^3BI]5«5*<S第.分肿以*1*1工*&町口1,&C5KCT.26230S216623024.(^0375 第 1 总冲7353REST-S3S257161IDS5E 2WL1S316507433. 33LF3S44窠芝以珅-J3657D18.£?fl&113l&iEHB4BL 】053型2163SE BOB. 3302314 隼3分神13Tm 22 07TOC9体1 的涮 69甘叼162^540. Tj3CHM 第4±钟']15K*I9S 3597713,EM382S161非363,415«瞄第5攵钟一招.1怎5.髭扣口16:日汨17. 4楣4U11WOLEm.GH 日配舁 版会神74I3222E RI0C7SJfiiO24TJ ^M3633iSSfiStm. £1756&1第1分B -]赦*661一*140.11胧山冽1.H 鸨2初聘吗B1葬,立皿口13 阴吊r 神Ifi24nliF 5T 叫G1P Tfiim V亲-]417i8E3T. 3S335E61&25工01. 90EE5CCJ549BB5Q. =5ZB3&1弟】.小■TASSeifiLGGmm l 盥T 凯弘一白时启住1S3GT4S?.耳2SS&1 革 L W 秣-14TD4702IW9r?W 4T L ;4731 整34网 9gl 口g弟山涧-]IJ16550咋方4叫l^LMQl 6制网超15W11T4, E] L ,3%第 13 分钟-J43£ffTg^.£Ol05S 1 的 3575L 1 犷5总曰1^66323.61^145 亲J4分科 *]bJ3Uql 比011Hd3aWJI]L4EH弟叫封冒]门4«E£9(M1力口1,W7OX.GXC7U1如知汉.蓼仃州 第IH"ii 翻757c pEF1 T 泊窿诩]小9加£6 硼T 陵14555至1 <122作业体会:此次作业,收获颇多.起初由于自己的疏忽,在真近点角的计算 时忘了处理象限,导致做后的结果都差了一个负号,所以不管做什么都得认真、 细心;想要做好一件事情,必须有百分百的投入,有足够的专注度;发现自己对 GPS 卫星定位技术与方法这方面知识越来越感兴趣,以后要多加学习.『讦SOM里粽] ■■("in r"ii IIIRF in!""!! mr'iin l ■l ・ll,F,,,,i-堇亚俵一由于教材上、老师的课件上都有明细的计算步骤, 作业起来很方便,不容易出错,经过计算,发现程序运行出来的卫星坐标结果与教材上给的坐标有较大的差距,这个差距到达几十米,检查程序也没有发现问题,问了班上几个同学,他们也都说存在这样的问题,所以,恳请老师给予指点.。
GPS导航定位原理以及定位解算算法
GPS导航定位原理以及定位解算算法全球定位系统(GPS)是英文Global Positioning System的字头缩写词的简称。
它的含义是利用导航卫星进行测时和测距,以构成全球定位系统。
它是由美国国防部主导开发的一套具有在海、陆、空进行全方位实时三维导航与定位能力的新一代卫星导航定位系统。
GPS用户部分的核心是GPS接收机。
其主要由基带信号处理和导航解算两部分组成。
其中基带信号处理部分主要包括对GPS卫星信号的二维搜索、捕获、跟踪、伪距计算、导航数据解码等工作。
导航解算部分主要包括根据导航数据中的星历参数实时进行各可视卫星位置计算;根据导航数据中各误差参数进行星钟误差、相对论效应误差、地球自转影响、信号传输误差(主要包括电离层实时传输误差及对流层实时传输误差)等各种实时误差的计算,并将其从伪距中消除;根据上述结果进行接收机PVT(位置、速度、时间)的解算;对各精度因子(DOP)进行实时计算和监测以确定定位解的精度。
本文中重点讨论GPS接收机的导航解算部分,基带信号处理部分可参看有关资料。
本文讨论的假设前提是GPS接收机已经对GPS卫星信号进行了有效捕获和跟踪,对伪距进行了计算,并对导航数据进行了解码工作。
1地球坐标系简述要描述一个物体的位置必须要有相关联的坐标系,地球表面的GPS接收机的位置是相对于地球而言的。
因此,要描述GPS接收机的位置,需要采用固联于地球上随同地球转动的坐标系、即地球坐标系作为参照系。
地球坐标系有两种几何表达形式,即地球直角坐标系和地球大地坐标系。
地球直角坐标系的定义是:原点O与地球质心重合,Z轴指向地球北极,X轴指向地球赤道面与格林威治子午圈的交点(即0经度方向),Y轴在赤道平面里与XOZ构成右手坐标系(即指向东经90度方向)。
地球大地坐标系的定义是:地球椭球的中心与地球质心重合,椭球的短轴与地球自转轴重合。
地球表面任意一点的大地纬度为过该点之椭球法线与椭球赤道面的夹角φ,经度为该点所在之椭球子午面与格林威治大地子午面之间的夹角λ,该点的高度h为该点沿椭球法线至椭球面的距离。