GPS

  • 1. GPS周-周内秒与日历时的转换与逆转换
    • 1.1 GPS周-周内秒到年月日系统的转换
    • 1.2 GPS日历时与周-周内秒的转换
    • 1.3 主函数调用
    • 1.4 运行结果
  • 2. GPS周-周内秒与UTC时间系统的转换与逆转换
    • 2.1 GPS周-周内秒到UTC时间系统的转换
    • 2.2 GPS UTC时间系统到周-周内秒的转换
    • 2.3 主函数调用
    • 2.4 运行结果

(1)为了保证导航和定位精度,全球定位系统GPS建立了专门的时间系统———GPS系统时,简称GPST。
(2)GPST属原子时系统,其秒长为国际制秒(SI),与原子时相同,但其起点与国际原子时(IAT)不同。因此GPST与IAT之间存在一个常数差,它们的关系为:
IAT – GPST = 19s
(3)GPST与UTC规定于1980年1月1日0时相一致,其后随着时间成整数倍积累, 至2017年底该差值为18s。GPST由主控站原子钟控制。
GPST = UTC(USNO) + ΔtUTC
ΔtUTC为GPST和UTC之间的闰秒差,在GPS导航电文中播发。

1. GPS周-周内秒与日历时的转换与逆转换

1.1 GPS周-周内秒到年月日系统的转换

//GPS周-周内秒到年月日系统的转换
//gpsWeek:GPS周;
//gpsWIS:gps周内秒
static private DateTime gps_WeekWIS_NYR(int gpsWeek, int gpsWIS)
{//604800 = 7*24*60*60 (一周的秒数)int difFromBegin = gpsWeek * 604800 + gpsWIS;//GPS以1980年1月6日,0时0分0秒为起点,用周数和周内秒数来表示DateTime gpsBeginTime = new DateTime(1980, 1, 6, 0, 0, 0);//AddSeconds():将指定的秒数加到实际值上return gpsBeginTime.AddSeconds(difFromBegin);
}

1.2 GPS日历时与周-周内秒的转换

//GPS日历时与周-周内秒的转换
static private int[] gps_NYR_WeekWIS(DateTime gpsNYR)
{int[] gpsWeekWIS = {0, 0};DateTime gpsBeginUTC = new DateTime(1980, 1, 6, 0, 0, 0);//计算两个UTC时的时间间隔TimeSpan interval = gpsNYR - gpsBeginUTC;//计算周int gpsWeek = (int)interval.TotalSeconds / 604800;//计算周内秒int gpsWIS = (int)interval.TotalSeconds % 604800;gpsWeekWIS[0] = gpsWeek;gpsWeekWIS[1] = gpsWIS;return gpsWeekWIS;
}

1.3 主函数调用

static void Main(string[] args)
{int[] gpsWeekWIS = { 2023, 432000 };Console.WriteLine("GPS周-周内秒:");Console.WriteLine("GPS周:{0:D},周内秒:{1:D}", gpsWeekWIS[0], gpsWeekWIS[1]);Console.WriteLine("----------------------------------------------------------");//====1、GPS周-周内秒与日历时的转换与逆转换====Console.Write("GPS周-周内秒对应日历时:");Console.WriteLine(gps_WeekWIS_NYR(gpsWeekWIS[0], gpsWeekWIS[1]));Console.Write("GPS年月日对应周-周内秒:");DateTime gpsNYR = new DateTime(2018, 10, 19, 0, 0, 0);int[] gpsWeekWISFromGpsNYR = gps_NYR_WeekWIS(gpsNYR);Console.WriteLine("GPS周:{0:D},周内秒:{1:D}", gpsWeekWISFromGpsNYR[0], gpsWeekWISFromGpsNYR[1]);Console.WriteLine("----------------------------------------------------------");Console.ReadLine();
}

1.4 运行结果

2. GPS周-周内秒与UTC时间系统的转换与逆转换

2.1 GPS周-周内秒到UTC时间系统的转换

