Next Article in Journal
Clean Sky 2 Technology Evaluator—Results of the First Air Transport System Level Assessments
Next Article in Special Issue
Dynamic Aircraft Wake Separation Based on Velocity Change
Previous Article in Journal
Three-Dimensional Impact Time Control Guidance Considering Field-of-View Constraint and Velocity Variation
Previous Article in Special Issue
Design of a Multi-Constraint Formation Controller Based on Improved MPC and Consensus for Quadrotors
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Design of a DSP-Based Motion-Cueing Algorithm Using the Kinematic Solution for the 6-DoF Motion Platform

Aeronautical System Research Division, Simulation System Section, National Chung-Shan Institute of Science and Technology, Taichung 407, Taiwan
Aerospace 2022, 9(4), 203; https://doi.org/10.3390/aerospace9040203
Submission received: 1 March 2022 / Revised: 1 April 2022 / Accepted: 7 April 2022 / Published: 9 April 2022
(This article belongs to the Special Issue Flight Simulation and Aircraft Autonomy)

Abstract

:
A motion-cueing algorithm is a motion simulation system that makes the pilot feel the flight motion by calculating the attitude of the platform. This paper presents the design a kinematics model and two motion-cueing algorithms for a multi-axis motion platform. Firstly, the relationship between each axis is derived from the kinematics theory and motion platform transformation. Next, two motion-cueing algorithms are designed providing the pilot with the bodily sensations of the 6-DoF motion platform. By using a hardware-in-the-loop (HIL) approach simulated in a real-time digital simulator, the control operations are performed in a digital signal processor (DSP). All of the motion-cueing algorithms, including the classical washout algorithm and the optimal control algorithm, are realized through a DSP, TMS-320F-28377D. The simulation results verify the theoretical analysis and illustrate the correctness and practicability of the proposed method.

1. Introduction

The training of pilots worldwide is typically lengthy. Therefore, flight training simulators are in high demand and serve as essential tools in flight training [1]. As indicated in [2], a complete high-fidelity motion simulation system was first constructed in the 1950s. Subsequently, in 1965, Stewart from the United Kingdom proposed a Stewart platform with six degrees of freedom (DoF) for flight simulators based on a parallel mechanism [3]. Because of the high research potential of the Stewart platform, many parallel mechanism-related applications have emerged since the 1980s, such as vehicle simulation systems [4], precision positioning [5], active antivibration platforms [6], adjustment platforms for astronomical telescopes [7], and virtual reality motion platforms [8].
Current platforms, such as the six-degrees-of-freedom Stewart platform and the six-degrees-of-freedom crank arm platform, have a movement space with six degrees of freedom. The upper platform can be incorporated with a cockpit and used for the simulation of real vehicles [9,10]. Due to the simple control, high degree of freedom, high efficiency, and high carrying capacity (tons) characteristics of the Stewart platform, the production cost of linear actuators is high, and the platform height to be positioned in the center is too high [11]. Therefore, there is more and more research on the crank arm platform. The reason to have comparable high-fidelity motion, which reduces the manufacturing cost, is to enable its use in professional training simulators and entertainment simulators [12,13,14]. However, with the rapid advances in science and technology in recent years, and the structure, performance, and power of modern military products often exceed the movement limits of the previous Stewart platform. In [15], the KUKA robotic arm was used as a motion platform, and inverse kinematics were applied to derive the six degrees of freedom of a tandem mechanism movement, after which the classical washout algorithm was employed to implement a racing simulator. In addition, Fan investigated a human centrifuge [16]. However, the human centrifuges that have been developed have three degrees of freedom and provide G-forces for fixed training and pursuit training and establish a high-fidelity pilot module that considers both physical fidelity and function, thus providing trainers with a real experience. Berthoz et al. [17] investigated different motion scale factors in a driving simulator. Through motion feedback, participants drove more carefully and had better control of the car. Therefore, they could better anticipate the car’s dynamic behavior and were not as surprised when the car did crash. Very reduced or absent motion cues significantly degrade driving performance.
The simulator mainly applies the wash-out algorithm for the balance organ of the human body, that is, the vestibular system of the inner ear. In addition, the trainer is provided with an immersive experience through changes in the position, velocity, and acceleration of the motion platform which improves the overall efficiency of the trainer. The sensitive range of motion is shown on the motion platform [18]. The motion platform operates on the principle of using the inner ear vestibular system to perceive a considerable level of linear and rotational speed and acceleration to achieve the desired feeling of simulation. Therefore, motion platforms are applied to simulate actual vehicle movements to create realistic forward and backward acceleration and road vibration that occurs during car movement in order to achieve the effect of simulator training [19]. In addition, to improve the control of six-servo synchronized tracking, in [20], an adaptive control technology–integrated motion-cueing algorithm was proposed for adaptive parameter estimation at a limited interval to obtain the amount of control required by the control platform. In [21], a wave filter model was designed using the optimization theory, and the optimal parameters were determined using the recursive genetic algorithm. In [22], a fuzzy control rule base was established for the rate limiter within the washout algorithm, and a rate limiter with dynamic adjustment was designed using the specific force error. In [23], the predictive control theory served as the basis for designing a filter model, which was used to reference the parameters required for each modification of the wave filter.
In this paper, two motion-cueing algorithms using software-embedded applications are presented. The DSP-based algorithm design is analyzed by deriving the mathematical relationship of the motion platform using forward and inverse kinematics. Because the design adopted a real time digital simulator and improved the number of calculations performed, the algorithms in real time can be reduced. To the best of our knowledge, the ideas we mentioned have not been presented in any previously published papers [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]. As a result, this paper presents some new ideas on the realization of motion-cueing algorithms for a 6-DoF motion platform, including a classical washout algorithm and an optimized tracking motion-cueing algorithm.

2. Kinematics of the Six-DoF Motion Platform

