PDA

View Full Version : Help! Inertial Measurement Unit design


alejos
Jul 11, 2009, 03:52 PM
Hi everybody, this is my first post in this forum and I hope you can help me with my work because i am stuck.

I have to develop an Inertial Measurement Unit and i am lost with the great amount of information that i can find in internet. I think i have already almost all the basic information but I am stuck because i need to clarify how to work with all the information.

My IMU will have 3 gyros, one 3-axis accelerometers, one 2-axis magnetometer and the microcontroller i want to use will be de MSP430F1611 due to its low power consumption. I want to follow the method that is described in this paper to get the attitude (you can find the paper easily in internet):

Development of AHRS (Attitude and Heading Reference System) for
Autonomous UAV (Unmanned Aerial Vehicle)

Now what i want to learn in this forum is, how i have to work step by step. Next, i will propose my linework once the IMU is conected and working:

1 - I get from the sensors the values of the data and i translate the voltage to sensor data (V to g (accel.), V to º/sec (gyros), V to Gauss (magnetometer)).

2 - With equation 6 and 8 from the paper i calculate the three Euler angles, roll, pitch and yaw.

3 - With equation 3 i can calculate the angle update.

4- Now, i apply the TRIAD algorithm to calculate the rotation matrix (cosine direction matrix).

In this algorithm i have to use two pairs of vectors, two known vectors (acceleration and magnetic field) and two unknown vectors from the sensors. I don't know tha acceleration and the magnetic field, so how have i to use the TRIAD algorithm?

5- I apply the Kalman Filter (equations 10, 11, ...) using quaternios (and the rotation matrix to calculate them) but i have to include also the bias of rotation rate measurements that i don't know how to measure...

How should i measure the bias error from the gyroscopes?

How can i calculate the matrices from the kalman filter? Could i use the same in the paper? How should i interprete the term dt.e0,1.2. etc in matrices. Is it a multiplication? how i interpret the time?

I am sorry for this long post but i need help and i think this paper is the easyest that i found explaining all this but no so accurately as I expected.

I hope you can help me. Thank you very much

Alejos