i2nav-whu / kf-gins Goto Github PK
View Code? Open in Web Editor NEWAn EKF-Based GNSS/INS Integrated Navigation System
License: GNU General Public License v3.0
An EKF-Based GNSS/INS Integrated Navigation System
License: GNU General Public License v3.0
我的IMU安装在车上的时候会有安装角,这种安装带来的误差似乎会导致我的解算结果不正确,想向您请教一下这种安装误差该如何避免呢
Sice velocity is more accurate measurment in gnss devices. I think this feature will lead to accurate attitude in navigation result despite having positions with high errors.
您好,想问一下,KF-GINS程序,最终的定位结果更新频率是200Hz,但是每一秒只有一次卫导结果。在非整秒的时候,卫导和惯导结果没有匹配上,怎么做组合啊
Hello,
How do I calculate below parameters for my IMU?
These parameters are given in kf-gins.yaml
I'm using Bosch BMI088 and changed the code to accept data in real time and passing it to gi.engine.
imunoise:
arw: [0.003, 0.003, 0.003] # [deg/sqrt(hr)]
vrw: [0.03, 0.03, 0.03] # [m/s/sqrt(hr)]
gbstd: [0.027, 0.027, 0.027] # [deg/hr]
abstd: [15.0, 15.0, 15.0] # [mGal]
gsstd: [300.0, 300.0, 300.0] # [ppm]
asstd: [300.0, 300.0, 300.0] # [ppm]
corrtime: 4.0 # [hr]
hello:
首先非常感谢开源了这个工程和对应的课程!
在实践时,我这边使用的数据imu是加速度和角速度,也阅读了这个issue:https://github.com/i2Nav-WHU/KF-GINS/issues/23。但是发现如果使用时间增量乘以加速度计算速度增量,因为加速度的值一直是9.8左右,乘以时间增量后,Z向一直有1个较大的速度增量,但是实际上车体Z向的速度增量为0或很小,我有几个疑惑:
1、计算速度增量前,需要先减掉重力加速度吗?
2、如果要减去重力加速度,稍精确的重力加速度应该和纬度有关,但是我在做imu转换时,不知道纬度,这个怎么处理合理呢?
3、如果不用减重力加速度,在机械编排时应该怎么改动呢?
期待您的答复!
regards
Hi, I have a setup of IMU and GNSS with RTK, which logs acceleration in m/sec2 and rate of change in degree/second.
In the data set the given IMU format requires XYZ incremental angles in radian and XYZ incremental velocity in m/s.
Please guide me, how can I get these values from accelerometer and Gyroscope.
Thanks for sharing the KF-GINS code. For the double antenna configuration, GNSS can output yaw measurements and keep the yaw angle observable. How to modify the measurement equations and code.
I think we are in need of script or app that could help users in calculating ARW VRW std etc. many users does not use tbe same IMU as project. I think it would be great if some script could facilate IMU error modeling.
The struct of GNSS is defined as follows,
struct GNSS {
double time;
Eigen::Vector3d blh;
Eigen::Vector3d std;
bool isvalid;
};
If there is GNSS interference, the isvalid
of GNSS return false
. How to consider these problems in the GNSS-INS integrated system? Thanks!
In my opinion, once the navigation frame is created, its relative pose to earth frame is fixed. So, how to understand w_en or q_n(k)^n(k-1). Maybe thery are equal to 0 or quternion(I)
I'm so grateful for your work and open sourcing this software
it seems like you have used ICM-20605 IMU in datasets logger. the original IMU raw data are in 1000Hz and trapezoidal integrated to achieve 200 Hz delta data. if this assumption is true. please describe trapezoidal integration algorithm which is carried on raw data to gather datasets
您好,请教您个问题:
如果我想用我自己的imu和gnss数据跑这个算法,具体我需要怎么做?希望得到您的指导,谢谢!
作者好!想问下机械编排姿态更新部分,利用等效旋转矢量计算中间时刻的四元数的过程中,temp的计算式中是否该加一个q_nk,nk-1呢,也就是我觉得qne_cur.inverse() * qne_pre似乎得到的不是q_ek,ek-1
midvel = (pvapre.vel + pvacur.vel) / 2;
qne_pre = Earth::qne(pvapre.pos);
qne_cur = Earth::qne(pvacur.pos);
temp1 = Rotation::quaternion2vector(qne_cur.inverse() * qne_pre); <---------------------------这个地方
qne_mid = qne_pre * Rotation::rotvec2quaternion(temp1 / 2).inverse();
midpos[2] = (pvacur.pos[2] + pvapre.pos[2]) / 2;
midpos = Earth::blh(qne_mid, midpos[2]);
您好,这种算法同样适用于两轮车吗,例如电动自行车这种。是否需要进行一些改进
跑起来从头到尾就没有变化, 没有使用感受
A lot of users afford low-cost MEMS IMU in their project or product. It would be of great helpful if you provide the way to accept input data from low-cost MEMS imu, which uses linear acc and angular velocity directly instead of their delta.
What's more, I wonder whether the noise parameter of IMU should be adapted if we use linear acc and angular velocity as input.
您好我有几个问题想请教一下
1、由于IMU在车上安装的位置不定,如果安装位置没有与载体对齐,安装误差会产生算法层面的误差吗?
2、当把输出速率转化为增量输入算法时,需要先对产品手册中描述的零偏进行补偿吗?
作者好,我想问一下,在linux下运行完,怎么看定位结果啊
Thank you for open-sourcing this excellent code.
I've implemented modifications to KF-GINS to ensure compatibility with the STM32 Microcontroller at my end. The code now effectively processes sensor inputs and executes the Kalman process in real-time, functioning seamlessly.
I do have a specific inquiry. When the device remains in a static state for several minutes, there is noticeable drift in the Yaw angle, which is expected given its reliance on a 6DoF system. And, EKF corrects this drift when the device is in motion.
To identify whether the yaw angle has drifted, which parameters should I monitor in the code?
我们的IMU测量出来的数据是加速度计的加速度,陀螺仪的角速度,我想知道怎么转换为你们的增量的呢?直接时间间隔乘加速度?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.