9 years, 10 months ago.

FRDM-k64F FXOS8700CQ accelerator / magnetometer module - value meanings

Where can I find the meaning of the acc and mag values of the freescale FRDM-k64F FXOS8700CQ accelerator /magnetometer module?

I have adapted a small program reaind the accelerator / magnetometer values.

Output is like this:

i;acc_data.x;acc_data.y;acc_data.z;mag_data.x;mag_data.y;mag_data.z;faX;faY;faZ;fmX;fmY;fmZ;acc_raw.x;acc_raw.y;acc_raw.z;mag_raw.x;mag_raw.y;mag_raw.z;raX;raY;raZ;rmX;rmY;rmZ 243;-0,05371094;0,07275391;0,98681641;74,3;29,6;93,2;-0,05371094;0,07275391;0,98681641;74,30000305;29,60000038;93,20000458;-220;298;4042;743;296;932;-220;298;4042;743;296;932

I assume the acc_data.z is the vertical acceleration. e.g. acc_data.z 0,98681641

This looks like the standard g value, but what is the reference value used for g in this case ("the zero point)"? The normed value is normally 9,80665 m/s2. Or divided by for norming 0,980665, which is close to the value above. Is this correct?

This would mean that I have to deduct 0,980665 from 0,98681641 to get the real current accelaration. I know that the "norm value" depends on the location.

1 Answer

9 years, 10 months ago.

The values depend on weather or not you are accessing the API using fixed or floating point structures. Using fixed point (counts) the range is -8191 (-2g) to 8191 (2g). using the floating point structure (units) the range is unit converted to +/-2g.

Try out: mbed.org/users/JimCarver/code/Hello_FXOS8700Q/

This shows all the possible data APIs

Accepted Answer

Oh, I almost forgot. An accelerometer measures gravity to the axis point down will show 1g. If you want to normalize for acceleration only you need to remove the gravity vector, easy when the device has 1 axis pointing down or up, not so simple when tilted.

posted by Jim Carver 16 Jun 2014

I made a lot of several measueres with the controller flat on the ground. The mean of about 300 measures is 0,990214555 (z-axis), which is close to 1g, but not 1g (standard deviation 0,002975582). I assume that this values come up because the sensor is not perfectly "oriented down". As there is no gyroscope on the board I assume there is no way to determine the "real" z-axis values vertical to the earth centre orientation.

posted by Klemens Waldhör 22 Jun 2014

Please consult the device datasheet, this appears to be within the offset error specification. You would also need to insure that the mounted package is perfectly flat. Also consult AN4399 which discusses post mounting error compensation. A gyro would not help as it only provides angular change readings so a gyro which is not moving reads all zeros when stationary without regard to orientation.

posted by Jim Carver 22 Jun 2014