This shows you the differences between two versions of the page.
| en:drones:platforms:components [2020/09/17 10:07] – [Video] pczekalski | en:drones:platforms:components [Unknown date] (current) – external edit (Unknown date) 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ===== UAV Building Components ===== | ||
| + | UAVs share many components with UGVs and the Internet of Things. In particular, they use a number of sensors and techniques known from robotics, autonomous cars, sensor networks, sometimes just changing its application. Here we focus on those components that differ from UGV aforementioned in other sections. | ||
| + | ==== Sensors ==== | ||
| + | Sensors deliver to the FC and operator all necessary information about the current state of the UAV. Depending on the airframe used, the purpose of the drone, and flight modes available, some of them are optional and some necessary to operate. Most of the flight controllers include at least IMU, frequent magnetometer, | ||
| + | === IMU === | ||
| + | IMU is an integrated mems sensor that contains an accelerometer and gyroscope. Nowadays IMUs deliver 3D (3 axes) information instead of 1, so it is all integrated into a single chip. Old constructions may contain separated devices, one per axis, but it is almost impossible to find a commercial UAV using this technology.\\ | ||
| + | |||
| + | The IMU is necessary to operate stably any multirotor. A human operator is unable to control multirotor motors directly manually and requires a flight controller (FC) to operate them. FC, on the other hand, requires reference to the current rotation and its acceleration, | ||
| + | \\ | ||
| + | IMUs may also integrate barometer and compass (magnetometer) to deliver full orientation to the FC. The common marking is the so-called " | ||
| + | * 6 DOF - a basic IMU, usually for racing drones. It is composed of a 3 DOF (3 axes) accelerometer + 3 DOF gyroscope, delivering to the drone relative information about its position regarding gravity. This kind of solution, if not assisted with additional sensors, is unable to orientate geographically and unable to hold altitude. | ||
| + | * 7 DOF - an extension to the 6 DOF with a barometer. A common approach is to assembly 6 DOF IMU + external pressure sensor. | ||
| + | * 9 DOF - an extension to the 6 DOF with a magnetometer (compass, also 3 DOF). See remarks on quality in the Magnetometer section, below. | ||
| + | * 10 DOF, a full set integrated (Figure {{ref> | ||
| + | Many FCs integrate IMU (and other chips) onboard. Some use communication protocols and external breakout boards. | ||
| + | |||
| + | <figure 10dofimu> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Pressure sensors === | ||
| + | The barometer is a pressure sensor used to monitor drone flight altitude (vertical position), thus enabling the drone to keep its altitude constant and help the operator to keep them hovering stable. A flight mode where the vertical altitude is kept constant is frequently referenced as "Alt hold" mode, and drones without a pressure sensor do not offer this function. Most of the commercial drones are equipped with at least one pressure sensor; the only exception is the racing drones class, where this function is absent or limited and usually disabled during a race if present at all.\\ | ||
| + | The barometric pressure sensor is essential for autonomous operations. | ||
| + | |||
| + | <note tip>It is easy to find a pressure sensor chip onboard: it has a hole in its fuselage to let the flow of the air inside (Figure {{ref> | ||
| + | |||
| + | <note tip> | ||
| + | |||
| + | In the case of most drones, flight time is less than an hour, and their range is limited to few kilometers, so it is common to assume that air pressure does not change importantly and does not affect altitude calculations over this period and distance/ | ||
| + | |||
| + | == Relative pressure sensors == | ||
| + | Differential pressure sensors are used to check true airspeed. Any flying object' | ||
| + | * Ground speed, usually obtained from the navigation system such as GNSS (satellite-based) positioning. | ||
| + | * Airspeed, a relative speed within the air. | ||
| + | Above can be equal only if there are no air movements at all (rarely happens). In the case of multirotor, the difference between airspeed and ground speed is not very critical for its operation, while, it can be critical in the case of fixed wings. Wind direction drives, in particular, take-off and landing direction of the fixed-wing drones and planes: you always take-off and land towards the direction where the wind blows from, or at least as much as possible, so " | ||
| + | |||
| + | Airspeed is measured using a differential pressure sensor that measures the difference between statical pressure and dynamic one, coming from the pipe located towards the flight direction (Figure {{ref> | ||
| + | |||
| + | <figure boeing777> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure pitottypes> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure pitottube> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | In the figure {{ref> | ||
| + | <figure pitotdrone> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Magnetometer === | ||
| + | A digital compass is a MEMS sensor able to detect a magnetic field. This enables drones to perform " | ||
| + | |||
| + | <figure magnetometer> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Thermometer === | ||
| + | The purpose of using a thermometer in the case of drones is threefold: | ||
| + | * Environment monitoring to react for specific flight conditions, i.e. enable de-icing (i.e. Pitot tube heating) or warn operator about dangerous conditions - that usually happens on high altitude flights or in low temperature and high humidity and is related to the dew point. | ||
| + | * Monitoring of internal components state, mostly to avoid overheating and related electronics and battery failure. | ||
| + | * Using thermometer as a part of the mission target, i.e. temperature scan or payload monitoring, etc. | ||
| + | The digital thermometers on the low-level hardware are based on NTCs and PTCs; however, the most frequent case is to use sensors integrated with other sensors like i.e. barometers are frequently accompanied with a thermometer to ensure temperature compensation, | ||
| + | |||
| + | === GNSS === | ||
| + | Satellite navigation is in no doubt a choice number one in drones while flying outdoors. It is for both autonomous flight as well as for remote control ones, even for experienced operators. GNSS positioning can keep drones horizontally stable and thus, i.e. compensate wind drift.\\ | ||
| + | We discuss navigation principles in a separate chapter, here just focusing on its sensors. So far, the only drones that do not benefit from GNSS positioning are FPV racing drones, but still many of them contain receivers to hold their position in other flight modes than racing. | ||
| + | |||
| + | GNSS receiver requires an external antenna (usually ceramic), and because of the signal suppression, | ||
| + | |||
| + | Nowadays most of the modern GNSS receivers are multi-channel and multi-constellation ones. It means that they use different satellite constellations to obtain positions and can benefit from a statistical approach to get even better and more accurate positioning. Additionally, | ||
| + | * Glonass (Russia), | ||
| + | * BeiDou (China), | ||
| + | * Gallileo (EU). | ||
| + | |||
| + | A leader of GNSS receivers in drones is Ublox, and you will find their receivers in many amateur and commercial solutions. Advanced models with high precision positioning offer centimeter accuracy (according to the manufacturer) as, i.e. in the NEO-D9S series. Standard precision receivers offer some 1m accuracy (static), i.e. popular NEO M8 series (Figure {{ref> | ||
| + | |||
| + | <figure gnssneom8> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Voltage and current sensors === | ||
| + | As the majority of the drone power sources are electrical batteries, it is essential to monitor their capacity and use. Typical Li-Po battery has a known discharge curve, and one of the most useful sensors is to observe battery voltage and this way predict the necessity to terminate mission and land to re-charge or swap the power source. The other approach is to use a current sensor to estimate power consumption and calculate its total use. In practice, both techniques are used as power source down usually equals instant fall of the drone to the ground. | ||
| + | |||
| + | === Other sensors === | ||
| + | A wast number of different sensors, measuring physical phenomena are present in drones. I.e. drones with fossil fuel engines (motors) may benefit from liquid fuel level sensors, measuring remaining fuel capacity, rotation sensors can be used to monitor rotation speed, and so on. | ||
| + | |||
| + | ==== Actuators ==== | ||
| + | There are no UAVs without a single actuator. Any device moving around controllable way usually requires at least one actuator per single degree of freedom (usually much more). In terms of drones, we usually talk about servos and motors. | ||
| + | == A matter of thrust == | ||
| + | In many constructions, | ||
| + | A general rule of thumb says that in any case, thrust to MTOM (maximum take-off mass) should be at least 2:1. The lower the ratio, the less responsible the drone is, and in particular if it falls below 1:1, UAV is unable to ascend and to hover. On the other hand, too high a ratio causes the drone to be hard to control and may lead to instability.\\ | ||
| + | A typical drone for aerial photography has thrust to MTOM ratio around 3:1 and 4: | ||
| + | A racing drone is at least 5:1, and it is not unusual to see 13:1 and more for advanced 3D pilots. | ||
| + | |||
| + | === Servos === | ||
| + | Servos (short from servomotor) are used for various utilities, like, i.e. driving control surfaces, retracting landing gear, changing propeller' | ||
| + | |||
| + | <figure servomotor> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Servos are connected with 3 cables, power (+/-) and control. The last one uses PWM (Pulse Width Modulation) to control the angle of the servo. PWM frequency is constant, but it is the duty cycle, that controls the servo rotation. | ||
| + | We distinguish 2 types of servos: analog (standard) and digital. In any case, they' | ||
| + | <note tip> | ||
| + | |||
| + | The following set of parameters typically describes a servo: | ||
| + | * Physical dimensions and weight. | ||
| + | * Power voltage range. | ||
| + | * Gear material: plastic/ | ||
| + | * Torque (kg/cm), frequently provided as related to the powering voltage, is a maximum mass your servo can lift using a 1cm arm. | ||
| + | * Digital / Analogue. | ||
| + | * Speed measured as the time necessary to rotate servo by 60 degrees under full load. It is also related to the power voltage. | ||
| + | * Others. | ||
| + | |||
| + | There are two most common colour coding for servo cables: | ||
| + | * Futaba: black/ | ||
| + | * Hitec: black/ | ||
| + | * JR Radios: brown/ | ||
| + | In most cases, the plug is a female 2.54, 3 pole connector, JR standard, or Futaba. The difference is Futaba connector contains, additionally, | ||
| + | |||
| + | <note tip> | ||
| + | |||
| + | You may also find servos with 5 connectors: 2 of them are driving DC motor inside, while 3 others are connected to the potentiometer (decoder) that you can read the current rotation angle. This kind of servos requires external control logic, however. | ||
| + | |||
| + | === Electric DC Motors === | ||
| + | Electric DC motors and in particular their lightweight versions are the most common propulsion systems in UAVs.\\ | ||
| + | There are two classes of electric motors: | ||
| + | * brushed, | ||
| + | * brushless. | ||
| + | Electric DC motors vary in diameter from a couple of mm to 15cm with a power consumption of some mA to 200A. | ||
| + | == Brushed DC motors == | ||
| + | Brushed motors use an internal switching system to the alternate current direction, thus changing the magnetic field. It is pretty easy to recognize the brushed motor as it has just two wires (brushless has three). Speed can be controlled via control of the energy delivered, i.e. changing voltage (directly or rather via PWM duty cycle). Brushed, coreless motors are designed to rotate in one direction. This is the reason why brushed motors are marked CW (Clock-wise) and CCW (Counter-wise). While some of them can operate in other directions, it is not very efficient. Because brushed motors use the brushed switch inside, named commutator, that uses friction, it wears out over time thus brushed DC motors popular only in the smallest, miniature drones. Brushed motor construction is not scalable in terms of some diameter; the weight to torque ratio is rapidly decreasing. Because of the mechanical, friction-based, | ||
| + | Miniature DC brushed motors are marked pretty frequently with their external sizes: i.e. 8520 means 8.5mm diameter, 2cm length. A common maximum voltage is 1s (up to 4.2V) on most of the miniature drone brushed DC motors. While some report motors can operate on higher voltage (even 2S that is equal to 8.4V max), they tend to overheat then and break quickly. Sample brushed motor is present in Figure {{ref> | ||
| + | |||
| + | <figure dcbrushedmotor> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | |||
| + | There is a class of brushed motors for UGVs that are much bigger and support higher voltage, but we do not consider them in the drone' | ||
| + | |||
| + | == Brushless motors == | ||
| + | Brushless motors used to be designed for not so small drones, as their internal construction is pretty complex. Recently, however, brushless motors range was extended with miniature, and super-miniature motors along with assembling technology development and they tend to replace brushed motors even in miniature UAVs. Still, they are more expensive comparing to brushed motors and require complex control electronics (ESC, Electronic Speed Controller). Brushless motors can operate in both directions. Brushless motors connect with 3 cables to the ESC. Changing rotation direction is as simple as swapping two of three wires (any pair). | ||
| + | |||
| + | <note tip>Some of the medium size brushless motors are marked as CW and CCW. This is not because of their inability to rotate, but rather to prevent self-loosening of the propeller mounted.</ | ||
| + | |||
| + | Brushless motors do not contain a commutator that wears out over time: they are more reliable and lasting longer than brushed ones. | ||
| + | |||
| + | A Brushless motor is composed of the stator with coils, connected permanently to the wired terminals and rotating rotor with permanent magnets (Figure {{ref> | ||
| + | |||
| + | <figure brushlessmotor> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Universal (non-proprietary) motors have usually marked the way one can read its features, i.e. HK-4015-1450KV means the motor is: | ||
| + | * HK - manufacturer marking (here HobbyKing) | ||
| + | * 40 - motor diameter, | ||
| + | * 15 - motor height, | ||
| + | * 1450KV - 1450 rotations per 1 Volt (see remark below). | ||
| + | |||
| + | Motor' | ||
| + | <note tip> | ||
| + | </ | ||
| + | |||
| + | Some motors also contain a note on its internal, electromagnetic construction, | ||
| + | * 12N number of permanent magnets in the stator, | ||
| + | * 14P number of coils in the rotor. | ||
| + | In general, the lower the N and P are, the more powerful engine is, but on the other hand, higher N and P mean smoother and more precise rotation (i.e. necessary for gimbals). Typical for multirotor is 12N14P. | ||
| + | <note tip>The number of permanent magnets in the stator is always multiplied by 3 because the three-phase controller controls it.\\ The number of coils has to be different than the number of permanent magnets!</ | ||
| + | Motor' | ||
| + | The winding (wiring) can be single strained and multi strained (wired using single or parallel cables, where the parallel is usually three).\\ | ||
| + | Single strained wiring tends to have better heat management thus is used for higher voltage, i.e. 5-6S. Because of the bigger diameter, you cannot pack it very well; thus single strained motors are bigger than multi-strained ones.\\ | ||
| + | Multi strained wiring can be better packed because of smaller empty spaces between wires; thus such coil creates a higher magnetic field than single strained wiring, which means multi strained motors are more energy-efficient and smaller.\\ | ||
| + | <note important> | ||
| + | |||
| + | Physical properties of the motor include also: | ||
| + | * Maximum thrust (eventually a list of thrust generated, regarding voltage and propeller size/type). | ||
| + | * Weight. | ||
| + | |||
| + | There are types of mechanical constructions: | ||
| + | * Inrunner: The external body (can like) is static while the rotor is inside of the motor. There are a shaft and construction mimics brushed motors. In such construction, | ||
| + | * Outrunner: The stator with coils is inside while the rotor with magnets is outside: most of the engine is rotating, including external housing. In such construction, | ||
| + | |||
| + | Each construction has some features comparing inrunner to outrunner. In particular, the following is to consider when juxtaposing features of comparable two: | ||
| + | * Inrunner has a smaller diameter than outrunner. | ||
| + | * Outrunner has a lower profile (height) than inrunner. | ||
| + | * Outrunner body rotates. | ||
| + | * Inrunner has better heat dispersion (coils are located outside, magnets inside) than outrunner (this is partially true, cause modern outrunner' | ||
| + | * Outrunner generates larger torque than inrunner. | ||
| + | * Inrunner has higher KV (rotations per volt) than outrunner. | ||
| + | * Inrunner has better energy efficiency. | ||
| + | |||
| + | In the table below, there are proposed applications with respect to the inrunner and outrunner motors (Table {{ref> | ||
| + | <table inrunneroutrunner> | ||
| + | < | ||
| + | ^ Inrunner | ||
| + | | racer fixed-wing, EDF, RC Car, RC Boat | multirotor, helicopter, RC airplane (for 3D evolution), gimbal | ||
| + | </ | ||
| + | |||
| + | |||
| + | In Table {{ref> | ||
| + | |||
| + | <table motorpropsizes> | ||
| + | < | ||
| + | ^ Frame Size ^ Propeller Size ^ Motor Diameter | ||
| + | | < | ||
| + | | 18cm | 4in | 18xx< | ||
| + | | 21cm | 5in | 2205< | ||
| + | | 25cm | 6in | (2206-2208)< | ||
| + | | 35cm | 7in | 25xx | 1200< | ||
| + | | 45cm | 8-11in | ||
| + | | 90-100cm | ||
| + | </ | ||
| + | Please note, it is very individual to construct a drone, so the above values are on average. | ||
| + | |||
| + | === ESC === | ||
| + | The ESC (Electronic Speed Controller) is necessary to control a three-phase brushless motor, so we discuss them in this section. | ||
| + | |||
| + | ESC accepts power input usually directly from the drone battery, and there is one ESC per motor (Figure {{ref> | ||
| + | |||
| + | <figure escbrushless> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | The major features of ESC are: | ||
| + | * input voltage range (provided in " | ||
| + | * maximum current, | ||
| + | * size and mass, | ||
| + | * communication protocol used (most ESCs can handle at least a bunch of them, including simplest PWM signal), | ||
| + | * set of additional features, like, i.e. ability to deliver stabilized power to the flight controller or RC receiver (so-called built-in BEC), | ||
| + | * programmability. | ||
| + | |||
| + | Regarding the brushless motor, ESC is not only responsible for speed control but also for speed-up / slow-down characteristics, | ||
| + | |||
| + | Programming (changing of the parameters/ | ||
| + | * via so-called programming cards - they have nothing to do with cards; actually, it is simply an external device you connect an ESC to and choose a configuration that is then stored in the non-volatile memory of the microcontroller that manages ESC; | ||
| + | * via a sequence of the input signal changes (operator using throttle enables programming mode and then in sequence changes all parameters); | ||
| + | * via FC or PC computer - some of the ESCs provide programming input, usually serial or USB, while others let the FC program it. | ||
| + | |||
| + | In the communication section, we discuss ESC communication protocols. | ||
| + | |||
| + | In the case of miniature drones and also FPV in class 250 or smaller, as total energy consumption is rather low or average, it is common to see 4 in 1 (for quadcopters) or 6 in 1 (for hexacopters) integrated ESCs that you connect motors directly to a single board. It is only a physical construction, | ||
| + | |||
| + | === Piston Engines === | ||
| + | Piston engines are miniature versions of the motors we use in full-size cars and planes. In the case of the RC scale, they are usually single-piston ones (Figure {{ref> | ||
| + | It is not very common to see piston engines in multirotor, because of their construction complexity, weight, and control challenges. Rather, they take their place in scale UAVs in the form of fixed-wing ones and larger construction, | ||
| + | |||
| + | <figure rconepistonengine> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure label> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | There are two common types of power type, regarding fuel they use: | ||
| + | * gas - similar to in case of passenger cars, using a spark plug to ignite fuel. Those use regular, eventually high octane aviation fuel. | ||
| + | * glow with glow plug that uses heat from compression of the methanol fuel along with the heat of the glow plug. | ||
| + | |||
| + | For construction simplicity, scale engines are air-cooled. | ||
| + | |||
| + | === Jet engines === | ||
| + | Indeed there are scale jet engines, turbo-jets in fact, so far there are no turbo-fan constructions available. Those engines are used on top of high speed and high-performance UAVs and require complex construction (Figure {{ref> | ||
| + | |||
| + | <figure rcjet> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === EDFs === | ||
| + | |||
| + | EDFs are not a class of propulsion themselves, but we mention them here as they mimic turbofan engines that are not represented in the UAV class so far. EDFs have nothing common with real turbofan engines other than the way they look from outside (Figure {{ref> | ||
| + | |||
| + | <figure edfmotor> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Propellers === | ||
| + | Along with motors, propellers are the most notable component of most (all but soarers) UAVs. Propeller' | ||
| + | Each propeller has at least 2 blades that can be fixed or rotating parallel to its length (so-called variable pitch propeller). | ||
| + | |||
| + | <figure rcpropeller> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Each propeller is characterised with the following set of parameters: | ||
| + | * diameter, | ||
| + | * rotation direction (CW/CCW), | ||
| + | * a number of blades (typical is 2 to 5), | ||
| + | * fixed/ | ||
| + | * pitch, | ||
| + | * hub diameter (shaft diameter, sometime delivered with a set of adapters), | ||
| + | * material, | ||
| + | * foldability. | ||
| + | |||
| + | Choosing an appropriate propeller is state of the art: first of all, in most cases, a first-hand choice is provided by the motor manufacturer. Note, the higher the diameter, and the higher the pitch, there is a bigger load to the motor; thus, it also means a higher current. And higher current impacts directly ESC and battery, not to overstress both. When using a ready UAV, the choice is usually a replacement 1:1 as delivered by the UAV manufacturer. When designing your own drone, there is a variety of choices, and usually, the motor manufacturer delivers a parameter table where propeller sizes are juxtaposed along with expected construction (rated under full load). | ||
| + | |||
| + | In the case of multirotor, each pair of motors rotate opposite, so propellers are usually sold in sets (pair, 4 pieces), as CW + CCW. | ||
| + | |||
| + | Most of the propellers have their elementary data printed on their hub or close to it. Markings are provided in inches, so, i.e. 1045 means 10 inches of the diameter and 4.5 inches of pitch. | ||
| + | |||
| + | == Propeller' | ||
| + | What exactly is the propeller' | ||
| + | |||
| + | == Propeller balancing == | ||
| + | The bigger the propeller is in its size, the more important it is to keep it balanced. Vibrations disturb IMU and cause bearings and shafts to wear out quicker. Serious vibration may lead to airframe destruction. Balancing is done using propeller balancer device (Figure {{ref> | ||
| + | |||
| + | To change propeller weight (balance it) you may use a piece of self adhesible thin tape (to add weight) or use water paper to polish the blade to remove weight. In no case should you modify the upper part of the blade, but the bottom one? | ||
| + | <note warning> | ||
| + | |||
| + | <note warning> | ||
| + | |||
| + | <figure propbalancer> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | == Foldable propellers == | ||
| + | In many constructions, | ||
| + | |||
| + | <figure mavicpropellers> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | In the case of motorized soarers (fixed-wing UAVs that benefit from energy-less soaring over the sky), however, fixed pitch propellers would cause resistance, dramatically lowering soaring performance. In such a case, we use foldable propellers as present in Figure {{ref> | ||
| + | |||
| + | <figure foldablepropeller> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | ==== Flight Controllers ==== | ||
| + | Flight controllers (FCs) are necessary to implement flight logic and in particular autonomous flight. Their features vary from a simple quadcopter stability control to advanced autonomous navigation with collision avoidance using sensor fusion with visual data. | ||
| + | Obviously, features are limited with the hardware capabilities of the microcontroller used to implement FC, but in the case of most modern microcontrollers are equipped with decent core and large memory. The whole logic is based on the firmware used. | ||
| + | |||
| + | There are three approaches to the FCs and firmware: | ||
| + | * closed model - where FC is bound to a particular drone model and cannot be re-configured or adapted to the other airframes; | ||
| + | * open but proprietary - where one can use proprietary FC and firmware (i.e. DJI), but along with aerial part, there is a configuration tool that enables you to fine-tune or even adapt FC to your needs; | ||
| + | * open source - virtually ((where virtually means it may be hard to achieve due to the code complexity)), | ||
| + | |||
| + | Here we focus on the third approach, and we present a list of the most popular firmware available. | ||
| + | A time ago, the first open-source FC hardware was developed as a natural extension of Arduino (ATMega) microcontrollers. 8-bit ATMegas, as pretty good for early UAVs, mostly fixed-wing ones, nowadays wouldn' | ||
| + | |||
| + | Multicopters required much more powerful microcontrollers to use IMU and RTOS (Real-Time Operating System) to handle flight logic. Thus the most popular microcontrollers include Arm core-based ones, in particular, low power, low voltage 32-bit STM32 family. | ||
| + | |||
| + | The general schema of the drone with FC as a heart of it is present in Figure {{ref> | ||
| + | |||
| + | The most popular microcontrollers for FCs are: | ||
| + | * Historically, | ||
| + | * STM32 F1, F3, F4, F7 - in no doubt, the most popular at the moment: most of the open-source and proprietary FC use one of those chips. STM32 is a 32 bit one. The first choice for FPV racing, video filming drones, and so on. | ||
| + | * Broadcom BCM series with ARM core, not so low-power, well known from Raspberry Pi (and clones). Rather for larger drones, with some at least 45cm body. | ||
| + | * Intel Movidius, a niche yet very powerful microcontroller, | ||
| + | * LPC1768 with ARM core, also niche but used by DJI (i.e. Naza M). | ||
| + | * Intel Atom, x86, and x64 architectures - for large drones. | ||
| + | |||
| + | <figure fcschematics> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Some FC boards integrate programming circuits, voltage stabilizers, | ||
| + | |||
| + | <figure f3brushed> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <note tip>Some RC protocols use inverted logic. While most of STM32Fx can invert signal on the GPIO inputs so can handle it with ease, STM32F4 cannot, so several decoded protocols are electrically limited. It is not a problem in case you use an external RC receiver, but in the case of miniature drones, adding any additional PCB dramatically increases its weight.</ | ||
| + | |||
| + | Many manufacturers deliver " | ||
| + | |||
| + | <figure stackedfc> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | An interesting initiative is Pixhawk, which opens standard hardware for drones ((https:// | ||
| + | |||
| + | <figure pixhawk> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Firmware Review === | ||
| + | FC hardware is nothing without the firmware that implements various features. Open source FC firmware is available via Github (in most cases), and is extended daily, and periodical deploys. Everyone can download the repository, and " | ||
| + | |||
| + | === Open Source === | ||
| + | Here we present a list of common FC firmware: | ||
| + | * Ardupilot - historically the oldest one and also the most popular even nowadays (currently for 32-bit microcontrollers, | ||
| + | A bunch of related projects (non-exhaustive) that originate from one source (former OpenPilot ((At the moment, OpenPilot website is replaced with another project, related to autonomous cars, and the old website is unavailable.))): | ||
| + | * Cleanflight - stable, changing slowly, new release once a quarter. | ||
| + | * Betaflight (a fork of the Cleanflight) - Development area for CleanFlight. If you have the most modern hardware, look for firmware here (CleanFlight may be delayed). Updates appear weekly. | ||
| + | * Baseflight - also related to the above, but currently outdated, do not use if not necessary. Provides firmware for some old, resource-limited FCs. | ||
| + | * INav (a fork of the Cleanflight) - oriented for autonomous flights and video filming. | ||
| + | * Raceflight (a clone of CleanFlight) - racing drones and performance-oriented. Lacks such features like i.e. GPS navigation. | ||
| + | * PX4 Flight Stack - similar to Ardupilot - firmware for open hardware initiative (i.e. Pixhawk FC). | ||
| + | * LibrePilot (a clone of former OpenPilot), niche. You can find it in many cheap CC3D (STM32F3) FCs. | ||
| + | |||
| + | Updating the firmware may be tricky, as requires connecting FC in bootloader mode via USB cable. Note, as firmware changes the way it stores parameters from version to version, it is pretty common that re-flashing cleans your configuration and requires you to configure the controller from scratch (i.e. PID parameters, additional sensors, and so on). Always do a backup and configuration snapshot before updating firmware. | ||
| + | |||
| + | === Proprietary === | ||
| + | DJI offers a series of large FCs, designed for professional utilities, i.e. A3 FC. While the solution is closed and proprietary, | ||
| + | In fact, the firmware is upgradeable, | ||
| + | ==== Remote Control Systems ==== | ||
| + | RC control is a must for the majority of drones. Whether it is a fully manual flight or just remote monitoring and the ability to take over in case of unforeseen situations, the RC connection should be reliable. Even most advanced military UAVs present the ability to let the human operator take manual control.\\ | ||
| + | The remote control can be considered as controlling directly actuators remote way using radio communication from the ground controller (Transmitter) to the aerial unit (Receiver), and this is the way early RC models were implemented. For simplicity, the aerial unit delivered PWM signal directly, able to control servomotor, without a need to translate it. Nowadays, RC communication is usually bi-directional, | ||
| + | |||
| + | === Controllers === | ||
| + | Ground RC controller uses two sticks (to operate basic channels) whether it is a physical device or, i.e. a touch screen of the mobile phone or tablet. Some RC controllers contain built-in LCD display (Figure {{ref> | ||
| + | |||
| + | <figure rc2universal> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure rc1transmitter> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure DJIFPVtransmitter> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Ground controller is using one of the assignments of control sticks called " | ||
| + | <note tip> | ||
| + | |||
| + | <figure mode21> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure mode22> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure mode23> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure mode24> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | The modern approach used in drone construction assumes that the user interface (RC controller) should be separated from the transmitter to let the user decide, which radio standard to use in their scenario. For this reason, there is a vast number of RC controllers that have exchangeable transmitters. While this approach causes some more work while implementing the solution, the ability to use one controller to exchangeably control many drones sounds interesting because operators simply "used to" use a particular device. | ||
| + | |||
| + | Modes presented in Figures {{ref> | ||
| + | |||
| + | <figure rcauxchannels> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Modern RC controllers use a microcontroller and can mix channels as necessary: i.e. flying wing requires mixing of aileron and elevator, while the rudder is not in use at all. | ||
| + | <note tip> Channel mixing can be done with FC or on the ground RC controller.</ | ||
| + | Microprocessor-based RC controllers are usually able to freely bound UI components with channels, even with complex scenarios, where, i.e. full throttle can set some other channel to trigger booster in the jet engine to provide additional thrust. For this reason, RC controllers provide a menu to configure its parameters and bind UI controls to channels. | ||
| + | It is also common that " | ||
| + | |||
| + | === Transmitters and Receivers === | ||
| + | RC Transmitter is a radio section connected to the RC controller (or eventually ground station, i.e. PC computer, mobile phone, and any other device dedicated for remote control of the UAV). The majority of the RC solutions are incompatible between manufacturers, | ||
| + | |||
| + | <figure rctxrx> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Transmitter and Receiver both have to be " | ||
| + | Nowadays, binding fixes communication between particular devices using digital IDs, but historically analog system required both radios had exchangeable " | ||
| + | |||
| + | Modern Transmitters and Receivers are two-directional ones: | ||
| + | * uplink: transmit commands from ground Transmitter (Controller, | ||
| + | * downlink: transmits in the reverse direction than uplink, sending telemetry data. | ||
| + | Two directional transmissions have great features, not to mention, it is possible to forecast "out of range" as the Receiver transmits at least RSSI (Received Signal Strength Indicator) presenting current connection quality. | ||
| + | |||
| + | The most important features defining Transmitter and Receiver capabilities are listed below: | ||
| + | * a number of channels: at least 4, usually 6 or more; | ||
| + | * one-directional or two-directional communication; | ||
| + | * radio frequency and modulation / protocol / standard used; | ||
| + | * connector standards and size for Transmitter (i.e. compatibility with particular series of Controllers when considering universal modules); | ||
| + | * Receiver' | ||
| + | * antenna connector standards; | ||
| + | * Receiver' | ||
| + | * Receiver' | ||
| + | * other; | ||
| + | |||
| + | === Ground Control Stations and Telemetry === | ||
| + | By the manual Controller and Transmitter-Receiver channel, professional solutions (but also amateur ones) use Ground Stations. They are in the form of PC/Mac computer and dedicated software, eventually using Android/IOS mobile or tablet. | ||
| + | |||
| + | Sometimes ground station and software are integrated with RC Controller, i.e. in the case of Yuneec ST 16 (Figure {{ref> | ||
| + | |||
| + | <figure st16yuneec> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | Open source solutions for Ground Station (software) related to the ArduPilot ecosystem, and include (among others): | ||
| + | * Mission Planner (Figure {{ref> | ||
| + | * APM Planner, | ||
| + | * MAVProxy, | ||
| + | * QGroundControl, | ||
| + | * Tower (DroidPlanner), | ||
| + | * many other. | ||
| + | |||
| + | <figure missionplanner> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | There are proprietary solutions that correspond with open source hardware and firmware, thanks to the open MAVlink protocol (see communication section). | ||
| + | |||
| + | ==== Video ==== | ||
| + | |||
| + | Video cameras play an important role in the UAV ecosystem, in particular in the aerial section (UAV itself).\\ | ||
| + | Their purpose is a dual one: | ||
| + | * used to implement main task (purpose) of the drone device, i.e. aerial photography and video recording (perhaps the most common use), surveillance, | ||
| + | * flight monitoring and control, in the particular image based stabilization, | ||
| + | |||
| + | In any case, it requires a vast number of different cameras, lenses, mounting methods, and wireless transmission solutions. | ||
| + | |||
| + | === Cameras === | ||
| + | Drone cameras vary in size and optical capabilities. While some 480p camera is pretty enough for FPV racing, it is useless in case of professional cinematography, | ||
| + | For professional filming, drones used to be equipped with more than one camera. Amateur solutions share one, eventually two cameras, between UAV operator and camera operator (movie maker). In most cases and amateur solutions, the UAV operator and camera operator are a single person.\\ | ||
| + | Drone manufacturers can deliver aerial photography cameras or, if UAV's MTOM is huge enough, they can carry professional movie-making equipment, DSLR camera,s and so on (Figure {{ref> | ||
| + | In any case, the camera has to be stabilized, and it is desired it can rotate (pan, tilt) in any direction, drone independent. For this reason, there are gimbals: they provide the ability to stabilize the camera and keep filming direction stable, even if drone rolls, pans, or yaws, due to the maneuvering or, i.e. windy conditions and vibrations coming from the propulsion system. Obviously, we consider here mostly multirotor airframes, but it also applies to the fixed-wing and helicopters. The majority of the movie recording drones are multirotor, however. Fixed wings ones are used when there is a need to record on long distance / long flight time and the availability of such drones is rather limited - they are more popular in military solutions as reconnaissance and surveillance UAVs.\\ | ||
| + | |||
| + | FPV systems, on the other hand, are least demanding in terms of optics, quality, and peripherals. They are usually analog ones because analog transmission is almost zero latency and low video latency is essential for performance racing flights. For this reason, cheap CMOS and TTL cameras are used, delivering 480 / 575 lines, usually interlaced. Recently there started to appear digital FPV systems that introduced new video quality (i.e. 720p) with low latency (low as 28-30ms as, i.e. DJI FPV system). As it is good enough for beginner racers, professionals still use analog systems as unbeatable at the moment. It is also pretty common that FPV cameras transmit low-quality signal (analog or digital) to the FPV operator, but locally record high-quality video stream to the flash memory (usually microSD card) with at least 720p and even 1080p or 4K resolution (camera depending). The purpose is for a presentation and post-factum conflict resolution that may appear during racing and cannot be noticed in low-quality analog transmission. | ||
| + | |||
| + | Depth cameras, i.e. Intel Realsense, are used to detect obstacles and avoid collisions with them. Many drones introduce these features now to help the operator. Such cameras are usually front-facing, | ||
| + | |||
| + | Stabilization cameras provide the ability to keep drones horizontally in one place, thanks to optical stabilization and image processing. It can be as simple as using sensors known from optical mouses that obviously have many limitations and as complex as advanced image processing with the detection of the characteristic objects and feature extraction like corners, lines, and similar. The modern image processing also delivers the ability to let drones perform optical-based SLAM: Simultaneous Location And Mapping, generating 3D environment scene ad-hoc while flying. Obviously, it is rather for larger drones as requires additional energy thus larger battery, however, i.e. miniature brushed drone DJI Tello, successfully uses front and down-facing cameras for indoor stabilization (Figures {{ref> | ||
| + | |||
| + | <figure cinematicdrone> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure yuneecdualcamera> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure tello1> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure tello2> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Mounting === | ||
| + | |||
| + | A good gimbal solution can stabilize in 6 DOF (3 rotation axes + 3 planar movements) and professional and semi-professional drones have the gimbal with a camera hanging under their fuselage (Figure {{ref> | ||
| + | |||
| + | FPV cameras in racing drones do not require gimbals at all. They are fixed to the drone body, usually pointing some 20-40 degrees up, as most of the flight time drone is tilted (Figure {{ref> | ||
| + | |||
| + | <figure cgo3plus> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure maviccamera> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure fpvcamera250> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | === Transmission === | ||
| + | Transmission of the video signal between an aerial unit and a ground station is strictly related to the protocols used. We discuss it more in the communication section, but here it is just to mention that video transmission requires wide bandwidth. Obviously, in the case of digital transmission, | ||
| + | In general, we distinguish two types of transmission: | ||
| + | * analog, almost zero latency, used mostly in FPV racing, | ||
| + | * digital, using coding and decoding, thus introducing notifiable latency that disqualifies it from the FPV and real-time tasks. | ||
| + | Mixed models include recording of the high-quality video in the aerial unit and transmission via downlink lower quality stream. | ||
| + | As there do exist professional video links that let you broadcast high-resolution video stream live (i.e. for live reporting on TV), it is rare to use them in amateur and semi-professional drones as they are heavy units, that require large drones and also cost a fortune. This kind of downlinks use multi-channel transmission and usually operate on licensed radio frequencies, | ||
| + | |||
| + | I the case of the amateur and semi-professional solutions, transmission channels operate on popular, " | ||
| + | Anyway, the most popular frequency for video transmission is WiFi, open 2.4GHz, and most of all, 5.8 GHz. Note, even 2.4GHz WiFi has slightly different regulations regarding bandwidth in different countries, but the core remains common for the whole world. The majority of amateur and semi-professional solutions operate on 5.8 GHz, i.e. popular Boscam system (Figure {{ref> | ||
| + | |||
| + | Using WiFi and 2.4GHz for video transmission causes frequent video quality glitches in radio-noisy environments, | ||
| + | |||
| + | <figure boscamvideolink> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | == Antennas considerations == | ||
| + | Good antennas in both transmitter and receiver are worth more than extra transmission power. As the drone (transmitter) changes its position against the ground station (receiver), we usually use omnidirectional antennas for transmission (Figure {{ref> | ||
| + | |||
| + | <figure omnidirectionalantennas> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <note tip>On the Figure {{ref> | ||
| + | |||
| + | Every antenna is intended to work with some particular frequency (or its limited range). Note, using inappropriate antennas drastically limits transmission range! To increase transmission quality and range, it is much better to use antennas with higher gain and suitable for the frequency, than increase power transmission while using the wrong one. | ||
| + | |||
| + | === Monitors and FPV googles === | ||
| + | There are three approaches to present live video transmission: | ||
| + | * external monitors (popular in professional aerial cinematography), | ||
| + | * FPV googles used for racing (Figure {{ref> | ||
| + | * presentation on the mobile/ | ||
| + | The last one is the most popular and used in the majority of amateur, professional and semi-professional drones. Obviously, image quality is limited, to some maximum 720p, eventually 1080p. | ||
| + | As live transmission is used for monitoring mostly, it is common that cameras mounted on the drone record high-quality video stream. | ||
| + | < | ||
| + | |||
| + | <figure fpvgoogles> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | <figure combowithphone> | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Auxiliary ==== | ||
| + | By the aforementioned, | ||