# kplssr encoder **Repository Path**: gnssmonitoring/kplssr-encoder ## Basic Information - **Project Name**: kplssr encoder - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-03-01 - **Last Updated**: 2026-03-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PPP-B2b编解码说明文档 ### 概述 - 编码过程参考文档《北斗卫星导航系统空间信号接口控制文件精密单点定位服务信号PPP-B2b(1.0版)》,按固定周期输出最新ssr数据。 - 包含三种编码类型,分别参考上述文档中类型1掩码,类型3码间偏差改正数和类型6钟差改正与轨道改正-组合,其中类型1和类型3未作修改,类型6添加了相位偏差改正数。 - 通过以上三种数据帧类型,发送5种类型数据,分别是掩码、轨道改正数、码间偏差改正数、相位偏差改正数、钟差改正数。 ### 数据帧结构 - 类型1 包含当前历元的卫星号信息,当前历元包含哪些卫星,对应的标志位就置1,否则为0。 ![编码3](https://i.postimg.cc/wxCXXnzY/type1.jpg) ----- - 类型3 包含当前历元的码间偏差改正数。 ![编码3](https://i.postimg.cc/Dy1qB5fJ/type3.jpg) --- - 类型6 在下图的基础上做了修改,可包含当前历元的轨道、钟差和相位偏差改正数。钟差和相位偏差组合在一起打包,每颗卫星钟差改正数后增加了相位偏差数量(3bits)、信号与跟踪模式(3bits)和相位偏差值(12bits)。 ![编码6](https://i.postimg.cc/mgR7qMhd/type6.jpg) ----- - 每种数据帧高位处均增加14bits使每帧长500bits,结构如下: |8bits |3bits |1bit |1bit |1bit | |:--- |:--- |:--- |:--- |:--- | |前导字0xD3|预留位|可用性标志|预留位|钟差相位偏差结束标志| ### 编码 ```mermaid graph LR; 1[1帧掩码]-->2[5帧轨道改正]--> 3[6帧钟差,相位偏差组合]:::customFill6 --> 4[1帧轨道改正] -->5[5帧码间偏差]-->6[6帧钟差,相位偏差组合]:::customFill6; l:::customFill1 --> 7[3帧码间偏差] -->8[3帧预留]-->9[6帧钟差,相位偏差组合]:::customFill6; classDef default fill:#ffffff,stroke:#000000,stroke-width:0.1px; classDef customFill1 display:none; classDef customFill6 fill:#ff000055; ``` 按照上述顺序循环发送,每秒发送一帧(500bits)数据。钟差和相位偏差改正数发送周期为12秒,其他信息发送周期为36秒。 ### 流程图 ```mermaid flowchart TD subgraph 主线程 A[开始] --> B{是否需要多线程?} B -- 是 --> C[创建线程1和线程2] B -- 否 --> D[执行串行任务] end subgraph 线程1 C --> E[任务1] E --> F[结束线程1] end subgraph 线程2 C --> G[任务2] G --> H[结束线程2] end F & H --> I[线程合并] I --> J[主线程继续执行] D --> J J --> K[结束] ```