I want to start designing an Arduino project and have telemetry readings that indicate tilt or angle of placement.
Would an accelerometer be the best for determining tilt? Are there good tutorials?
Robotics Stack Exchange is a question and answer site for professional robotic engineers, hobbyists, researchers and students. It only takes a minute to sign up.Sign up to join this community
if you aren't moving, the accelerometer will give you the direction of gravity. if you are moving and hoping to use this orientation data for control you'll need to incorporate at least one more sensor. The extra sensor is needed because you have no method separating the acceleration of gravity and the acceleration of the sensor. The other drawback is that the accelerometer has no way to measure heading.
A magnetometer would also give you a measurement of orientation but the calibration process can be a little intimidating. It makes up for the deficiencies of the accel.
If you're looking for a weekend project I recommend using a three axis accelerometer.
I agree with holmeski's suggestion that an accelerometer is the way to go for static projects, but if you need more sophisticated measurements, an accelerometer/gyroscope combo will be necessary.
The MPU-6050 is a chip that contains a 3-axis MEMs accelerometer and gyroscope with a very small footprint. I have personally used the GY-521 breakout board, and I was impressed with the performance given the low price (~$5). Furthermore, there is documentation for the MPU-6050 on the Arduino website, which migh help for your project (http://playground.arduino.cc/Main/MPU-6050).
One caveat to the MPU-6050 is that you will have to put some thought into filtering the measurements. Accelerometers suffer from low frequency noise, while gyroscopes suffer from high frequency noise. When I used the MPU-6050, I used a complimentary filter to combine the measurements from the accelerator and gyroscope into a single measurement for angle, which worked well. In retrospect, it would have been better to implement a Kalman Filter instead. Both will not only enable you to complete your project with the MPU-6050, but you will get to implement software filters, which is a good experience.
From my understanding a simple accelerometer and magnetometer works.
Currently I use a 9DOF grove IMU. It has an I2C connection and contains both of those plus a gyroscopic sensor.
They've got this github for examples too, see Seeed-Studio/Grove_IMU_9DOF.