data in X_OFFS_USRH

By graeme_woodall , 23 November 2011

Какие данные нужно записать в регистр X_OFFS_USRH?

guy_mcilroy

14 years 4 months ago

Please resubmit this post in English so we can assist you.

phpbb Post ID
18564

graeme_woodall

14 years 3 months ago

what data should be written in X_OFFS_USRH, X_OFFS_USRL... Z_OFFS_USRL register?
Do they depend on the value of DLPF_FS register.
What I must do for offset calibration?

phpbb Post ID
18567

jims_li

14 years 3 months ago

Can you let us know the part number you are using and what code on the developers corner that you are referring to, so that we can help you further.

phpbb Post ID
18570

graeme_woodall

14 years 3 months ago

I use the IMU-3000.
When the sensor is stationary in the registers GYRO_XOUT_H, GYRO_XOUT_L,
GYRO_YOUT_H, GYRO_YOUT_L, GYRO_ZOUT_H, GYRO_ZOUT_L are some numbers, constant offset. To compensate for it, I write these numbers in the relevant registers X_OFFS_USRH and so on. But as a result of the offset is not removed.

phpbb Post ID
18573

jims_li

14 years 3 months ago

The X_OFFS_USRH, X_OFFS_USRL... Z_OFFS_USRL registers are used to remove DC bias from the sensor outputs. In other words, these registers are used to calibrate the gyro. These values indicate how much the user needs to correct the zero rate outputs. The Initial ZRO Tolerance is ±20 º/s.

What values are you writing to the X_OFFS_USRH, X_OFFS_USRL... Z_OFFS_USRL registers ? How do you determine these values ?

phpbb Post ID
18576

graeme_woodall

14 years 3 months ago

I read GYRO_XOUT_H, GYRO_XOUT_L.... GYRO_ZOUT_L registers when the device does not move.
And write these values into X_OFFS_USRH, X_OFFS_USRL..Z_OFFS_USRL registers.
As a result, when I measure the new values, they differ little from those that were once in a register X_OFFS_USRH, X_OFFS_USRL..Z_OFFS_USRL was set to 0.

For example:
device does not move
read GYRO_XOUT_H, GYRO_XOUT_L.... GYRO_ZOUT_L
Gyro_X = 200
Gyro_Y = 300
Gyro_Z = 860
Write these values to X_OFFS_USRH, X_OFFS_USRL..Z_OFFS_USRL.
again read GYRO_XOUT_H, GYRO_XOUT_L.... GYRO_ZOUT_L
and
Gyro_X ~ 200
Gyro_Y ~ 300
Gyro_Z ~ 860

What Sensitivity Scale Factor of X_OFFS_USRH, _OFFS_USRL..Z_OFFS_USRL?
And how it depends on the Full-Scale Range?

phpbb Post ID
18579

jims_li

14 years 3 months ago

The values you are writing are incorrect. You cannot write the GYRO_XOUT_H, GYRO_XOUT_L.... GYRO_ZOUT_L values into X_OFFS_USRH, X_OFFS_USRL..Z_OFFS_USRL registers.
For example, you measure 200 from GYRO_XOUT_H, GYRO_XOUT_L.... GYRO_ZOUT_L but the expected value is 220. You now write 20 to the X_OFFS_USRH, X_OFFS_USRL..Z_OFFS_USRL registers so that the measured and expected values are the same.

The Sensitivity Scale Factor will depend on the full scale range that you select.

phpbb Post ID
18582
phpbb Topic ID
13959