[Solved] Desperately seeking DCM help

Hi all.

 

I'm building a custom AHRS/IMU, and I'm trying implement Bills et al's DCM, without much success.

 

The parts I'm using and other details on the project can be found here: http://hackoholics.blogspot.com/

 

At the moment I've not implemented any drift corrections to the gyros, only R[] update and normalisations. I was expecting to get roll/pitch/yaw angles roughly in the ball park when I move the gyro around, but all I get is fluctuations around 0 up to +/- 2-3 degrees, and fluctuating sign changes.

 

This is the pseudo code for what I do do far:

- gyro-updates are received an scaled to degrees (w*dt)

- Rup update matrix is constructed

- Matrix multiplication to get new R matrix. R(t+1) = R(t)*Rup

- Normalising of R matrix

- Calculate and display Roll/Pitch/Heave angles.

 

I don't completely understand rotation matrices, DCM or Euler angles. I've read and reread Bills DCMDraft, wikipedia, Mahoney's papers (a little heavy), and other sources. I'm sorry for my ignorance, but I really need some help with this one. I have basic knowledge of algebra, calcules, and linear algebra/matrix maths.

 

Is there anyone here who can shed some light on the matter? Had similar problems? Kindly Guide me through this?

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • Hurray, I sussed it. It was a stupid error, once I converted w*dt into rad, and the result from rad to degree, it worked.

     

    I've also implemented the corrections now, had some issues with the axis, but that's all sorted now.

     

    A big help was also reading the paper from this site: http://www.starlino.com/dcm_tutorial.html

    DCM Tutorial – An Introduction to Orientation Kinematics
    DCM Tutorial – An Introduction to Orientation Kinematics - Introduction This article is a continuation of my IMU Guide, covering additional orientati…
This reply was deleted.

Activity