//GPS周-周内秒到年月日系统的转换
//gpsWeek:GPS周;
//gpsWIS:gps周内秒
static private DateTime gps_WeekWIS_NYR(int gpsWeek, int gpsWIS)
{//604800 = 7*24*60*60 (一周的秒数)int difFromBegin = gpsWeek * 604800 + gpsWIS;//GPS以1980年1月6日,0时0分0秒为起点,用周数和周内秒数来表示DateTime gpsBeginTime = new DateTime(1980, 1, 6, 0, 0, 0);//AddSeconds():将指定的秒数加到实际值上return gpsBeginTime.AddSeconds(difFromBegin);
}static private DateTime gps_WeekWIS_UTC(int gpsWeek, int gpsWIS)
{DateTime gpsNYR = gps_WeekWIS_NYR(gpsWeek, gpsWIS);//GPS日历时比UTC时快18秒return gpsNYR.AddSeconds(-18.0);
}

2.2 GPS UTC时间系统到周-周内秒的转换

//GPS日历时与周-周内秒的转换
static private int[] gps_NYR_WeekWIS(DateTime gpsNYR)
{int[] gpsWeekWIS = {0, 0};DateTime gpsBeginUTC = new DateTime(1980, 1, 6, 0, 0, 0);//计算两个UTC时的时间间隔TimeSpan interval = gpsNYR - gpsBeginUTC;//计算周int gpsWeek = (int)interval.TotalSeconds / 604800;//计算周内秒int gpsWIS = (int)interval.TotalSeconds % 604800;gpsWeekWIS[0] = gpsWeek;gpsWeekWIS[1] = gpsWIS;return gpsWeekWIS;
}//GPSUTC时间系统到周-周内秒的转换
static private int[] gps_UTC_WeekWIS(DateTime gpsUTC)
{return gps_NYR_WeekWIS(gpsUTC.AddSeconds(18));
}

2.3 主函数调用

static void Main(string[] args)
{int[] gpsWeekWIS = { 2023, 432000 };Console.WriteLine("GPS周-周内秒:");Console.WriteLine("GPS周:{0:D},周内秒:{1:D}", gpsWeekWIS[0], gpsWeekWIS[1]);Console.WriteLine("----------------------------------------------------------");//====2.GPS周-周内秒与UTC时间系统的转换与逆转换====Console.Write("GPS周-周内秒对应UTC时:");Console.WriteLine(gps_WeekWIS_UTC(gpsWeekWIS[0], gpsWeekWIS[1]));Console.Write("UTC对应GPS周-周内秒:");DateTime gpsUTC = new DateTime(2018, 10, 18, 23, 59, 42);int[] gpsWeekWISFromGpsUTC = gps_UTC_WeekWIS(gpsUTC);Console.WriteLine("GPS周:{0:D},周内秒:{1:D}", gpsWeekWISFromGpsUTC[0], gpsWeekWISFromGpsUTC[1]);Console.WriteLine("----------------------------------------------------------");            Console.ReadLine();
}

2.4 运行结果