In this section, the 6DoF forward kinematics and inverse kinematics are established. In Figure 1a–c the motion platform considered in this study is presented. Figure 1a shows the co-ordinate system designed for the motion platform in this paper. The architecture is based on six completely decoupled degrees of freedom. Therefore, each degree of freedom can be controlled independently, as shown in Figure 1b. The 6DoF platform includes three rack-and-pinion electric linear actuators and three electric rotary actuators that provides the pilots with kinesthetic sensations related to motion. Two servo bilateral drives of the X1 and X2 axes are the surge axis. The Y axis is the sway axis. The heave axis uses the two servo bilateral drives of the Z1 and Z2 axes. All power and electrical signals are transmitted from the yaw axis to the pitch axis through three electric slip rings, as well as being used in the platform cockpit. The rotation part includes a roll axis servo drive of the A axis, a pitch axis servo drive of the B axis, and a yaw axis servo drive of the C axis. Figure 1c shows the parts rotated from the inside to the outside by the cockpit, which are the pitch axis, roll axis and yaw axis.
The co-ordinate conversion relationship is:
[ x f y f z f ] = [ cos θ 0 sin θ 0 1 0 sin θ 0 cos θ ] [ x 1 y 1 z 1 ]
[ x 1 y 1 z 1 ] = [ 1 0 0 0 cos ϕ sin ϕ 0 sin ϕ cos ϕ ] [ x 2 y 2 z 2 ]
[ x 2 y 2 z 2 ] = [ cos ψ sin ψ 0 sin ψ cos ψ 0 0 0 1 ] [ x B y B z B ]

2.1. Forward Kinematics

According to the conversion relationship in Equations (1)–(3), the relationship between the inertial co-ordinate vector V I and the body co-ordinate vector V B is given by:
V I = I R B V B
where I R B is the rotation matrix from the body co-ordinates to the inertial co-ordinates. It can be written as:
I R B = R y R x R z
where R x , R y , and R z are the rotation matrices on the x axis, y axis, and z axis, respectively. Substituting Equation (5) into Equations (1)–(3), can be expressed as:
I R B = [ cos θ 0 sin θ 0 1 0 sin θ 0 cos θ ] [ 1 0 0 0 cos ϕ sin ϕ 0 sin ϕ cos ϕ ] [ cos ψ sin ψ 0 sin ψ cos ψ 0 0 0 1 ] = [ cos ψ cos θ + sin ϕ sin ψ sin θ cos ψ sin ϕ sin θ cos θ sin ψ cos ϕ sin θ cos ϕ sin φ cos ϕ cos ψ sin ϕ cos θ sin ϕ sin ψ cos ψ sin θ sin φ sin θ + cos φ cos θ sin ϕ cos ϕ cos θ ]
When the platform is in translational motion, the conversion matrix I T B from the body co-ordinates to the inertial co-ordinates is:
I T B = [ cos ψ cos θ + sin ϕ sin ψ sin θ cos ψ sin ϕ sin θ cos θ sin ψ cos ϕ sin θ x cos ϕ sin ψ cos ϕ cos ψ sin ϕ y cos θ sin ϕ sin ψ cos ψ sin θ sin ψ sin θ + cos ψ cos θ sin ϕ cos ϕ cos θ z 0 0 0 1 ] = [ n x o x a x p x n y o y a y p y n z o z a z p z 0 0 0 1 ]
The aforementioned equation is the forward kinematics model of the platform. From the platform axis co-ordinates ( x , y , z , ϕ , θ , ψ ) , attitude ( n x , n y , n z ) in x direction, attitude ( o x , o y , o z ) in y direction, and attitude ( a x , a y , a z ) in z direction, the position ( p x , p y , p z ) of the body co-ordinates is obtained.
The rotational angular velocity of the body co-ordinates can be expressed as:
ω B = [ p q r ]
The rotational angular velocity of the axis co-ordinates can be expressed as:
Φ ˙ = [ ϕ ˙ θ ˙ ψ ˙ ]
As observed in Figure 1c, Equations (8) and (9) are arranged as:
p x B + q y B + r z B = θ ˙ y 1 + ϕ ˙ x 2 + ψ ˙ z B
Equations (2) and (3) are arranged as:
y 1 = cos ϕ y 2 sin ϕ z 2 = ( cos ϕ sin ψ ) x B + ( cos ϕ cos ψ ) y B sin ϕ z B
By substituting Equations (3) and (11) into Equation (10), it is not difficult to obtain:
p x B + q y B + r z B = θ ˙ [ ( cos ϕ sin ψ ) x B + ( cos ϕ cos ψ ) y B sin ϕ z B ] + ϕ ˙ ( cos ψ x B sin ψ y B ) + ψ ˙ z B = ( θ ˙ cos ϕ cos ψ + ϕ ˙ cos ψ ) x B + ( θ ˙ cos ϕ cos ψ ϕ ˙ sin ψ ) + ( ψ ˙ θ ˙ sin ϕ ) z B
Then, the rotational angular velocity of the axis co-ordinates with respect to the body co-ordinates can be expressed as:
[ p q r ] = [ cos ψ cos ϕ cos ψ 0 sin ψ cos ϕ cos ψ 0 0 sin ϕ 1 ] [ ϕ ˙ θ ˙ ψ ˙ ]

2.2. Inverse Kinematics

It is possible to calculate the required platform axis co-ordinates ( x , y , z , ϕ , θ , ψ ) , x-direction attitude n , y-direction attitude o , z-direction attitude a , and the position ( p x , p y , p z ) . First, Equation (5) can be rewritten as:
R y 1 I R B = R x R z = [ cos ψ sin ψ 0 cos ϕ sin ψ cos ϕ cos ψ sin ϕ sin ϕ sin ψ cos ψ sin ϕ cos ϕ ]
In addition, Equation (7) includes the attitudes n , o , and a of the x-direction, y-direction, and z-direction, respectively, as follows:
[ n x cos θ n z sin θ o x n x cos θ o z sin θ a x cos θ a z sin θ n y o y a y n x sin θ + n z cos θ o x sin θ + o z cos θ a x sin θ + a z cos θ ] = [ cos ψ sin ψ 0 cos ϕ sin ψ cos ϕ cos ψ sin ϕ sin ϕ sin ψ cos ψ sin ϕ cos ϕ ]
From Equation (15), the following is obtained:
a x cos θ a z sin θ = 0
where:
tan θ = sin θ cos θ = a x a z
The rotation angle of the pitch axis can be obtained as follows:
θ   =   tan 1 ( a x a z )
From Equation (15), we can observe that when a x = a z = 0 , cos ϕ = 0 means ϕ = ±90°. Figure 1a shows that the inner gimbal and outer gimbal are coaxial. After obtaining θ from Equation (18) by using the same method it can be expressed as:
sin ϕ = ( a y )
cos ϕ = ( a x sin θ + a z cos θ )
sin ψ = ( o x n x cos θ o z sin θ )
cos ψ = ( n x cos θ n z sin θ )
The angle of the roll axis can be obtained from Equations (19) and (20):
tan ϕ = sin ϕ cos ϕ = ( a y a x sin θ + a z cos θ )
The yaw axis angle is expressed as:
tan ψ = sin ψ cos ψ = ( o x n x cos θ + o z sin θ n x cos θ n z sin θ )
The arctangent function can be obtained from Equations (23) and (24):
ϕ = tan 1 ( a y a x sin θ + a z cos θ )
ψ = tan 1 ( o x n x cos θ + o z sin θ n x cos θ n z sin θ )
The three axis co-ordinates of the platform are obtained by Equations (18), (25), and (26), and the three surge axis, sway axis, and heave axis relationships are expressed by Equation (7) as:
x = p x ,   y = p y ,   z = p z
Finally, through the above derivation process of the kinematics model, Equations (18) and (25)–(27), which are required by the axis co-ordinates, are determined.

