아래부분이 문제인것 같습니다.
event.values 부분의 x, y, z값은 0,1,2의 값을 사용해야 하는데, AXIS_X,Y,Z 값은 1,2,3입니다.
때문에 해당 값을 구하기 위해서는 AXIS_X... 을 사용하지 마시고, 0, 1, 2직접 사용하시면 해결 될것 같습니다.
x = event.values[SensorManager.AXIS_X];
y = event.values[SensorManager.AXIS_Y];
z = event.values[SensorManager.AXIS_Z];
=============================================================
private static final int DATA_X = SensorManager.AXIS_X;
private static final int DATA_Y = SensorManager.AXIS_Y;
private static final int DATA_Z = SensorManager.AXIS_Z;
lastX = event.values[DATA_X];
lastY = event.values[DATA_Y];
lastZ = event.values[DATA_Z];