Skip to content

Latest commit

 

History

History
109 lines (74 loc) · 7.61 KB

01-导航算法常用的时间系统.md

File metadata and controls

109 lines (74 loc) · 7.61 KB

导航算法常用的时间系统

Static Badge Static Badge Static Badge 访问量统计

[TOC]

时间系统:时间起点基准 + 时间间隔尺度

  1. 恒星时(Sidereal Time,ST):以春分点为基本参考点,由春分点周日视运动确定的时间称为恒星时。

  2. 真太阳时:以真太阳作为基本参考点,由其周日视运动确定的时间称为真太阳时。

  3. 平太阳时:(由于真太阳的视运动是不均匀的,所以引入虚拟的在赤道上匀速运行的平太阳,其速度等于真太阳周年运动的平均速度),平太阳连续经过同一子午圈的时间称为一个平太阳日,分为 24 个平太阳时。

  4. 历书时(Ephemeris Time,ET):以地球公转为基准的度量时间的系统。(秒长规定:1900年1月1日12时整回归年长度的 1/31556925.9747;起始历元定在1900年1月1日12时)太阳系质心力学时TDB,地球质心力学时TDT。

  5. 原子时(Atomic Time,AT):是一种以原子谐振信号周期为标准,并对它进行连续计数的时标。

    UTC、TT、各种GNSS时都是建立在原子时基础上,用各自的原子钟来维持的,只是起点的选择、跳秒与否,已经因为用于维持的原子钟不同而产生的细微差别。

  6. 国际原子时(International Atomic Time,TAI):由各实验室的原子钟维持。取 1958 年 1 月 1 日 0 时 0 分 0 秒世界时(UT)的瞬间作为同年同月同日 0 时 0 分 0 秒TAI。(事后发现,在该瞬间原子时与世界时的时刻之差为0.0039秒。这一差值就作为历史事实而保留下来。)

  7. 区时:全球化为24个时区,在同一时区采用该时区中央子午线上的平太阳时为区时。

  8. 世界时UT:0区的区时,即格林尼治起始子午线上的平太阳时为世界时UT

    • UT0:直接天文观测的世界时
    • UT1:经过极移改正的世界时
    • UT2:再经过地球自转速度季节性改正的世界时
  9. 协调世界时(Universal Time of Coordination,UTC):以原子秒长为计量单位,在时刻上与平太阳时之差小于 0.9 秒的时间系统。UT1 + 跳秒

    C、C++ 获取的系统时间默认是 UTC

  10. 跳秒: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}
    };
  11. 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卫星所发送的导航电文中,时间信息的标示就是采用这种形式。

  12. 北斗时(BDS Time,BDT) :同 GPST 一样由原子钟保持基准,在 2006 年 1 月 1 日 0 时与 UTC 保持一致。因为从 1980 年到 2006 年共有 14 次跳秒发生,所以 BDT 和 GPST 相差 14 秒且基本恒定不变。

  13. GLONASS时(GLONASS Time,GLST):以莫斯科本地协调时 UCTsu 定义,其值与 UTC 存在 3 小时时差。

  14. Galileo时(Galileo Time,GST):同 GPST 保持一致。

  15. QZSSS时 (QZSS TIME , QZSST) :同 GPST 保持一致。

  16. 判断闰年:年份是 4 的倍数但不是 100 的倍数或者年份是 400 的倍数。

  17. 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 */
  18. 儒略日:(Julian Day,JD) 是指由公元前 4713 年 1 月 1 日,协调世界时中午 12 时开始所经过的天数。采用连续的数值来标示时间,适合科学计算,且可以很方便地将采用不同方法所标示的时间联系起来,但无法直接反映季节等信息,故日常生活中不常用。

  19. 简化儒列日:(Modified Julian Day、MJD),由于儒略时的计时起点距今较为久远,若将现今时间用儒略时来表示,数值 非常大。1973年国际天文学联合会提出 了约化儒略日的时间标示法,其起点是 1858 年 11 月 17 日世界时 0 时。MJD = JD - 2400000.5

  20. 年积日:(Day Of Year,DOY) 一年当中的第几天,其取值范围为[1,365]

    在 GPS 中的用途:年积日通常用来区分观测时段,常用于 GPS 观测文件的命名。例如,在 RINEX 格式中就规定:在数据文件的8字符主文件名中,第5-7个字符为观测起始时刻的年积日。

  21. 天内秒:(Second Of Day,SOD) 一天中的第几秒,其取值范围为[1,86400]

  22. 周内秒:(Second Of Week,SOW) 一周中的第几秒,其取值范围为[1,604800]

  23. 周内分:(Hour Of Week,HOW) 一周中的第几小时,其取值范围为[1,168]