Making an altitude hold device for a radio controlled model airplane using an Arduino
This collection of stories is about my attempt to make an altitude-hold device for my radio control model plane.
I’m writing these articles as I go, so there is no guarantee that they will lead to success. The whole project might be a terrible failure. This isn’t a set of instructions, and isn’t a how-to guide. If you are inspired to attempt something similar, then I won’t accept any responsibility for anything that goes wrong.
Purpose
I wanted to learn about the Arduino microprocessor, connecting different microprocessors, radio control systems, and software for controlling flight.
About me
I’ve been flying radio control planes for recreation since 1999, but I’m no expert. I’ve been tinkering with electronics since 1980, but I’m just a novice.
Inspiration
I recently bought a quadcopter with an altitude-hold function (VISUO XS809HW WIFI FPV With Wide Angle HD Camera) and wondered how difficult it would be to implement something similar for my radio controlled model airplanes.
Assumed knowledge
This series will only make sense, or be of interest, to you if you know a little bit about programming the Arduino in C, connecting electronic components, and flying radio control model planes.
Background
- Plane, radio, altimeter and Arduino details
- Reading altimeter data into the Arduino
- Reading radio control signals into the Arduino
- Sending radio control signals from the Arduino to the throttle and the elevator servo
- Smoothing the altitude data — Coming soon
Putting it together
- Altitude hold Arduino source code — Coming later
- Hardware implementation — Coming later
- Does it work? — Coming later
Taking it further
- Ascending, descending and landing modes — Coming later
- Determining intended mode — Coming later
- Altitude control Arduino code — Coming later
- Hardware implementation — Coming later
Further reading
Arduino pilot is an advanced, feature-rich implementation of an Arduino autopilot. If you are more interested in using an autopilot, instead of tinkering with the Arduino, then Arduino pilot would be a good option.