Everebody knows that speed goes with some error. Let's say noise. After differentiation (to get longitudinal accleration) noise increases a lot. And after calculation of lateral acceleration noise also increases. So I want to say that speed is main source of data to get accelerations. Aol, did you think about smoothing the speed curve? I checked that smoothing works perfectly without artefacts! Here you may see results.
http://dl.dropbox.com/u/4005858/speed.png
http://dl.dropbox.com/u/4005858/accel.png
Original speed was accuired with 5Hz sampling rate (BT-qstarz818x). Smoothing was done in Origin software. Algorithm: Savitzky-Golay, points of window = 10, polynomial order = 2 (parabola). avter this I calculate longitudinal acceleration by simple formula: 0.1*speed[i]-/speed[i-1])/0.2. (By the way why do you use g=10 and not g=9.8?)
P.S. I think it would be very useful to have option of smothing speed in racechrono. There are several algorithm of smoothing. Also there is spline, but this I did not try.
Comments
I found something about Kalman filter
http://en.wikipedia.org/wiki/Kalman_filter
http://github.com/lacker/ikalman
This filter people uses in similar cases.
http://stackoverflow.com/questions/1134579/smooth-gps-data
When I implemented the GPS acceleration calculus, I thought the data should be smoothed, but just forgot about it after I was done. I've also bought a book on Kalman filtering but I never got around making a working application of it. I was investigating how to 'fix' the speed and cornering plot with the accelerometer data, but didn't get it working. Would be very cool to use couple of months on it, but reality is that I'm way too busy with the project as is...
I'll use your work when I make the next version (will be a very major changes anyways). Let me know any further advances in your research :)
read this example.
Example about the old slow-moving car. It is known that its acceleration up to 60 miles per hour is not less than 10 seconds. Imagine that his speedometer gives a very noisy measurements, which are spread to 40 miles per hour around the true value of the vehicle's speed. From a stationary position, which can be accurately determined, since it does not rotate wheels of the car, the driver all the way to push the accelerator pedal. Within five seconds, the speedometer showed 70 miles per hour. The driver, knowing that the car can not accelerate as quickly, and using information about the error of the speedometer can come to the conclusion that the more probable speed of the car about 40 miles per hour. Similarly, received and Kalman filter, due to information about the characteristics of noise and the dynamics of the system, it reduces the influence of measurement noise.
So the main idea is: car can not rise speed faster than it can)
By the way could please write formula to calculate lateral acceleration from speed and actual position. Then I will check how smoothing of speed will affect on noise of lateral acceleration.