Determining path, timing and velocity from a 3d accelerometer

AI Thread Summary
The discussion centers on the challenges of using a 3D accelerometer in a handheld device to determine its path and velocity over time, particularly due to the device's ability to swivel, which complicates gravity vector removal. Participants emphasize the importance of accurately modeling the gravity vector and the potential pitfalls of simplistic approaches, such as leaving gravity in and subtracting it later. The conversation highlights the limitations of the accelerometer, including output clipping during violent movements, and suggests using Kalman filters to mitigate noise and improve accuracy. It is noted that a proper attitude estimation is crucial for effective integration of acceleration data. The original poster is seeking assistance to develop an algorithm for this problem and is willing to pay for help.
tdavis1198
Messages
2
Reaction score
0
Hi,

I wonder if there is anyone who can help me with a problem i have.

I have a device that includes a simple 3d accelerometer. The device is a handheld device and my challenge is to figure out the path that the device moves in space relative to its starting position. I would like to plot the path and velocity with time.

The challenge is that the device can swivel over time which means that the gravity vector changes and so it complicates the requirement to remove the gravity vector so as to figure out the true acceleration.

Additionally, the accelerometer is really not made for violent swings and as such it can clip the output based on excessive movement.

The type of movement that takes place is a repetitive movement and so the general path is known and as such i believe that a model of the gravity vector can be created. Someone has experimented with my data and used Kalman filters and cubic splines to try and figure out the information.

The path information and velocity does not have to be 100% accurate. I just need a good general trend of how the object moves and the timing.

I am not a physicist and my job would be to find an algorithm and then write the software in he embedded hardware. Time is of the essence and if there is someone who could help me figure this out, I would appreciate it.
 
Physics news on Phys.org
Why subtract out the gravity vector? I would instead leave it in, and then at the very end, remove how far it has "fallen".

Clipping, though, is a problem. That information is lost, and the only thing you can do is try and guess what was lost.
 
Vanadium 50 said:
Why subtract out the gravity vector? I would instead leave it in, and then at the very end, remove how far it has "fallen".
This is not a good idea; it is generally a very bad idea.

tdavis1198 said:
The challenge is that the device can swivel over time which means that the gravity vector changes and so it complicates the requirement to remove the gravity vector so as to figure out the true acceleration.
You obviously need some model of the attitude state, otherwise your integrated state will diverge rather quickly, even without gravity entering the picture. One approach is to use gyros as a means of estimating your attitude state.

Additionally, the accelerometer is really not made for violent swings and as such it can clip the output based on excessive movement.
This might be a big problem.
 
D H said:
This is not a good idea; it is generally a very bad idea.

Why? Suppose you do this for one second, and then subtract off 16 feet. Why is this a problem?
 
Vanadium, your approach might work if
  • Earth had a uniform (planar) gravity field.
    This is a valid approximation over a short distance, but if the travel occurs over any significant distance, the uniform gravity assumption fails. Even the spherical gravity assumption fails; NASA requires a waiver if manned spacecraft navigation algorithms use less than an 8x8 spherical harmonics gravity model.
  • The device holds steady attitude.
    This is definitely not the case here. The OP specifically said "the device can swivel over time".
  • You only cared about the state at the end (whenever that is).
    Typically one uses navigation techniques to get an estimate of the state (position, velocity) at every point in time, not just the end.

Accelerometers readings are chock full of errors: white noise, biases, scale factor errors, alignment errors, etc. Run-of-the-mill numerical integration techniques will result in a lousy answer, and that is assuming a proper accounting of the one force that accelerometers cannot measure (gravity). Overly simple numerical integration, without properly accounting for gravity, will result in an incredibly lousy answer. Kalman filters were developed to address this very problem. They are what correctly got the Apollo vehicles to the Moon.
 
Would a Kalman filter help with the gravity problem or just to eliminate the noise?

PS. I need help to solve this problem and I am willing to pay somone to help!
 
I have recently been really interested in the derivation of Hamiltons Principle. On my research I found that with the term ##m \cdot \frac{d}{dt} (\frac{dr}{dt} \cdot \delta r) = 0## (1) one may derivate ##\delta \int (T - V) dt = 0## (2). The derivation itself I understood quiet good, but what I don't understand is where the equation (1) came from, because in my research it was just given and not derived from anywhere. Does anybody know where (1) comes from or why from it the...
Back
Top