Adjusting Accelerometer Readings for Tilt and Rotation: A Scientific Approach

Click For Summary

Discussion Overview

The discussion revolves around adjusting accelerometer readings to account for tilt and rotation. Participants explore methods for correcting measurements based on known angles of tilt and rotation, as well as the implications of these corrections on the magnitude and direction of the acceleration vector. The conversation includes both theoretical approaches and practical considerations related to experimental data.

Discussion Character

  • Technical explanation
  • Debate/contested
  • Experimental/applied

Main Points Raised

  • One participant notes the need to adjust accelerometer readings due to a tilt of 18 degrees in the z direction and a rotation of 5 degrees in the x-y plane.
  • Another participant suggests multiplying readings by the cosines of the error angles, but later corrects this to indicate that readings should be divided by the cosines to account for the tilt.
  • There is a discussion about whether the cosine adjustment implies a right-angle triangle relationship between actual readings and adjusted readings.
  • A participant proposes constructing a 3x3 rotation matrix to transform the acceleration vector from the accelerometer coordinate system to the desired system.
  • One participant shares their experience of previously creating a rotation matrix but realizing they had considered the rotations in the wrong order.
  • Another participant suggests determining unit vectors directly from measurements to avoid issues with angle order.
  • A participant expresses concern about the sufficiency of their stationary readings to derive a unique 3D rotation for correcting subsequent readings.

Areas of Agreement / Disagreement

Participants exhibit disagreement regarding the correct method for adjusting the accelerometer readings, particularly whether to multiply or divide by the cosine of the angles. Additionally, there is uncertainty about the adequacy of stationary readings for determining a unique 3D rotation.

Contextual Notes

Participants discuss the implications of tilt and rotation on the magnitude of the acceleration vector and the challenges of correcting readings based on stationary data. There are unresolved mathematical steps related to the construction of the rotation matrix and the determination of angles from the accelerometer data.

Sam Smith
Messages
37
Reaction score
0
I have been using an accelerometer and I have realized that it was sitting at a tilt of 18 degrees in the z direction and rotated at 5 degrees in the x y direction. How should I change my accelerometer readings to account for this?
 
Physics news on Phys.org
Sam Smith said:
I have been using an accelerometer and I have realized that it was sitting at a tilt of 18 degrees in the z direction and rotated at 5 degrees in the x y direction. How should I change my accelerometer readings to account for this?
You should be able to multiply each of your readings by the cosines of the known error angles.
 
KL7AJ said:
You should be able to multiply each of your readings by the cosines of the known error angles.
This will not preserve the magnitude of the acceleration vector, which should be preserved in a mere rotation.
 
So for example my z reading will be multiplied by cos(18) and cos(5) as will the x and y readings?
 
Sam Smith said:
So for example my z reading will be multiplied by cos(18) and cos(5) as will the x and y readings?
My bad...they should be DIVIDED by the cosines...since being out of alignment will make the measured readings smaller.
 
Just wanted to check, so I will divide all readings by the cosine of both angles. For example I will divide z readings by cosing 18 AND cosine5 .. It makes sense as both rotations will effect all vectors but wanted to be sure
 
KL7AJ said:
My bad...they should be DIVIDED by the cosines...since being out of alignment will make the measured readings smaller.
The magnitude of the vector will be the same so the absolute components cannot be all smaller.
 
Also wanted to check, Why do we use cosine as this would suggest that the actual reading and reading nw made form a right angle triangle with each other?
 
How would you approach this problem A.T?
 
  • #10
Sam Smith said:
How would you approach this problem A.T?
Construct a 3x3 rotation matrix, that transforms the acceleration vector from the accelerometer coordiante system to the system you need:
http://en.wikipedia.org/wiki/Rotation_matrix
 
  • #11
Hi there AT thank you so much for the advice. I actually came across my error I had already come up with a rotation matrix before but had considered the rotations in the wrong order. I also wanted to check how would work out the roll pitch and yaw from stationary data? my data is -0.9 0.5 and -0.4 (my x is pointing downwards into the 1g direction) How can I work out the angles I have done it but I think error in this part is leading to my problem
 
  • #12
Sam Smith said:
I had already come up with a rotation matrix before but had considered the rotations in the wrong order.
Don't mess around with angles, then you have no problem with their order.

Determine the unit vectors of the target system (TS) directly from measurement: Align the object so your TS-axis(e.g. X) points upwards (against gravity), and save the accelerometer reading as the TS-unit vector (e.g. ex). Do this for two axes (e.g. X,Y), then use the cross product to get the 3rd unit vector and orthogonize. For example, knowing ex, ey you would do this:

ez = ex x ey
ey = ez x ex

Then normalize all 3 vectors to unit length. These 3 unit vectors are the rows of your matrix R which can be used to transform from accelerometer system (AS) to TS:

aTS = R * aAS
 
  • #13
That is a great idea however, I am doing this in retrospect. The device was placed on an animal and rotated during the course of the experiment. As a result the only thing I have to go on is the x y z readings when the animal was stationary in order to work out how much the gyroscope had rotated and then correct the rest of the readings. So what I found was that at rest my readings were x = -0.9 y = 0.14 z = 0.44 and so I am trying to adjust the rest of my readings based on this info
 
  • #14
Sam Smith said:
As a result the only thing I have to go on is the x y z readings when the animal was stationary in order to work out how much the gyroscope had rotated and then correct the rest of the readings. So what I found was that at rest my readings were x = -0.9 y = 0.14 z = 0.44 and so I am trying to adjust the rest of my readings based on this info
I don't think this sufficient info to get a unique 3D rotation.
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
1K
  • · Replies 4 ·
Replies
4
Views
5K
  • · Replies 7 ·
Replies
7
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
Replies
11
Views
24K
  • · Replies 16 ·
Replies
16
Views
3K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 5 ·
Replies
5
Views
4K
Replies
3
Views
2K