0

我刚刚完成了获取数据陀螺仪传感器的项目。如果我将手机水平放在桌子上,陀螺仪传感器的结果是: Roll (X) : 5.326322E-7 Pitch (Y) : 5.326322E-7 Yaw (Z) : 5.326322E-7

从逻辑上讲,结果应该是 0,因为手机放在桌子上。那么,有人可以帮助我吗?我在下面给出我的代码。非常感谢您提前回复:)。

public void onSensorChanged(SensorEvent event) {
if(event.sensor.getType()==Sensor.TYPE_GYROSCOPE)
    {


        float roolX = event.values[0];
        float pitchY = event.values[1];
        float yawZ = event.values[2];

        koordinatrollX.setText("Orientation X (Roll) :" + Float.toString(event.values[0]));
        koordinatpitchY.setText("Orientation Y (Pitch) :" + Float.toString(event.values[1]));
        koordinatyawZ.setText("Orientation Z (Yaw):" + Float.toString(event.values[2]));
    }
4

1 回答 1

1

E-7 = 10^-7 所以它非常接近于 0。你不能指望硬件完美校准或桌子完美平整。您可以让用户根据手机所处的表面重新校准,但您得到的结果已经非常接近于零。

于 2013-02-18T06:30:06.613 回答