# compass **Repository Path**: david2lf/compass ## Basic Information - **Project Name**: compass - **Description**: 高精度GNSS/INS紧组合(v0.1,仅供参考) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 30 - **Created**: 2024-11-22 - **Last Updated**: 2024-11-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # compass 参考[TGINS](https://github.com/heiwa0519/TGINS) 其实一直都在整理代码,因为工作原因进度一直提不起来,目前这个版本的代码比较混乱,新版本的代码我才整理好STC-PPK、TC-PPK,新版本可读性较强,后续将重新上传,感谢大家关注! #### 介绍 高精度GNSS/INS紧组合(v0.1) GNSS/INS的组合模式仍是移动测绘、车载导航以及军事领域重要的导航定位手段,GNSS/INS紧组合是在观测值层面将GNSS与INS进行融合,其相对于定位结果层面的松组合在城市复杂环境下具有更明显的优势。高精度GNSS/INS紧组合滤波的构建涉及到高精度GNSS定位算法(PPK、PPP)、惯性导航定位算法、组合滤波算法等几个方面,算法实现较为复杂。 #### 软件架构 程序基于RTKLIB二次开发,在其基础上扩充了GNSS/INS组合的一些算法,是本人读博期间所做的一点工作,并不是很完善,代码仅供参考,如有疑问可联系本人。 /conf ---配置文件 /data ---示例数据 /include ---头文件 /misc ---杂项 /src ---源码 #### 安装教程 1. Windows:IDE为CLion-2021,编译器为tdm-gcc-9.20(在/misc/ide里面有安装程序,安装好在CLion的Toolchains里面进行配置,如下图所示) ![img.png](misc/ide/CLION.png) 2. Linux: Ubuntu-20.0,也是使用CLion进行编译,默认设置即可 #### 使用说明 1. CLion直接打开项目目录,自动CMake 2. 编译成功后可直接生成可执行文件 /build/Bin 3. 配置运行参数 PPK/INS紧组合: YOUR_PATH/PPP_AR/build/Bin/ppp_ar.exe -C YOUR_PATH/conf/TC/tc_ppk_kvh1.conf -S G -M IGTC-PPK -A 1 -L 0 PPP/INS紧组合: YOUR_PATH/PPP_AR/build/Bin/ppp_ar.exe -C YOUR_PATH/conf/TC/tc_ppp_kvh1_com.conf -S GE -M IGTC-PPP -A 0 -L 0 ![img.png](misc/fig/example.png) .exe: 可执行文件路径 -C: 配置文件路径 -S: 选用的卫星系统 G,C,E,R,J,GR,GC,GE,CE... -M: 处理模式,IGTC-PPK,IGTC-PPP -A: 模糊度固定,0-浮点解,1-PPK模糊度固定(PPP/INS紧组合只支持浮点解) 注: 使用前请修改配置文件的pos1-prcdir参数,程序处理数据需要按一定格式存放数据,在配置文件里面设置主路径后,程序可以自动匹配相关文件。基本格式为: data/atx ... 天线文件 data/blq ... 海潮文件 data/YYYY/ddd/obs ... 观测值O文件,可以存放多个测站 data/YYYY/ddd/products ... 精密星历等文件 data/YYYY/ddd/products/nav ... 导航星历 data/YYYY/ddd/products/com ... 精密星历(可以是不同的分析中心产品,如grm、wum等) data/YYYY/ddd/products/cas ... MGEX-DCB文件 data/YYYY/dcb ... CODE-dcb文件 data/YYYY/igs_erp ... igs-erp文件 #### 数据集介绍 1.KVH0数据集 数据采集于2021年7月15日江苏省徐州市高新区,IMU和GNSS接收机安装在车载平台上,行车轨迹如图所示。使用两台中海达测地型接收机分别作为流动站和基准站,并配备加拿大Novatel公司生产的SPAN-KVH1750组合导航系统(由组合导航接收机ProPak6和惯性测量单元IMU-KVH1750组成),厂商给定的惯性器件技术指标如表所示, 这是一款内置三轴闭环光纤陀螺和三轴微机械加速度计的惯性测量单元,具有良好的独立导航性能。跑车过程中卫星信号良好,卫星可视数与行车期间的PDOP值如图所示。实验共采集约90min数据,其中GNSS的数据采样率为1Hz,可接收来自GPS、BDS2、BDS3、GLONASS以及Galileo卫星的双频信号,IMU数据采样率为200Hz。 测试过程中基线长度最短4.3km,最长达到11.2km,经过差分处理后能够消除大部分的大气误差影响。采集环境总体良好,可用于GNSS/INS组合系统仿真分析,同时采集路径覆盖了高楼、立交桥、树荫等多种复杂的城市场景,能用于验证单频、双频、单系统、多星座组合的高精度GNSS/INS紧组合模型在城市环境下的定位测速定姿性能。 数据集配备了IE软件差分GNSS/INS后处理平滑解作为参考,图展示了IE软件采用DGNSS/INS前后向平滑模式计算的位置、速度、姿态、零偏估计变化结果。 ![img.png](misc/fig/jieshouji.png) ![img.png](misc/fig/kvh.png) ![img.png](misc/fig/weixing.png) ![img.png](misc/fig/weizhisudu.png) ![img.png](misc/fig/zitailingpian.png) 2. 100C数据集 数据采集于2019年12月30日北京市北清路附近区域(文中记为北京实验19-BJ-100C),使用加拿大Novatel公司生产的SPAN-ISA-100C组合导航系统,厂商给定的惯性器件技术指标如表所示。IMU和GNSS接收机安装在车载平台上,行车轨迹如图所示,跑车过程中卫星信号良好, 卫星可视数与行车期间的PDOP值如图A 8所示。实验共采集约90min数据,其中GNSS的数据采样率为1Hz,可接收来自GPS、BDS以及GLONASS卫星的双频信号,IMU数据采样率为200Hz。测试过程中基线长度最短4.3km,最长达到11.2km,经过差分处理后能够消除大部分的大气误差影响。图中呈现了IE软件采用 DGNSS/INS前后向平滑模式计算的位置、速度、姿态、零偏结果(该组数据由北京网友提供,特此感谢)。 ![img.png](misc/fig/100C_zhibiao.png) ![img.png](misc/fig/100C_guiji.png) #### 解算结果 KVH0 IGTC-PPK: ![img.png](misc/fig/ppk_pos_2d.png) KVH0 IGTC-IF_GC_PPP: ![img.png](misc/fig/ppp_pos_3line.png) KVH0 IGTC-UC_GR_PPP: ![img.png](misc/fig/uc_pos_3line.png) KVH0 速度与姿态误差 ![img.png](misc/fig/va.png) 100C IGTC-UC_GR_PPP: ![img.png](misc/fig/100C_UC_PPP_pos.png) 100C IGTC-IF_GR_PPP: ![img.png](misc/fig/100C_pos_3line.png) 100C 速度与姿态误差 ![img.png](misc/fig/100C_va.png) #### 注 程序只是代码层面实现了PPP模糊度固定,在细节方面上仍存在不少漏洞,后续会继续学习相关理论对代码进行优化,程序仅供参考! #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request