1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

3 axis accelerometer forces as angles/vectors

  1. Mar 31, 2007 #1


    User Avatar


    I have a three axis accelerometer that I am using in project that I am working on and I need to find the angle/vector of the axis’s when the device is not orientated to its designated axis, and when it is accelerating. If I lay the device flat on a horizontal surface and read the outputs from the x axis I get 1g, and 0 for the y and z axes which is correct.

    I can translate the g forces into angle/vectors like so:
    sin-1x = 90, sin-1y = 0, sin-1z = 0 which is correct, also I can rotate the device about and this sin-1, still returns the correct angle/vector.

    However, this only works when the accelerometer is stationary as when it is moved the g force changes and this simple sin-1 produces incorrect results.

    Can someone help please?

    Many thanks in advance IMK
    Last edited: Apr 1, 2007
  2. jcsd
  3. May 6, 2007 #2
    Same problem here ...
    Working on a fall detection, but when the person jumps, the angles all get screwed up.
    When they are standing still, the angles are correct, but when they make a hard acceleration (jump or run), things get messy ...

    Greetz !
  4. May 6, 2007 #3


    User Avatar
    Science Advisor
    Homework Helper

    I think you have got two different problems here.

    1. When the orientation changes, you need to measure what the new orientation is (from the posts, you don't seem to have done that explicitly)

    2. Non-zero angular velocities and angular accelerations of a rigid body will cause linear accelerations at any point in the body which may be confusing your measurements if you don't allow for them - e.g. an accelerometer on a rotating wheel will measure a radial accleration of r.omega^2, and there will be a tangential acceleration if the speed of rotation changes.

    The solution to both problems is to measure the angular position/velocity/accleration independently. If you are considering rotation of a rigid body in any possible directions, you need 6 linear accelerometers positioned so you can find the 3 linear and 3 angular accelerations of the body. If there are some constraints on the motion, you may get away with fewer than 6. Or, you could consider measuring the angular motion some other way.
  5. May 6, 2007 #4


    User Avatar

    Many thanks for your input, it was most useful… I have been back to the old physics books (many years since I did this stuff) and what I am trying to do is starting to make sense again.

    What I have done is to take a step back and rather than trying to find a solution with the accelerometer and the microcontroller only. I have turned the microcontroller into a data recorder, and recorded the g force resultant actions I am trying to solve. These I then upload into my PC via a serial link and I have developed a visualization tool (oscilloscope for g forces) so I can see what is going on. Then I can apply to math to these stored files (actions) the big advantage is that you now get consistent results as you are always dealing with know event (g force actions, jump, sit, roll etc. ). Also, when I was Googling about I came across some Canadian research on fall detection, with some math that may be what you are looking for.
    All the best and again many thanks IMK
  6. Sep 3, 2010 #5
    Hello all,
    i have some acceleration value s in each axis(x,y,z)
    i want to calculate the acceleration and de-acceleration using the acceleration data in (m/s^2)

    my data are as below:-
    id time (ms) x (m/s2) y (m/s2) z (m/s2)
    0 0 -0.1569064 7.4628606 5.9722495
    1 64 -0.5001391 8.551398 5.7368903
    2 178 -0.44129923 8.374879 5.7368903
    3 294 -0.44129923 8.306232 5.79573
    4 382 -0.39226598 8.237586 5.8349566
    5 383 -0.2353596 8.16894 5.8349566
    6 469 -0.0784532 7.864933 5.8349566
    7 555 -0.0784532 7.678607 5.8349566
    8 557 -0.0784532 7.60996 5.8349566
    9 643 -0.0784532 7.8453197 5.8937964
    10 729 -0.0784532 7.9041595 5.8937964
    11 815 -0.0784532 7.9041595 5.933023
    12 816 -0.0784532 7.8257065 5.933023
    13 927 -0.14709975 7.8257065 5.933023
    14 1021 -0.14709975 7.9924197 5.933023
    15 1115 -0.088259846 7.75706 5.933023
    16 1193 -0.088259846 7.502087 5.933023
    17 1298 -0.088259846 7.502087 5.991863
    18 1385 -0.088259846 7.5707335 5.991863
    19 1386 -0.088259846 7.60996 5.991863
    20 1472 -0.088259846 7.5707335 5.991863

    How i will calculate the leteral and longitudinal acceleration (vehicle performance)

    thanks in advance

    Trilokchand Modi
  7. Sep 3, 2010 #6


    User Avatar

    Hello Trilokchand,
    I has taken me three years to solve this problem.
  8. Sep 3, 2010 #7
    Hi IMK,

    can u plz help me out to solve this problem...
    i m very much confused to solving this...

    bascically i want to know that is the rough or safe driving..

  9. Sep 3, 2010 #8


    User Avatar

    Hello Trilokchand,

    It is interesting that you have made this post at this time on this particular subject and the mathematics of coincidence would be better served on other threads I am sure.

    What I will say is this.

    What you are trying do to I have worked on for three years now and it is not a simple problem. Several PhD’s and Professors of mathematics and physics have told me that the problem is impossible because of ?????? and I will let you discover what ?????? is. I have test driven tens of thousands of miles across mountains and plains, motorways, speed humps, pot holes and dirt roads. I have retired to my bed many times thinking I will give up, but then awoke in the morning with another idea. Call this dam stupidity or the tenacity of one who is not easily beaten. But one thing is for sure there is a solution. But you will have to get creative is you wish to achieve 0.025g acceleration/deceleration/turn sensitivity my solution realizes with excellent road noise rejection.

    My mission was to produce a commercial product that should be in a shop near you soon. If you have similar desires you should be aware of current and pending patents on this subject. If you are researching this for academic studies or as a hobby then I wish you every success as it is a most absorbing problem. Plus some 20,000 lines of ‘C’ code.

    Finally if you don’t live within a short drive to mountains then you really shouldn’t even think about this problem anymore. As they will eventually be you nemesis.

    All the best IMK
  10. Sep 3, 2010 #9
    I M in also same condition every time i m thinking lets drop this and think on the some other issue... but main problem is i dont want to give up. i want the solution for it. actually i am doing R&D on accelerometer data so i want to know how is performing... so i want the basic idea to calculate resultant acceleration and forward or backward acceleration. in all direction its have the gravity effect on it so first of all i want to remove the gravity factor from axis so i can get the actual acceleration... waiting 4 ur reply..

    Thanks in advance
  11. Sep 4, 2010 #10


    User Avatar

    Hello Trilokchand
    I see this data is from an iPhone….
    Then patience, young man patience….. Want you want will soon be a download for the iPhone… Then all will be revealed…
  12. Sep 5, 2010 #11
    This is the data from android. iphone gives the x,y,z in G's while android is giving in terms of m/s^2. can me give me the basic idea about nullify the gravity and get the actual acceleration in each direction coz if the orientation of device changes its reflect the gravity in each direction so we need to remove the gravity factor from each direction. as if we take first value as static and subtract the next from previous then we got the accelerated values but that is not the correct solution.

    Thanks for ur reply.

Share this great discussion with others via Reddit, Google+, Twitter, or Facebook