Keywords

1 Introduction

Due to the advantages of large load and low failure rate, the application potential of coaxial helicopters has been paid more and more attention by foreign companies and scientific research institutions, and a lot of manpower and resources have been invested in the research of cutting-edge technology [1,2,3,4].

An accurate flight dynamics model is a prerequisite for designing model-based control algorithms. The modeling of the aircraft generally consists of two parts: the determination of the model structure and the identification of the parameters. The literature on model structure is as follows: In [5] and [6], the state-space model of a small unmanned helicopter is constructed from the frequency domain. Generally, a linear or nonlinear model is derived based on the Newton-Euler equation, and then different test platforms are used to estimate the parameters of the model, and finally the experimental data is used to improve the model as [7] and [8]. Depending on the onboard sensors and the established model structure, expensive equipment is often used to perform tedious multiple experiments (such as aerodynamic balance [8], wind tunnels, motion capture systems [9] or high-speed cameras [7]), After further adjustment, a complete mathematical model can be obtained.

The current main research direction is similar to the Soviet Ka-50 series, that is, the distance between the dual rotors is relatively close. However, there is little research on portable coaxial helicopters with small size, long distance between two rotors. A new configuration of coaxial helicopter proposed in this paper adopts a new design that can be launched by gun.

The second part of this paper describes the overall structure of the new coaxial helicopter, the design of the thrust and torque test experiments, and the establishment of the nonlinear mathematical model; the third part is the design of the controller; the fourth part is the software simulation test for fully autonomous flight; Finally, it is concluded that the model of this new coaxial helicopter is of high accuracy and the control method is effective.

2 Test Bench and Mathematical Model

Designing an advanced flight control system for a coaxial unmanned helicopter is an extremely challenging task. The first step in this work requires building a mathematical model of the Coaxial helicopter as accurately as possible. The flight motion equations reflecting the relationship of each variable are deduced through the physical mechanism, and the relationship between the aerodynamic parameters involved in the equation and the various state quantities is obtained through technical means such as experiments, and finally the model that can reflect the coaxial helicopter is obtained.

The main structure of the new configuration coaxial helicopter is shown in Fig. 1. The fuselage of the coaxial helicopter is symmetrical, and the upper and lower parts are exactly the same. The upper part consists of propellers, motors, 2 servos and some brackets. The motor speed is controlled by the ESC, which drives the rotor to rotate to provide lift. Similar to the helicopter’s swashplate function, the periodic pitch change is realized by 2 servos. One of the servos controls the roll and the other controls the pitch.

Fig. 1.
figure 1

Overall structure of coaxial helicopter

2.1 Thrust and Torque Testing

Testing the propulsion system is a critical part of the drone modeling process. We use RCbenchmark’s 1580 testbed, a thrust and torque testbed tailored for drone propulsion systems using brushless motors. It uses USB interface to connect with PC for real-time control of motor speed and synchronous recording of various data. The tool measures thrust and torque simultaneously, and is suitable for motors and propellers producing thrust up to 5 kgf (Fig. 2).

Fig. 2.
figure 2

Propeller Thrust Stands

We use the RCbenchmark for automated testing of our power system, including: 1. Step response test, 2. Ramp response test.

Step Test. A step test takes your propulsion system through a sequence of signal steps in a regular or irregular pattern. For example, you could set your throttle to start at 25% then increase at 5% intervals through 50% (25%, 30%, 35%, 40%, 45%, 50%). At each of these ‘steps’ there is a defined settling time when the system holds the throttle steady to let the system stabilize before the data sample is captured.

Sweep/Ramp Test. During a sweep test (AKA a ramp test) data is continuously recorded while your propulsion system undergoes a smooth ramp from one throttle value to another. Unlike a step test, there are no stops along the way, just continuous data collection during the transition between points. For example, you could set your starting value at 40% throttle and your max value at 80% throttle, and have data collected continuously during the increase.

Our propeller test bench supports servo servos to test different propeller pitches. We plug in the 2 servos that control roll and pitch and test our two-bladed propeller. Analyze different flight configurations by controlling pitches and RPM. The data obtained is as follows (Fig. 3):

Fig. 3.
figure 3

