1. Introduction
Loss of Control In-flight (LOC-I) has become the primary cause of aviation fatalities in recent years [
1]. One of the important LOC-I factors is that the flight attitude or airspeed of the aircraft is outside the normal bounds of operation, i.e., upset conditions [
2,
3]. Specific values are defined for such unintentional conditions: (1) pitch attitude greater than 25 deg with nose up; (2) pitch attitude greater than 10 deg with nose down; (3) bank angle greater than 45 deg; (4) within the above parameters but flying at an inappropriate airspeed [
4]. Those values may vary among airplane models. In order to improve commercial aviation flight safety, the Federal Aviation Administration (FAA) issued AC 120-111 in 2015, which describes the recommended practice and guidance for airplane Upset Prevention and Recovery Training (UPRT). All FAA Part 121 air carriers are required to implement the UPRT regulations on flight simulators of level C or above.
A moving base flight simulator generally uses the Stewart platform as its source for motion to simulate the aircraft movement in the air. However, when approaching or exceeding the normal flight envelope, it is difficult to simulate the continuous movement and rapid change of the recovery from the upset as in a real aircraft due to the limited workspace of the flight simulator. If the motion cues received by pilots are quite different from the real flight, it may lead to negative transfer effect [
5]. That means, the training on a flight simulator leads pilots to conduct incorrect responses and/or misunderstand the behavior of the aircraft in real flight.
The classical filter-based washout algorithm is the most widely used motion cueing algorithm for simulation of motion effects in a flight simulator. Although the structure of the classical washout algorithm is simple, it is a time-consuming and high-cost process in practical applications to tune the algorithm parameters based on the pilot’s subjective feedback [
6,
7]. To save time and cost, objective evaluation methods have been studied since the early 2000’s. The idea of the objective motion cueing test was proposed to use the frequency response of the entire motion cueing system for performance evaluation [
8,
9]. Based on this idea, a generic algorithm was applied to optimize the parameters of the classical washout algorithm and demonstrated through the virtual simulation experiment [
10]. However, whether based on subjective or objective evaluation methods, the limits of the simulator platform cannot be explicitly considered in the classical washout algorithm design process.
To address these issues, the model predictive control (MPC) based washout algorithm design technique has been studied in recent years, but mostly for driving simulators. Instead of the platform workspace boundary, the actuator positions and velocities were used as the constraints in the MPC-based washout algorithm design for a driving simulator [
11,
12]. To handle the platform limits more efficiently, a human vestibule perception model and a predictive strategy based on the availability of a virtual driver were introduced for washout algorithm design [
13,
14]. Simulation results showed that the model prediction algorithm could produce a better performance in the tilt coordinate channel than the classical filter-based washout algorithm, especially under the constraint of workspace [
14]. However, there are few studies about MPC-based washout algorithm design for flight simulators, and in the extant studies, there is a lack of detailed modeling and simulation results to show the motion cueing effect under various upset conditions [
15,
16]. It is worth investigating whether the MPC-based washout algorithm design method provides pilots effective motion cues and simultaneously keeps the simulator within its workspace limits when the real aircraft is recovering from upset conditions.
The paper is organized as follows.
Section 2 introduces the principle of the classical filter-based washout algorithm. In
Section 3, the MPC-based washout algorithm optimization problem is formulated, which includes the model of the simulator platform and its constraints. The human vestibule perception model is also incorporated, and the optimization objective is to minimize the pilot’s perceived motion mismatch between the real flight and the simulator training. The setup of the UPRT simulation experiment is given in
Section 4. The MPC-based and the filter-based washout algorithm design methods are compared through simulations. Finally,
Section 5 concludes the paper.
2. Classical Filter-Based Washout Algorithm
Figure 1 shows the schematic diagram of the entire motion cueing system, which consists of the washout algorithm, the inverse kinematics model of the motion platform, the dynamics model of the electrical cylinder actuators, and the forward kinematics model of the motion platform. In order to enable the platform to provide the pilot with the most realistic motion perception in the limited workspace, it is necessary to filter the simulated aircraft response through the washout algorithm. In addition, after one action is completed, the motion platform is supposed to return to its initial position to prepare for the next action; this is also achieved by the washout algorithm [
17,
18,
19].
The motion of the aircraft or the flight simulator can be described in a coordinate system. There are three coordinate systems involved: (1) body axes with the aircraft’s centroid as the origin, (2) fixed axes of the motion platform (i.e., inertial axes), and (3) body axes with the moving platform’s centroid as the origin. The latter two are defined in
Figure 2. In addition, the origin can be defined at the aircraft or simulator cockpit seat, respectively. These two coordinate systems can be obtained from the aircraft body axes or the platform moving axes by a simple transformation, or vice versa. In this paper, without causing confusion, no specific distinction is made for them.
By coordinate transformation, the translational acceleration and the angular velocity represented in the aircraft’s body coordinate system can be transformed to the fixed coordinate system of the motion platform. After processing these signals through the washout algorithm, the translational displacement and the rotational angle of the flight simulator can be obtained. The actuators are then driven accordingly to move the motion platform to simulate the movement of the aircraft in the air.
The classical filter-based washout algorithm is the most widely used in practical applications to tune the motion of the flight simulator [
17,
18,
19,
20,
21]. The block diagram of the classical washout algorithm is shown in
Figure 3. The input signals
,
,
are the aircraft cockpit specific forces (non-gravitational force per unit mass, i.e., the difference between inertial acceleration and the acceleration due to gravity) in the body axes and
,
,
are the aircraft angular rates. The outputs
and
represent the translational displacements and rotational angles of the moving platform, respectively.
2.1. Coordinate Transformation
The coordinate transformation involves the acceleration coordinate transformation and the angular velocity coordinate transformation.
It is assumed that the Euler angles are
,
, and
with the rotation sequence of Z-Y-X. They are defined as three consecutive rotational angles about the initial Z axis, the temporary Y axis (after the first rotation), and the final X axis (after the second rotation), respectively. Denote
,
, and
as basic rotation matrices. The expression of the acceleration coordinate transformation matrix
(from the cockpit body axis to the fixed axes of the motion platform) is given below [
22], where the acronym s stands for sine and c stands for cosine.
For the angular velocity coordinate transformation, the angular velocity of the cockpit in the body axes system must be converted to the rates of changes of Euler angles in the inertial coordinate system. It is known that the relationship between angular velocities (
,
,
) and time derivatives of Euler angles (
,
,
) can be written as follows [
22].
The inverse transformation of the above equation gives
where the angular velocity transformation matrix
relating the three body axis system rates to the three Euler rates is expressed as follows.
2.2. Filters
As shown in
Figure 3, the translational channel is used to filter the instantaneous acceleration of the translational movements of the motion platform in order to avoid the translational movements beyond the limited workspace. The basic principle of the translational channel is as follows. First, the amplitude of the acceleration signal is scaled and the high-amplitude components for which the movement cannot be completed are filtered out. Then, a high-pass filter is used to filter out the low-frequency components to prevent the movement of the motion platform from exceeding the limited workspace. Afterwards, the acceleration signal is integrated twice to be converted to a linear displacement signal
. Finally, the displacement signal is limited to ensure that the moving space of the platform is within its limitation. The transfer function of the high-pass filter in the translational channel is given by
where
is the adaptive gain,
is the damping ratio, and
and
are the natural cut-off frequencies of the first and second-order terms, respectively. Note that there are three such filters, corresponding to the three directions.
The rotational channel is used to provide the pilot with a sense of rotation. As shown in
Figure 3, its working principle is similar to the translational channel with the process of scaling, transformation, high-pass filtering, and integration. The input signal is eventually converted to an angular displacement signal
. Different from the translational channel, the input to the rotational channel is velocity, not acceleration, and therefore
is obtained with integration once instead of twice in the translational channel. The transfer function of the high-pass filter in the rotational channel can be expressed as follows and the notations are similar to those in Equation (5).
The flight simulator platform can slowly return to the initial position at an angular velocity and translational acceleration less than the human sensory threshold [
23,
24], listed in
Table 1, after completing a sudden movement, ensuring that the pilot cannot detect it.
In addition, the method of tilt coordination must be used in the flight simulator in order to achieve a continuous acceleration signal, aiming to simulate the low-frequency acceleration signals of the aircraft in the air through orientation of the gravity vector. When simulating a continuous acceleration signal in the lateral direction, the flight simulator platform rotates a specific angle around the longitudinal direction. Similarly, when simulating a continuous acceleration signal in the longitudinal direction, the flight simulator platform rotates a specific angle around the lateral direction. The tilt coordination channel can washout the continuous low-frequency acceleration signals in the longitudinal and lateral directions when the flight simulator moves in translation. The filters in both directions are assumed as second-order low-pass filters.
Denote the outputs of low-pass filters as
and
, which are the longitudinal and lateral low-frequency acceleration components, respectively. The tilt coordinate channel can convert the low-frequency translational acceleration into the tilt angles of the simulator platform. The relationship between the translation and rotation is given below.
It is observed from Equations (5)–(7) that there are more than twenty parameters to be tuned. Therefore, the tuning process is very complicated and time-consuming. Moreover, the actuator constraints of the simulator platform cannot be explicitly considered during the design process. This might be no problem for the simulation of aircraft motion in the normal flight envelop, but not for the UPRT practice.
3. MPC-Based Washout Algorithm Design
This section will introduce the washout algorithm design method based on the MPC technique. Compared with the classical filter-based method, the MPC-based method can explicitly take the actuator constraints into account so that the workspace of the platform can be utilized to a greater extent [
11,
14]. The MPC-based method is essentially a model-based optimal control strategy that computes the reference motion signals of the platform by solving an optimization problem. The model consists of two parts: the motion platform model and the human vestibular system model.
3.1. Motion Platform Model
The inverse kinematic model of the Stewart platform is used in the MPC design. The platform consists of an upper moving platform, a bottom fixed base, and six connecting rods, each driven by a linear electric servo actuator. Take one rod as an example. As shown in
Figure 4, the position vector of the rod length
can be derived using vector arithmetic.
where all the vectors are represented in the fixed axes
B.
is the position vector of the joint where the rod is connected with the fixed base.
is the position vector where the rod is connected with the moving platform, and there is
where
is the position vector connecting the origins of the fixed and moving coordinate systems,
is the rotation matrix from the moving axes
P to the fixed axes
B, and
is the position vector represented in the moving axes
P. Note that
is actually the transformation matrix
given in
Section 2.
Substituting Equation (11) into Equation (10) and introducing the unit vector
along the rod vector
, there is
where
.
Denote the Jacobian matrix as
and the relationship between the velocities of the moving platform and the actuator rod can be expressed as follows.
where
.
and
are the translational and rotational velocity vectors of the moving platform, respectively, and both are represented in the moving axes
P.
Differentiating Equation (12) for
and then combining them gives the inverse of the Jacobian matrix.
Note that the length of six rods has an upper and lower bound in position due to the excursion of linear actuators, and that this is also true for the velocity. The inequality constraints of the following form can be directly considered in the MPC-based washout algorithm design.
3.2. Human Vestibular System Model
The human vestibular system is located in the human inner ear and is composed of many different components. There are two important parts, semicircular canals and otoliths, for motion cueing application. It must be noted that these organs exhibit strongly damped high-pass behavior and cannot sense information at velocities below the threshold [
25]. Their dynamic models can be represented as a combination of linear transfer functions and nonlinear motion thresholds. Considering both computational time and real-time performance, nonlinearities due to thresholds are generally not included and only linear transfer functions are used to model the human vestibular system. The model parameters related to the linear transfer functions were specified by different researchers to determine which cues are important and should be presented [
25].
The semicircular canals are composed of three mutually perpendicular annular tubes and are used to sense the rotational motion. The angular acceleration is sensed for the low frequency range (<0.1 Hz), the angular displacement is sensed for the high frequency range (>5 Hz), and between them the angular velocity is sensed [
26]. A second-order transfer function is generally used to describe this characteristic, and the one proposed by Telban [
27] is the most widely used.
where
is the angular velocity of the aircraft or the simulator, and
is the perceived angular velocity by the pilot in one of the three rotational degrees of freedom.
Similarly, a second-order transfer function is used to model the otoliths and describe the perception of linear motion [
27].
where
is the specific force of the aircraft or the simulator and
is the perceived specific force by the pilot in one of the three translational degrees of freedom.
To apply the MPC technique, the above transfer function models (16) and (17) are converted to the state-space form [
28]. For the semicircular canals,
where the input
and the output
. For real applications, an approximation is usually adopted where
and
[
28]. The state-space matrices are obtained by combining the data in three rotational degrees of freedom, and
,
,
,
.
For the otoliths,
where the input
and the output
. Assembling the state-space data in three translational degrees of freedom gives
,
,
, and
. Due to the effect of tilt coordination, a complete model of the otolith should also include
as states and the state-space matrices are augmented as follows.
where
and the input is also augmented as
.
Combining the state-space equations of the semicircular canals and otoliths gives the human vestibular system model, for which the state-space matrices are given as follows.
3.3. Washout Algorithm Optimization
Figure 5 is the block diagram for the MPC-based motion cueing system, in which the washout algorithm computes the desired motion signals of the platform based on the perceived aircraft motion and the perceived simulator motion.
At the design stage, the models of the motion platform and human vestibular system are first combined together. The continuous-time system model is formulated and then discretized in order to apply the MPC technique.
Assume that the prediction horizon as and the control horizon as . The system state and output at the future moment can be determined by the state at the current moment and the control in the future period. Note that the current state is known. Thus, if defining the objective function based on the predicted system state and/or output, the control in the future time becomes the only variable. The control problem is thus converted into an optimization problem.
The objective function to be minimized is defined as follows.
where
and
are weighting matrices, and both are positive definite. The input and output constraints are
and
. The problem is to find the optimal control under the constraints by minimizing the difference between the output
and the reference
, i.e., achieving reference tracking. Commercial solvers are available for solving such a constrained quadratic programming problem.
For the washout algorithm design, the reference in Equation (23) represents the pilot’s perceived motion in the real flight. For the flight simulator, can be obtained by coordinate transforming the flight dynamics simulation data and then processing it through the human vestibular system model. The output in Equation (22) is defined as the perceived motion in the simulator. The displacements, velocities, and accelerations of the motion platform in the directions of surge, sway, heave, roll, pitch, and yaw are constrained according to the actuator limitations.