3. Motion-Cueing Algorithm

To fully realize an actual motion feeling using the simulation platform, understanding what the human body feels in the actual simulation is necessary so that pilots can achieve similar analog signals on the simulation platform. Therefore, the operating mechanism of the human body’s perception system must be understood. In motion simulation, the perception of visual-effect movement mainly involves the change in the image and display of the instrument in the vehicle. Motion simulation helps realize the motion perceived by humans with a high sensitivity through platform movement, enhancing the effect of virtual reality.

3.1. Classical Washout Algorithm Design

The motion-cueing algorithm was primarily used to create an infinite space of acceleration and angular velocity in a limited motion space. The specific force of the nongravitational force in the body co-ordinate system can be expressed as:
f s B = B R I a s I B R I δ I
where:
f s B = [ f s x B f s y B f s z B ]
B R I = ( I R B ) 1 = [ cos ψ cos θ + sin ϕ sin ψ sin θ cos ϕ sin ψ cos θ sin ϕ sin ψ cos ψ sin θ cos ψ sin ϕ sin θ cos θ sin ψ cos ϕ cos ψ sin ψ sin θ + cos ψ cos θ sin ϕ cos ϕ cos θ sin ϕ cos ϕ cos θ ]
δ I = [ 0 0 g ] = [ 0 0 9.8 ]
a s I = [ a s x I a s y I a s z I ]
where B R I is the inverse matrix of Equation (6) and is the rotation matrix converted from inertial co-ordinates to body co-ordinates, δ I is the gravitational acceleration, and a s I denotes the acceleration of the inertial co-ordinate motion. Considering the rotation matrix, Equation (28) can be expressed as:
f s B = a s B B R I δ I
where a s B is the acceleration of the body co-ordinate motion. In the case of a small rotation angle, Equation (30) can be written as:
B R I = [ 1 ψ θ ψ 1 ϕ θ ϕ 1 ]
Then, Equation (33) is written as:
f s B = a s B + g [ θ ϕ 1 ]
The combination of the gravitational acceleration and the acceleration a s B of the body co-ordinate motion can yield the actual simulator cockpit acceleration f s B . Because of the limited motion space of the simulator and high-frequency acceleration, a s B can only be used to generate a high-frequency f s B . Low-frequency or continuous f s B can be generated by titling the simulator at an angle by using the second term on the right-hand side in Equation (35). The motion-cueing algorithm can help separate the high-frequency and low-frequency of f s B and generate these frequencies using different motion actions of the simulator. In terms of rotation, Equations (8) and (9) were used to derive the rotational angular velocity of body co-ordinates ω s B of the simulator and the rotational angular velocity of the axis co-ordinate Φ ˙ s , with the subscript s indicating the physical quantity of the simulator. Except when performing aerobatics during the flight of an aircraft, yaw is not constrained during normal flight because it enables the pilot to make stable turns, resulting in a limited roll and pitch range. Thus, a high-pass filter is required to filter out low-frequency signals with excessively large rotation angles, after which the high-frequency angular velocity generates a simulation of rotation. Figure 2 presents the block diagram of the motion-cueing algorithm. According to the figure, the classical washout algorithm was divided into upper and lower sections after scaling. Furthermore, the upper section was divided into high- and low-frequency signals. After the high-frequency signal was filtered out by the high-pass filter, the motion acceleration required by the platform was generated. The low-frequency signal was used to generate the inclination angle required by the platform.

3.2. Optimal Control Algorithm Design

