# Fuzzy Model Predictive Control for Unmanned Helicopter
## 2 Materials and Methods
### Simulation Model Description  
A popular and reliable approach in creating simulation models in the mechanical engineering industry, especially in motion simulators, relies on a modular architecture approach [29]. The basic purpose of this framework is to separately model the main components of the simulated machine and to define relations between these objects. In the case of modeling helicopter dynamics, these separate modules can be, for example, the following:  
* Fuselage dynamics (considered as a 6 DOF rigid body). * Main rotor dynamics. * Tail rotor dynamics. * Landing gear dynamics (for modeling ground contact). * Powertrain dynamics (which combines engine dynamics and power transmission description). \begin{table}
\begin{tabular}{c c c} \hline \hline
**Parameter** & **Value** & **Unit** \\ \hline Main rotor diameter & 1.78 & m \\ Number of main rotor blades & 2 & - \\ Main rotor angular velocity & 1500–2000 & RPM \\ Tail rotor diameter & 0.158 & m \\ Number of tail rotor blades & 2 & - \\ Tail rotor angular velocity & 7200 & RPM \\ Takeoff weight (TOW) & 8 & kg \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Basic ARCHER characteristics. Figure 1: ARCHER helicopter while hovering [28]. The rotorcraft was designed and developed at the Division of Automation and Aeronautical Systems, Warsaw University of Technology. * Atmosphere model. * Actuators dynamics. The modular architecture enables precise modeling of the state of multiple helicopter elements and defining mutual relations between modeled objects. FLIGHTLAB 3.7.1 software is a professional simulation environment, created by Advanced Rotocrraft Technologies Inc., that enables its users to create detailed mathematical representations of rotorcrafts using a modular architecture. It is a reliable tool for considering phenomena such as the occurrence of wakes created by the main rotor, ground effect, retreating blade stalling, and others, which makes FLIGHTLAB a powerful piece of software for helicopter modeling [30]. In this research, the FLIGHTLAB environment was used to create a detailed ARCHER model, which can be used to test the performance of the designed control system. In order to model the helicopter's main rotor, the blade element method was used to determine aerodynamic loads. Knowing the blade's airfoils, it was possible to precisely describe lift force, drag force, and pitching moment on the main rotor as nonlinear functions of dynamic pressure, angle of attack, and Mach number. They were approximated using lookup table data, coming from detailed main rotor analysis using CFD methods. In order to determine the induced velocity, the Peters-He six-state model was utilized [31]. While modeling the tail rotor, disc theory was used to determine the rotor's thrust. The choice of technique was motivated by the computational efficiency of this method. The fuselage was assumed to be a rigid body with six degrees of freedom. Its mass properties, such as the center of gravity position, inertia matrix, and total mass, are included in the numerical model. Similarly, as in the main rotor case, the aerodynamic loads on the fuselage were determined using lookup tables. In this variant, aerodynamic forces and moments were described as nonlinear functions of dynamic pressure, angle of attack, and sideslip angle. The fuselage model also includes information about the sensor position. The utilized numerical model of the helicopter provides information about the landing gear mechanics, which enables the analysis of landing maneuvers. The friction of the skids against the ground is considered. In order to simulate environmental conditions during flight, FLIGHTLAB enables its users to utilize the 1959 ARDC atmospheric model, which is based on the hydrostatic equations and ideal gas laws. The proposed research omits the occurrence of turbulence. The resulting ARCHER model, which consists of the elements described above, is characterized by 26 state variables:  
* Helicopter's position in the inertial coordinate system (3).