Now that the Ardupilots are back in stock, I am ordering what I need to get one up in the air. The FMA IR sensor is out of stock at FMA Direct until May 15, so does anyone know of another vendor that may have them or if there is an easy replacement I could order or build? It's just three weeks, but I am anxious to get started ;)Question 2, I would like to put a decent IMU onboard to document the vehicle attitude in flight. The three options I've found at SparkFun are the IMU 6DOF - v4, the Atomic IMU 6DOF, and the UAV DevBoard. The "v4" is the only one with magnetometers, so one could expect it to be more accurate at the end of a 30 minute flight, but I've seen similar systems where the magnetometer readings were so noisy that they were useless. Down the road, I might want to use the IMU I purchase to drive a motion compensation system. Has anyone used one of these? All three are within my price range. My main concerns are accuracy and ease of integration. So, does one have a clear advantage? Are there other IMUs on the market that I should consider?
As far as rolling your own code to integrate IMU outputs to track your attitude, there is at least one open source project that integrates GPS, pressure sensors, gyros, accelerometers, and magnetometers to get a vehicle state (for the now-out-of-production Crossbow MicroNav). If you go to this Sourceforge page and download "MNAVFIRM v1.4" you can see how they do it. If you have any basic questions about that code, I may be able to help, but I think there are others hanging out in these forums who know that particular platform inside and out.
If you decide to use the UAV DevBoard, let me know, I could give you some tips for using it. The code is open source, so you could adapt it to your needs. I agree with Tom, collecting and integrating IMU readings to an accurate estimate of attitude is difficult. The method that Paul Bizard and I developed, based on Mahoney's work, is called "Direction Cosine Matrix", it works rather well, as you can see from the video. It provides zero drift operation. The results are forever as accurate as when you start. It uses accelerometer information to correct for pitch-roll drift, and a GPS to correct for yaw drift.
If you decide to use the board, you would probably want to extend the existing firmware to send the attitude information out through the board's spare serial port.
How familiar are you with computing the attitude from IMU measurements? I hope you are aware that the IMU does not provide your roll, pitch, and heading; it provides the sensed accelerations and angular rates in the body frame. You need to write software that will collect and integrate the IMU readings to output the attitude. This is a difficult task, and so far it appears that only one person has accomplished this. I would recomend purchasing his UAV DevBoard if you don't want to create this work for yourself.