In order to truly present the specific force of the cockpit and the rotational angular velocity of the simulator cockpit the optimal control motion-cueing algorithm must be designed. The input-output relationship of the simulator is shown in Figure 3. The input to the simulator is the angular velocity ω p and specific force f p of the vehicle, while the output is the angular velocity ω s and specific force f s generated by the simulator motion. The algorithm yields ω s = ω p and f s = f p from the simulator in the limited motion space.
In Figure 4 shows the model of the simulator. The equation for the state of the simulator must be established first.
As Equation (35) did not have a rotation angle ψ , the heave and yaw motions were mutually independent with no coupling term for acceleration and velocity between them. In addition, the first column of the matrix Equation (35) was similar to the second column, therefore, the surge and pitch motions of the equation in the first column of the equation were considered. The sway and roll motions of the equation in the second column have similar resulting motions as those in the first column. The state equation can be expressed as [24]:
X ˙ = A X + B U Y = C X + D U
The relative symbols are described as:
A = [ 0 1 0 0 0 0 0 0 0 ] ,   B = [ 0 0 1 0 0 1 ] ,   C = [ 0 0 g 0 0 0 ] ,   D = [ 1 0 0 1 ]
where A ,   B ,   C ,   D are the parameters of the state-space representation, X = [ x 1 x 2 x 3 ] T denotes the state vector, x 1 denotes the displacement, x 2 denotes the velocity, x 3 denotes the rotation angle, U = [ a x B θ ˙ s ] T is the input vector, and Y = [ f s x B θ ˙ s ] T is the output vector. The optimal theory in this study was based on [25] and assumes that the angular velocity and acceleration of the vehicle were random signals with a first-order rational function spectrum. The mathematical model is:
Z ˙ = [ β 1 0 0 β 2 ] Z + [ β 1 0 0 β 2 ] W = A n Z + B n W
Y ˜ = [ 1 0 0 1 ] Z = C n Z
where Y ˜ = [ f p x θ ˙ p ] T is the specific force and rotational angular velocity of the simulator cockpit and W denotes the Gaussian white noise. Thus, according to Equations (36) and (39), the tracking error can be defined as:
e = Y Y ˜ .
Then, the cost function can be designed as:
V = lim t 1 T E [ 0 T ( e T Q 1 e + X T Q 2 X + U T R 1 U ) d t ]
where R 1 is a positive definite matrix and Q 1 and Q 2 are positive semi-definite matrices. The first term was used to penalize the input signal to avoid controller saturation, and the acceleration and angular velocity generated by the simulator could be reduced by increasing R 1 . The second term in the integral formula was used to penalize the tracking error e , and increasing Q 1 can yield a more favorable simulation fidelity. The third term was used to penalize the motion space of the simulator, and the simulator’s motion range could be reduced by increasing Q 2 .
Considering Equations (36), (38) and (39), let X ¯ = [ X Z ] T as follows:
X ¯ ˙ = [ A 0 3 × 2 0 2 × 3 A n ] X ¯ + [ B 0 2 × 2 ] U + [ 0 3 × 2 B n ] W = A ¯ X ¯ + B ¯ U + Γ ¯ W
[ e X ] = [ C C n I 3 × 3 0 3 × 2 ] X ¯ + [ D 0 3 × 2 ] U = C ¯ X ¯ + D ¯ U
The three terms in the integral equation of (41) were then substituted into Equations (42) and (43) to yield the following:
e T Q 1 e + X T Q 2 X + U T R 1 U = [ e T X T ] [ Q 1 0 2 × 3 0 3 × 2 Q 2 ] [ e X ] + U T R 1 U = X ¯ T C ¯ T d i a g { Q 1 , Q 2 } C ¯ X ¯ + 2 X ¯ T C ¯ T d i a g { Q 1 , Q 2 } D ¯ U + U T ( R 1 + D T Q 1 D ) U = X ¯ T Q X ¯ + 2 X ¯ T R 12 U + U T R U
where d i a g denotes the diagonal square matrix. Substituting it into Equation (41) can be expressed as:
V = lim t 1 T E [ 0 T ( T X ¯ T Q X ¯ + 2 X ¯ T R 12 U + U T R U ) d t ]
By solving K 1 and K 2 , the cost function can be minimized. The optimal controller is expressed as follows:
U = [ K 1 K 2 ] [ X Z ] = K 1 X K 2 Z
Substituting Equation (39) into the Equation (46) yields:
U = K 1 X K 2 C n 1 Y ˜
Next, the Hamiltonian function is defined as follows:
H = X ¯ T Q X ¯ + 2 X ¯ T R 12 U + + 2 U T R U + λ T ( A X ¯ + B U + Γ W )
to satisfy the condition of H / U = 0 , which yields:
U = 1 2 R 1 B T λ R 1 X ¯ T R 12
the Hamiltonian–Jacobi equation yields:
J * t = H ( X ¯ , λ * , U * , t ) = H ( X ¯ , J * X ¯ , U * , t )
The PDE boundary conditions of (50) is as follows:
J * X ¯ | t = T = λ * ( T ) = 2 P ( T ) X ¯
Therefore, the Riccati equation is given by:
P A ¯ + A ¯ T P ( P B ¯ + R 12 ) R 1 ( B ¯ T P + R 12 T ) + Q = 0
The aforementioned equation used C#’s Math.NET Numerics function to solve the Riccati equation. The known values A ¯ , B ¯ , Q , R , R 12 were input to obtain P .
After P ( t ) is obtained, substituting Equation (51) into (49) yields the optimal controller:
U = K 1 X K 2 Z = R 1 B T P ( t ) [ X Z ] R 1 [ X Z ] R 12
Substituting Equation (53) into Equation (36), we can derive:
X ˙ = ( A B K 1 ) X B K 2 C n 1 Y ˜
Y = C X + ( K 1 X K 2 C n 1 Y ˜ ) = ( C K 1 ) X ( K 2 C n 1 ) Y ˜
Thus, substituting the integral of the Equation (55) into (53), we can obtain:
U = K 1 X ( s ) K 2 C n Y ˜ 1 ( s ) = { K 1 [ S I ( A B K 1 ) ] 1 B K 2 C n 1 K 2 C n 1 } Y ˜ ( s ) = [ T 11 T 12 T 21 T 22 ] Y ˜ ( s )
Substituting the relations of U = [ a x B θ ˙ s ] T and Y ˜ = [ f p x θ ˙ p ] T into the Equation (59), the equation is expressed as shown in Figure 5.

4. Simulation Results and Discussion

