由网友(囧囧)分享简介:编写了一个打印加速度计输出的简单程序。mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor...![2220 单轴高精度加速度计](https://p.xsw88.cn/allimgs/daicuo/20230903/4519.png)
编写了一个打印加速度计输出的简单程序。
mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_FASTEST);
结果是:
![2220 单轴高精度加速度计](https://p.xsw88.cn/allimgs/daicuo/20230903/4519.png)
加速度计输出始终设置为"最低",具体取决于:
public void onAccuracyChanged(Sensor sensor, int accuracy) {
if (collectingData){
accelPrecision.setText("accelerometer accuracy: " + accuracy);
}
}
实际的加速度计读数非常不准确--即使放在桌子上也会有2%-5%的波动
据我所知,Nexus S、Nexus One和G1也存在同样的问题
有什么想法可以使模式准确/是什么设置了
推荐答案
使用筛选器。你看到的是原始数据,所以它当然会波动。类似weighted average或moving average的内容就足够了。
相关推荐
最新文章