I have not yet build this so this is basically a theoretical question. I am still wrestling with some C code to manage i2c communication etc.
When I originally said "I have not build this" I meant that the robot is in what could be called a "design phase". For the sake of my question lets assume for a moment that the whole robot consists of just one IMU sensor. It moves magically (no motors that create a lot of noise in the sensor measurements). With theoretical I mean I am interested in the mathematics and algorithms involved in solving this problem. What I call IMU sensor provides raw accelerometer, gyro, and magnetometer measurements.
Lets say our tiny robot travels on a snooker table (3569 mm x 1778 mm). I believe this is sufficiently small to call it 2d. Now, sensor fusion should be much easier (faster, consume less resources) than in 3d, right?
I would like to measure the velocity and if possible the position. With velocity I mean at a given point of time I need to know the current velocity of the robot moving over the snooker table. Velocity is in the range of 0 - 5 m/s. With position I mean at a given point of time I need to know the current position of the robot on the snooker table (x, y, heading).
I hope this will be possible since the robot should be able to identify some landmarks and use this information to reduce position errors.
When I originally said "I hope this will be possible" I meant to express that I already am aware of the fact that real sensor data is noisy and errors accumulate quickly. Using landmarks I will / or will not be able to manage to reduce the error in the position estimates. But this is NOT part of my question.
I am about to improve my linear algebra knowledge. So I am confident to manage some matrix multiplications, inversions and such.
My question is for some ideas, references on measuring velocity and position in 2d using an IMU sensor like this one.
A little side question: I just figured that this question is probably too theoretical for robotics.SE. If you know any forum that is more focused on mathematical / algorithmic side of robotics please let me know.