Figure 6 shows the relationship between the DSP (TMS-320F-28377D) and the PC. The type and parameters of the two motion-cueing algorithms are selected by the computer. After starting execution, the DSP opens the serial communication interface, transmits the input signals of specific force and angular velocity through the RS422 communication interface, and executes the motion-cueing algorithm by the interruption of the DSP. The DSP then sends the calculation results, displacement, angle, and acceleration to the PC so that the result can be drawn as a curve inside the PC. The interruption period of the DSP is around 1 ms. The average calculation time of the classical washout and the optimal control algorithms are around 800 and 136 μs, respectively. Although the classical washout algorithm is a simple and fast motion-cueing design method, considering the large number of filters, the design and implementation of the digital control system is very complicated, and its computation time is long compared with the optimal control algorithm. A user interface of the PC is established by the C# software (Figure 7a) and the HIL test bench by using an online simulation. With the HIL, we can identify and resolve problems earlier in the development cycle, as shown in Figure 7b. The HIL transmits and receives data between the PC and the control board through the RS422 communication interface which should be provided to enable modifications when required.
Figure 8a shows the classical washout algorithm and the flowchart of the interrupt service routing. This method is used to process an input to produce movement as well as keep the motion within the workspace of the system. The flowchart of the interrupt service routing for the optimal control algorithm is shown in Figure 8b, and a comparison of the two motion-cueing algorithms is described in Section 4.3. The basic calculating principle is mentioned in Section 3. Finally, the output of the algorithms is obtained through a simple integral operation to obtain the displacement and angle.
The simulation analysis elucidated the characteristics and performance of the optimal control algorithm. In the simulation, let A n = d i a g { β 1 , β 2 } , Q 1 = d i a g { q 1 , q 2 } , Q 2 = d i a g { q 3 , q 4 , q 5 } , and R 1 = d i a g { r 1 , r 2 } . The symbols q 1 and q 2 denote the penalties for specific force and errors, respectively, with a larger penalty yielding a more favorable tracking performance. The symbols q 3 , q 4 , and q 5 denote the penalties for displacement, motion velocity, and angle of the platform, respectively, with a greater penalty yielding a smaller platform displacement. The symbols r 1 and r 2 denote the penalties for the acceleration and platform angular velocity of the platform, respectively, with a greater penalty yielding a smaller acceleration and angular velocity generated by the platform, which in turn produces a smaller platform displacement that compromises tracking performance. The influences of the specific force analysis and angular velocity analysis of different parameters are shown in Figure 9, Figure 10, Figure 11, Figure 12, Figure 13, Figure 14, Figure 15, Figure 16, Figure 17, Figure 18, Figure 19, Figure 20, Figure 21, Figure 22 and Figure 23 and Figure 24, Figure 25 and Figure 26, respectively. The quantitative results are summarized in Table 1 and Table 2.

4.1. Specific Force Analysis

4.1.1. Influence of β 1

In the simulation, where β 2 = 1 , q 1 = q 2 = 1 , q 3 = q 5 = 1 , q 4 = 0 , and r 1 = r 2 = 1 , the simulations of β1 at 1000, 10, 1, and 0.01 are compared. Figure 9 shows that at a higher β1, the sustained cue was weak. However, f s x B increased to a relatively high value at 1 s, which is less evident. Figure 10 clearly shows that the acceleration a x B rapidly increased to the high-frequency gain of T 11 at 1 s. This was because β1 represents the bandwidth of the signal to be tracked. A greater β1 value indicates that a signal in a relatively wide frequency domain needs to be tracked and that the tracking capacity is dispersed in a relatively wide frequency domain. By contrast, smaller β1 values indicate that a relatively low-frequency signal must be tracked and that the tracking capacity is focused on low-frequency signals. Therefore, a greater β1 value yielded a weak sustained cue performance but a more favorable instant rise capacity at 1 s, which represented high-frequency performance. Figure 11 shows the simulator displacement x 1 , as a greater β 1 required the tracking of signals in a wider frequency domain.

4.1.2. Influence of q 1

Figure 12 shows that a greater q 1 yielded more favorable tracking performance, and Figure 13 shows the influence of q 1 on displacement. However, a favorable specific force would influence the angular velocity. According to Figure 14, a greater q 1 produced a greater angular velocity, which increased to the high-frequency gain of T 12 . This is mainly because the platform had to rapidly generate the angle required by the sustained cue for efficient specific force tracking. This phenomenon can be seen in Figure 15 and Figure 16. The previous section illustrated the effect of β1 on high- and low-frequency tracking performance; thus, β 1 was adjusted. Figure 15 shows that the sustained cue decreased (the tracking performance of sustained cue declined) when β1 increased. Moreover, the angular velocity θ ˙ s in Figure 16 decreased (the effect on the angular velocity cue was small).

4.1.3. Influence of q 2

The influence on angular velocity can be improved by enhancing the tracking performance of angular velocity, that is, by increasing q 2 . Figure 17 shows that when q 1 = 100 (favorable specific force performance), increasing q 2 reduced the effect of specific force tracking on angular velocity. The classical washout algorithm relies on the angular velocity limiter to limit the effect of specific force on angular velocity. Figure 18 shows that increasing q 2 did not have a considerable impact on specific force tracking. However, Figure 19 shows that increasing q 2 simultaneously also increased the displacement. This is because, to attain favorable specific force performance while limiting the impact of angular velocity, more low-frequency acceleration was required for compensation, as shown in Figure 20, wherein the acceleration gradually became zero after q 2 was increased, indicating the presence of more low-frequency acceleration.

4.1.4. Influence of q 3

Here, the influence of q 3 (displacement penalty term of cost function) is investigated. In the simulation, let q 1 = 100, β2 = 1. Figure 21 shows that a greater q 3 led to a smaller displacement. The influence of q 3 on displacement should also affect acceleration and the specific force at the initial stage. Figure 22 shows that an increase in q 3 slightly reduced the initial acceleration. Figure 23 also reveals that the acceleration became zero faster when q 3 increased, that is, T11 filtered out more low-frequency signals.

4.2. Angular Velocity Analysis

The difference between the angular velocity and specific force is that specific force can generate a low-frequency motion by tilting at an angle, whereas angular velocity does not exhibit this mechanism and, therefore, sacrifices the low-frequency angular velocity that causes an excessive angle.

4.2.1. Influence of β 2

Figure 24 shows that a greater β2 yielded a higher simulator movement angle. In the simulation, β1 = 1, q1 = q2 = 1, q3 = q5 = 1, q4 = 0, and r1 = r2 = 1. The β2 primarily affected the high-frequency performance.

4.2.2. Influence of q2

Figure 25 shows the influence of q2 on angular velocity. The q2 affected the overall tracking performance, and a more favorable performance generated a greater angular displacement.

4.2.3. Influence of q 5

Figure 26 shows the effect of q 5 on the angle. The symbol q 5 denotes the penalty for the angle, and a greater q5 yielded a smaller angle, which in turn compromised the tracking performance of angular velocity.

4.3. Comparison of the Two Motion-Cueing Algorithms

The characteristics and performance of the optimal control motion-cueing algorithm were simulated and analyzed. The detailed qualitative comparison is shown in Table 3. Figure 2 and Figure 5 show the block diagrams for the classical washout algorithm and optimal control algorithm, respectively. According to the figure, the classical washout algorithm was mainly composed of two high-pass filters and one low-pass filter, whereas the optimal control algorithm generated acceleration and angular velocity using four transfer functions (63).

4.3.1. Comparison of Origin Drift

