iPhone 5 / 5th Gen iPod Touch的加速度计/陀螺仪限制的变化?

时间:2012-10-20 21:51:23

标签: iphone ios accelerometer ipod-touch gyroscope

当iPhone 4和第4代iPod Touch问世时,我正在玩弄Apple的Core Motion传感器融合算法,看看我是否可以获得任何有趣的结果,用于非常局部的航位推算(在几英寸的范围内)英尺)。鉴于MEMS传感器的规格相对较低,我没想到会有什么惊人之处。虽然Apple的CMDeviceMotion gravity属性使用了一种不错的(虽然不透明)传感器融合算法,但补充userAcceleration属性并不完全针对航位推算。尽管如此,我认为可能还有足够的乐趣。

iPhone 4,iPhone 5,第4代iPod Touch和第5代iPod Touch显然都使用STMicroelectronics LIS331DLH加速度计和L3G4200D陀螺仪。 (实际上,我还没有看到iTouch-5陀螺仪的部件号,所以可能会有所不同。)

拆解:iPhone-4iTouch-4iPhone-5iTouch-5

ST规格显示加速度计可以1000 Hz的样本采样,最高可达±8g。该陀螺仪可以800 Hz的频率采样,最高可达±2000 dps。

规格:LIS331DLHL3G4200D

但是,使用我的第4代iPod Touch(iOS 5和iOS 6),我只能将采样率调高到100 Hz。如果我将CMMotionManager deviceMotionUpdateInterval设置为低于0.01,则会自动重置为0.01。 accelerometerUpdateIntervalgyroUpdateInterval相同。

此外,加速度计输出似乎总是限制在±2g左右。

我见过其他人对iPhone 4类似界限的评论。

这两个界限严重限制了我可以挤出设备的局部加速度计算(试验我的第四代iPod touch)。我认为Apple已将这些限制设置为低,以降低功耗。虽然我不知道它们是设置在硬件中还是设置在某个iOS中。

有没有人在iPhone 5或第5代iPod Touch上使用这些加速度计和陀螺仪边界? (或任何iPad?)任何高于100赫兹的采样率?任何加速度计测量超出±2g?

的范围

3 个答案:

答案 0 :(得分:6)

在我所做的阅读中,在确定加速度计读取的最小/最大读数时,通常有2-3种选择。 2G是加速度计的一个非常常见的选择,因为下一步(8G)通常是粗略读数,以便在进行手部运动时获得所需的精细测量。如果你将它从建筑物上掉下来测量击中地面的力量,你会想要使用8G(或16G作为一些报价)。

根据the folks at Corona Labs,看起来有意将频率上限设为100Hz。这是为了避免明显滥用电池。我曾经读过,加速度计是耗电量最小的传感器,但我猜它都是相对的,或者在100Hz左右的某个点上功耗的急剧增加。

答案 1 :(得分:3)

我在iPhone 5上测试了techBASIC,并注意到异常导致我进行了这次讨论。显然iPhone 5中的加速度计设置为8G范围!虽然我找不到任何引用来确认它,但是当我上下摇晃iPhone 5时,techBASIC的加速度计演示显示了这一点:

Plot of Acceleration on an iPhone 5

这对物理应用来说非常令人兴奋。我使用SensorTag测量模型火箭的加速度,因为它有一个可选的8G范围,而iPhone没有 - 你现在可以省去SensorTag并只使用iPhone。

http://www.youtube.com/watch?v=8YNjwcNXOK4 iPhone Rocket

答案 2 :(得分:2)

为了帮助回答您问题的另一半,我使用的是iPad Mini,当我使用Warren Whipple's suggestion时,我发现accelerometerUpdateIntervalgyroUpdateInterval会立即重置为0.01如果我将它们设置为任何较小的值。

然而,当我在设备上运行诊断测试时,我发现加速度计或陀螺仪数据更新的实际速率接近0.02 s,即如果我将accelerometerUpdateInterval设置为0.01 s并查询加速度计在0.01秒的数据中,我得到一个关于每次其他获取的唯一读数,但是如果我将其设置为0.02秒(或在0.02秒时查询),那么每次获取都会得到唯一的读数。