Compensating for Accelerometer Misalignment

  • Context: Graduate 
  • Thread starter Thread starter IMK
  • Start date Start date
  • Tags Tags
    Accelerometer
Click For Summary
SUMMARY

The discussion focuses on compensating for cross-axis misalignment errors in Tri Axial Accelerometers using C programming. The user has successfully implemented axis offset and scaling corrections but struggles with matrix inversion and transposition for alignment error correction. They reference two key papers for guidance, including a general math paper and a manufacturer application note, and have created a Matrix Inversion function that requires validation. The user also shares their approach to calculating initial roll, pitch, and yaw using trigonometric functions, but encounters inaccuracies in the results.

PREREQUISITES
  • Understanding of Tri Axial Accelerometer principles
  • Proficiency in C programming
  • Knowledge of matrix mathematics, specifically inversion and transposition
  • Familiarity with trigonometric functions for roll, pitch, and yaw calculations
NEXT STEPS
  • Study matrix inversion techniques in C programming
  • Explore the application of rotation matrices in MATLAB
  • Review the alignment error correction methods detailed in the provided papers
  • Investigate advanced trigonometric calculations for improved accuracy in orientation
USEFUL FOR

Engineers and developers working with accelerometer data, particularly those involved in sensor calibration and orientation correction in embedded systems.

IMK
Messages
61
Reaction score
0
Hello
I am developing a programme in C that uses a Tri Axial Accelerometer and I have become bogged down with the maths for correcting cross axis misalignment errors and was wondering if someone could help me please.

I have two papers on the subject and I have worked my way through the axis offset and scaling. But I am finding this matrix inversion and transposition more than a handful.

The papers are to be found here:

This one is the general math
http://www.summitinstruments.com/knowledge_center/pdf/TN413.pdf

This one is to an application note from the manufacture of the device I am
using (or similar)

http://www.st.com/stonline/products/literature/an/17289.pdf

From Page 9 on is the alignment error correction stuff.
I have created a Table 2 and written the software to do Equation 1 (I think it is correct). I have managed to write a Matrix Inversion function that I think is correct as I have compared it with the Determinant and Inverted Output from the Online Matrix calculator here; http://www.bluebit.gr/matrix-calculator/

But now I am stuck, help would really be appreciated.

Many thanks in advance.
 
Last edited by a moderator:
Physics news on Phys.org
I am having a similar problem however I am unable to access the papers you have posted. The way I have approach this one is by working out inital roll pitch and yaw using the following;

roll = arcsin(Xval/1)
pitch = arcsin(Yval/1)
yaw = arcos(1/Zval)

I then input these into rotation matrix in mathlab. However this does not quite give correct result. Am still working with this problem
 

Similar threads

  • · Replies 14 ·
Replies
14
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 6 ·
Replies
6
Views
5K
  • · Replies 11 ·
Replies
11
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 3 ·
Replies
3
Views
16K
  • · Replies 10 ·
Replies
10
Views
22K
  • · Replies 22 ·
Replies
22
Views
3K
  • · Replies 4 ·
Replies
4
Views
5K
  • · Replies 2 ·
Replies
2
Views
2K