相关疑难解决方法(0)

Android TYPE_LINEAR_ACCELERATION传感器 - 它显示了什么?

我正在开发汽车加速跟踪应用程序.我使用标准加速度计,事先在特定位置校准.

然后,假设手机的方向没有改变,我将加速度计数据记录了指定的时间并计算了移动参数,其中一个是测试结束时的汽车速度.

它在一条平直的水平道路上工作得相当好:几个百分点的误差.

但后来我发现,在API级别10中有一个叫做的虚拟传感器TYPE_LINEAR_ACCELERATION,据我所知,它必须做我需要的东西:过滤重力,方向变化 - 所以我可以使用它并获得纯粹的线性加速度移动设备.

但在现实生活中......

我做了一个简单的应用程序,做了一点测试:

//public class Accelerometer implements SensorEventListener { ...
public void onSensorChanged(SensorEvent se) 
{
    if(!active)
        return;

    lastX = se.values[SensorManager.DATA_X];
    lastY = se.values[SensorManager.DATA_Y];
    lastZ = se.values[SensorManager.DATA_Z];
    long now = System.currentTimeMillis();
    interval = now - lastEvetn;
    lastEvetn = now;
    out.write(Float.toString(lastX) + ";" + 
                    Float.toString(lastY) + ";" + 
                    Float.toString(lastZ) + ";" + 
                    Long.toString(interval) + "\n");
}
Run Code Online (Sandbox Code Playgroud)

我用以下参数绑定一个监听器:

  mSensorManager.registerListener(linAcc,
                mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION),
                SensorManager.SENSOR_DELAY_GAME);
Run Code Online (Sandbox Code Playgroud)

它工作正常,但是当我分析数据转储时,计算速度,比如V = V0 + AT,V0 = 0首先,然后 - 之前的间隔速度,A = …

android sensor accelerometer

36
推荐指数
3
解决办法
5万
查看次数

标签 统计

accelerometer ×1

android ×1

sensor ×1