We performed a simulation analysis to understand the characteristics and performance of the optimal control algorithm. Next, we let β1 = β2 = 1, q1 = q2 = 1, q3 = q5 = 1, q4 = 0, and r1 = r2 = 1. In the simulation, because the classical washout algorithm without using the feedback control, the optimal control algorithm was used as a closed-loop control. Therefore, when the simulator drifted from the origin, the optimal control algorithm could facilitate the simulator’s return to the origin, as shown in Figure 27a. If the initial position of drifting away from the origin in Figure 27b was assumed to be set at 1 m when the input specific force was 0, then the algorithm would return to the origin 10 s later.

4.3.2. Comparison of the Control Architecture

The T 11 , T 12 , T 21 , and T 22 transfer functions corresponding to Equation (56) can be obtained, and are given as:
T 11 = 0.43247 s 2 ( s + 0.9714 ) ( s + 4.953 ) ( s 2 + 1.403 s + 0.9945 )
T 12 = 0.47016 s ( s 2 + 1.441 s + 0.9565 ) ( s + 4.953 ) ( s 2 + 1.403 s + 0.9945 )
T 21 = 0.027609 s 2 ( s 3.387 ) ( s + 4.953 ) ( s 2 + 1.403 s + 0.9945 )
T 22 = 0.058597 s ( s 2 + 1.132 s + 0.7647 ) ( s + 4.953 ) ( s 2 + 1.403 s + 0.9945 )
The aforementioned equation shows that T 11 is a high-pass filter, 1 s T 12 is a low-pass filter, T 21 is a high-pass filter, and T 22 is a high-pass filter. The optimal control motion-cueing algorithm was selected by the cost function of Equation (50) to obtain solution P of the Riccati equation to acquire the controller parameters K 1 and K 2 . Figure 2 and Figure 5 show that the optimal control motion-cueing algorithm had an extra T 21 high-pass filter compared with the classical washout algorithm. Therefore, the rotational angular velocity θ ˙ p of the simulator cockpit is shown in Figure 28a. Figure 28b illustrates the effect of angle on the specific force with and without . Figure 28b indicates that the influence of the specific force in the blue line was smaller.

5. Conclusions

The six-axis motion-cueing platform can produce different attitudes and movements. However, the movement space of the platform is limited. The classical washout algorithm transforms the corresponding rotation angle by using the tilt co-ordinates. The component of the acceleration of gravity deceived the training personnel. In addition, another algorithm designs the motion-cue algorithm based on the optimal control theory. Both are designed with embedded software to test the angular motion of linear motion, allowing the pilot to experience rotational angular velocity and specific force, and to compare the origin drift problem caused by the two algorithms working for a long time. Moreover, in the consistent real-time simulation and established kinematics model, an HIL test bench has been built based on a DSP-based motion-cueing algorithm. The aim of the study is to develop the algorithms implemented on a dedicated DSP of the HIL system and tested in the HIL environment. However, as further incorporation of the robust design of the platform is not this main topic of the study, but evaluation of the design should be considered in future work.

Funding