【GPS周-周内秒、日历时、UTC转换和逆转换】相关推荐

  1. 【BDS周-周内秒、日历时、UTC时转换和逆转换】

    BDS 1.BDS周-周内秒与日历时的转换与逆转换 1.1 BDS周-周内秒到年月日时间系统的转换 1.2 年月日时间系统到BDS周-周内秒的转换 1.3 主函数调用 1.4 运行结果 2.BDS周- ...

  2. 周-周内秒转化为utc时间 c语言实现

    用过北斗gps的都晓得,大部分都要用时间转换的操作: 本文主要是记录: 周-周内秒转换为utc的实现 北斗官网提供的一些转换源码,注册即可下载 至于儒略日 周-周内秒 utc等概念去查一查百度很多资料 ...

  3. GPS涉及到的各种时间转换(年月日,年积日,儒略日,GPS周及周内日或周内秒,星期几)python

    因为写一些程序或脚本经常要涉及GPS的时间转换,比如下载各种产品遍历的时候可能需要用年积日,但是如果日期有跨年的话年积日也不方便,可能就需要先转儒略日再转对应的年月日,而有些产品命名又是GPS周相关, ...

  4. GPS时间以及周内秒

    世界时UT是以地球自转为基础的时间系统,由于不恒定的自转速度.极移等,是一个非恒定均匀的时间系统. 原子时以能级跃迁的辐射电磁波频率为基础.是均匀时间系统. 协调世界时,上述二者的折中.一方面以严格原 ...

  5. GPS周和周内秒转公历时间 以及 公历时间转GPS周和周内秒 (python版)

    下面是GPS周和周内秒转公历时间  以及  公历时间转GPS周和周内秒的小函数. def cal2gps(cal): # cal2gps 将公历GPS时间转换到GPS周和周内的秒 # 返回列表,周和周 ...

  6. 崩坏3抽奖模拟html5,崩坏3崩坏周周练5月18日答案大全 夜隐重霞崩坏周周练答案汇总...

    崩坏3 大小: 角色养成 崩坏3崩坏周周练5月18日答案是什么?崩坏3在今天更新了崩坏周周练的题库,本期题目都围绕这"夜隐重霞"这个角色,对她不了解的玩家估计很难获得高分.下面就是 ...

  7. 《原力计划【第二季】》—— 第二周周榜

    从2月21日开始<原力计划[第二季]- 学习力挑战>活动时间已经过半. 累计共有 7981 名博主参与了本次活动.本周收到活动投稿文章 14350 篇原创文章. 经过层层筛选,最后选出以下 ...

  8. wdcp+定时运营php_豪侠汇 | 本地商家智能运营方案支持,周周聚餐,每12月调薪机会!...

    成都IT内推圈是由IT行业老兵组建的民间组织,我们希望能为广大IT同仁提供力所能及的帮助,我们不仅提供靠谱的职位,我们更是有温度的圈子!为了帮助更多的朋友寻找到靠谱的内推职位,老农在此号召大家: 1. ...

  9. 【采访】腾讯社交广告高校算法大赛决赛第二周周冠军——nju_newbiew比赛经验及心得分享

    腾讯社交广告高校算法大赛决赛 第二周周冠军 他们的名字叫nju_newbiew 进入决赛之后他们的成绩是火速提升 直到稳定在第一名 这又是一支谜一般的队伍 今天小编就来给大家揭开神秘大佬的面纱 三个偶 ...

最新文章

  1. “当前不会命中断点 还没有为该文档加载任何符号”解决方法
  2. HTML5 组件Canvas实现图像灰度化
  3. 独立开发者分享:游戏本地化的6个建议
  4. 转:传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确 .
  5. 统计信息自动收集任务失效原因排查
  6. 华为宣布:免费培养2000名Java开发者
  7. 数据库零碎---常用的mysql命令,收藏了,方便查阅
  8. TimeQuest就一定要搞定——时序分析基本公式
  9. eclipse 项目显示红叉
  10. WEB测试环境搭建和测试方法大全
  11. PHP:错误控制运算符
  12. C++11/14的新特性——更简洁
  13. 【计网】2.2.4 Web缓存/代理服务器
  14. 排序算法-冒泡算法【GIF图解】初学者小白必看
  15. 用 Python 找出了拉黑 QQ 空间屏蔽我的大人物
  16. 关于网络下载的记忆碎片
  17. 【C51开发应用】基于C51单片机开发的循迹灭火机器人
  18. ybt1003:对齐输出
  19. 【hh】我胡汉三又回来了
  20. 信号与系统陈后金matlab,陈后金信号与系统matlab实验4.pdf

热门文章

  1. 人人php 路由,关于人人分销/人人商城的二次开发路由解析
  2. 【C#入门练习及答案】
  3. TurboRoom-高效的无线投屏协作工具
  4. java 和%_java% c
  5. 【图形学】课程大作业
  6. ffmpeg 实现转码一个普通视频文件为视频mpeg4,音频mp3的功能的程序(摘)
  7. 解决苹果CMS采集后没有显示图片的问题
  8. 300多名中国人在菲律宾非法就业出事了?
  9. PhotoPrism 入门教程:如何搭建私有相册系统
  10. 神州数码DCWS-6028命令总结(二)