【发布时间】:2016-03-30 21:04:16
【问题描述】:
我正在尝试确定使用 Android 的线性加速度数据的好处,而不是像 in Androids API reference 和讨论的 in this other stackoverflow question 那样简单地应用低通滤波器。
我正在尝试获取一个记录线性加速度的免费应用程序(以及满足我的其他要求(采样率、将数据写入文件等...))。我一直找不到,所以我考虑过只使用一个使用标准加速度计记录的应用程序,然后我将简单地将低通滤波器应用于数据。或者,我可以编写自己的应用程序来做我需要的事情 - 但我在 Android 开发方面没有太多经验,这需要一些时间。
【问题讨论】:
-
低通滤波器通常是个坏主意,尤其是当您可以使用线性加速度时。你想干什么?为什么需要加速?
-
我只是尝试在执行同时动作时记录和分析典型的加速度曲线。幸运的是,我找到了一个使用线性加速度计的免费应用程序。我发现线性加速度计和普通加速度计之间存在差异,因为普通加速度计返回的读数高达 2G(这通过调用 getMaxRange() 函数得到确认)。然而,线性加速度计返回高达 3G 的读数——尽管它的 getMaxRange() 函数返回 2G。我很困惑。如果有帮助,我在三星 Galaxy S2 上看到了所有这些。
-
3G是合理的,想想看。您可以测量的最大值是 2G,在消除重力 (1G) 后,在某些情况下,您确实可以获得 3G,具体取决于方向。换句话说:
acceleration = gravity + linear-acceleration并且不要忘记这些是带有符号的向量!长度确实可以是你写它的方式。
标签: android filtering accelerometer uiaccelerometer