- 博客(177)
- 资源 (25)
- 问答 (1)
- 收藏
- 关注
原创 C语言实现组合导航中的Kalman滤波算法
该部分的核心代码主要是实现组合导航的核心算法即Kalman滤波,其中表示Kalman滤波的参数初始化,表示创建连续状态转移矩阵,表示创建离散时间状态转移矩阵,表示Kalman滤波的时间更新和量测更新部分,其中包含Sage-Husa自适应滤波、抗差Kalman滤波等。
2023-06-21 17:17:54 1266
原创 C语言实现惯导姿态转换的全部核心代码
为惯导姿态更新中利用旋转矢量更新四元数的函数,其余函数见函数备注及符号。表示姿态四元数转换为方向余弦矩阵,表示姿态四元数转换为等效旋转矢量,表示计算两个四元数所对应的失准角,表示计算一个向量的反对称矩阵,表示姿态四元数转换为欧拉角,文件全部都展示如下,其中。
2023-06-09 11:47:42 1277 2
原创 C语言实现圆锥误差补偿
19世纪50年代是机械陀螺仪飞速发展的一个重要时期,也正是在那时发现了著名的圆锥运动现象,即当陀螺仪在其旋转轴和输出轴出现同频不同相的角振动时,尽管其测量输入轴净指向不变(从整体上看没有随时间改变的趋势项),但陀螺仪在输入轴上还是会敏感到并输出常值角速率信号,而由圆锥运动所引起的误差称为圆锥误差。
2023-04-18 15:45:26 442
原创 C语言实现惯导更新算法(机械编排)
四元数可用于描述刚体转动或姿态变换,与方向余弦阵相比,表达简洁。四元数是一个包含四个元素的列向量,列向量的第一个元素表示刚体围绕旋转轴转过的角度大小,其余3个元素代表了旋转轴的方向。
2023-04-18 08:10:49 1326
原创 C语言实现Allan方差计算
量化噪声是一切量化操作所固有的噪声,只要进行数字量化编码采样,传感器输出的理想值与量化值之间就必然会存在微小的差别,量化噪声代表了传感器检测的最小分辨率水平。角度随机游走是宽带角速率白噪声积分的结果,即陀螺从零时刻起累积的总角增量误差表现为随机游走,而每一时刻的等效角速率误差表现为白噪声。根据随机过程理论,随机游走是一种独立增量过程,对于陀螺角度随机游走而言“独立增量”的含义便是:角速率白噪声在两相邻采样时刻进行积分(增量),不同时间段的积分值之间互不相关(独立)。
2023-04-17 17:16:02 691
原创 陀螺和加计有关参数部分说明
不是所有的Allan方差噪声系数都有用,主要有用的是角度随机游走系数(用于设置Q阵)和零偏不稳定性系数(用于设置一阶马氏过程的方差),其实这两个系数量级大小差不多就行了,太精细也没用,毕竟Allan方差分析得出的陀螺静态性能,实际应用动态的时候陀螺误差会发生变化,存在数量级差别都很有可能。从艾伦方差曲线中可以辨识出IMU的五种噪声,分别为:量化噪声、角度随机游走、零偏不稳定性噪声,角速率随机游走,速率斜坡,一般在IMU噪声辨识中用的比较多的是中间3种。量化噪声(Quantization Noise,QN)
2023-03-09 10:23:35 3531
原创 C语言实现惯导系统的Kalman滤波精对准
在惯导系统进行粗对准之后,惯导平台和当地导航坐标系之间还存在一定偏差,此时基于粗对准的结果,利用以速度为观测量的Kalman滤波对姿态进行估计。
2023-03-02 10:15:23 789
原创 C语言实现惯导系统的间接粗对准
间接粗对准方法具有更好的角晃动抗干扰能力,只是在短时间内线晃动抗干扰能力相对弱些,若适当延长粗对准时间(一般在分钟量级),间接粗对准方法往往都能够取得良好的效果。间接粗对准方法是一种非常实用的捷联惯导粗对准方法,得到了广泛的应用。在惯导系统进入工作前,需要进行初始对准,使得惯导系统与当地导航坐标系指向一致,便于惯导系统更好地进入工作状态。博主利用C语言实现了间接粗对准,间接粗对准较之解析粗对准更有优势。以上函数中使用的其他函数块,已在之前或之后的博客中给出。
2023-03-02 10:10:07 600
原创 C语言实现printf同行输出(刷新显示)
正常我们使用printf函数将需要显示的数据输出到屏幕上:为了便于查看,每次需要换行显示,如下图,这样一行一行显示非常不方便查看,因此产生了实现同行输出的需求要想同行输出,只需要将上次输出的内容覆盖掉就好,因此,只需要将下次输出的起始点(光标位置)移至改行前面即可,这时我们需要将换行符替换为这样就能实现同行覆盖输出了,也就是刷新显示读者可以使用下面的小代码测试一下效果再运用到自己的程序中
2022-12-07 10:03:12 5333
原创 C语言实现惯导参数的初始化
在进行惯导机械编排(惯性导航算法)之前,需要对惯导系统的初始位置、姿态和速度进行初始化;以及姿态四元数、方向余弦矩阵、时间不同步及空间杆臂等参数,因此也需将这一部分模块化,方便程序调用。
2022-11-14 19:10:18 1140
原创 C语言实现Lagrange插值(用于插值组合导航结果)
我们知道一般情况下,GNSS观测值得更新频率是低于惯导数据得输出频率的,而组合导航计算结果的输出频率取决于惯导的数据频率以及所使用的姿态优化方法(单子样、双子样等)。对于组合导航的参考值来说,其更新频率也低于惯导和组合导航结果,因此,若要将组合导航结果与参考值作比较,进而求出误差等一系列统计数据,就需要对计算的组合导航结果进行插值,插值到和参考值相同的频率,即使两者的时间对应相同。
2022-11-14 15:50:45 913
原创 利用python自动完成网页计算TEC等参数
之前的博客中推荐了几个在线计算TEC等参数的网站,很方便,但是每次计算还需要手动一个一个在网页上输入信息,稍有一些麻烦,因此博主利用Python实现了一个在本地输入信息,Python自动填充到网页并打印出结果的程序。
2022-11-13 21:06:51 787
原创 利用Python绘制TEC地图(详尽版)
在进行某些研究时,需要对电离层的日变化进行分析,以便直观清晰地看到电离层的变化,博主利用CDDIS的电离层格网数据,基于Python编写了电离层地图绘制函数。
2022-11-13 20:55:16 2449 11
原创 四个在线计算和实时绘制TEC等电离层参数的Website
可以计算和绘制IRI参数:电子和离子(O+, H+, He+, O2+, NO+)密度,总电子含量,电子,离子和中性(CIRA-86)温度,赤道垂直离子漂移和其他。这样的网站目前有很多,通过这四个网站,也可以在里面找到其他的相关资源,能为学习电离层方面的内容提供一些抓手。目前这个网站有了新的计算界面,大家也可以试一试。可实时呈现全球近实时f2层临界频率和峰值高度。是欧洲的一个电离层监测服务。
2022-11-13 20:46:52 1920
原创 利用Python自动在CDDIS上下载GNSS数据(观测值、广播星历,电离层格网数据)
我们在做GNSS数据处理和分析的时候,难免会用到很多天甚至几年的GNSS数据,如果一个一个下载的话未免过于麻烦,因此博主利用Python写了一个较为简单的下载数据的程序,简单调试一下就能实现自动下载啦。
2022-11-13 15:20:12 2475 5
原创 Pyhon中利用GM(1,1)和ARIMA模型对卫星DCB值进行预测
对于ARIMA预测方法来说,随着一次预测天数的增加,GPS和Galileo的DCB平均预测精度呈现上升趋势,BDS和GLONASS的DCB平均预测精度和DCB类型有关,精度有升有降,且以上情况平均数值变化均不明显,但是预测的稳定性会显著提高,这与一次预测的数据越多,预测的结果就会越有关联性,从而数值之间更加稳定的原因有关;对于BDS的DCB预测效果来说,DCB精度没有规律性的变化趋势,要具体的DCB类型具体分析,选择出针对该类型来说,最适合的一次预测天数;0.05ns左右,STD在0.04ns附近;
2022-11-13 11:13:44 1002
原创 RTKLIB中利用Kalman滤波进行伪距单点定位
之前发布的博客利用Kalman滤波进行伪距单点定位取得了很好的精度提升,有小伙伴也想知道具体如何修改的,现在将我的代码放出,供大家参考。源码中的流程可能比较难懂,因为每个人写代码的思路和风格不一样,大家需谨慎参考,权当给大家提供一个思路吧。我做实验的时候效果还是不错的,但代码可能多多少少存在理论错误,但是最终结果确实合理的。
2022-11-13 09:55:08 3087 11
原创 利用python进行TEQC质量检核结果绘图
我们在做GNSS数据预处理或者是质量检核的时候,需要用到teqc,那怎么将结果用清晰的图呈现出来呢?今天和大家分享一个源代码,博主自己运行过,可以绘制出天空图,高度角图等信息。以下是官方源码,大家也可以参考网站信息。
2022-11-13 09:42:37 1062
原创 Python实现股权结构图自动生成
有的时候我们需要对公司的股权结构图进行透视,如果手动绘制的画有些太麻烦,当然手动绘制的一定很好看,但是如果只是需要一个示意图的话,利用Python实现就可以了。
2022-11-13 09:32:15 3928
原创 有效解决应用程序无法正常启动(0xc000007b)的错误
第1步、SFC检查系统完整性来尝试修复丢失文件,打开电脑搜索输入cmd.exe,选择以管理员身份运行,跳出提示框时选择继续。知道肯定是缺少了一些东西,于是开始自己手动下载,可是各种版本,下都要好久,何况容易弄乱。第4步、这款软件能自动完成校验、检测、修复、注册的功能,十分简便易用。修复完成之后,重启一般可以解决这个问题。博主遇到的问题是SPSS、Origin和某些绘图软件集体失灵,都显示无法正常启动应用程序。尝试了各种办法,最后就这个方法非常实用!第3步、修复完成后,重新打开软件就不会再出现警告了。
2022-11-12 11:04:51 5923 1
原创 C语言实现地球自转参数更新
在进行惯导的机械编排时,需要在每个时刻都进行地球自转参数的更新,比如哥氏加速度,有害加速度等,因此将其整理成一个函数块。
2022-11-11 19:39:51 582
原创 C语言实现将矩阵上下翻转(正反解算结果融合时用到)
在做组合导航的时候,需要用到正反向解算,在将正反结算结果进行融合的时候,需要将反算结果倒过来,变成正序的再进行融合,使用函数比较方便,因此本文给出自编的一个小函数。
2022-11-11 19:03:11 626
原创 Python绘制RTKLIB的POS文件中的XYZ误差曲线及计算RMSE
前面博客中有提到过,文中给出了部分代码,在这篇博客里面,给出剩下的代码。
2022-11-11 17:22:14 1404 2
原创 Python实现观测值o文件和精密星历sp3文件读取
博主之前准备利用Python编写精密单点定位程序,奈何写了一半的读取文件代码,觉得太浪费时间,就此作罢,这些时间不如多用来研究现有代码,把这部分放弃的代码拿出来,希望给有想法的小伙伴一些启迪。代码虽未完成,但是有一些小函数,可以参考~
2022-11-11 16:32:40 1386 2
原创 Python实现空间直角坐标转高斯克吕格平面坐标
有时需要将点展开到地图上,需要的是平面坐标,而手中只有三维的空间直角坐标XYZ或者BLH时该怎么办呢?这时候就需要将坐标进行投影转换,本文给出的程序代码是用高斯克吕格投影进行坐标转换。
2022-11-11 16:14:13 780
原创 Python实现将坐标点绘制到地图上
有时我们需要直观地看到坐标点位在全球的分布情况,因此有将坐标点绘制到地图上的需求,我们可以用python实现这个功能。
2022-11-10 08:48:22 4166 2
原创 Python绘制RTKLIB结果文件.pos源码
应粉丝需求,现发布较完整版,实用的一套源码,改源码可进行RTKLIB的误差分析,曲线图的绘制,结果图直观易懂。
2022-11-10 08:26:56 1199 5
原创 C语言实现等效旋转矢量与三维矢量相乘
力学中刚体的有限次转动是不可交换的。转动的不可交换性决定了转动不是矢量,即两次以上的不同轴转动不能相加。对一个空间方向随时间变化的角速度矢量进行积分是没有物理意义的。而旋转矢量破解了这个难题。一个坐标系到另一个坐标系的变换可以通过多次转动来完成,也可以通过绕一个定义在参考坐标系中的矢量的单次转动来实现。该矢量称作等效旋转矢量(rotation vector)是一个三元素的向量,旋转矢量的方向给出了转动轴的方向,它的模长为转动角度的大小。又称为轴角(axis-angle)。
2022-11-07 23:59:09 355
原创 C语言实现四元数的乘法(三维矢量、四元数以及旋转矢量与四元数相乘源码)
在将三维矢量代数推广至乘法和除法运算的研究中,爱尔兰数学家、物理学家哈密顿于1843年创建了四元数((quaternion)和四元数代数。四元数是指由一个实数单位1和三个虚数单位i,j,k组成并具有下列形式实元的数。单位1,i,j,k可以看作四维空间(用符号H来表示)中的一组单位矢量。任何四元数都可看作该空间中的一个点或向量。
2022-11-06 15:02:48 771
原创 C语言实现等效旋转矢量转方向余弦矩阵和姿态四元数
力学中刚体的有限次转动是不可交换的。一个坐标系到另一个坐标系的变换可以通过多次转动来完成,也可以通过绕一个定义在参考坐标系中的矢量的单次转动来实现。该矢量称作等效旋转矢量(rotation vector)是一个三元素的向量,旋转矢量的方向给出了转动轴的方向,它的模长为转动角度的大小。单位1,i,j,k可以看作四维空间(用符号H来表示)中的一组单位矢量。方向余弦矩阵(Direction Cosine Matrix,DCM)又被称为“坐标转换矩阵”,常用于将矢量的投影从一个坐标系变换到另一坐标系中。
2022-11-06 14:50:51 473
原创 C语言实现欧拉角转方向余弦矩阵、姿态四元数以及失准角
欧拉证明任意两个正交坐标系之间的相对朝向关系可以通过一组不少于3的角度来描述。在三维欧氏空间里,任何两个正交坐标系都可以用坐标变换把它们联系起来,而坐标变换又可以用坐标旋转来得到。一个动坐标系相对参考坐标系的方位,可以完全由动坐标系依次绕三个不同的转轴的转角来确定。四元数是指由一个实数单位1和三个虚数单位i,j,k组成并具有下列形式实元的数。单位1,i,j,k可以看作四维空间(用符号H来表示)中的一组单位矢量。失准角度可以简单理解为,计算的导航坐标系与理想导航坐标系之间的差别,用角度来表示。
2022-11-06 14:41:18 618 1
原创 C语言实现欧拉角转方向余弦矩阵
欧拉证明任意两个正交坐标系之间的相对朝向关系可以通过一组不少于3的角度来描述。这三次旋转的转角称为一组欧拉角,因最早由欧拉(Leonhard Euler )提出而得名。在三维欧氏空间里,任何两个正交坐标系都可以用坐标变换把它们联系起来,而坐标变换又可以用坐标旋转来得到。一个动坐标系相对参考坐标系的方位,可以完全由动坐标系依次绕三个不同的转轴的转角来确定。方向余弦矩阵(Direction Cosine Matrix,DCM)又被称为“坐标转换矩阵”,常用于将矢量的投影从一个坐标系变换到另一坐标系中。
2022-11-06 11:37:22 455
原创 C语言实现方向余弦矩阵转旋转矢量
力学中刚体的有限次转动是不可交换的。转动的不可交换性决定了转动不是矢量,即两次以上的不同轴转动不能相加。一个坐标系到另一个坐标系的变换可以通过多次转动来完成,也可以通过绕一个定义在参考坐标系中的矢量的单次转动来实现。该矢量称作等效旋转矢量(rotation vector)是一个三元素的向量,旋转矢量的方向给出了转动轴的方向,它的模长为转动角度的大小。方向余弦矩阵(Direction Cosine Matrix,DCM)又被称为“坐标转换矩阵”,常用于将矢量的投影从一个坐标系变换到另一坐标系中。
2022-11-06 10:24:36 352
组合导航算法程序(C语言实现)
2023-06-26
自适应动态导航定位相关算法和公式整理
2023-06-21
2015版信息与文献 参考文献著作规则
2023-03-09
国内测绘行业期刊的汇总表格
2023-02-16
EI期刊的筛选汇总表格
2023-02-16
Python入门必学基础代码
2022-11-13
MSVBCRT(X86X64合集)
2022-11-12
卫星DCB计算程序(可运行)
2022-11-05
频率稳定性分析手册翻译中文版
2022-08-23
DTU接线及引脚定义简介
2022-08-13
完整详实的组合导航数据IE处理报告
2022-08-13
Inertial.Explorer.8.7
2022-06-27
目前惯导工作进度及组合导航困难总结(含部分成熟代码).docx
2022-06-26
企查查工商基本信息自动提取程序
2022-06-15
多IMU车载GNSS、INS数据集
2022-05-27
psins最新版本代码
2022-05-07
TEQC使用手册(详细版)
2022-04-24
转换软件(O文件2.0版本转换为3.0版本).rar
2022-01-13
RTKLIB_bin-rtklib_2.4.3.zip
2021-04-01
TA创建的收藏夹 TA关注的收藏夹
TA关注的人