=Paper= {{Paper |id=Vol-3126/paper7 |storemode=property |title=Checking the flight stability of a rotary UAV in navigation modes for different firmware |pdfUrl=https://ceur-ws.org/Vol-3126/paper7.pdf |volume=Vol-3126 |authors=Serhii Lienkov,Alexander Myasischev,Alexander Sieliukov,Alexander Pashkov,Genadiy Zhyrov,Andrii Zinchyk }} ==Checking the flight stability of a rotary UAV in navigation modes for different firmware== https://ceur-ws.org/Vol-3126/paper7.pdf
Checking the Flight Stability of a Rotary UAV in Navigation Modes
for Different Firmware
Serhii Lienkov 1, Alexander Myasischev 2, Olexander Sieliukov 3, Oleksandr Pashkov 4,
Genadiy Zhyrov 5, Andrii Zinchyk 6,
1
  Military Institute of Taras Shevchenko National University of Kyiv, Lomonosova street, 81, Kyiv, 03189, Ukraine
2
  Khmelnytskyi National University, Instytuts’ka str. 11, Khmelnytskyi, 29016, Ukraine
3
  State enterprise "Scientific center of accurate machine building", Boryspylska street, 9, Kyiv, 02099, Ukraine,
4
  Ministry of Defense of Ukraine, Povitroflostky Ave, 6, Kyiv, 03168, Ukraine
5
  Department of the Radio Engineering and Radioelectronic Systems of Taras Shevchenko National University of
Kyiv, Volodymyrska str., 64/13, Kyiv, 01601, Ukraine
6
  Military Institute of Taras Shevchenko National University of Kyiv, Lomonosova street, 81, Kyiv, 03189, Ukraine

                  Abstract
                  In this work, the stability of a rotor-type UAV based on the STM32F405 microcontroller was
                  studied for flying in a fully automatic mode along a given trajectory during a gusty wind with
                  an average speed of 6-7 m/s. The INAV software with firmware ver.2.6 and the Ardupilot
                  software with arducopter firmware ver.4.0.5 were used. The possibility of correct formation of
                  the flight trajectory in the semi-automatic mode for taking photographs, studying the radiation
                  situation in the area, spraying fields, etc. has been established for Arducopter firmware. The
                  development of flight mission for INAV is more primitive, it is performed only in manual mode,
                  using preliminary calculations. The obtained results show that the INAV firmware with the
                  UAV allows only telemetry data to be transmitted to the ground station. It is impossible to
                  change the UAV flight trajectory from the ground station via telemetry. For the Ardupilot
                  software, the possibility of changing the route is shown by dragging the flight point to which
                  the UAV is approaching with the mouse pointing device. For the INAV firmware, it was
                  experimentally not possible to connect flying over a given waypoint with the execution of an
                  action, for example, turning on and off the sprayer nozzle, and dropping the load at a given
                  point.

                  Keywords 1
                  OMNIBUSF4V3, INAV 2.6, GPS receiver, STM32F405, UAV, OSD, ESC regulator, FlySky
                  FS-i6, Failsafe, Arducopter, Ardupilot, Pixhawk


1. Introduction                                                                               both rotary type (quadcopters, hexacopters,
                                                                                              orthocopters) [1] and with a fixed wing (aircraft,
                                                                                              flying wings) [3] can be used.
   Currently, topical issues are the study of the
                                                                                                  To solve the problems under consideration, the
radiation situation in the area, performing
                                                                                              UAV should be able to operate in a fully
topographic and geodetic surveys for drawing up
                                                                                              automatic mode when flying around an area along
a plan of the area, spraying agricultural fields,
                                                                                              a given route and perform actions set before the
carrying out rescue operations [1-4]. To solve
                                                                                              flight, for example, turn on and off the nozzles
these issues, unmanned aerial vehicles (UAVs) of
                                                                                              when flying over the specified waypoints. The

ISIT 2021: II International Scientific and Practical Conference
«Intellectual Systems and Information Technologies», September
13–19, 2021, Odesa, Ukraine
EMAIL: lenkov_s@ukr.net (A.1); alex56ma@gmail.com (A.2);
selukov@3g.ua (A.3); torwer007@gmail.com (A.4); genna-
g@ukr.net (A.5); andrik71@meta.ua (A.6).
ORCID: 0000-0001-7689-239Х (A.1); 0000-0003-1269-425X
(A.2); 0000-0001-7979-3434 (A.3); - (A.4); 0000-0001-7648-
7992 (A.5); 0000-0003-4029-2282 (A.6)
              ©️ 2021 Copyright for this paper by its authors. Use permitted under Creative
              Commons License Attribution 4.0 International (CC BY 4.0).
              CEUR Workshop Proceedings (CEUR-WS.org)
software of the ground station should be able to        Arducopter ver.4.0.5 firmware practically
automatically generate flight trajectories and          functions on the OMNIBUSF4V3 controller [11]
actions performed during the flight over specified      and how stable flight will be in navigation mode
sites [5]. It is important that during its flight the   for such flight controllers based on STM32F4.
vehicle should be sufficiently resistant to external    The OMNIBUSF4V3 controller is also used for
influences, for example, to gusts of wind. It is        the INAV ver.2.6 firmware. Therefore, the testing
necessary that the UAV flight is displayed on the       conditions are the same. The use of free firmware
screen of the ground station, superimposed on the       and common cheap flight controllers makes it
geographical map of the area [6], as well as there      possible to design low-cost UAVs. For example,
will be a possibility of changing the route by          a copter assembled for experimental purposes is at
dragging the flight point with the mouse pointing       a cost 2-3 times lower than commercial ones,
device, to which the UAV is approaching. It is          which have similar flight modes. Pixhawk flight
advisable to use the FPV flight capability [7] with     controller is about 5 times more expensive than
displaying telemetry data on the helmet screen for      OMNIBUSF4V3.
maximum control over the UAV flight. In [6, 8],
other ways of using UAVs are presented, for             3. Research Design
which their stability in flight and positioning at a
given point are also important.
                                                            For Arducopter versions, up to ver. 3.2.1,
                                                        which was used by the autopilot based on
2. Problem Statement                                    atmega2560 microcontroller – for example, APM
                                                        2.6 and 2.8 – the Discrete Cosine Matrix (DCM)
    To solve the problems described above, it is        mathematical apparatus was used to estimate the
very important that the UAV is maximally                position/orientation of the aircraft [12]. The DCM
resistant to changing external impacts. For             was also called the first generation attitude and
example, with a constant wind of 5-6 m/s,               position estimation system.
simplified mathematical models are used to                  The current stable version of ArduPilot (4.0.5)
ensure flight stability. An example would be the        uses EKF2 as the main source of orientation in
use of complementary filters for the joint              space, with the DCM running in the background.
operation of a gyroscope and an accelerometer           If the autopilot has two (or more) available IMUs
and simplified models of PID regulators.                (the Inertial Measurement Unit contains a
However, with a dynamically changing wind of            gyroscope and accelerometer), two EKF “cores”
up to 15-20 m/s, it is required to use a more           will work in parallel, each of which will use its
complex mathematical apparatus and develop              own IMU. At any given time, only the output
software on its basis for the flight controller. In     signal of one EKF core is used, and it is this core
this regard, the work considers the construction of     that reports the best state, which is determined by
a quadcopter according to a well-known model            the consistency of the data of its sensors.
(X-copter) and its adjustment for modern                    Figure 1 shows the evolution of the Attitude
firmware INAV and Arducopter [8, 9]. The                and Heading Reference System (AHRS) [13]
adjustment is carried out experimentally with
enumeration of a large number of parameters
(including adjustment of the PID regulators), on
which the flight stability of the copter with the
given geometric parameters as well as the
parameters of the propeller group depends.
    In this study, the most common firmware,
INAV and Arducopter. These firmwares are free
to use, open source and user-configurable. INAV
supports a large number of flight controllers based     Figure 1: Evolution of AHRS for different versions
on 32-bit microcontrollers of the STM32F4 and           of ArduPilot
STM32F7 sets, positioning sensors (gyroscopes,
accelerometers, magnetometers, etc.), and OSD.              INAV firmware for OMNIBUSF4V3 flight
The Arducopter firmware was developed for               controller uses Alpha-Beta filter (complementary
flight controllers APM 2.6 and Pixhawk [10]. In         filter) for position estimation. It allows using the
this work, we have studied how the ported               accelerometer and gyroscope to obtain fairly
accurate pitch and roll values. However, with          FlySky FS-i6 firmware upgraded from 6 to 10
large vibrations of the motors, its accuracy           channels with a communication range of up to 1.0
becomes insufficient and this filter is not suitable   km; flight controller OMNIBUSF4V3 based on
for using another sensor, a magnetometer. That is      STM32F405 LQFP64 microcontroller (168Mhz,
why aircraft behave unstable when switching to         1M Flash, 192kB SRAM) with built-in
fully automatic control with INAV firmware.            gyroscope, MPU6000 accelerometer and
Therefore, in this work, along with INAV               BMP280 barometer; battery 1500 mAh/hour, 11.1
firmware, the behaviour of the craft in automatic      V; video camera and video transmitter TS832
mode, using the Kalman filter, is investigated.        with a power of 0.6 W. The flight weight of the
    Another alternative is the Madgwick filter         quadcopter was about 550 g.
[14], which gives a better result than the Kalman
filter in the results of position accuracy and
calculation performance.
    The Advanced Kalman Filter (EKF2)
algorithm used in ArduPilot provides a way to
combine or consolidate data from an IMU, GPS,
compass, airspeed sensor, barometer, and other
sensors to calculate a more accurate and reliable
estimate of the UAV position, speed and angular
orientation. This algorithm evaluates a total of 22
states from different sensors.
    The issues of constructing mathematical
models to ensure the stability of the UAV were
also discussed in [15-17].

                                                       Figure 2: Photo of the tested quadcopter
4. Basic Material              and      Working
   Results                                                The interconnecting network of the copter
                                                       electronic components is given in Figure 3. The
   For testing the UAV, a quadcopter with a 250-       video camera is connected to a separate power
mm frame was chosen (Figure 2). On the                 source. The copter sends telemetry data, which are
quadcopter, the following equipment was                superimposed on the image of the terrain obtained
installed: motor 2204/2300 KV with ESC                 from the video camera, through the video
regulator 30A; propeller 5×4.5 inches; GPS             transmitter.
receiver: u-blox NEO-6M; control equipment:




Figure 3: The interconnecting network of the copter electronic components
    To configure the flight controller of the copter,   microcontroller on OMNIBUSF4V3 has 1 Mb
the firmware file for the microcontrollers and the      flash memory, so its capabilities are limited. For
ground station software are used. The ground            example, some sensors and telemetry formats may
station uses Mission Planners, which is located at      not work; some devices cannot be controlled, etc.
https://firmware.ardupilot.org/Tools/MissionPlan        Lua scripting is not possible due to insufficient
ner/. The firmware for OMNIBUSF4V3 is copied            flash memory. These scripts provide a safe
from                                                    sandbox environment for adding new behaviour
https://firmware.ardupilot.org/Copter/stable-           to the autopilot without changing the main flight
4.0.5/omnibusf4/         under       the       name     code.
arducopter_with_bl.hex.                                     Despite this, the flight performance with
    When sold OMNIBUSF4V3 controller is                 OMNIBUSF4V3 is higher than with APM 2.6
usually pre-flashed with Betaflight firmware.           based on ATmega2560 processor due to a more
After Betaflight, INAV firmware is installed quite      advanced mathematical model of flight control
easy [9]. Setting up this firmware using the INAV       when using the same type of sensors.
navigator was considered in [18-20]. After its              The quadcopter firmware is configured using
installation, test flights were performed with          MissionPlanner ver. 1.3.74 application.
INAV ver.2.6. After completing the testing,                 A computer is connected to the flight
arducopter firmware was installed. However, it is       controller using a USB cable. Then the Mission
not possible to directly install arducopter             Planner application is launched, which connects
firmware from Mission Planners, the ArduPilot           to the firmware of OMNIBUSF4V3 controller by
ground station. To use ArduPilot, you need an           clicking on CONNECT (1) in the upper right
ArduPilot compatible bootloader on the                  corner. The frame type is selected step by step
microcontroller. Therefore, _bl.hex file is used,       (Figure 5).
which contains the firmware and bootloader
compatible with ArduPilot. _bl.hex file can be
flashed using the INAV configurator, which uses
a convenient graphical interface for this purpose.
Before flashing, the controller should be switched
to DFU mode (Figure 4).




                                                        Figure 5: Selection of a frame type

                                                            The calibration of the accelerometer, compass,
                                                        control equipment and ESC regulators is
Figure 4: Switching OMNIBUSF4V3 controller to           performed. Calibrations are performed according
                                                        to the step-by-step instructions on the
DFU mode
                                                        corresponding tab. Figure 6 shows a combination
                                                        of setting tabs. To calibrate the accelerometer, the
   If OMNIBUSF4V3 controller is not
                                                        copter is sequentially installed to a fixed position
recognized as a com port under Windows, zadig
                                                        along 6 axes, followed by fixing each of the
program is downloaded from http://zadig.akeo.ie/
                                                        positions. It is best to calibrate the magnetometer
and installed.
                                                        in the launch field by rotating the quadcopter in
   It should be noted that the peculiarities of the
                                                        six axes until the Mission Planner reports the end
firmware for OMNIBUSF4V3 controller
                                                        of the calibration. The location of the
compared to the typical firmware developed for
                                                        magnetometer relative to the flight controller is
Pixhawk 2.4.6 flight controller based on
                                                        determined automatically.
STM32F427 Cortex M4 processor with FPU 168
                                                            ESC controllers are configured as described in
MHz/256 Kb RAM and 2 Mb flash memory. The
                                                        the ESC Calibration tab.
    Before setting flight modes (Flight Modes) it      points and Aux channels tabs, in which the
is necessary to configure FlySky FS-i6 control         parameters shown in Figure 7 are set for the 5th
equipment. In order to do this, it is first upgraded   channel. The Reverse tab sets the reverse for the
to a 10-channel operating mode [18,19]. Then, on       2nd channel.
the FlySky FS-i6 operation panel, go to the End




Figure 6: The combination of tabs for parameter settings

                                                       shows the flight mode and Failsafe settings tabs.
                                                       To implement Failsafe, the control hardware and
                                                       receiver are preconfigured as presented here [18,
                                                       19]. FailSafe mode is set to minimum throttle.
                                                       That is throttle value is equal to 1003 pulses when
Figure 7: Setting parameters on the FlySky FS-i6       control equipment is on. If communication with
operation panel for the formation of flight modes      the operation panel is broken, this value will be
                                                       equal to 900 pulses. Fig. 8 shows that it is set to
   Such an installation will allow using the three-    950, below which FailSafe will be triggered. This
position SwC and two-position SwD switches to          will turn on the Enabled Continue mode with
work with 6 different flight modes. Figure 8           Mission and Auto modes, so the flight mission is
                                                       continued in automatic mode.




Figure 8: Setting flight modes and FailSafe
   To control the battery charge, in order to notify    takeoff point when the battery is low, the battery
about its charge via telemetry, to give an audible      should be calibrated. It is performed in the tab
signal informing about a low battery charge, and        shown in Figure 9. For OMNIBUSF4V3, the
execute a command to return the copter to the           values are set inked with green rectangles.




Figure 9: Battery calibration

   The Extended Turning tab is used to configure        controllers. Therefore, for the convenience of
the parameters of the PID controller and some           adjusting the parameters during the flight, the
navigation flight modes (inked in a red                 sixth channel of the control equipment – the
rectangular).                                           "spinner" – is used to set specific PID parameters
   For copters, the PID controllers are adjusted by     and designate the range of these parameters. In
manual selection based on visual control over the       Figure 10, the above said is inked in green
stability of the aircraft behaviour. At present there   rectangles
are no reliable mathematical models for the
automatic determination of the parameters of PID




Figure 10: Setting up the PID regulators

   The OMNIBUSF4V3 flight controllers are               travelled, number of received satellites, battery
equipped with an OSD chip, with the help of             charge, etc.) on the video image of the FPV
which it is possible to overlay telemetry               camera. The Onboard OSD tab is used to
parameters (flight altitude, speed, distance            configure the OSD (Figure 11).
Figure 11: Setting up the OSD

    The FPV camera screen field with the selected          More fine adjustment of aircraft flight modes
parameters is ensquared in green, and the settable     is performed in the Full Parameter List tab (Figure
parameters are selected at the bottom, ensquared       12).
in orange.




Figure 12: The Full Parameter List tab for fine adjustment of flight parameters

    When configuring the firmware of the                   EK2_IMU_MASK = 1. One-byte IMU bitmap
ArduPilot copter, one should pay attention to          for use in EKF2. A separate item of EKF2 will be
setting the following parameters:                      launched for each selected IMU. Value = 1 only
    AHRS_EKF_TYPE = 2 This parameter                   uses the first IMU (default), if value = 2 then only
determines which version of the Kalman filter is       the second IMU is used, value 3 allows the first
used to estimate orientation and position;             and second IMU to be used. Up to 6 additional
    EK2_ENABLE = 1 This enables EKF2.                  IMUs can be used if memory resources and
Turning on EKF2 only triggers mathematical             processing speed permit. There may be
calculations, but that does not mean that it will be   insufficient memory and processing resources to
used for flight control. To use it, you should set     run multiple items. If this happens, EKF2 will not
AHRS_EKF_TYPE = 2. After changing the value            start;
of EK2_ENABLE, you must perform a restart                  EK2_ALT_SOURCE = 0 defines which
procedure for the parameters to take effect;           sensor is used as the main one for determining the
altitude: 0: barometer is used (default); 1:                LOIT_BRK_JERK Braking jerk at Loiter in
Rangefinder is in use.                                  cm/sec/sec/sec. Higher values will eliminate
    2: GPS is being used. Useful when GPS quality       braking more if the pilot moves the sticks during
is very good and barometer drift can be a problem.      a braking manoeuvre. The default setting is used.
For example, if the copter will perform long-               Ardupilot software allows performing
distance missions with elevation differences>           automatic formation of the flight path, for
100m;                                                   example, for taking photographs, studying the
    EK2_GPS_TYPE = 0: controls the use of GPS.          radiation situation in the area, spraying fields, etc.
    0: use 3D speed and 2D position from GPS; 1:        Figure 13 shows an example of the formation of a
use 2D speed and 2D position (GPS speed does            flight mission for fertilizing a field. The
not affect the altitude estimate); 2: use 2D            processing contour is preselected (highlighted in
position; 3: no GPS (it will use the optical flow       red) and the flight path is automatically formed to
from the sensor only if available);                     cover the area that can be treated by the spraying
    EK2_CHECK_SCALE scales thresholds that              system (the path is represented by yellow lines)
are used to check GPS accuracy before the EKF is        [21]. Usually, the flight altitude above the ground
used. The default is 100. Values greater than 100       is set equal to 1.5-3 m, which should be provided
increase, and values less than 100 decrease the         by the ultrasonic sensor. Its use is especially
maximum GPS error that the EKF accepts. A               important if the field surface is not flat, i.e. there
value of 200 will double the acceptable GPS error.      are depressions and hills.
For EK2_CHECK_SCALE of the tested aircraft
the value of 130 is set. In this case, it establishes
communication with satellites faster, but also flies
stably;
    AHRS_GPS_GAIN = 0 parameter controls
how much intensive GPS should be used to
correct the position. The parameter for the
airplane should not be equal to 0, as this will lead
to loss of control of the airplane when turning. For
an airplane, the value is 1.0. For a copter is 0. The
consequence of this parameter turned on is the
twitching of the horizon line when the craft is
stationary if the GPS does not perfectly capture        Figure 13: Formation of a flight mission in semi-
the position and drifts. With strong jumps in GPS       automatic mode
position, the roll can reach critical values, which
will lead to instability of the copter. Therefore, in
                                                            In this work, an experimental test of the flight
copters this parameter is set to 0.
                                                        stability of the quadcopter presented in Fig. 2 with
    GPS_AUTO_SWITCH = 0. Setting up
                                                        INAV firmware, ver. 2.6 and Arducopter
automatic switching between multiple GPS. For
                                                        firmware, ver. 4.0.5, was carried out. The test was
one GPS, the parameter is set to 0.
                                                        carried out during winds of different intensity
    The following is how braking is performed in
                                                        (table 1) in navigation modes. In fig. 14 (right)
LOITER flight mode (holding position and
                                                        shows the flight path for two firmwares, which are
altitude):
                                                        programmatically set in the Mission Planner
    LOIT_ACC_MAX             =    500     Maximum
                                                        ground station for Arducopter and similarly in
acceleration of position correction in Loiter mode
                                                        INAV - Configurator for INAV ver.2.6 firmware.
in cm/s/s. Higher values cause the aircraft to
                                                        Figure 14 on the left shows the real flight path for
correct position errors more aggressively (for
                                                        Arducopter ver.4.0.5, which was built using the
example, in gusts of wind);
                                                        Google Earth software package based on log files
    LOIT_BRK_ACCEL = 100 Acceleration of
                                                        from the flight controller. A similar trajectory was
braking when the copter jams on the brakes, in
                                                        obtained for INAV. As can be seen from Table1,
cm/s/s. Higher values stop the copter faster when
                                                        the flight of the copter in navigation mode on the
the left-to-left and front-to-back stick of the
                                                        firmware INAV ver.2.6 was completely
controlling equipment is moved to the centre.
                                                        unsuccessful in a wind of 6-7m / s with gusts. Loss
Large values of this parameter lead to sharp
                                                        of stability of the quadcopter was recorded with
braking, which can lead to a rollover of the copter,
                                                        its fall at the moment of passing an arbitrary
especially in gusty winds;
waypoint, when the stability of the copter was        Significant flight instability was found in the auto
minimal due to a sharp change in the direction of     return and point-to-point flight modes. Loss of
flight and a sharp gust of wind. Tests for high       stability of the quadcopter with its fall was
wind speeds were not carried out due to the           recorded.
obvious advantage of the Arducopter ver.4.0.5             4. The expediency of using the mathematical
firmware.                                             model of the extended Kalman filter to ensure the
                                                      stability of the flight of a rotor-type UAV, which
Table 1                                               is used in the arducopter 4.0.5 firmware, has been
Experimental parameters and results                   experimentally established. It provides better
 № Wind       Number The number of                    flight results in navigation modes than the
      speed, of tra- crashes of the                   complimentary filter based firmware (INAV 2.6
                                                      firmware). When flying in acro (gyroscope) and
      m/s     jectory    copter        for
                                                      stabilize (gyroscope + accelerometer) modes, the
              flights    firmware
                                                      behavior of the copter for these two firmwares did
                         Ardupilot  INAV              not differ noticeably.
  1     1-2         5          0      0                   5. It is deemed that the mathematical model of
  2     3-4         5          0      0               the extended Kalman filter is expedient to use on
  3     4-5         5          0      1               high-performance microcontrollers such as
  4     6-7         5          0      5               STM32F4 and STM32F7 for flight in navigation
                                                      modes, where many sensors are simultaneously
   Thus, the expediency of using the                  used to provide information about the position of
mathematical model of the extended Kalman filter      the UAV.
was experimentally established to ensure the              6. The possibility of correct formation of the
stability of the flight of a rotor-type UAV.          flight trajectory in the semi-automatic mode for
                                                      taking photographs, studying the radiation
                                                      situation of the area, spraying fields, etc. has been
                                                      experimentally established for Arducopter
                                                      firmware. Formation of a flight mission for INAV
                                                      is more primitive, it is performed only in manual
                                                      mode, using preliminary calculations.
                                                          7. It has been established that INAV firmware
                                                      with the UAV only allows transmitting telemetry
                                                      data to the ground station. From the ground
                                                      station, changing the UAV flight trajectory
Figure 14: Copter flight trajectories according to    through telemetry is impossible, for example,
the program (right) and obtained experimentally       when "dragging" the flight point with the mouse
(left)                                                manipulator [22-24]. Arducopter firmware
                                                      supports the two-way MAVLink protocol for
                                                      receiving and transmitting telemetry data between
5. Conclusions                                        the flight controller and the ground station.
                                                          8. For INAV firmware, it was experimentally
    1. Experience has shown that the operation of     impossible to connect the flight over a given
Arducopter firmware for OMNIBUSF4V3 flight            waypoint with the execution of an action, for
controller, which was developed for the Pixhawk       example, turning on and off the sprayer nozzle,
family flight controllers is correct.                 dropping the load, turning on/off the video
    2. A test of the stability of the flight of the   camera. Arducopter firmware allows doing these.
quadcopter on a frame of 250 mm during a gusty
wind of 6-7 m/s in navigation modes Arducopter        6. References
firmware was carried out. The stability of the
flight in the mode of automatic flight by points
and in the mode of automatic return to the starting   [1] A. Boyko, AV applications, 2017.
point was noted.                                          URL:http://robotrends.ru/robopedia/oblasti-
    3. Likewise for INAV firmware, ver. 2.6, flight       primeneniya-bespilotnikov.
stability of the same quadcopter was tested during    [2] The modernized Spectator drone from OJSC
a gusty wind of 6-7 m/s in navigation modes.              "Meridian" named after SP Korolyova, 2019.
     URL:https://www.youtube.com/watch?time                pp.               1939-1946.             doi:
     _continue=6&v=HvLErmgBRX4&feature=                    10.11591/ijece.v8i4.pp1939-1946.
     emb_logo.                                        [17] Almido H Ginting, Oyas Wahyunggoro,
[3] Spectator              (UAV),            2020.         Adha Imam Cahyadi, "Attitude Control of
     URL:https://ru.wikipedia.org/wiki/Spectator           Quadrotor Using PD Plus Feedforward
     _(БПЛА).                                              Controller on SO(3)," International Journal
[4] A. Boyko, Spraying plants from drones,                 of Electrical and Computer Engineering, vol.
     2019.                                                 8, no. 1, 2018, pp. 566-575. doi:
     URL:http://robotrends.ru/robopedia/opryski            10.11591/ijece.v8i1.
     vanie-rasteniy-s-bespilotnikov.                  [18] S.Lienkov,      A.Myasischev,       O.Banzak,
[5] iNavFlight       Missions,       2020.   URL:          L.Komarova,                    N.Lytvynenko,
     https://github.com/iNavFlight/inav/wiki/iNa           O.Miroshnichenko, Construction of an
     vFlight-Missions.                                     Aircraft-Type UAV for Flight Along a Given
[6] Copter Mission Command List, 2020. URL:                Trajectory in the Automatic Mode,
     https://ardupilot.org/copter/docs/mission-            International Journal of Emerging Trends in
     command-list.html.                                    Engineering Research, vol. 8, no.9, 2020, pp.
[7] FPV          piloting        theory,     2021,         6145-6150.
     URL:https://github.com/mlutskiy/pioneer-              doi:10.30534/ijeter/2020/200892020.
     doc/blob/master/database/pilot-                  [19] S. Lienkov, A. Myasischev, L. Komarova, N.
     module/pilot-3part.rst.                               Lytvynenko, V. Shvab, O. Lytvynenko,
[8] ArduPilot       Firmware        builds,  2020,         Creation of a Rotor-Type UAV with Flight
     URL:https://firmware.ardupilot.org.                   Controllers, Based On a ATmega 2560 and
[9] INAV                  2.6.0,             2020,         STM32f405 Microprocessors, International
     URL:https://github.com/iNavFlight/inav/rel            Journal of Emerging Trends in Engineering
     eases/tag/2.6.0.                                      Research, vol. 8, no. 8, 2020, pp. 4703-4710.
[10] Pixhawk             Overview,           2020,         doi:10.30534/ijeter/2020/104882020.
     URL:https://ardupilot.org/copter/docs/com        [20] S. Lienkov, A. Myasischev, O. Banzak, Y.
     mon-pixhawk-overview.html.                            Husak, I. Starynski, Use of rescue mode for
[11] Omnibus F4 Pro (on-board current sensor)              UAV       on     the    basis   of    STM32
     and Omnibus F4 AIO (no sensor onboard),               microcontrollers, International Journal of
     2020,                                   URL:          Advanced Trends in Computer Science and
     https://ardupilot.org/copter/docs/common-             Engineering, vol. 9, no. 3, 2020, pp. 3506-
     omnibusf4pro.html?highlight=inav.                     3513. doi:10.30534/ijatcse/2020/156932020.
[12] Starlino, DCM Tutorial-An Introduction to        [21] Mission        Planning,      2021.     URL:
     Orientation Kinematics, 2011, URL:                    https://ardupilot.org/copter/docs/common-
     http://www.starlino.com/dcm_tutorial.html.            mission-planning.html.
[13] Extended Kalman Filter (EKF), 2020, URL:         [22] Flight by plane using INAV telemetry, 2021.
     https://ardupilot.org/copter/docs/common-             URL:https://sites.google.com/site/webstm32
     apm-navigation-extended-kalman-filter-                /inav_25_wp_sam/telemetriy-inav.
     overview.html.                                   [23] Chi-Bao Le, Dinh-Thuan Do, Employing
[14] Filtr      Madzhvika,         2015,     URL:          non-orthogonal multiple access scheme in
     https://habr.com/ru/post/255661.                      UAV-based wireless networks, Bulletin of
[15] Ibrahim K. Mohammed, Abdulla I. Abdulla,              Electrical Engineering and Informatics, vol.
     Elevation, pitch and travel axis stabilization        10, no. 1, 2021, pp. 241-248. doi:
     of 3DOF helicopter with hybrid control                10.11591/eei.v10i1.2102.
     system by GA-LQR based PID controller,           [24] Deha Agus Umarhadi, Projo Danoedoro,
     International Journal of Electrical and               Comparing canopy density measurement
     Computer Engineering, vol. 10, no. 2, pp.             from UAV and hemispherical photography:
     2020,              1868-1884.             doi:        an evaluation for medium resolution of
     10.11591/ijece.v10i2.pp1868-1884.                     remote         sensing-based        mapping,"
[16] Agung Prayitno, Veronica Indrawati, Ivan              International Journal of Electrical and
     Immanuel Trusulaw, Fuzzy Gain Scheduling              Computer Engineering, vol. 11, no.1, 2021,
     PID Control for Position ofthe AR.Drone,              pp.                356-364.              doi:
     International Journal of Electrical and               10.11591/ijece.v11i1.pp356-364.
     Computer Engineering, vol. 8, no. 4, 2018,