Reorienting Accelerometer data according to gravity

7 views (last 30 days)
Hello all,
I have three 26531x1 doubles vectors in matlab, one for the X, Y and Z-axis of accelerometer readings of about 5 minutes at 50Hz. From these accelerometer readings I want to calculate the relative slope. I want to use a 10s long (moving) median of all three axis (which I can calculate already) to determine the gravity component of the accelerometer.
The part I am stuck at however, is how to use the median vectors for X, Y and Z (same length) to reorient the original X,Y and Z values.
so basically I have xraw, yraw and zraw, together with xmed, ymed and zmed and I want to get to xreoriented, yreoriented and zreoriented. I want to end up with the angle between the median vectors (direction of gravity) and the gravity direction of the raw values.
I hope I made my question clear enough, if not please tell me and I'll fix it.
//edit: It just occurred to me that it might be suitable to go from three to two axis first (since I only need the resultant vector of the horizontal plane), then get the median, calculate both angles and substract them to get the difference... though I'm not certain...
Benjamin Lemmer
Benjamin Lemmer on 6 Mar 2019
I know it has been a while - have you found a solution ? I am stuck at the same point.
Thanks in advance!

Sign in to comment.

Answers (1)

Thomas Koelen
Thomas Koelen on 13 May 2015
This website explains it very well, also shows some example coding, it's matlab however:
  1 Comment
tomzooi on 13 May 2015
It is something different then removing the gravity component, I actually want to know the angle between the long term (averaged or median) orientation and short term (to get relative angular movement basically).

Sign in to comment.


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!