Quote:
Originally Posted by alpha1 ...
I always wondered why there is no app, when all you require is to measure acceleration at ultra-fast resolution, and then mass, frontal area and drag coefficient is something that you can supply with.
Thanks for the find. |
Actually, this is not my find. Credit goes to d3mon who brought up this app in Chethan's Jetta thread
The author has developed a wonderful application just based on accelerometer data. And the way he has implemented the calibration to cancel offset and gain errors in the phone's accelerometer is just fantastic!
Quote:
Originally Posted by Jomz 1, The accelerometer is measuring acceleration due to gravity and vibrational accelerations. A frame of reference needs to be established to separate various components of acceleration - which is impossible in case of a hand-held. |
Some of the important conditions PerfExpert insists are:
- Firmly fix the phone on a stable holder without any vibrations (it actually throws an error if it detects unstable mounting of the phone)
- Perform a calibration of the acceleration sensor in the phone
- Before starting the dyno run, keep the car absolutely stable when the App shows "Wait"
Error correction: I have posted a video that explains how the phone has to be calibrated. This calibration involves placing the phone in various positions and letting the App performing calibration of the sensor. There are two errors in any measurement system - the offset error and gain error.
Offset Error: When the phone is placed in various resting positions, 2 of the 3 axes should read zero. However, due to offset error in the sensor, the values would be non-zero. These values can be stored and subtracted from real time measurements to cancel offset error.
Gain Error: As earth's gravity is a known constant, this can be used to compensate gain error in the sensor. For example, in each of the calibration positions, one of the sensors should read 9.8m/s^2 (or -9.8m/s^2). However, say if the sensor reads 9.898 m/s^2, the scale error can be caluclated as 1%. Later during actual measurement, this can be used to correct the real time measurement.
With this two point calibration, the offset error can be made almost, if not zero, and the gain error can be made less than 0.5%. I have not made any measurements on the accelerometer values to verify this. However, from my experience in building precision analog instrumentation systems, I know for sure this will be the case.
Positional inaccuracy can also be easily cancelled. Once the offset and gain errors are stored during calibration process, I believe the App also does another round of calibration before starting the dyno. This is to find the position of the phone from the three axes when the car is still. Once the accelerometer data from the three axes is know when the car is in stand still, once the car starts accelerating, it is very straightforward to extract the accelaration component due to the forward movement of the car.
Quote:
Originally Posted by Jomz 2, Typically measurements are directly measured or a differential is used. The issue with an integral measurement is - small errors in measurement get integrated with time to get the current value and there is no way to calibrate out this error. In a matter of seconds the error term will overwhelm the actual measurement.
As I said- Most reputed apps use GPS data to get position and, speed as differential on the position for good results. Maybe some of the inaccuracies reporeted are due to the flaws in the approach.
Some references. http://www.chrobotics.com/library/ac...ition-velocity |
In integration, only the offset error gets integrated over time. Gain error does not integrate. It remains the same even after integration over infinite time. As the calibration would make the offset and gain errors very small, and as the complete dyno run lasts less than 20 seconds, the error in the final result should be within acceptable limits.
I am not trying to prove that this is the best way to implement this application, nor am I saying that this approach does not have any flaws. All the clarifications I have provided are based on how I would have solved various errors in the system.
Yes, the author could have used GPS for getting velocity or used an OBD adapter to get RPM (instead of reverse calculating through gear ratios). But my guess is that he may have his reasons for implementing this system this particular way and would have done some home work regarding the errors that this system would produce and how to compensate these errors.
I always believe that if a problem is given to 10 engineers, they would solve the same problem in 10 different ways. Each solutions will have its advantages and disadvantages, but still each of them would have solved the problem.
I think I have explained everything I know. If you have any more questions, maybe other experts in Physics and instrumentation could answer your questions. Or you could discuss this in PerfExpert forums and share your learnings.
Cheers!