Hi there, I am currently building a motion detector for my bicycle using MPU-6500 accelerometer.
I need to find the velocity, but because the acceleration data that I am receiving in the serial monitor
is not in g (m/s^2), I am unable to do this. I would be happy if someone can help me about it.
This above is the datasheet for MPU6500, O checked it but couldn't figure out what the current output's unit is in.
If the accelerometer is held still, the acceleration on any vertical axis is 1g.
Use the number you see printed for that vertical axis as the conversion factor, but be aware that the accelerometer is not very accurately calibrated when taken "out of the box".
To calibrate it, at minimum you need to estimate the offset and scale factors for each axis. There are plenty of tutorials on line.
Basically you cannot reliably get velocity from an accelerometer . On a bike you will get bumps in the road etc which will read as accelerations too.
Use a Reed switch and magnet mounted onto the forks/wheel and get speed from that
From page 7 of the document that you linked to:
"The accelerometer has a user-programmable accelerometer full-scale range
of ±2g, ±4g, ±8g, and ±16g."
It looks as though you have set it (or it has defaulted) to the ±2g range.
The table on page 10 tells you that on this range a count of 16384 represents 1g.
It looks as though your accelerometer is tilted slightly. To account for this tilt, you need to square all three readings, add them together, and then take the square root.
For the first of your set of readings that gives 16200 which is 0.989g