IMU模型中错误的重力加速度传感器融合工具箱(imuSemsor)。gydF4y2Ba
46个视图(30天)gydF4y2Ba
显示旧的评论gydF4y2Ba
Mehdi EjtehadigydF4y2Ba
2021年9月1日gydF4y2Ba
评论道:gydF4y2Ba
Mehdi EjtehadigydF4y2Ba2021年9月4日gydF4y2Ba
你好亲爱的朋友,gydF4y2Ba
我最近一直在传感器融合工具箱。简而言之,我创建一个固定模型的IMU传感器和我只期望它捕获重力。这个问题实际上是方向!gydF4y2Ba
我们知道他们捕获的艾莫斯克相反的方向(如果重力向下,传感器捕捉它向上)。考虑一个固定IMU,我们仍然持有;阻止它下降的原因,是我们申请乌兹别克斯坦伊斯兰运动的力和乌兹别克斯坦伊斯兰运动捕获加速度引起的作用力。所以这就是为什么艾莫斯捕捉g向上而不是向下。gydF4y2Ba
但是下面这个简单的例子,我们可以看到,这样的事不会发生传感器融合工具箱。gydF4y2Ba
IMU = imuSensor (gydF4y2Ba“accel-gyro-mag”gydF4y2Ba,gydF4y2Ba“ReferenceFrame”gydF4y2Ba,gydF4y2BaNED的gydF4y2Ba);gydF4y2Ba%建立IMU对象gydF4y2Ba
acc = (0 0 0);gydF4y2Ba%的加速度IMU的NED框架gydF4y2Ba
angVel = (0 0 0);gydF4y2Ba%的角速度IMU的NED框架gydF4y2Ba
取向= [(1 0 0);gydF4y2Ba…gydF4y2Ba
[0 1 0];gydF4y2Ba…gydF4y2Ba
(0 0 1)];gydF4y2Ba%的取向IMU的NED框架gydF4y2Ba
[accelReadings, gyroReadings magReadings] = IMU (acc, angVel取向);gydF4y2Ba
accelReadingsgydF4y2Ba
乌兹别克斯坦伊斯兰运动没有加速度和角速度的North-East-Down框架和IMU的方向传感器是一样的NED的框架。所以它的Z轴alligns向下的方向。但是我们知道应该捕获g向上(()所以g应该负(-9.81)在Z方向当地IMU的帧,但正如上面可以看到的,它是正的!有人能帮我解决这个问题吗?gydF4y2Ba
谢谢提前gydF4y2Ba
1评论gydF4y2Ba
保罗gydF4y2Ba
2021年9月2日gydF4y2Ba
编辑:gydF4y2Ba保罗gydF4y2Ba
2021年9月3日gydF4y2Ba
如果你看gydF4y2Ba
医生页面imuSensorgydF4y2Ba
在加速度计的算法部分,它展示了加速度计的框图模型。图,它显示了输入到模型中被称为“加速度”,这是“g”相结合,形成一个量称为“全面加速。”The diagram doesn't show whether "g" is added or subtracted. (Edit: See the Answer below for how how Total Acceleration is calculated). However, the results shown in your Question, and from the doc page example
从静止的输入,生成理想的IMU数据gydF4y2Ba
和“全面加速,”gydF4y2Ba
建议gydF4y2Ba
“加速度”输入到模型中,我称之为,具体输出力和惯性加速度的测量。gydF4y2Ba
ai(输出)= a_sf(输入)+ ggydF4y2Ba
不幸的是我,我猜你会同意,这样的方法是完全相反的我预计acceleromter模型是如何运作的。事实上,我会彻底离开“g”的模式,让用户,以确保输入是特定的力量。gydF4y2Ba
此外,文档页面并没有说它假定什么方向的“g”。Is it always in the Down direction in the local NED frame? Can the user specify a WGS-84 model somehow? It doesn't look like it, which is another reason to let the user deal with gravity.
有趣的是,2019年imuSensor收益率相同的结果,但是医生页面不显示总加速度的形成。gydF4y2Ba
接受的答案gydF4y2Ba
答案(1)gydF4y2Ba
瑞安齐射gydF4y2Ba
2021年9月2日gydF4y2Ba
你好,迈赫迪和保罗,gydF4y2Ba
获得总加速度gydF4y2Ba
获取加速度(gydF4y2Ba
totalAccgydF4y2Ba
),加速度是由否定预处理和添加重力常数向量(gydF4y2Ba
ggydF4y2Ba
= [0;0;9.8米/秒gydF4y2Ba
2gydF4y2Ba
):gydF4y2Ba
tgydF4y2Ba
ogydF4y2Ba
tgydF4y2Ba
一个gydF4y2Ba
lgydF4y2Ba
一个gydF4y2Ba
cgydF4y2Ba
cgydF4y2Ba
=gydF4y2Ba
−gydF4y2Ba
一个gydF4y2Ba
cgydF4y2Ba
cgydF4y2Ba
egydF4y2Ba
lgydF4y2Ba
egydF4y2Ba
rgydF4y2Ba
一个gydF4y2Ba
tgydF4y2Ba
我gydF4y2Ba
ogydF4y2Ba
ngydF4y2Ba
+gydF4y2Ba
ggydF4y2Ba
本公约是用来获得的加速度计的阅读gydF4y2Ba
(0 0 0)gydF4y2Ba
当传感器在自由落体和传感器坐标系与父/导航坐标系。gydF4y2Ba
R2019a算法是一样的,但documention页面更新后释放包括总加速度方程。gydF4y2Ba
谢谢,gydF4y2Ba
瑞安gydF4y2Ba
1评论gydF4y2Ba
保罗gydF4y2Ba
2021年9月2日gydF4y2Ba
谢谢你指出的equattion算法部分。gydF4y2Ba
文档将更加明确,如果它说:gydF4y2Ba
获取加速度(gydF4y2Ba
totalAccgydF4y2Ba
),gydF4y2Ba
输入gydF4y2Ba
加速度gydF4y2Ba
(acc)gydF4y2Ba
预处理是否定gydF4y2Ba
它gydF4y2Ba
并添加重力常数向量(gydF4y2Ba
ggydF4y2Ba
= [0;0;9.8米/ s2):gydF4y2Ba
撇开措辞,医生基本上是说输出负的输入。让我们验证:gydF4y2Ba
IMU = imuSensor (gydF4y2Ba“accel-gyro-mag”gydF4y2Ba,gydF4y2Ba“ReferenceFrame”gydF4y2Ba,gydF4y2BaNED的gydF4y2Ba);gydF4y2Ba%建立IMU对象gydF4y2Ba
acc = (1 e5 1 e5 1 e5);gydF4y2Ba%的加速度IMU的NED框架gydF4y2Ba
angVel = (0 0 0);gydF4y2Ba%的角速度IMU的NED框架gydF4y2Ba
取向= [(1 0 0);gydF4y2Ba…gydF4y2Ba
[0 1 0];gydF4y2Ba…gydF4y2Ba
(0 0 1)];gydF4y2Ba%的取向IMU的NED框架gydF4y2Ba
[accelReadings, gyroReadings magReadings] = IMU (acc, angVel取向);gydF4y2Ba
accelReadingsgydF4y2Ba
果然,输出gydF4y2Ba
负gydF4y2Ba
输入!是记录其他比这个方程(我没有仔细检查)?所以用户在使用前必须知道否定输出下游吗?是真的期望的行为为一个通用的加速度计模型吗?gydF4y2Ba
此外,这样做的原因没有意义。这将是更容易简单地使用:gydF4y2Ba
totalAcc =加速度- ggydF4y2Ba
这个方程也会导致(理想)加速度计阅读(0 0 0)在自由落体(假设用户的重力模型的实现是一样的,假设imuSensor,这个实现的另一个弱点),并有优势,用户无须担心的极性输出。gydF4y2Ba
另请参阅gydF4y2Ba
类别gydF4y2Ba
找到更多的在gydF4y2Ba传感器模型gydF4y2Ba在gydF4y2Ba帮助中心gydF4y2Ba和gydF4y2Ba文件交换gydF4y2Ba