Although I do not consider myself an extremely experienced drone pilot, I have a fair amount of time on the control sticks of several different DJI models, especially from the Mavic line of aircraft. So, when I decided to build my first “DIY” drone last summer so I could better understand the subsystems involved in making quadcopters fly, I thought, how hard could it be? I would soon learn, pretty hard.
I think very few people, even those who regularly fly popular commercial brands like DJI, truly appreciate the amazing stability of these aircraft. Their incredible ability, even in windy conditions, to hold altitude and position cannot be understated. In addition, the way these aircraft flatten the learning curve for new pilots is both a blessing and a curse; A blessing in that you can get up in the air quickly and safely, but a curse in that it gives the false impression that you could fly any quadcopter – a fact that I would soon learn was not true in my situation.
First the specifics, I opted for a carbon fiber frame (which turned out to be a really good decision) but stuck to pretty standard parts besides that. I selected the Pixhawk flight controller as the heart of my system, based on reviews and capabilities well above its predecessor. This controller and the software used to program it, Ardupilot’s Mission Planner, turned out to be the silver lining in what was a summer filled with lots of theoretical rain clouds. Beside the motors and the electronic speed controllers (ESC) most of the auxiliary equipment came as part of a package that accompanied the flight controller.
Then began the long but interesting project of understanding (and wiring) all these components together, with the anticipation of an easy lift off and smooth flying when finished; as you can probably guess based upon my previous comments, that assumption was incorrect, and the wiring and understanding of the system became the least of my concerns in getting this new aircraft off the ground safely. When finished with all the wiring, I was quite proud of my creation (see figure 1) and ready for my first flight, or so I thought. After making the mental adjustment to the throttle stick not centering, as do most DJI models, I attempted my first take-off with little understanding of the different flight modes and how to program my remote control to select the appropriate one for the current scenario. This was after (I am ashamed to admit this) I flipped the props around so they would lift the aircraft off the ground and not push it downward.
Figure 1 – My DIY drone prior to its first flight/crash
After liftoff, it became apparent (rather quickly) that this was not a DJI drone, and I still had a lot left to learn. That flight, if you could call it that, did not last long and ended in my first of many crashes. I would spend the rest of my summer vacation learning all about PID loops, ESC calibrations, flight modes and everything else that DJI pilots take for granted; all the while being thankful for that carbon fiber frame I paid extra for initially; it took a LOT of abuse and never failed, unlike other components which I have had to replace.
The silver lining I mentioned earlier, Ardupilot’s Mission Planner, became my new best friend and the focus of my learning. This amazing community supported software is extremely versatile, and not just for quadcopters. A developer’s dream, the precise control over so many variables, as well as the ability to download and monitor countless flight characteristics, makes it the “go to” programming software for DIY aircraft of all types. The heart of this system is the “Flight Data” screen (see figure 2) which allows the pilot or ground crew to monitor all the vitals of the aircraft and shows an accurate, easy to read aircraft attitude and position/heading on a large map. Prior to initial launch, Mission Planner has several setup and configuration screens that users must become familiar with, especially with the “tuning” options and flight mode configurations.
Figure 2 – The Flight Data Screen of the Ardupilot’s Mission Planner Software
It was in these setup screens that I began to realize the power of this software and also truly began to appreciate the extensive development work involved in commercial aircraft like the DJI Mavic line. Although the list of attributes that can be adjusted and set is literally pages long, two subsystems really stand-out; one for it’s complexity, and the other for it’s absolute necessity in regards to the user having a firm understanding of it. The complex one is the gain controls on the major axis which make up the flight characteristics of all quadcopters – roll, pitch, yaw and throttle or altitude.
Commonly referred to as the PID loops, referring to the proportional–integral–derivative mathematical functions used to ensure the aircraft responds appropriately without over correcting or responding too slowly to inputs on the four major planes of movement. Although there are default settings for these, to ensure steady flight, these must be adjusted for each specific aircraft. Many characteristics of the aircraft can affect these settings including obvious ones such as weight and available thrust, but even things more subtle such as the length of the propellor.
Although the PID loops must be understood, at least on a functional level, understanding and setting the flight modes for the remote control is crucial. Unknown to most recreational drone pilots, especially those who use DJI products, is that the ability to release the controls and have the aircraft hold its current position is a specific flight mode called “loiter” and not inherent to all drones. Within Mission Planner, there are 24 possible modes, with only about half of those of interest to most pilots. Besides the loiter mode mentioned earlier, there are some that make perfect sense to anyone who has spent any time flying drones – Return to Land (home) and land. The default flight mode for most controllers, which caused most of my early crashes, is the stabilize mode. In this mode, only the roll and pitch are “stabilized” and the pilot must actively fly the aircraft at all times. This was quite a change coming from flying DJI aircraft; understanding it, and learning how to program my remote to select the different modes, was a crucial first step in attaining safe and controlled flight.
One fascinating mode which combines together the two crucial subsystems described above is the “autotune” mode. In this mode, the aircraft will perform a series of movements on it’s own and adjust the PID loops based upon feedback from the onboard Inertial Measurement Units (IMU) which primarily houses an accelerometer and gyroscope. Although not an absolute necessity, this extra step will definitely increase the stability of flight and assist especially new DIY pilots as they transition from commercial aircraft.
So as you could probably imagine, when I finally achieved stable flight (see figure 3) it was a satisfying moment. However, unlike the instant gratification that comes with flying commercial models like the DJI products, this one was a long time coming. I cannot overstate how much I learned during this process which has helped me not only as a pilot, but also in terms of my technical knowledge of everything that makes drones so stable and versatile. This experience has also opened up a vast number of new options for me in terms of development and business opportunities. It is hard to imagine that there is not a niche market for fully customized, specialty-built systems that rival the high-end Matrice style systems at a much lower cost.
Figure 3 – Finally! Stable flight with my DIY drone.
The next step is to install and program two major features that once again, DJI owners take for granted – collision avoidance and gimbal/sensor control. These two subsystems, which currently don’t exist on my DIY build, will present more “opportunities” to expand my knowledge of this fascinating wing (pun intended) of small unmanned aerial systems. But I think it is within this area that DIY quadcopters really begin to shine. Now, you are not relegated to the onboard systems as they are shipped from the factory; now you can fully customize your aircraft to meet your specific needs or that of your customers, and how cool would that be! TEXT & PHOTOS BY CHRIS LIPP
ABOUT THE AUTHOR: Chris Lipp is a Computer Science and Robotics Instructor at Christ Church Episcopal School in Greenville, SC. Chris is Part 107 certificated remote pilot and holds a TOP Level 2 certification from AUVSI. In addition, he is currently pursuing his Master Degree in Unmanned Systems at his alma mater, Embry-Riddle Aeronautical University.