Some time ago I wrote something about getting a cheap GPS receiver, a cheap AHRS, and how to read values from a RC receiver. All those tools can be put together to control an autonomous vehicle of some sorts. If the vehicle is a small ground robot nothing more is needed, except the vehicle itself, of course.I do not own anything that is capable of driving around outdoors, but I do own a small airplane. Continue reading Pitot tube
Using a RC transmitter to be able to control aspects of a circuit controlled by an Arduino is a very nice feature. The first thing that comes to my mind is controlling stepper motors instead of servos, as they are way more precise. An easier example, but cool nonetheless, is mapping the input to a PWM signal for diming LEDs.
Reading the values of the channels of your RC receiver is not as complicated as I first thought.
That is, if you have a receiver that is able to output a PPM sumsignal.
I recently bought a RC set, the mx-10 of the HoTT series from Graupner.
The receiver GR-12 coming along with it is able to provide you with up to 16 channels! However, the mx-10 has 5 channels, so setting it to a higher value makes no sense in this case.
some time ago I bought an Inertial Measurement Unit (IMU), to be precise I bought the MinIMU-9 developed by Pololu. (The link in case you need it) It’s small, cheap and provides gyro, accelerometer and compass readings, each in 3D. It is perfect for implementing an Attitude and Heading Reference System (AHRS), very important if you want to control a RC plane, drone or other robots.
Luckyly, Pololu provides a complete software suite for the arduino, including the libraries for each sensor as well as a sample implementation for a AHRS, based on a Direction Cosine Matrix (DCM) approach. As I have close to no understanding of the theory behind this, I am very happy that the algorithm prints the roll, pitch, yaw angles to the serial interface ready for me to use!
No drifts, little noise (I need to take a close look there), simple as that!