[TOC]
时间系统:时间起点基准 + 时间间隔尺度
-
恒星时(Sidereal Time,ST):以春分点为基本参考点,由春分点周日视运动确定的时间称为恒星时。
-
真太阳时:以真太阳作为基本参考点,由其周日视运动确定的时间称为真太阳时。
-
平太阳时:(由于真太阳的视运动是不均匀的,所以引入虚拟的在赤道上匀速运行的平太阳,其速度等于真太阳周年运动的平均速度),平太阳连续经过同一子午圈的时间称为一个平太阳日,分为 24 个平太阳时。
-
历书时(Ephemeris Time,ET):以地球公转为基准的度量时间的系统。(秒长规定:1900年1月1日12时整回归年长度的 1/31556925.9747;起始历元定在1900年1月1日12时)太阳系质心力学时TDB,地球质心力学时TDT。
-
原子时(Atomic Time,AT):是一种以原子谐振信号周期为标准,并对它进行连续计数的时标。
UTC、TT、各种GNSS时都是建立在原子时基础上,用各自的原子钟来维持的,只是起点的选择、跳秒与否,已经因为用于维持的原子钟不同而产生的细微差别。
-
国际原子时(International Atomic Time,TAI):由各实验室的原子钟维持。取 1958 年 1 月 1 日 0 时 0 分 0 秒世界时(UT)的瞬间作为同年同月同日 0 时 0 分 0 秒TAI。(事后发现,在该瞬间原子时与世界时的时刻之差为0.0039秒。这一差值就作为历史事实而保留下来。)
-
区时:全球化为24个时区,在同一时区采用该时区中央子午线上的平太阳时为区时。
-
世界时UT:0区的区时,即格林尼治起始子午线上的平太阳时为世界时UT
- UT0:直接天文观测的世界时
- UT1:经过极移改正的世界时
- UT2:再经过地球自转速度季节性改正的世界时
-
协调世界时(Universal Time of Coordination,UTC):以原子秒长为计量单位,在时刻上与平太阳时之差小于 0.9 秒的时间系统。UT1 + 跳秒。
C、C++ 获取的系统时间默认是 UTC
-
跳秒:leap second,在 1980 年 1 月 6 日 0 时 GPS 时与 UTC 时对齐,GPS 时是依靠稳定的原子钟来维持的,也就是说它的单位时间长度是很稳定的;而协调世界时是根据天文确定的,和地球自转有关,但是地球自转速度在不断变慢,也就是说协调世界时的单位时间长度并不是恒定的。但是总不能他们稍微不一致就调吧,这样也太麻烦了,所以就规定,当两者相差接近1秒时,就让UTC跳一秒。可看官网。
rtkcmn.c 有跳秒的定义
static double leaps[MAXLEAPS+1][7]={ /* (y,m,d,h,m,s,utc-gpst) */ {2017,1,1,0,0,0,-18}, {2015,7,1,0,0,0,-17}, {2012,7,1,0,0,0,-16}, {2009,1,1,0,0,0,-15}, {2006,1,1,0,0,0,-14}, {1999,1,1,0,0,0,-13}, {1997,7,1,0,0,0,-12}, {1996,1,1,0,0,0,-11}, {1994,7,1,0,0,0,-10}, {1993,7,1,0,0,0, -9}, {1992,7,1,0,0,0, -8}, {1991,1,1,0,0,0, -7}, {1990,1,1,0,0,0, -6}, {1988,1,1,0,0,0, -5}, {1985,7,1,0,0,0, -4}, {1983,7,1,0,0,0, -3}, {1982,7,1,0,0,0, -2}, {1981,7,1,0,0,0, -1}, {0} };
-
GPS 时(GPS Time,GPST):由 GPS 星载原子钟和地面监控站原子钟组成的一种原子时基准,与国际原子时保持有
19s
的常数差,并在 GPS 标准历元 1980 年 1 月 6 日 0 时与 UTC 保持一致。GPS 系统内部所采用的时间系统是 GPS 时,其时间零点定义为1980年1月5日 夜与1980年1月6日晨之间的子夜。GPS时系统在标示时间时所采用的最大时间单位为周(week,604800秒),其标示时间的方法是从1980年1月 6日0时开始起算的周数(WN-Week Number)加上被称为周内时间(TOW-Time of Week)的从 每周周六/周日子夜开始起算的秒数。 例如:“1980年1月6日0时0分0秒”用GPS时标示法则为“第0周0秒”;而 “2004年5月1日10时5分15秒”用GPS时标示法则为“第1268周第554715秒”。 在GPS卫星所发送的导航电文中,时间信息的标示就是采用这种形式。
-
北斗时(BDS Time,BDT) :同 GPST 一样由原子钟保持基准,在 2006 年 1 月 1 日 0 时与 UTC 保持一致。因为从 1980 年到 2006 年共有 14 次跳秒发生,所以 BDT 和 GPST 相差 14 秒且基本恒定不变。
-
GLONASS时(GLONASS Time,GLST):以莫斯科本地协调时 UCTsu 定义,其值与 UTC 存在 3 小时时差。
-
Galileo时(Galileo Time,GST):同 GPST 保持一致。
-
QZSSS时 (QZSS TIME , QZSST) :同 GPST 保持一致。
-
判断闰年:年份是 4 的倍数但不是 100 的倍数或者年份是 400 的倍数。
-
GPS 周:(GPS Week,GPSW) GPS系统内部描述时间的一种方式,它的起点为 1980 年 1 月 5 日夜晚与 1980 年 1 月 6 日凌晨之间 0 点(这天是周日,老外经常周日表示一周的第一天,以
0
表示)。rtkcmn.c中有GPST(GST)、GLST、BDT的时间基准的的定义
static const double gpst0[]={1980,1, 6,0,0,0}; /* gps time reference */ static const double gst0 []={1999,8,22,0,0,0}; /* galileo system time reference */ static const double bdt0 []={2006,1, 1,0,0,0}; /* beidou time reference */
-
儒略日:(Julian Day,JD) 是指由公元前 4713 年 1 月 1 日,协调世界时中午 12 时开始所经过的天数。采用连续的数值来标示时间,适合科学计算,且可以很方便地将采用不同方法所标示的时间联系起来,但无法直接反映季节等信息,故日常生活中不常用。
-
简化儒列日:(Modified Julian Day、MJD),由于儒略时的计时起点距今较为久远,若将现今时间用儒略时来表示,数值 非常大。1973年国际天文学联合会提出 了约化儒略日的时间标示法,其起点是 1858 年 11 月 17 日世界时 0 时。
MJD = JD - 2400000.5
-
年积日:(Day Of Year,DOY) 一年当中的第几天,其取值范围为
[1,365]
,在 GPS 中的用途:年积日通常用来区分观测时段,常用于 GPS 观测文件的命名。例如,在 RINEX 格式中就规定:在数据文件的8字符主文件名中,第5-7个字符为观测起始时刻的年积日。
-
天内秒:(Second Of Day,SOD) 一天中的第几秒,其取值范围为
[1,86400]
-
周内秒:(Second Of Week,SOW) 一周中的第几秒,其取值范围为
[1,604800]
-
周内分:(Hour Of Week,HOW) 一周中的第几小时,其取值范围为
[1,168]