This research received no external funding.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. Wei, M.Y.; Yeh, Y.L.; Chen, S.W.; Wu, H.M.; Liu, J.W. Design, Analysis, and Implementation of a Four-DoF Chair Motion Mechanism. IEEE Access 2021, 9, 124986–124999. [Google Scholar] [CrossRef]
  2. Miller, R.; Hobday, M.; Leroux-Dermers, T.; Olleros, X. Innovation in complex industries: The case of flight simulators. Ind. Corp. Chang. 1995, 4, 363–400. [Google Scholar] [CrossRef]
  3. Stewart, D. A platform with six degrees of freedom. Proc. Inst. Mech. Eng. 1965, 180, 371–386. [Google Scholar] [CrossRef]
  4. Raghavan, M. The Stewart platform of general geometry has 40 configurations. ASME Trans. J. Mech. Des. 1993, 115, 277–280. [Google Scholar] [CrossRef]
  5. Su, Y.X.; Duan, B.Y.; Zheng, C.H.; Zhang, Y.F.; Chen, G.D.; Mi, J.W. Disturbance-rejection high-precision motion control of a Stewart platform. IEEE Trans. Control Syst. Technol. 2004, 12, 364–374. [Google Scholar] [CrossRef]
  6. Yun, Y.; Li, Y. A general dynamics and control model of a class of multi-DOF manipulators for active vibration control. Mech. Mach. Theory 2011, 46, 1549–1574. [Google Scholar] [CrossRef]
  7. Su, Y.X.; Duan, B.Y. The mechanical design and kinematics accuracy analysis of a fine tuning stable platform in large spherical raio telescope. Mechatronics 2000, 10, 819–834. [Google Scholar] [CrossRef]
  8. Wang, Q.; Jiao, W.; Yu, R.; Johnson, M.T.; Zhang, Y. Virtual reality robot-assisted welding based on human intention recognition. IEEE Trans. Autom. Sci. Eng. 2020, 17, 799–808. [Google Scholar] [CrossRef]
  9. Casas-Yrurzum, S.; Portalés-Ricart, C.; Morillo-Tena, P.; Cruz-Neira, C. On the Objective Evaluation of Motion Cueing in Vehicle Simulations. IEEE Trans. Intell. Transp. Syst. 2021, 22, 3001–3013. [Google Scholar] [CrossRef]
  10. Qazani, M.R.C.; Asadi, H.; Bellmann, T.; Mohamed, S.; Lim, C.P.; Nahavandi, S. Adaptive Washout Filter Based on Fuzzy Logic for a Motion Simulation Platform With Consideration of Joints’ Limitations. IEEE Trans. Veh. Technol. 2020, 69, 12547–12558. [Google Scholar] [CrossRef]
  11. He, Z.; Lian, B.; Li, Q.; Zhang, Y.; Song, Y.; Yang, Y.; Sun, T. An error identification and compensation method of a 6-DoF parallel kinematic machine. IEEE Access 2020, 8, 119038–119047. [Google Scholar] [CrossRef]
  12. Nabi, H.N.; Ullah, S.; Munir, A. Kinematics analysis of three-degree-of freedom parallel manipulator with crank arm actuator. In Proceedings of the 2014 11th International Bhurban Conference on Applied Sciences & Technology (IBCAST), Islamabad, Pakistan, 14–18 January 2014; pp. 182–188. [Google Scholar]
  13. Pan, C.T.; Sun, P.Y.; Li, H.J.; Hsieh, C.H.; Hoe, Z.Y.; Shiue, Y.L. Development of multi-axis crank linkage motion system for synchronized flight simulation with VR immersion. Appl. Sci. 2021, 11, 3596. [Google Scholar] [CrossRef]
  14. Wei, M.Y. Design and Implementation of Inverse Kinematics and Motion Monitoring System for 6DoF Platform. Appl. Sci. 2021, 11, 9330. [Google Scholar] [CrossRef]
  15. Giordano, P.R.; Masone, C.; Tesch, J.; Breidt, M.; Pollini, L.; Bülthoff, H.H. A novel framework for closed-loop robotic motion simulation-part II: Motion cueing design and experimental validation. In Proceedings of the 2010 IEEE International Conference on Robotics and Automation, Anchorage, AK, USA, 3–7 May 2010; pp. 3896–3903. [Google Scholar]
  16. Fan, S.W. Aviation physiology training in military aviation of the future Transformation through technology. In Proceedings of the 2017 Fourth Asian Conference on Defence Technology-Japan (ACDT), Tokyo, Japan, 29 November–1 December 2017; pp. 1–5. [Google Scholar]
  17. Berthoz, A.; Bles, W.; Bülthoff, H.H.; Grácio, B.C.; Feenstra, P.; Filliard, N.; Hühne, R.; Kemeny, A.; Mayrhofer, M.; Mulder, M.; et al. Motion scaling for high-performance driving simulators. IEEE Trans. Hum. Mach. Syst. 2013, 43, 265–276. [Google Scholar] [CrossRef]
  18. Asadi, H.; Lim, C.P.; Mohamed, S.; Nahavandi, D.; Nahavandi, S. Increasing motion fidelity in driving simulators using a fuzzy-based washout filter. IEEE Trans. Intell. Veh. 2019, 4, 298–308. [Google Scholar] [CrossRef]
  19. Salisbury, I.G.; Limebeer, D.J.N. Optimal motion cueing for race cars. IEEE Trans. Control Syst. Technol. 2015, 24, 200–215. [Google Scholar] [CrossRef]
  20. Zhao, Q.; Duan, G. Adaptive finite-time tracking control of 6dof spacecraft motion with inertia parameter identification. IET Control Theory Appl. 2019, 13, 2075–2085. [Google Scholar] [CrossRef]
  21. Asadi, H.; Mohamed, S.; Lim, C.P.; Nahavandi, S. Robust optimal motion cueing algorithm based on linear quadratic regular method and a genetic algorithm. IEEE Trans. Syst. Man Cybern. Syst. 2017, 47, 238–254. [Google Scholar]
  22. Zhiyong, T.; Hu, M.; Zhongcai, P.; Jinhui, Z. Adaptive motion cueing algorithm based on fuzzy tuning for improving human sensation. In Proceedings of the 2016 IEEE Chinese Guidance, Navigation and Control Conference (CGNCC), Nanjing, China, 12–14 August 2016; pp. 1200–1205. [Google Scholar]
  23. Qazani, M.R.C.; Asadi, H.; Khoo, S.; Nahavandi, S. A linear time-varying model predictive control-based motion cueing algorithm for hexapod simulation-based motion platform. IEEE Trans. Syst. Man Cybern. Syst. 2019, 51, 6096–6110. [Google Scholar] [CrossRef]
  24. Sivan, R.; Ish-Shalom, J.; Huang, J.K. An optimal control approach to the design of moving flight simulators. IEEE Trans. Syst. Man Cybern. Syst. 1982, 12, 818–827. [Google Scholar] [CrossRef]
  25. Kwakernaak, H.; Sivan, R. Linear Optimal Control Systems; Wiley-Interscience: New York, NY, USA, 1972. [Google Scholar]