Relationship between input and thrust

2.2 Nonlinear Model of New Unmanned Helicopter

Tn Inertial frame \(G=\{O, x^G, y^G, z^G\}\) with axes oriented north, east and down; the body frame \(B=\{G, x^B, y^B, z^B\}\) is also be considered which is attached to the vehicle’s center of gravity G with its axis towards the front, right and down of the vehicle.

The input \(u=[u_{lat}, u_{lon}, u_{thr}, u_{ped}]^{\text {T}}\) is the four input of the control. The output \(y = [\hat{\eta },\hat{\omega }^B]^{\text {T}} \) is represented by the Euler angles \(\eta = [\phi , \theta , \psi ]^{\text {T}}\), and helicopter’s angular velocity \([\omega ^{BG}]^B= \omega ^ B = [p, q, r]^{\text {T}}\) is expressed in the body frame.

Nonlinear Mathematical Models. A nonlinear model is derived based on the Newton-Euler equation. This results in a standard 6-DOF rigid body model subject to force \(F^B\) and moment \(\varGamma ^B\). It consists of two sets of first-order differential equations: one is the translational kinematics and dynamics equation \(\sum T\), and the other is the rotational kinematics and dynamics equation \(\sum R\):

$$\begin{aligned} \varSigma _{T}:\left\{ \begin{aligned} \boldsymbol{v}^{\textrm{G}}&=\textbf{R}^{\textrm{GB}} \boldsymbol{v}^{\textrm{B}} \\ \dot{\boldsymbol{v}}^{\textrm{B}}&=\frac{\boldsymbol{F}^{\textrm{B}}}{m}-\boldsymbol{\omega }^{\textrm{B}} \otimes \boldsymbol{v}^{\textrm{B}} \end{aligned}\right. \end{aligned}$$
(1)
$$\begin{aligned} \varSigma _{R}:\left\{ \begin{aligned} \dot{\boldsymbol{\eta }}&=\textbf{M}_{\eta } \boldsymbol{\omega }^{\textrm{B}} \\ \textbf{I} \dot{\omega }^{\textrm{B}}&=\varGamma ^{\textrm{B}}-\boldsymbol{\omega }^{\textrm{B}} \otimes \left( \textbf{I} \boldsymbol{\omega }^{\textrm{B}}\right) \end{aligned}\right. \end{aligned}$$
(2)

where \(\boldsymbol{v}\) is the speed of the UAV w.r.t. the ground, either expressed in the body frame: \(\left[ \boldsymbol{v}_{\textrm{B}}^{\textrm{G}}\right] ^{\textrm{B}}=\boldsymbol{v}^{\textrm{B}}\), or in the inertial frame: \(\left[ \boldsymbol{v}_{\textrm{B}}^{\textrm{G}}\right] ^{\textrm{G}}=\boldsymbol{v}^{\textrm{G}}; m\) is the mass and \(\textbf{I}\) the inertia matrix. Considering the symmetries of the UAV, \(\textbf{I}\) is considered diagonal: \(\textbf{I}={\text {diag}}\left( \textrm{I}_{xx}, \textrm{I}_{yy}, \textrm{I}_{zz}\right) \). The matrix \(\textbf{M}_{\eta }\) is expressed as follows:

$$\begin{aligned} \textbf{M}_{\eta }=\begin{bmatrix} 1 &{} t_{\theta } s_{\phi } &{} t_{\theta } c_{\phi } \\ 0 &{} c_{\phi } &{} -s_{\phi } \\ 0 &{} s_{\phi } / c_{\theta } &{} c_{\phi } / c_{\theta } \end{bmatrix} \end{aligned}$$
(3)

where symbols \(s_{\alpha }\), \(c_{\alpha }\) and \(t_{\alpha }\) are abbreviations for \(\sin (\alpha )\), \(\cos (\alpha )\) and \(\tan (\alpha )\) respectively. Finally, \(\textbf{R}^{\textrm{GB}}\) is the coordinate transformation matrix from frame B to G:

$$\begin{aligned} \textbf{R}^{\textrm{GB}}= \begin{bmatrix} c_{\theta } c_{\psi } &{} s_{\phi } s_{\theta } c_{\psi }-c_{\phi } s_{\psi } &{} c_{\phi } s_{\theta } c_{\psi }+s_{\phi } s_{\psi } \\ c_{\theta } s_{\psi } &{} s_{\phi } s_{\theta } s_{\psi }+c_{\phi } c_{\psi } &{} c_{\phi } s_{\theta } s_{\psi }-s_{\phi } c_{\psi } \\ -s_{\theta } &{} s_{\phi } c_{\theta } &{} c_{\phi } c_{\theta } \end{bmatrix} \end{aligned}$$
(4)

Upper and Lower Rotor Aerodynamic Force and Moment Model. Forces \(\boldsymbol{F}^{\textrm{B}}=\left[ F_{X}, F_{Y}, F_{Z}\right] ^{T}\) and moments \(\boldsymbol{\varGamma }^{\textrm{B}}=[L, M, N]^{T}\) acting on the UAV can be expressed as follows:

$$\begin{aligned} \left\{ \begin{aligned} \boldsymbol{F}^{\textrm{B}}&=\boldsymbol{F}_{u}^{\textrm{B}}+\boldsymbol{F}_{l}^{\textrm{B}}+\boldsymbol{F}_{g}^{\textrm{B}} \\ \boldsymbol{\varGamma }^{\textrm{B}}&=\boldsymbol{\varGamma }_{u}^{\textrm{B}}+\boldsymbol{\varGamma }_{l}^{\textrm{B}} \end{aligned}\right. \end{aligned}$$
(5)

where \(\boldsymbol{F}_{u}^{\textrm{B}}\) and \(\varGamma _{y}^{\textrm{B}}\) relates to the upper rotor’s contributions, and, \(\boldsymbol{F}_{l}^{\textrm{B}}\) and \(\boldsymbol{\varGamma }_{l}^{\textrm{B}}\) to the lower rotor’s. Finally, \(\boldsymbol{F}_{g}^{\textrm{B}}=\left[ \textbf{R}^{\textrm{GB}}\right] ^{T} \cdot [0,0, m \cdot g]^{T}\) is the force due to the gravity.

The total aerodynamic force is the resultant of the thrust of the Upper and Lower rotors, we can assume that the thrusts of the upper and lower rotors are the same:

$$\begin{aligned} F^B =\begin{bmatrix} F_x\\ F_y\\ F_z \end{bmatrix} = \begin{bmatrix} - 2\beta s_{\delta _{lat}}c_{\delta _{lon}}\varOmega _1^2\\ - 2\beta s_{\delta _{lon}}\varOmega _1^2\\ 2\beta c_{\delta _{lat}}c_{\delta _{lon}}\varOmega _1^2 \end{bmatrix} \end{aligned}$$
(6)

where \(\beta < 0\) are coefficients that representing the rotor thrust, \(\varOmega _1\) and \(\varOmega _2\) are the angular velocities of the upper and lower rotors respectively, and \(\delta _{lat}\) and \(\delta _{lon}\) the incidence angles of the cyclic swashplate.

The aerodynamic moments that occur during the hovering flight are mainly due to the rotors:

$$\begin{aligned}{}[\varGamma ]^{B}=\begin{bmatrix} \varGamma _{l} \\ \varGamma _{m} \\ \varGamma _{n} \end{bmatrix} ^{B}= \begin{bmatrix} -2 d \beta s_{\delta _{\textrm{kan}}} \varOmega _{1}^{2} \\ 2 d \beta s_{\delta _{\textrm{lat}}} c_{\delta _{\textrm{kan}}} \varOmega _{1}^{2} \\ \gamma _{1} \varOmega _{1}^{2}+\gamma _{2} \varOmega _{1}^{2} \end{bmatrix} \end{aligned}$$
(7)

where \(\gamma _1 > 0\) and \(\gamma _2 < 0\) are coefficients that representing the upper and lower rotors, d is the moment arm between the center of mass G and the center of rotation of the upper or lower rotor.

3 Controller Design

The controller can be divided into four closed loops: longitudinal control loop, lateral control loop, altitude control loop and heading control loop, as shown in Fig. 5. In the longitudinal, lateral and heading control loops, there are attitude loops such as pitch and roll. All these control loops make up the entire controller (Fig. 4).

Fig. 4.
figure 4

Frame diagram of the control system

According to the pitch and roll attitude control loops, the roll and pitch attitude control laws are:

$$\begin{aligned} \begin{aligned} u_{lat}(t) = K_{p\phi }(\phi _{ref} - \phi )+K_{i\phi }\int _0^t ({\phi _{ref}} - \phi )\textrm{d}t+K_{d\phi }\frac{\textrm{d}({\phi _{ref}} - \phi )}{\textrm{d}t}\\ u_{lon}(t) = K_{p\theta }(\theta _{ref} - \theta )+K_{i\theta }\int _0^t ({\theta _{ref}} - \theta )\textrm{d}t+K_{d\theta }\frac{\textrm{d}({\theta _{ref}} - \theta )}{\textrm{d}t} \end{aligned} \end{aligned}$$
(8)

where \(\theta _{ref}\) and \(\phi _{ref}\) are the given value of the pitch angle and the given value of the roll angle, respectively, and \(K_{p\phi }\), \(K_{i\phi }\), \(K_{d\phi }\), \(K_{p\theta }\), \(K_{i\theta }\), \(K_{d\theta }\) are the pitch channel and roll channel gains, respectively.

According to the heading control loop, the control law of heading is:

$$\begin{aligned} u_{ped}(t) = K_{p\psi }(\psi _{ref} - \psi )+K_{i\psi }\int _0^t (\psi _{ref} - \psi )\textrm{d}t+K_{d\psi }\frac{\textrm{d}(\psi _{ref} - \psi )}{\textrm{d}t} \end{aligned}$$
(9)

where \(\psi _{ref}\) is the given heading angle, \(K_{p\psi }\), \(K_{i\psi }\), \(K_{d\psi }\) are the channel gains.

According to the altitude control loop, the altitude control law is:

$$\begin{aligned} u_{thr}(t) = K_{pH}(H_{ref} - H)+K_{iH}\int _0^t (H_{ref} - H)\textrm{d}t+K_{dH}\frac{\textrm{d}(H_{ref} - H)}{\textrm{d}t} - qK_{qH} \end{aligned}$$
(10)

where Href is the given flight height, \(K_{pH}\), \(K_{iH}\), \(K_{dH}\) are the channel gains respectively, and \(K_{qH}\) is the gain of the yaw rate feedfoward control.

4 Experimental Results

The task of path planning and control is to analyze autonomously according to the given task mode, automatically select the best flight plan, and complete the predetermined task. After completing the mission, it must be able to return and land autonomously. Here we use the Mission Planner as the ground station to conduct a software-in-the-loop simulation test for fully autonomous flight.

Fig. 5.
figure 5

Path planning and waypoints generation

As shown in Fig. 5, we set point H on the map as the home location where the drone is armed. The drone takes off from point H at a height of 10 m, passes through waypoints 2, 3, and 4, and finally returns to launch point H to land. The heights of waypoints 2, 3, and 4 are 30 m, 20 m, and 10 m, respectively. The entire task list is shown in Fig. 6.

Fig. 6.
figure 6

Task list for path planning

The trajectory tracking curve of the coaxial unmanned helicopter is shown in Fig. 7, 8, 9 and 10, where the green line represents the reference, and the red line represents the actual state.

Fig. 7.
figure 7

Roll curve

Fig. 8.
figure 8

Height curve

Fig. 9.
figure 9

Pitch curve

Fig. 10.
figure 10

Heading curve

As can be seen from Fig. 7, 8, 9 and 10, the trajectory tracking effect of the controller in the simulation experiment is very good.

5 Conclusion

In this paper, a new configuration of coaxial helicopter is modeled dynamically, and a full nonlinear mathematical model is obtained. On this basis, the model is individually controlled by 4 channels, and the stable control of the coaxial helicopter is realized. Finally, the ground control station Mission Planner was used to carry out the trajectory planning and trajectory control of the coaxial helicopter, and the large-envelope flight control of the helicopter was realized through full digital simulation. The test results show that the model can well show the characteristics of the coaxial helicopter, and the control method has good effect.