【发布时间】:2015-07-21 16:09:23
【问题描述】:
我在网上到处搜索,但找不到解决问题的方法;
我正在使用我的 iPhone 尝试 Madgwick MadgwickAHRSupdateIMU 算法(具有 6 个参数的算法 - 陀螺仪的 3 个输出和加速度计的 3 个输出);但无法获得稳定的俯仰/滚动/偏航角;
下面是Madgwick算法的链接-
http://www.x-io.co.uk/open-source-imu-and-ahrs-algorithms/
下面是我正在使用的源代码的链接-
http://www.x-io.co.uk/res/sw/madgwick_algorithm_c.zip
所以我的第一个问题是我想知道在输入 Madgwick 的 MadgwickAHRSupdateIMU 函数时应该使用什么约定。我很确定我的 iPhone 的协调是 ENU - x 正点指向东,y 正点指向北,z 正点指向观察者。我尝试过交换轴和反转轴的不同组合;它们都不是完美的。 (gy, gx, -gz, ay, ax, -az) 给出了最好的结果,虽然它仍然很不稳定;
第二个问题是我应该使用什么 QuaternionToEuler 约定,我对这个主题不是很熟悉,但我猜不同的 QuaternionToEuler 约定是根据不同的坐标系统。 Madgwick 在他的论文中给出了 QuaternionToEuler 函数,但它对我不起作用。我认为这可能恰好是我的情况下的错误协调系统。
希望我已经清楚地解释了我的问题;我非常感谢您的任何意见;
谢谢,
地涵
【问题讨论】:
-
您好,您的问题解决了吗?我认为是因为协调使用不同
-
@RichardLe 嗨,理查德,感谢您的回复。我没有尝试解决这个问题,因为我的真实设备中没有这个问题。 iPhone应用程序只用于模拟,因为真机还没有完成,所以我写了这个IOS程序来模拟,以便测试软件。我不认为这是由错误的协调引起的,因为在使用真实设备进行测试时使用了相同的协调。
-
@RichardLe 顺便说一句,我发布另一个问题;你能检查一下吗? stackoverflow.com/questions/26540861/… 谢谢!
-
我在带有加速器、陀螺仪和磁力计的 Android 手机中应用 Madgwick 滤波器,偏航输出似乎像我预期的那样旋转了 90 度。我想问题的原因是来自不同的协调。如果你解决了这个问题,请分享
标签: iphone algorithm sensors quaternions