CoreMotion linear motion ratio

I am developing an application that should use very small changes in the gyro data.

The problem is that by keeping the device flat on the table and speeding it horizontally, CoreMotion also seems to perceive linear acceleration as angular acceleration.

The pitch and roll values ​​coming directly from the device change with a maximum value of 3 degrees and return to the default value when decelerating. I would expect only one angle (yaw) to change, since you can rotate the device this way, keeping it horizontal. It doesn’t matter which relation links I use.

The same issue affects the quaternion deviceMotion.attitude. At first I thought it was the effect of the sensor merge algorithm used in CoreMotion, but rotRate coming from CMGyroData (which should be raw data) changes as.)

Has anyone noticed this problem before?

+5
source share

All Articles