Here we will discuss what an autopilot is and the important factors you should consider when buying one for your drone. I will also discuss the various types and categories of flight controllers.
Flight Controller or Autopilot, whats the difference?
There is no fixed definition but I like to refer to an autopilot as a complete system that enables your drone to fly autonomously to way-points etc…, And a flight controller is just the device that will keep your aircraft stable. However depending on who you talk to many people use these two words interchangeably.
As an example on most mini racing quadcopters you use a flight controller that helps keep your craft stable and constantly calculates the best command to send the motors based on the pilot input. Whereas something like a mapping drone will have any autopilot system which includes a flight controller and other equipment such as GPS that will keep the aircraft stable while working out where it is and where it needs to go.
Components of an Autopilot System
The flight controller is the brains of your drone. The flight controller reads all of the sensor data and calculates the best commands to send to your drone in order for it to fly.
This is the central unit that runs the autopilot firmware and performs all the calculations. Most flight controllers have 32bit processors which are more powerful that than 8bit systems, but there are still a few popular 8 bit autopilot platforms such as ardupilot mega which can be found online very cheaply.
Usually the largest chip with the most connectors on your flight controller is the main processor
Accelerometer and Gyroscope
These are the intertial sensors on your drone. The accelerometer measures acceleration forces, and the gyro measures rotational forces. By combining these measurements the flight controller is able to calculate the drones current attitude (angle it is flying at) and perform necessary corrections.
The compass sensor, or magnetometer if you want to sound fancy, measures the magnetic force, just like a compass. This sensor is important for multi rotor drones because the accelerometer and gyroscope sensors are not enough to let the flight controller know what direction the drone is facing. On fixed wing drones this easy since it can only fly in one direction.
Compass sensors are very sensitive to magnetic interference. Things such as wires, motors and ESC’s can all cause magnetic interference. so that is why you will often have an additional compass sensor mounted on the GPS module as the GPS module is usually mounted far away from all the other equipment. You will also need to calibrate the compass when building your drone for the first time.
A barometer is a pressure sensor that you use to measure the aircrafts altitude. These pressure sensors are so sensitive that they can detect the change in air pressure when your drone moves a few centimeters.
A barometer sensor mounted on the underside of a flip32+ flight controller
This is something that is only used on fixed wing drones. An airspeed sensor is another form of a pressure sensor, but instead of measuring altitude, this measures for fast the air is passing the aircraft. It does this by comparing the dynamic and static pressure via a pitot tube.
Airspeed is important for fixed wing aircraft as the airflow over the wings is what generates lift, and if you are flying too slowly you could end up stalling your plane and crashing.
Datalogging (black box)
Some flight controllers such as the Pixhack include built in data-logging which stores a log of all the things your autopilot is doing, just like a black box on an aircraft. This is particularly useful if something is not working properly as you can look at the logs to find the problem, to learn more check out our guide on how to analyse arducopter logs
No single sensor is good enough to control your drone, that is why several sensors are used. By combining the measurements from all the sensors on your drone, and applying some fancy maths (Kalman filtering) the autopilot can keep your aircraft stable very effectively.
When shopping for an autopilot you might come across something called DOF, or degrees of freedom. The most basic flight controllers will be 6 DOF which means that they have a 3 axis accelerometer, and a 3 axis gyro. Other flight controllers with be 10DOF, which mean they include more sensors like 3 axis accelerometer, 3 axis gyro, 3 axis compass and a barometer to enable measurement of 10 things.
Depending on your application a cheap 6 DOF flight controller my be the best option, like when you are building a racing FPV quadcopter. But if you want more features and better performance its a good idea to get a 10 DOF flight controller as you can then use more advanced functions like waypoint navigation when you add a GPS module.
A GPS module measures your drones location by measuring how long a signal takes to travel from a satellite. A GPS modules is also able to give an estimation of your drones altitude. However GPS modules are rather inaccurate and will only give you a position to within 5m. However as discussed before, by combining measurements fro other sensors the flight controller can get a better picture of what the drone is doing. The main feature used by the GPS module is that you can autonomously fly your drone to way-points, so your drone can potentially fly on its own from takeoff to landing.
Recently there are mode GPS modules that are abe to communicate on more than on GPS network such as the Russian GLONASS network. This just means that your GPS receiver can pickup more satellite signals which improves teh reliability and performance. The nice thing is that they are not much more expensive. Common modules that support both GPS and GLONASS networks are the Ublox Neo 7N, and Ublox Neo M8N modules.
Mounting your GPS module
Since the GPS module needs to see the sky, it is often mounted on the top of your drone. When flying on a multi rotor most drone builders will use a GPS mast to mount the GPS module high up away fro all the other electronics to ensure it gets a solid GPS signal.
Because the GPS module often mounted far away from the interference of other electronics it will also contain a compass sensor as discussed previously.
Telemetry and Ground Station
Telemetry is what you use to send and receive data between your drone and your ground station. Adding telemetry to your drone is very useful, but is not required.
The ardupilot/arducopter autopilot system allows android devices to be used as your ground control station.
A ground station is some software that runs on your PC, or tablet that you can use to monitor where your drone is flying, set new waypoints, or tell your drone to do other commands such as follow you. Most drone pilots will use a smartphone or tablet as their ground control station. However depending on what autopilot you use this might not be possible.
An example of an unmanned telemetry kit which can be used with the ardupilot autopilot series
The telemetry modules are the actual radio devices that transmit and receive the data. You will have one onboard your drone, and one on the ground plugged onto your ground station device. The most important thing when using telemetry modules for your given autopilot, is that they will often need to be paired together so they can communicate.
Because your autopilot is a sensitive electronic device, its important that it receives a clean power supply. A power module is used to convert the battery voltage from your drone battery down to a low voltage that your autopilot uses (often 5v).
However the other benefit of using a power module is that it gives you the ability to measure your battery voltage and capacity. This is useful because if your flight controller can measure the battery it knows when your battery is running low so it can warn you to land. Other autopilot systems also have some failsafe functions build in which will automatically take over and bring your drone back home when the battery level gets too low.
R/C Inputs and Outputs
All autopilots have a bunch of inputs and output connectors. Because you still want to be able to control your drone manually, the R/C inputs are used to connect to your R/C receiver. This allows you to manually fly your drone. The outputs are what you connect your motors, or servos to so that your autopilot can control your drone as shown below.
Some autopilot systems require a single PPM input, but your receiver might only support PWM. If this is the case you will probably need to use a PPM converter that will take all of your PWM outputs from the R/C receiver and combine them into a single PPM output. To learn more about this check out our R/C PPM, PWM, SBUS protocols guide
Many drones also have the ability to integrate distance sensors. These can range from ultrasonic distance sensors that send a ultrasonic ping and measure how long it takes to bounce back of objects in front of it. You also get light bases systems that use lazers which have much greater range and accuracy, but are more expensive.
A common application for a distance sensor is to have one facing downwards to allow the drone to fly precisely at a certain altitude above the ground, so as the terrain changes height, so will the drone. An example of which i shown in the video below:
Before buying any distance sensors please make sure they are compatible with your autopilot system as only a few sensors are supported on various platforms.
When flying indoors, or in thick tree cover, its not always possible to obtain a reliable GPS signal. By using an optic flow sensor facing downwards it is possible to help maintain position if you are flying over a suitable textured environment. Currently optic flow is still an experimental feature for most DIY drone autopilots. However some ready to fly drones like the DJI Phantom 3, and Inspire one have this feature built into them, to allow them to fly indoors.
Start with the basics
It might seem very exciting to add all the latest and greatest addons to your autopilot when you are first building it. However from experience its always best to start with a simple autopilot system and work your way up. A drone autopilot system can get very complex when trying to get everything working setup and working together and the complexity grows with each new thing you add. So always start with the basic flight controller and GPS and get that working first, then work your way up from there.
I hope you learned something from this introduction guide, if you have any questions or comments just let me know!