Attention: Answers.ros.org is deprecated as of August the 11th, 2023. Please visit robotics.stackexchange.com to ask a new question. This site will remain online in read-only mode during the transition and into the foreseeable future. Selected questions and answers have been migrated, and redirects have been put in place to direct users to the corresponding questions on Robotics Stack Exchange. Additional details are available here.
the first thing you need to consider is your budget. These sensors can easily cost US$1800.
we've used devices from sparkfun and lord-microstrain. Both are 9 dof. Both have usb 2.0 interfaces.
additional features you can get: internal IMU data filtering, magnetometer (aka compass)
the IMU portion of sensor has worked well for our 3 and 4 wheeled robots. The internal data filtering works well.
the magnetometer is nearly useless for our use case. The output changes wildly due to the robot's drive motors, as well as high-power building equipment. Calibration did not compensate. If the drive motors are off, you can maybe determine which 90 degree quadrant the robot is pointing at.