Figure 1. Six-DoF platform: (a) configuration of the co-ordinate system, (b) 3D design drawing, and (c) rotation relationship.
Figure 1. Six-DoF platform: (a) configuration of the co-ordinate system, (b) 3D design drawing, and (c) rotation relationship.
Aerospace 09 00203 g001
Figure 2. Block diagram of classical washout algorithm.
Figure 2. Block diagram of classical washout algorithm.
Aerospace 09 00203 g002
Figure 3. The input-output relationship of the algorithm.
Figure 3. The input-output relationship of the algorithm.
Aerospace 09 00203 g003
Figure 4. The model of the simulator.
Figure 4. The model of the simulator.
Aerospace 09 00203 g004
Figure 5. The block diagram of optimal control algorithm.
Figure 5. The block diagram of optimal control algorithm.
Aerospace 09 00203 g005
Figure 6. The relationship between the DSP and PC.
Figure 6. The relationship between the DSP and PC.
Aerospace 09 00203 g006
Figure 7. Hardware-in-the-loop (HIL) simulation platform: (a) user interface; (b) test bench.
Figure 7. Hardware-in-the-loop (HIL) simulation platform: (a) user interface; (b) test bench.
Aerospace 09 00203 g007
Figure 8. The flowchart of the DSP-based motion-cueing algorithms: (a) Classical washout algorithm; (b) Optimal control algorithm.
Figure 8. The flowchart of the DSP-based motion-cueing algorithms: (a) Classical washout algorithm; (b) Optimal control algorithm.
Aerospace 09 00203 g008
Figure 9. Specific force, f s x B , generated by the simulator.
Figure 9. Specific force, f s x B , generated by the simulator.
Aerospace 09 00203 g009
Figure 10. Acceleration, a x , of the simulator (output of T 11 ).
Figure 10. Acceleration, a x , of the simulator (output of T 11 ).
Aerospace 09 00203 g010
Figure 11. Displacement, x 1 , of the simulator.
Figure 11. Displacement, x 1 , of the simulator.
Aerospace 09 00203 g011
Figure 12. Effect of q 1 on specific force f s x B generated by the simulator ( β 1 = 1 ).
Figure 12. Effect of q 1 on specific force f s x B generated by the simulator ( β 1 = 1 ).
Aerospace 09 00203 g012
Figure 13. Effect of q 1 on the displacement generated by the simulator ( β 1 = 1 ).
Figure 13. Effect of q 1 on the displacement generated by the simulator ( β 1 = 1 ).
Aerospace 09 00203 g013
Figure 14. Effect of q 1 on the angular velocity θ ˙ s .
Figure 14. Effect of q 1 on the angular velocity θ ˙ s .
Aerospace 09 00203 g014
Figure 15. Verification of the influence of specific force tracking on angular velocity θ ˙ s and the influence of β 1 on specific force f s x B .
Figure 15. Verification of the influence of specific force tracking on angular velocity θ ˙ s and the influence of β 1 on specific force f s x B .
Aerospace 09 00203 g015
Figure 16. Verification of the influence of specific force tracking on angular velocity θ ˙ s and the influence of β 1 on θ ˙ s .
Figure 16. Verification of the influence of specific force tracking on angular velocity θ ˙ s and the influence of β 1 on θ ˙ s .
Aerospace 09 00203 g016
Figure 17. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on specific force θ ˙ s .
Figure 17. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on specific force θ ˙ s .
Aerospace 09 00203 g017
Figure 18. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on specific force f s x B .
Figure 18. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on specific force f s x B .
Aerospace 09 00203 g018
Figure 19. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on displacement.
Figure 19. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on displacement.
Aerospace 09 00203 g019
Figure 20. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on acceleration a x .
Figure 20. Improvement of the influence of specific force tracking on angular velocity θ ˙ s and the influence of q 2 on acceleration a x .
Aerospace 09 00203 g020
Figure 21. Influence of q 3 on displacement q 1 = 100 , and β 1 = 1 .
Figure 21. Influence of q 3 on displacement q 1 = 100 , and β 1 = 1 .
Aerospace 09 00203 g021
Figure 22. Influence of q 3 on specific force, q 1 = 100 , and β 1 = 1 .
Figure 22. Influence of q 3 on specific force, q 1 = 100 , and β 1 = 1 .
Aerospace 09 00203 g022
Figure 23. Influence of q 3 on acceleration a x , q 1 = 100 , and β 1 = 1 .
Figure 23. Influence of q 3 on acceleration a x , q 1 = 100 , and β 1 = 1 .
Aerospace 09 00203 g023
Figure 24. Influence of β 2 on angular velocity.
Figure 24. Influence of β 2 on angular velocity.
Aerospace 09 00203 g024
Figure 25. Influence of q 2 on angular velocity.
Figure 25. Influence of q 2 on angular velocity.
Aerospace 09 00203 g025
Figure 26. Influence of q 5 on the angle.
Figure 26. Influence of q 5 on the angle.
Aerospace 09 00203 g026
Figure 27. Optimal control when input specific force is 0: (a) Displacement result; (b) Specific force result.
Figure 27. Optimal control when input specific force is 0: (a) Displacement result; (b) Specific force result.
Aerospace 09 00203 g027
Figure 28. Comparison of motion-cueing algorithms: (a) input rotational angular velocity; (b) influence of T21 angular motion on specific force.
Figure 28. Comparison of motion-cueing algorithms: (a) input rotational angular velocity; (b) influence of T21 angular motion on specific force.
Aerospace 09 00203 g028
Table 1. The quantitative comparison of specific force.
Table 1. The quantitative comparison of specific force.
Input
Command
ParametersFigureSpecifications
Settling
Time (s)
Steady State Value (m/s2)
Step-input (m/s2)
0, t < 1
+1, t > 1
β 2 = 1,
q 2 = 1,
q 3 = 1,
q 4 = 0,
q 5 = 1,
r 1 = 1,
r 2 = 1
β 1 =   1000 , q 1 = 1Figure 92.90.42
β 1 = 10 , q 1 = 1 20.613
β 1 = 1 , q 1 = 1 1.50.893
β 1 = 0.01 , q 1 = 1 1.20.987
β 1 = 1 , q 1 = 100 Figure 120.30.999
β 1 = 1 , q 1 = 10 0.60.989
β 1 = 1 , q 1 = 1 1.50.893
β 1 =   100 , q 1 = 10 Figure 150.40.895
β 1 =   10 , q 1 = 10 0.50.93
β 1 =   1 , q 1 = 10 0.60.989
Table 2. The quantitative comparison of angular velocity.
Table 2. The quantitative comparison of angular velocity.
Input
Command
ParametersFigureSpecifications
Settling
Time (s)
Peak to Peak Value
Step-input
(rad/s)
+1, 1 ≤ t ≤ 2
−1, 2 ≤ t ≤ 3
0, elswhere
β 1 = 1,
q 1 = 1,
q 3 = 1,
q 4 = 0,
r 1 = 1,
r 2 = 1
β 2 = 1000, q 2 = 1, q 5 = 1Figure 244.61.53 (rad/s)
β 2 = 1, q 2 = 1, q 5 = 1 2.7 0.15 (rad/s)
β 2 = 1, q 2 = 100, q 5 = 1Figure 2561.25 (rad/s)
β 2 = 1, q 2 = 1, q 5 = 12.60.17 (rad/s)
β 2 = 1, q 2 = 100, q 5 = 100Figure 264.80.39 (rad)
β 2 = 1, q 2 = 100, q 5 = 15.30.53 (rad)
Table 3. The qualitative comparison of different algorithms.
Table 3. The qualitative comparison of different algorithms.
Classical Washout AlgorithmOptimal Control Algorithm
TypeFilter-basedOptimization-based
Real-time capableHighMedium
ScalabilityHighHigh
Implementation complexityHighMedium
Accounting for simulator limitsThrough manual tuningThrough cost function optimization
Computation time800 μs136 μs
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wei, M.-Y. Design of a DSP-Based Motion-Cueing Algorithm Using the Kinematic Solution for the 6-DoF Motion Platform. Aerospace 2022, 9, 203. https://doi.org/10.3390/aerospace9040203

AMA Style

Wei M-Y. Design of a DSP-Based Motion-Cueing Algorithm Using the Kinematic Solution for the 6-DoF Motion Platform. Aerospace. 2022; 9(4):203. https://doi.org/10.3390/aerospace9040203

Chicago/Turabian Style

Wei, Ming-Yen. 2022. "Design of a DSP-Based Motion-Cueing Algorithm Using the Kinematic Solution for the 6-DoF Motion Platform" Aerospace 9, no. 4: 203. https://doi.org/10.3390/aerospace9040203

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop