I have a robot (gray box in the picture) that I can rotate in 3D (x, y, z) relative to a center of rotation.

Let's say that this robot has two sensors with fixed poses in the robot:

  • One IMU that can measure an angular velocity and acceleration
  • One sensor that can measure a velocity Both sensors send values in their own coordinate frame. The center of mass is not know

The goal is to find the pose (position and rotation) of the velocity sensor relative to the IMU.

By rotating the robot with a constant angular velocity, I can find the radius vector of the IMU relative to the center of rotation. Since every point in a rigid body has the same angular velocity, I can use the angular velocity measured by the IMU to find the radius of the other sensor (with the formula of the angular velocity formula). So in the end I can find the position of the center of rotation relative to both sensors in their own coordinate frame.

But is it possible to find the rotation (q) between the two coordinate frames? enter image description here

  • $\begingroup$ I am pretty sure it is possible, but I don't have an exact answer for you. If you want to find more about your exact problem then you can research "lever arm" estimation, which comes up all the time in GPS/IMU inertial navigation. Also you need to be careful with things like constant angular velocity, as it can render the problem unobservable( essentially you are not providing any new information) $\endgroup$ – edwinem Jun 10 at 15:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.