iphone中加速度计的最大采样率

时间:2011-08-02 10:34:09

标签: iphone ios4 accelerometer uiaccelerometer

有人知道iphone加速度计的最大采样率是多少。 我希望有更高的更新率。我将它设置为updateInterval为1.0 / 300.0 但似乎我没有获得那么多的更新率。

所以任何机构都可以告诉我,我们可以获得的最大更新率是多少,或者我如何获得高更新率。

3 个答案:

答案 0 :(得分:2)

iPhone 6上的最大加速度计和陀螺仪采样率 100Hz 。您可以自己进行经验测试。这是代码。

padding-top: (insert number)px or %

答案 1 :(得分:1)

答案 2 :(得分:0)

尽管文档说The maximum frequency at which you can request updates is hardware-dependent but is usually at least 100 Hz.,但我认为最大采样率仍为100Hz

我弄清楚的方法是将CoreMotion的现有示例代码称为MotionGraphs,并将startUpdates函数调整为:

func startUpdates() {
    guard let motionManager = motionManager, motionManager.isGyroAvailable else { return }

    sampleCount = 0
    let methodStart = Date()

    motionManager.gyroUpdateInterval = TimeInterval(1.0/100000.0) // Hardcoded to something verfy fast
    motionManager.startGyroUpdates(to: .main) { gyroData, error in
        self.sampleCount += 1
        //...view update code removed
        if (self.sampleCount >= 100) {
            let methodFinish = Date()
            let executionTime = methodFinish.timeIntervalSince(methodStart)
            print("Duration of 100 Gyro samples: \(executionTime)")
            self.stopUpdates()
        }
    }
}

我还设置motionManager.deviceMotionUpdateInterval = TimeInterval(1.0/100000.0)以获得良好的衡量标准(如果是全球费率)。

根据加速度计和陀螺仪的代码,我确认iOS 11.4上的iPhone 8仍然在100Hz左右达到最大值。

Duration of 100 Accelerometer samples: 0.993090987205505
Duration of 100 Accelerometer samples: 0.995925068855286
Duration of 100 Accelerometer samples: 0.993505954742432
Duration of 100 Accelerometer samples: 0.996459007263184
Duration of 100 Accelerometer samples: 0.996203064918518

Duration of 100 Gyro samples: 0.989820957183838
Duration of 100 Gyro samples: 0.985687971115112
Duration of 100 Gyro samples: 0.989449977874756
Duration of 100 Gyro samples: 0.988754034042358