Unmanned aerial vehicles (UAVs) are autonomous or remotely guided aircraft, which can potentially carry out a wide range of tasks. Multirotor type of UAV has unique ability to perform vertical take-off and landing (VTOL), a stationary and low-speed flight where certain configurations can achieve very complex and precise movements. Therefore, they are suitable for performing tasks such as delivery of first aid kit, firefighting, infrastructure inspection, aerial video, and many others. In this chapter, a generalized control allocation scheme for a multirotor UAV is presented, which describes the mapping of rotor angular velocities to the control vector of the aircraft. It enables control and design of multirotor configurations with diverse geometrical arrangement and characteristics of the propulsion subsystem depending on the task, which multirotor has to carry out. The inverted scheme, which is implemented as a motor mixer, maps the control inputs into a set of aircraft actuator outputs.
- multirotor UAV
- control allocation scheme
- propulsion subsystem
- motor mixer
Unmanned aerial vehicles (UAVs) can be defined as autonomous or remotely guided aircrafts, which do not require the onboard human crew during operation; so, it is expected that they would be used in a wide range of tasks and operated in harmful conditions. The development of new technologies, especially microelectromechanical systems (MEMS), and an increase of the control units’ computer power have enabled rapid progress and a large number of interesting applications. There are several categories of UAVs, which are in various stages of research, development, and application (rotary-wing, fixed wing, flapping-wing, blimp, and hybrid UAV). Rotary-wing UAVs have the ability to carry out vertical take-off and landing (VTOL), stationary and flight at moderate speed making them suitable for performing tasks without the need for a runway or a launch pad.
Multirotors are the type of rotary-wing UAVs with fixed pitch wings and propellers. Since they are typically small in size with extreme agility and maneuverability, multirotors belong to micro aerial vehicles (MAVs). They are suitable for use in aerial photography, surveillance, infrastructure inspection, precise agricultural, search and rescue missions [1, 2], delivery, and many other tasks. Multirotors have six degrees of freedom (DOF); it is assumed that the aircraft is symmetrical and rigid, and the only moving parts are rotors with the propellers connected to the rotor axis. Rotors angular velocities are the only variables that have a direct impact on the multirotor dynamics . From a control perspective, multirotors are represented as highly nonlinear multivariable systems because coordinate system transformations include trigonometric functions and aerodynamic forces that are proportional to the squared rotor speed. If the functionality of control loops is lost, multirotor will crash, because it is inherently unstable system and cannot return to equilibrium state by itself. Given that the only variables are the rotor (propulsion) subsystem angular velocities, multirotor configurations can be classified according to the propulsion arrangement.
The design and development of multirotors are constrained by the size, weight, and power consumption . The most common and by far the most used multirotor configuration is the one with four rotors, quadrotor [5, 6], which is suitable for the evaluation of control algorithms [7, 8]. Performing certain tasks such as the lifting of heavy equipment requires configurations which have six, eight or more rotors. Configurations may consist of single (hexarotor, octorotor) and coaxial  (Y6 and X8 rotor) propulsion arrangements, in which various control units have built-in or with overlapping arrangements . These configurations have the characteristic of a parallel geometric rotor arrangement and can be classified as flat multirotor configurations. As a result of growing interest in development and application of multirotor UAVs where some tasks require longer flight time or complex and precise aircraft movements, an increasing number of new configurations are emerging. By properly selecting propulsion arrangement, it is possible to improve certain properties such as an increase in flight time . Several papers deal with the novel configurations with actively tilted rotors [12, 13] in order to overcome the underactuation limitation of conventional flat multirotor configurations. A novel overactuated quadrotor UAV based on actively tilted rotors is proposed in . Actively tilted configurations require an additional number of actuators, which makes the system more complex and also increases weight and power consumption. Therefore, passively tilted nonflat multirotor configuration, such as presented in paper , is more suitable for analysis and realization. The drawback of the mentioned papers is the limitation in the mathematical representation of configurations so that the analysis is also limited to certain properties.
In this chapter, a nonlinear mathematical model of the multirotor UAV is described. The model is decomposed into a rigid body dynamic model, derived by using Newton-Euler method and control allocation scheme, which describes a mapping of rotor angular velocities to a control vector. Control allocation matrix, whose rank determines whether the configuration is underactuated or fully actuated, is defined with rotors geometric arrangement and propulsion physical parameters. Through open loop simulations, the implemented model enables the analysis of dynamics and energy consumption for different generic multirotor configurations, so it is possible to design diverse multirotor UAVs for various tasks. The fact that the nonflat design can provide six independent control variables, one for each degree of freedom, has a significant influence on the motion planning and control design. Fully actuated configurations provide the more efficient realization of different task objectives, which require complex movements such as tasks involving manipulation with objects in the presence of external forces. The inverted scheme, implemented in a flight controller as a motor mixer, maps the control vector to actuator commands.
2. Preliminary system descriptions
The mathematical model of the multirotor UAV is a function that is mapping input angular velocities of rotors to output position and orientation of the aircraft, which is required for the design and synthesis of control algorithms. The model describes multirotor behavior that is important for dynamics and energy consumption analysis of different configurations.
2.1. Reference coordinate systems
To describe the multirotor dynamic model, it is necessary to define the inertial coordinate system (Earth frame) and the aircraft system (body frame). Earth frame is defined as an inertial right hand Cartesian coordinate system connected to earth’s surface with z-axis direction normal to ground level. Earth frame does not rotate, which means that the law of inertia is directly applicable. Multirotor position is determined by the coordinates of the vector, which connects the origin of Earth frame with the origin of body frame. Multirotor orientation is determined by three Euler angles describing the orientation of the body frame in relation to the Earth frame. Rotation around the axis is defined as the roll angle , rotation around the axis as the pitch angle , and rotation around the axis as the yaw angle .
Body frame is fixed on the multirotor body and it is also right hand Cartesian coordinate system. The assumption is that the origin of body frame coincides with the multirotor center of gravity (COG) and that the principal inertia axes of multirotor body coincide with the body frame coordinate axes. Since the frame is fixed to the rotating multirotor body, the inertia forces are added to Newton’s laws of motion. The inertia matrix is time-invariant and also reduced to diagonal matrix due to the symmetry of the multirotor body. Multirotor linear (translational) velocities and angular (rotational) velocities are defined in the body frame. Since the onboard sensors and propulsion subsystem are defined with respect to the body frame, it is more suitable to formulate the motion equations, force vector and moment vector in the body frame.
2.2. UAV kinematic model
Assuming that the multirotor is a rigid body, translational and rotational motion can be described as the motion of the particle located at the body COG. It follows that the description of the multirotor motion is reduced to the description of the translation and rotation of the body frame. Kinematics of a UAV with six DOF is described by
where is the linear and is the angular velocity vector in Earth frame, is an orthogonal rotation matrix, which maps the linear velocity vector from Body to Earth frame, and is transformation matrix, which maps the angular velocity vector from Body to Earth frame.
Using the Euler’s rotation theorem, rotation of Earth frame to body frame is described with three consecutive rotations around the known axes. Since the rotation matrix is mapped from Body to Earth frame, inverse rotations need to be calculated,
where denote the 3 × 3 elemental rotational matrix, which describes the rotation around the axis for the yaw angle . As shown in Figure 1, the rotation result is an auxiliary coordinate system with axes (, , ),
where and . The matrix describes the rotation around the axis for the pitch angle . The rotation result is an auxiliary coordinate system with axes (, , ),
The matrix describes the rotation around the axis for the roll angle . The rotation result is the body frame with the axes (, , ),
Since angular velocities occur around an axis, the angular velocity is not mapped by rotation matrix. The rate of yaw angle occurs around the axis, rate of pitch angle around the axis, and rate of roll angle occurs around the axis. Using elemental rotation matrices, it is possible to transform the angular velocity vector from the Earth frame into the body frame,
Eq. (6) can be written as from which we get an inverse transformation matrix that enables the calculation of .
2.3. Multirotor UAV dynamic model
Multirotor dynamics is described by a multivariable nonlinear model, which consists of six second-order differential equations. It is derived by using the Newton-Euler method based on Euler’s laws of motion, considering the assumptions that the body frame origin coincides with the aircraft COG and that the axes of the body frame coincide with the principal inertia axes of the multirotor body.
2.3.1. Translational dynamics
The translational (linear) motion of a rigid body based on the first Euler law with respect to the body frame is described by
where is aircraft mass. The translational dynamics of the multirotor system is influenced by the force vector given with propulsion and external forces caused by the environment
Force vector is divided into gravitational , disturbance force , and propulsion subsystem force vector . The gravitational force vector has a direction parallel to the axis in the Earth frame . In the body frame, it is defined by rotation matrix .
The total translational dynamics with respect to the body frame is given by the equation
Since the dynamic model in the Earth frame does not contain the members of the imaginary forces and the gravitational force coincides with the axis, the translational dynamics is shown in Earth frame,
2.3.2. Rotational dynamics
The rotational (angular) motion of a rigid body based on the second Euler law with respect to the body frame is described by
where is the inertia matrix. By applying the assumption that the multirotor frame has symmetrical structure, inertia matrix becomes diagonal, which enables simplification of the dynamic model,
The rotational dynamics of the multirotor system is influenced by the moment vector, given with external moments caused by the environment and propulsion moments
Moment vector is divided into gyroscopic torque , disturbance moment and propulsion subsystem moment vector . The gyroscopic torque vector introduces the gyroscopic effect to the model. When rotating around the desired axis, multirotor starts to rotate around an axis that is perpendicular to the rotor axis and the desired axis of rotation.
is the total motor inertia moment (around the rotor axis) that depends on the dimensions and geometry of the rotor, is the sign of the ith rotor rotation where clockwise (CW) rotation have positive sign while counterclockwise (CCW) rotation have negative sign and is the ith rotor angular velocity.
The total rotational dynamics with respect to the body frame is given by the equation
2.3.3. Control vector
Control vector is the input in the multirotor dynamic model from which it follows that it is the only vector that can influence the system dynamics. It consists of propulsion subsystem force and moment vector . It depends on the propulsion subsystem configuration and squared angular velocities of the rotor, which are the input to the multirotor mathematical model,
where is control allocation matrix, which describes how the propulsion subsystem maps the rotors angular velocities to the control vector. is vector of the rotors squared angular velocities, .
3. Propulsion subsystem
Multirotor configuration is determined with the propulsion subsystem, which is defined by the geometric arrangement and characteristics of the propulsion units. The assumption is that the propeller aerodynamic forces consist of the thrust force and the drag torque.
3.1. Propulsion aerodynamic forces
During rotation, the propeller motion through the air causes aerodynamic forces that directly affect the multirotor dynamics. An air is accelerated behind the blade through a pressure difference, which is produced between the forward and rear surfaces of the airfoil-shaped blade (Figure 2). As a result, thrust force and drag torque are produced depending on the propeller geometric characteristics and the rotor angular velocity.
The relationship between the aerodynamic forces and the rotor angular velocity is derived by the blade element momentum theory. Thrust force of ith propulsion unit is given by
where is a thrust force factor, which is determined by propeller geometric characteristics.
where is thrust force coefficient, is air density, is the area of propeller (rotor) disk, and is the propeller radius.
Drag torque of ith propulsion, which must be produced in order to overcome the air resistance and achieve the desired angular velocity is given by
where is a drag torque factor,
and is the power coefficient. Thrust force factor and drag torque factor can be obtained from experimental measurements .
3.2. Multirotor configurations
Multirotor configuration consists of an arbitrary number of rotors (). Configurations mostly consist of even number of propulsion units in order to cancel reactive moment around the vertical axis . Conventional configurations are characterized by a parallel geometric rotor arrangement and can be divided according to the efficiency of the propulsion arrangement and the size of aircraft.
3.2.1. Conventional propulsion arrangements
The most frequently used configurations have an even number of rotors with a single propulsion arrangement (Figure 3). Rotors are placed on the diagonals that are placed in the X or + configuration with respect to the axis marked with the red arrow.
The selection of the propulsion subsystem depends on the task demands for the payload, flight time duration, or other specific requirements. It is important to note that the increase in the number of rotors increases the price and size of the aircraft.
In addition to a single propulsion arrangement, often configurations have a coaxial arrangement. It is used when greater payload capacity is needed, while at the same time there are limits to the size or geometry of the aircraft. It is characterized by a reduced efficiency of the propulsion unit that manifests itself through shorter flight time or reduced payload capacity compared to configurations with the single arrangement and the same number of rotors .
Most commercial control units have a flexible system that allows it to support various multirotor configurations. Architecture ensures that the propulsion geometric arrangement does not require special case handling in the core controllers . Inverted control allocation scheme, often called motor mixer, maps control vector to actuator commands, which control motors or servos. PX4 have built-in airframe references for conventional multirotor configurations as shown in Figures 3 and 4.
3.2.2. Nonconventional propulsion arrangements
In addition to the conventional, there are more and more new configurations that are proposed. The configuration with overlapping propulsion geometric arrangement has also parallel rotor arrangement. It is suggested in order to reduce thrust losses respect to the coaxial configurations  (Figure 5).
The multirotor configurations so far described share features that significantly affect the dynamics and properties of the aircraft. They consist of an even number of symmetrically arranged rotors in one or more parallel planes with plane. It follows that the rotor thrust vector is parallel with the axis. We can classify them as flat or parallel multirotor configurations (FMRC).
Due to the specific requirements of some tasks, except flat configurations, the multirotor configurations can have a nonparallel geometric arrangement with respect to the axis. Rotors can be rotated around two axes, either actively or passively, so it is important to define a geometric arrangement for different designs. Those configurations can be classified as non-flat multirotor configurations (NFMRC) .
3.3. Propulsion geometric arrangement
It is necessary to define the rotor position and orientation relative to the aircraft COG, the origin of body frame. For this purpose, a right-hand coordinate rotor system is defined through which the position and rotor orientation are described. Rotor arm of ith rotor connects the origin of body frame and the origin of his frame (Figure 6). is a ith rotor arm axis with direction from the aircraft COG. has the same orientation and direction as . We can say that the ith rotor frame is actually body frame translated for and rotated for angle .
3.3.1. Rotor unit position
Rotor position vector is defined with ith rotor angle around the axis and with the distance from ith rotor to origin of body frame. The assumption is that the position of the rotor lies in the plane, so the third coordinate equals zero,
3.3.2. Rotor unit orientation
Since the control vector is defined in body frame, the rotor orientation is shown with three consecutive rotations. Orientation vector for ith rotor is defined by
represents rotor tilt angle around ith rotor arm axis , represents rotor tilt angle around axis, and is an unit vector. If all tilt angles around rotor frame axes are equal to zero, then we have a parallel or flat multirotor configuration. With proper selection of tilt angles around rotor arm axis, it will be shown that it is possible to achieve desired allocation of force and moment in and .
4. Control allocation scheme
The rotors position and orientation determine the allocation of aerodynamic forces to control vector of multirotor UAV, respectively propulsion geometric arrangement maps the thrust forces and drag moments to force and moment vector of propulsion subsystem.
4.1. Thrust force and drag torque mapping
Thrust force mapping of ith rotor is determined by the orientation vector of the same rotor. Force vector of ith rotor (propulsion) with respect to body frame is given by
Thrust force and drag torque mapping of ith rotor to a moment vector of ith rotor (propulsion) with respect to body frame is given by
is the sign of the ith rotor rotation where CW rotation have positive sign while CCW rotation have negative sign.
The control vector consists of propulsion subsystem force and moment vectors . Propulsion subsystem force vector is equal to the sum of the propulsion units’ force vectors
The same applies to propulsion subsystem moment vector, which is equal to the sum of the propulsion units’ moment vectors.
4.2. Control allocation matrix
Control allocation scheme is a matrix derived from Eqs. (26) and (27) by using the matrix representation of the vector product . The matrix rows represent DOF, while the matrix column represents multirotor propulsion units. Control allocation matrix summarizes a mapping of the rotor angular velocities to a control vector
Rank of the control allocation matrix determines the controllability of the system, which is an important fact for the control design and motion planning. A control system with full row rank is fully actuated; therefore, it is able to accelerate in an arbitrary direction in space. When the matrix is not full row rank, then the control system is underactuated, and it is not able to accelerate in all directions in space.
5. System controllability
Flat multirotor configurations are characterized by parallel alignment of propulsion units thrust force vectors with axis. It follows that and , thus rotors orientation vector is equal to the unit vector. In that case control allocation matrix has rank equal to four which means that aircraft provide only four independent control variables. Regardless of the number of actuators, flat configurations shares inherent underactuated condition of control system thus control input cannot accelerate the aircraft in arbitrary directions. In order to achieve the desired position in space, it is necessary to change the orientation of the aircraft, thus flat configurations are strongly coupled systems (Figure 8).
Control allocation matrix for flat hexarotor FX6 is given by
In order to overcome the underactuation condition, it is required to select propulsion geometric arrangement for which control allocation matrix will have rank equal to six. From Eq. (23), it is evident that orientation vector of rotors determines the allocation of thrust force. By tilting rotor around , it will be shown that it is possible to achieve desired allocation of thrust force so that matrix has rank equal to six. In that case, control system will have six independently controlled DOF, respectively, fully actuated system. A necessary condition is that the multirotor consists of six or more rotors (Figure 9).
Control allocation matrix for nonflat hexarotor NFX6 is given by
This chapter describes a nonlinear mathematical model for the multirotor type of UAV. Mathematical model consists of rigid body dynamics and control allocation scheme providing a certain modularity for control design and implementation. Control allocation scheme describes a mapping of the rotor angular velocities to a control vector, which is determined by propulsion geometric arrangement and physical parameters. Matrix row rank is important information about the controllability of a system. Conventional flat multirotor configurations have only four independent control variables, it follows that they have in common the underactuation condition of system. Since the underactuated system cannot be controlled to follow arbitrary trajectories and some tasks require complex movements, it is important to design multirotor configurations which overcome underactuation limitation. The described mathematical model can be used for open loop simulations which are important for dynamics and power consumption analysis. Furthermore, the inverted scheme is suitable for implementation in various flight controllers.