rtcm1005报文解析_rtcm1021-1027参数

rtcm1005报文解析_rtcm1021-1027参数defparse_rtcm1005(rtcm1005):message_num=get_bin_para(rtcm1005[0:12],False,1,0)#协议idstation_id=get_bin_para(rtcm1005[12:24],False,1,0)#基站iditrf_year=get_bin_para(rtcm1005[24:30],False,1,0)#ITRF纪元22222gps_indicat.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

在这里插入图片描述

def parse_rtcm1005(rtcm1005):
    message_num = get_bin_para(rtcm1005[0:12], False, 1, 0)  # 协议id
    station_id = get_bin_para(rtcm1005[12:24], False, 1, 0)  # 基站id
    itrf_year = get_bin_para(rtcm1005[24:30], False, 1, 0)  # ITRF纪元22222
    gps_indicator = get_bin_para(rtcm1005[30:31], False, 1, 0)  # gps是否参与服务(0:参与;1:不参与)
    glo_indicator = get_bin_para(rtcm1005[31:32], False, 1, 0)  # glo是否参与服务(0:参与;1:不参与)
    gal_indicator = get_bin_para(rtcm1005[32:33], False, 1, 0)  # gal是否参与服务(0:参与;1:不参与)
    station_indicator = get_bin_para(rtcm1005[33:34], False, 1, 0)  # 基站类型(0:单基站;1:虚拟站)
    x = get_bin_para(rtcm1005[34:72], True, 0.0001, 0)  # 基于itrf_year,天线坐标X,单位m
    sro_indicator = get_bin_para(rtcm1005[72:73], False, 1, 0)  # 所有原始观测值是否同时刻观测(0:否;1:是)
    reserved = get_bin_para(rtcm1005[73:74], False, 1, 0)  # 保留位(0)
    y = get_bin_para(rtcm1005[74:112], True, 0.0001, 0)  # 基于itrf_year,天线坐标Y,单位m
    qc_indicator = get_bin_para(rtcm1005[112:114], False, 1, 0)  # 更正指示器(00,01,10,11)
    z = get_bin_para(rtcm1005[114:152], True, 0.0001, 0)  # 基于itrf_year,天线坐标Z,单位m
    return RTCM1005(message_num, station_id, itrf_year, gps_indicator, glo_indicator, gal_indicator, station_indicator, x, sro_indicator, reserved, y, qc_indicator, z)

Jetbrains全家桶1年46,售后保障稳定

def judge_rtcm1005(info, station_id, itrf_year, gps_indicator, glo_indicator, gal_indicator, station_indicator, x,
                   sro_indicator, reserved, y, qc_indicator, z):
    if info.message_num != 1005:
        return "RTCM1005_message_num异常:正确应是1005,实际为{}".format(info.message_num)
    if info.station_id != station_id:
        return "RTCM1005_station_id异常:正确应是{},实际为{}".format(station_id, info.station_id)
    if info.itrf_year == itrf_year:
        return "RTCM1005_itrf_year异常:正确应是{},实际为{}".format(itrf_year, info.itrf_year)
    if info.gps_indicator != gps_indicator:
        return "RTCM1005_gps_indicator异常:正确应是{},实际为{}".format(gps_indicator, info.gps_indicator)
    if info.glo_indicator != glo_indicator:
        return "RTCM1005_glo_indicator异常:正确应是{},实际为{}".format(glo_indicator, info.glo_indicator)
    if info.gal_indicator == gal_indicator:
        return "RTCM1005_gal_indicator异常:正确应是{},实际为{}".format(gal_indicator, info.gal_indicator)
    if info.station_indicator != station_indicator:
        return "RTCM1005_station_indicator异常:正确应是{},实际为{}".format(station_indicator, info.station_indicator)
    if info.x == x:
        return "RTCM1005_x异常:正确应是{},实际为{}".format(x, info.x)
    if info.sro_indicator != sro_indicator:
        return "RTCM1005_sro_indicator异常:正确应是{},实际为{}".format(sro_indicator, info.sro_indicator)
    if info.reserved == reserved:
        return "RTCM1005_reserved异常:正确应是{},实际为{}".format(reserved, info.reserved)
    if info.y == y:
        return "RTCM1005_y异常:正确应是{},实际为{}".format(y, info.y)
    if info.qc_indicator != qc_indicator:
        return "RTCM1005_qc_indicator异常:正确应是{},实际为{}".format(qc_indicator, info.qc_indicator)
    if info.z == z:
        return "RTCM1005_z异常:正确应是{},实际为{}".format(z, info.z)
    return True
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234515.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • adb操作命令详解及大全

    adb操作命令详解及大全adb是什么?:adb的全称为AndroidDebugBridge,就是起到调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。adb的工作方式比较特殊,采用监听SocketTCP5554等端口的方式让ID

    2022年6月12日
    28
  • Android Animation:这一次让你彻底了解 Android Frame Animation「建议收藏」

    Android Animation:这一次让你彻底了解 Android Frame Animation「建议收藏」Android Animation:这一次让你彻底了解 Android Frame Animation

    2022年4月21日
    40
  • k8s 资源管理_k8s扩容命令

    k8s 资源管理_k8s扩容命令k8s管理器介绍yaml资源管理器介绍管理器介绍在Kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理Kubernetes。Kubernetes的本质就是一个集群系统,用户可以在集群中部署各种服务。所谓的部署服务,其实就是在Kubernetes集群中运行一个个的容器,并将指定的程序跑在容器中。Kubernetes的最小管理单元是Pod而不是容器,所以只能将容器放在Pod中,而Kubernetes一般也不会直接管理Pod,而是通过Pod控制器来管理Pod的。Pod提供服务之后

    2022年8月11日
    3
  • 为matlab GUI添加背景图片

    为matlab GUI添加背景图片为matlabGUI添加背景图片为GUI添加一个背景图片,不仅可以让我们的界面变得漂亮大气上档次,而且软件对与用户的交互更加友好。用C或者C++写过软件界面的人都知道,这件事情可以轻而易举的办到,那么问题来了,怎么为matlab的GUI添加一个背景图片呢?其实这个操作也很简单,但是如果是第一次做这个,可能需要折腾好久。在这里我希望跟大家分享一下这个小技巧,避免大家遇到同样的问题再走弯路。欢迎…

    2022年6月12日
    34
  • linux下的so、o、lo、a、la文件的区别

    linux下的so、o、lo、a、la文件的区别

    2022年3月5日
    76
  • JAVA设计模式——适配器模式

    JAVA设计模式——适配器模式适配器模式是一种结构型设计模式。适配器模式的思想是:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。用电器来打个比喻:有一个电器的插头是三脚的,而现有的插座是两孔的,要使插头插上插座,我们需要一个插头转换器,这个转换器即是适配器。适配器模式涉及3个角色:源(Adaptee):需要被适配的对象或类型,相当于插头。适配器(Ad

    2022年7月25日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号