Android 佩戴加速度计仅提供 +- 2g
Android Wear accelerometer giving only +- 2g
这是我的问题:我正在使用 android 佩戴(索尼智能手表 3)加速度计的典型方式:
sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
senAccelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
sensorManager.registerListener(this, senAccelerometer, SensorManager.SENSOR_DELAY_FASTEST);
@Override
public void onSensorChanged(SensorEvent sensorEvent) {
float x;
float y;
float z;
switch (sensorEvent.sensor.getType()) {
case Sensor.TYPE_ACCELEROMETER:
Log.d("swing", "onSensorChanged:" + senAccelerometer.getVersion());
calculateSensorFrequency(System.currentTimeMillis());
x = sensorEvent.values[0];
y = sensorEvent.values[1];
z = sensorEvent.values[2];
.
.
.
break;
}
在 onSensorChange
方法中,尽管 Sensor.getMaximumRange()
给出了 16g (156.96 m/s*s),但我只得到了 +- 2g 读数。有没有办法校准加速度计或者这是一个错误?任何帮助将不胜感激。谢谢
P.S。我试图使用 Sensor.getVendor
方法在 google 中找到硬件加速度计模块范围的详细规范,但没有运气。
Sony Smartwatch 3 有一个 EM7180 传感器融合平台 (http://www.emmicroelectronic.com/products/sensor-fusion-sensor-interface/sensor-fusion/em7180sfp) built in with a Bosch BMX055 (https://www.bosch-sensortec.com/bst/products/all_products/bmx055),它有一个加速度计、陀螺仪和磁力计。它有几个加速度范围±2g/±4g/±8g/±16g。但我的读数也只在 +/- 2g 范围内。
这是我的问题:我正在使用 android 佩戴(索尼智能手表 3)加速度计的典型方式:
sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
senAccelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
sensorManager.registerListener(this, senAccelerometer, SensorManager.SENSOR_DELAY_FASTEST);
@Override
public void onSensorChanged(SensorEvent sensorEvent) {
float x;
float y;
float z;
switch (sensorEvent.sensor.getType()) {
case Sensor.TYPE_ACCELEROMETER:
Log.d("swing", "onSensorChanged:" + senAccelerometer.getVersion());
calculateSensorFrequency(System.currentTimeMillis());
x = sensorEvent.values[0];
y = sensorEvent.values[1];
z = sensorEvent.values[2];
.
.
.
break;
}
在 onSensorChange
方法中,尽管 Sensor.getMaximumRange()
给出了 16g (156.96 m/s*s),但我只得到了 +- 2g 读数。有没有办法校准加速度计或者这是一个错误?任何帮助将不胜感激。谢谢
P.S。我试图使用 Sensor.getVendor
方法在 google 中找到硬件加速度计模块范围的详细规范,但没有运气。
Sony Smartwatch 3 有一个 EM7180 传感器融合平台 (http://www.emmicroelectronic.com/products/sensor-fusion-sensor-interface/sensor-fusion/em7180sfp) built in with a Bosch BMX055 (https://www.bosch-sensortec.com/bst/products/all_products/bmx055),它有一个加速度计、陀螺仪和磁力计。它有几个加速度范围±2g/±4g/±8g/±16g。但我的读数也只在 +/- 2g 范围内。