Advanced Servo Control and AI Integration in 3-DoF Platforms for Enhanced Simulation Interactivity

: This paper proposes a new approach to enhance the realism and interactivity of shooting simulation systems by integrating a three-degree–of–freedom (3-DoF) platform with sensory and interactive elements, as well as digital content. The system employs visual effects computers and servo controls, utilizing network packet messages for communication based on different scene definitions. When the control handle sends commands, the visual effects computer transmits control parameters to the image generator. Additionally, AI-controlled aircrafts act as enemy planes, autonomously determining flight paths, tracking targets, and engaging in combat, thereby enhancing realism in interactive mechanisms. An iterative learning control (ILC) is designed to provide the platform with good dynamic response, load capacity, and tracking ability when operated by a manual control handle. The core control uses a TMS320F28377D digital signal processor from Texas Instruments, integrated with visual effects computers for three-axis control, controller computation, finite state machines, and network communication operations. Experimental results demonstrate the feasibility and effectiveness of the developed three-axis shooting platform


Introduction
Simulation training aims to replicate real-world sensory stimuli through humanmachine interfaces, possessing three main characteristics: immersion, interactivity, and imagination [1].Immersion makes individuals feel as if they are in a real-life scenario, interactivity creates continuous interactive states through pre-designed actions, and imagination stimulates human creativity through graphic design, motion decomposition, scene planning, light distribution, shadow configuration, and 3D imagery.Consequently, virtual reality (VR) technology is divided into the establishment of three-dimensional models, visual input devices, auditory input devices, tactile input devices, and mind input devices [2].VR technology is widely utilized, with well-developed peripheral hardware devices such as Google's Google Cardboard [3], Meta's Oculus [4], HTC's VIVE series [5], Samsung's Gear VR [6], and Sony's PlayStation VR [7].
VR applications are increasingly prevalent for creating virtual prototypes, 3D models, and visualizations.For example, one study proposed a comprehensive framework to achieve immersive services in the augmented remote operation of unmanned aerial vehicles (UAVs), analyzing key performance indicators and addressing VR-based remote and immersive control issues [8].Another study introduced Vehicle VR, which accurately simulates real environments and specific operating interfaces and equipment, primarily to reduce training costs and enhance fidelity in training scenarios [9].VR has also been applied in military training, such as the Brazilian Army's TAT VR simulator for pistol shooting, which emphasizes convenience, accessibility, and flexibility [10].
Considering the widespread use of motion platforms and their significant applications in the transportation industry, virtual environments enable training personnel to experience operations more realistically [11].For example, a study on a four-degree-of-freedom motion chair demonstrated its effectiveness in enhancing flight simulation training, providing an immersive experience through modular design and kinematic control, achieving closedloop control [12].In general, multi-degree-of-freedom control systems require sophisticated electromechanical design to achieve accurate trajectory tracking [13].These systems typically use servo motors paired with reducers to meet the platform's load capacity.However, the mechanical structure of multi-axis motion platforms is highly complex, with several control uncertainties, including inertia, efficiency, and friction coefficients within reducers, as well as nonlinear characteristics caused by gear backlash.Additionally, the weight of the mechanical structure and the combined weight of the users further complicate system modeling.Moreover, motor control modes must adapt to different operating conditions, affecting the precision of three-axis motion control systems.Various studies have investigated load estimation for unknown loads to address these challenges.For instance, Yi et al. applied neural networks and adaptive theory to embedded permanent magnet motors, enabling the online calculation of controller weight values to maintain precise speed control despite parameter variations and additional loads [14].Wai et al. designed intelligent optimal controllers, integrating them with fuzzy neural networks for controlling permanent magnet motors [15].Li et al. used fuzzy control to manage systems with uncertain inertia, ensuring better steady-state responses for permanent magnet motors [16].Additionally, servo systems performing reciprocating motions often face periodic nonlinear friction.To tackle these challenges, this paper adopts iterative learning control (ILC) to adjust for parameter uncertainties, improving transient performance and eliminating periodic nonlinear disturbances without needing detailed knowledge of the system's complex parameters.This approach is particularly suitable for nonlinear, time-varying, and complexly modeled systems.
To address these challenges, iterative learning control (ILC) is often used to improve transient system performance and eliminate periodic nonlinear disturbances.ILC adjusts the compensation amount based on the system's error, without needing to know the various parameters of complex systems beforehand, making it suitable for nonlinear, time-varying, and complexly modeled systems [17].This paper proposes a novel three-degree-of-freedom platform system for an interactive shooting simulator, combined with iterative learning theory to enhance operational performance.The system dynamically adjusts based on error and is capable of eliminating periodic nonlinear disturbances without measuring complex system parameters.The core control uses a 200 MHz DSP clock, providing participants with an immersive experience of controlling gun turrets and shooting freely, enhanced by the Oculus Quest VR gaming device running Unity-based VR shooting games.To the best of our knowledge, this is the first approach that introduces the concepts discussed in our paper, emphasizing their novelty and originality, as they have not been covered in previous publications [8][9][10][11][12][13][14][15][16][17].
The main contributions of this paper include the following: 1.
Development of an innovative 3-DoF shooting platform integrating VR for immersive simulation training.

2.
Implementation of ILC to dynamically adjust system performance, mitigating periodic nonlinear disturbances.

3.
Integration of advanced visual effects and interactive elements for realistic and engaging user experiences.4.
Utilization of AI-controlled aircrafts to enhance realism in interactive mechanisms.
The paper is structured as follows: Section 2 covers the control system design, including conventional and proposed servo control methods.Section 3 elaborates on the design of AI for enemy aircrafts.Section 4 provides a comprehensive system overview.Section 5 presents experimental setups and results, while Section 6 concludes the paper, highlighting future research directions.

Conventional Servo Control
The internal controller of the servo drive adopts a proportional-integral-derivative (PID) controller, which features simple structure, convenient design, and easy adjustment advantages and is widely used in control loop design.It calculates straightforward mathematical equations.When parameters of the plant cannot be grasped or an accurate mathematical model cannot be obtained, controller design needs to be added to improve the overall system response, as shown in Figure 1.This setup includes either an angle controller or a speed controller (providing a pulse command for angle control or a joystick speed command for speed control).Due to the simulator having three degrees of freedom, servo control is employed for the roll, pitch, and yaw axes.For clarity, different axes are denoted as k in the figure .A limiter generates the necessary q-axis command i * q , while the d-axis command is typically controlled with i * d = 0.The d-axis and q-axis current commands are then compared with the actual d-axis current i d and q-axis current i q to produce the corresponding voltage commands v * d , v * q .These voltage commands are transformed into a-b-c voltage vector commands v * a , v * b , v * c through coordinate transformation.Using Space Vector Pulse Width Modulation (SVPWM), three sets of PWM signals are generated to control the six-arm switch, which drives the servo motor via the power conversion circuit.In Figure 1, the Roll, Pitch, and Yaw represent the drivers for the roll axis, pitch axis, and yaw axis, respectively.The feedback section is divided into current, speed, and angle.Current feedback is obtained through a detection circuit that measures a-phase current i a and b-phase current i b via an AD converter.The c-phase current is calculated as i c = −(i a + i b ) due to the three-phase balance.Coordinate transfor- mation then provides i d and i q feedback for current closed-loop control.Speed feedback is derived from the encoder by reading θ m and calculating ω m through differentiation for speed closed-loop control.For angle feedback, the rotation angle θ m read from the encoder is used for angle closed-loop control.Consider the voltage equations of the servo motor's q -axis and d -axis, and expand them as follows: where d v and q v are the d -axis and q -axis voltages,  Consider the voltage equations of the servo motor's q-axis and d-axis, and expand them as follows: (1) where v d and v q are the d-axis and q-axis voltages, i d and i q are the d-axis and q-axis currents, r s is the resistance of the motor, L d and L q are the inductances, λ m is the flux linkage, and ω re is the electrical speed of motor.From Equation (2), it is evident that the servo motor's d-q axis voltage equations contain coupling terms: ω e (L d i d + λ ′ m ).At this point, the input voltage commands can be defined using the decoupling control method, as follows: By comparing Equations ( 1) to (2) and Equations (3) to (4), we obtain the following: (5) Based on Equations ( 1) to (4) and considering the current controllers in Equations ( 5) to (6), the closed-loop current transfer function can be obtained as follows: where i * d and i * q are the d-axis and q-axis current commands.Thus, the voltage equations of the q-axis and d-axis can be decoupled into two independent linear systems, i.e., u d with i d and u q with i q exhibit linear characteristics.Utilizing these characteristics, the d-axis current controller and q-axis current controller in Figure 1 adopt a proportional-integral (PI) controller form, with their transfer functions given as follows: where k p_d and k i_d represent the proportional coefficient and integral coefficient of d-axis current control, respectively.k p_q and k i_q represent the proportional coefficient and integral coefficient of q-axis current control, respectively.In the conventional speed control system shown in Figure 1, the d-axis current is generally controlled to be zero.Therefore, the electromagnetic torque T e is controlled by the q-axis current i q .The electromagnetic torque is expressed as follows: where P denotes the number of poles of the motor, while K t represents the torque constant.The dynamic mechanical equations for the rotor speed are expressed as: where T L represents the external load, B m denotes the viscous coefficient of the motor, and J m represents the moment of inertia of the motor.The electrical rotor speed and rotor angle are expressed, respectively, as follows: With the q-axis current controller C q , the speed control transfer function block diagram is as shown in Figure 2. and m J represents the moment of inertia of the motor.The electrical rotor speed and rotor angle are expressed, respectively, as follows: With the q-axis current controller q C , the speed control transfer function block dia- gram is as shown in Figure 2.
)  Assuming the bandwidth of the q-axis current control loop system is sufficiently wide, the transfer function of the q-axis current control loop can be approximated as 1 within the speed bandwidth range.At this point, considering the representation of the speed controller in the frequency domain, as shown in Figure 2, it can be expressed as follows: where k p_s and k i_s represent the proportional coefficient and integral coefficient of speed control, respectively.Therefore, when the bandwidth of the q-axis current control loop system is much greater than the mechanical bandwidth, the delay in the q-axis current response can be neglected.If the external load torque is not considered, the closed-loop speed transfer function in Figure 2 is as follows: Based on the conventional position control system shown in Figure 1, the position control transfer function block diagram is as shown in Figure 3. Assuming the bandwidth of the q-axis current control loop system is suffic wide, the transfer function of the q-axis current control loop can be approximated within the speed bandwidth range.At this point, considering the representation o speed controller in the frequency domain, as shown in Figure 2, it can be express follows: where _ ps k and _ is k represent the proportional coefficient and integral coefficie speed control, respectively.Therefore, when the bandwidth of the q-axis current co loop system is much greater than the mechanical bandwidth, the delay in the q-axi rent response can be neglected.If the external load torque is not considered, the cl loop speed transfer function in Figure 2 is as follows: Based on the conventional position control system shown in Figure 1, the po control transfer function block diagram is as shown in Figure 3. angle control, respectively.Similarly, considering the q-axis current control loop sys sufficiently wide bandwidth, within the speed bandwidth range, the transfer functi the q-axis current control loop can be approximated as about 1 by using the cont parameters p C and s C shown in Figure 3.

Proposed Servo Control
Servo motors often require the use of gearboxes, racks, or lead screws to gen actual mechanical motion.Due to the need for precise positioning or speed control in ulators, servo motors may experience discontinuities in rotation speed during instan ous reversals due to frictional effects, leading to performance degradation.Past res [18] indicates that friction is often nonlinear and varies with changes in rotation s making it difficult to establish an accurate model through experimental means.Ther Considering the representation of the angle controller in the frequency domain as C P , where k p_p and k i_p represent the proportional coefficient and integral coefficient of angle control, respectively.Similarly, considering the q-axis current control loop system's sufficiently wide bandwidth, within the speed bandwidth range, the transfer function of the q-axis current control loop can be approximated as about 1 by using the controller parameters C p and C s shown in Figure 3.

Proposed Servo Control
Servo motors often require the use of gearboxes, racks, or lead screws to generate actual mechanical motion.Due to the need for precise positioning or speed control in simulators, servo motors may experience discontinuities in rotation speed during instantaneous reversals due to frictional effects, leading to performance degradation.Past research [18] indicates that friction is often nonlinear and varies with changes in rotation speed, making it difficult to establish an accurate model through experimental means.Therefore, in scenarios involving reciprocating motion, it is proposed to design an ILC to compensate for nonlinear factors in the mechanism, aiming to improve the performance of reciprocating motion in the gearbox.The internal speed or position bandwidth of the driver is set to 1 kHz, and the frequency of packet transmission from the visual effects computer to the digital signal processor network is set to 50 Hz.
As motors engage in reciprocating motion, nonlinear frictional forces periodically arise.ILC theory can adaptively adjust to control objectives and conditions, providing an effective and practical solution to repetitive tracking control and repetitive interference problems.Therefore, in this section, ILC is employed to compensate for frictional interference.Typically, ILC is used to improve transient system performance, such as eliminating periodic nonlinear disturbances.The compensation amount of the ILC adjusts using the system's error amount, without needing to know the various parameters of complex systems beforehand.It is suitable for complex systems that are time-varying, nonlinear, and difficult to model [19].As shown in Figure 4, the control force from the previous learning iteration, stored in the internal memory of the digital signal processor, is compared with the desired trajectory to calculate the error value for updating the control force.Hence, the concept of ILC involves using control information from the previous iteration to generate the control input for the current iteration, which is then transmitted to the controlled system for execution.
Appl.Syst.Innov.2024, 7, x FOR PEER REVIEW 7 of 24 As motors engage in reciprocating motion, nonlinear frictional forces periodically arise.ILC theory can adaptively adjust to control objectives and conditions, providing an effective and practical solution to repetitive tracking control and repetitive interference problems.Therefore, in this section, ILC is employed to compensate for frictional interference.Typically, ILC is used to improve transient system performance, such as eliminating periodic nonlinear disturbances.The compensation amount of the ILC adjusts using the system's error amount, without needing to know the various parameters of complex systems beforehand.It is suitable for complex systems that are time-varying, nonlinear, and difficult to model [19].As shown in Figure 4, the control force from the previous learning iteration, stored in the internal memory of the digital signal processor, is compared with the desired trajectory to calculate the error value for updating the control force.Hence, the concept of ILC involves using control information from the previous iteration to generate the control input for the current iteration, which is then transmitted to the controlled system for execution.( ) ( ) where n is the sampling time and n = 0, 1, … N .N is the total number of iterations to be learned and 01   is the forgetting factor, () i un is the control input for this learning iteration, 1 () un is the control input from the previous learning iteration, L is the learning gain constant, which is usually set as a fixed constant, d y is the desired ideal output, and 1 − i y is the controlled system output from the previous learning iteration.Since the transmission components of this system consist of servo motors and RV reducers, and considering the need for simultaneous three-axis operation in the simulator, RV reducers with high rigidity, smooth transmission, and high load capacity have been selected.During servo driving in forward and reverse rotation or slow movement processes, frictional forces can cause uneven rotation speeds.Traditional PID controller parameters, being fixed, cannot provide the system with appropriate gains.Therefore, this paper proposes an online calculation of the pulse frequency that needs to be input to the driver using iterative learning control (ILC).By adjusting the pulse frequency, the transient, steady-state, and loading characteristics of the system can be improved.Additionally, the weight of the previous learning control force  in Equation ( 18) is increased.The D- type ILC is modified to incorporate a proportional term to enhance transient responses and handle uncertainties in external variations.Thus, the PD-type iterative learning control (PDILC) equation is formulated as follows:  D-type iterative learning control (DILC) is represented as follows: where n is the sampling time and n = 0, 1, . ..N. N is the total number of iterations to be learned and 0 < α < 1 is the forgetting factor, u i (n) is the control input for this learning iteration, u i−1 (n) is the control input from the previous learning iteration, L is the learning gain constant, which is usually set as a fixed constant, y d is the desired ideal output, and y i−1 is the controlled system output from the previous learning iteration.
Since the transmission components of this system consist of servo motors and RV reducers, and considering the need for simultaneous three-axis operation in the simulator, RV reducers with high rigidity, smooth transmission, and high load capacity have been selected.During servo driving in forward and reverse rotation or slow movement processes, frictional forces can cause uneven rotation speeds.Traditional PID controller parameters, being fixed, cannot provide the system with appropriate gains.Therefore, this paper proposes an online calculation of the pulse frequency that needs to be input to the driver using iterative learning control (ILC).By adjusting the pulse frequency, the transient, steadystate, and loading characteristics of the system can be improved.Additionally, the weight of the previous learning control force α in Equation ( 18) is increased.The D-type ILC is modified to incorporate a proportional term to enhance transient responses and handle uncertainties in external variations.Thus, the PD-type iterative learning control (PDILC) equation is formulated as follows: where e i−1 is the previous error and de i−1 (n + 1) = e i−1 (n + 1) − e i−1 (n) is the previous learning's error change.
In practical applications, a single controller is used to generate three-axis pulse commands for the driver.To avoid excessive use of internal memory and to enhance software computational efficiency, the approach described in reference [20] is adopted.In Equation (19), the learning mechanism based on the previous error is completely discarded.Instead, only the real-time (current) error is utilized, employing a feedback learning control method.Therefore, in Equation ( 19), after adopting the real-time error, the input term is selected as the pulse frequency command for the driver.This results in the iterative learning control (ILC) equation for the roll axis among the three axes.
The equation above can be reformulated as The pitch axis (Pitch) and yaw axis (Yaw) are represented as follows: where α is a positive value used to correct the divergence problem caused by the initial non-zero learning error.In this paper, the sampling time was set to 1 kHz (0.001 s), and the number of learning iterations N was 50.The system updates the control input pulse frequencies f Roll i , f Pitch i , and f Yaw i every 0.05 s. Figure 5 illustrates the control system architecture, which integrates both ILC and an iterative learning adjuster.The ILC calculates the frequency using Equations ( 21)-(23), while the iterative learning adjuster continuously outputs pulse commands through the digital signal processor's digital output channel.Together, they provide comprehensive pulse command and frequency control.Based on the error between y k d and y k i , the pulse command is activated or deactivated.Activation signals the motor to run, maintaining constant speed with a fixed frequency or accelerating/decelerating with a varying frequency.Deactivation halts the motor, indicating completion of positioning.Refer to Figure 6 for the detailed flowchart of the process.mands through the digital signal processor's digital output channel.Together, they provide comprehensive pulse command and frequency control.Based on the error between k d y and k i y , the pulse command is activated or deactivated.Activation signals the motor to run, maintaining constant speed with a fixed frequency or accelerating/decelerating with a varying frequency.Deactivation halts the motor, indicating completion of positioning.Refer to Figure 6 for the detailed flowchart of the process.

Design of AI for Enemy Aircrafts
The design of the aircraft is divided into three types: target aircraft, companion aircraft, and enemy aircraft.The first type of target aircraft generates the required sensory feedback through cockpit personnel operating the joystick.The second type, companion aircraft, primarily accompanies the target aircraft without any specific actions.The third type, enemy aircraft, is designed using AI to attack the target aircraft and search for targets.Unity game development visual effects software was utilized, based in San Francisco, CA, USA, was utilized, employing the AI Planner package to enable autonomous decision-making for the enemy aircraft.Programmatic coding designs rules and logic, and decision trees are employed at each decision node to select the optimal branch node, as shown in Figure 7.

Design of AI for Enemy Aircrafts
The design of the aircraft is divided into three types: target aircraft, companion aircraft, and enemy aircraft.The first type of target aircraft generates the required sensory feedback through cockpit personnel operating the joystick.The second type, companion aircraft, primarily accompanies the target aircraft without any specific actions.The third type, enemy aircraft, is designed using AI to attack the target aircraft and search for targets.Unity game development visual effects software was utilized, based in San Francisco, CA, USA, was utilized, employing the AI Planner package to enable autonomous decision-making for the enemy aircraft.Programmatic coding designs rules and logic, and decision trees are employed at each decision node to select the optimal branch node, as shown in Figure 7.
The design of the aircraft is divided into three types: target aircraft, companion air-craft, and enemy aircraft.The first type of target aircraft generates the required sensory feedback through cockpit personnel operating the joystick.The second type, companion aircraft, primarily accompanies the target aircraft without any specific actions.The third type, enemy aircraft, is designed using AI to attack the target aircraft and search for targets.Unity game development visual effects software was utilized, based in San Francisco, CA, USA, was utilized, employing the AI Planner package to enable autonomous decision-making for the enemy aircraft.Programmatic coding designs rules and logic, and decision trees are employed at each decision node to select the optimal branch node, as shown in Figure 7.  Additionally, finite state machines (FSMs) were used to establish reactive AI to implement the behavior of enemy aircrafts.The primary development language for Unity Engine is C#, and Microsoft's Visual Studio Code was utilized as the development environment.FSM design divides the behavior of enemy aircrafts into four modes-patrol Additionally, finite state machines (FSMs) were used to establish reactive AI to implement the behavior of enemy aircrafts.The primary development language for Unity Engine is C#, and Microsoft's Visual Studio Code was utilized as the development environment.FSM design divides the behavior of enemy aircrafts into four modes-patrol mode, attack mode, evasion mode, and idle mode-as illustrated in Figure 8.At the initial stage, the AI system defaults to the patrol mode to search for targets and locks onto the nearest target unit.Upon locking onto the target, the AI system begins automatic navigation to pursue the target, transitioning to attack mode.Depending on the distance and angle to the target, the enemy aircraft adjusts its speed and determines the optimal time to shoot.If the distance between the enemy and target aircraft becomes too close, the evasion mode is executed to assess whether to leave the combat zone.If not, it continues pursuing the target based on anchor points and re-enters attack mode after 7 s to continue chasing the target.Otherwise, it enters idle mode to return to the combat zone and then switches back to patrol mode.Figure 9a illustrates the belly view of the target aircraft, clearly showing the screen after entering attack mode.Figure 9b depicts the relationship between the position of the three-axis shooting platform and the target aircraft and AI enemy aircraft.
Appl.Syst.Innov.2024, 7, x FOR PEER REVIEW 10 of 24 mode, attack mode, evasion mode, and idle mode-as illustrated in Figure 8.At the initial stage, the AI system defaults to the patrol mode to search for targets and locks onto the nearest target unit.Upon locking onto the target, the AI system begins automatic navigation to pursue the target, transitioning to attack mode.Depending on the distance and angle to the target, the enemy aircraft adjusts its speed and determines the optimal time to shoot.If the distance between the enemy and target aircraft becomes too close, the evasion mode is executed to assess whether to leave the combat zone.If not, it continues pursuing the target based on anchor points and re-enters attack mode after 7 s to continue chasing the target.Otherwise, it enters idle mode to return to the combat zone and then switches back to patrol mode.Figure 9a illustrates the belly view of the target aircraft, clearly showing the screen after entering attack mode.Figure 9b depicts the relationship between the position of the three-axis shooting platform and the target aircraft and AI enemy aircraft.

System Overview
This section provides an overview of the three-axis shooting platform drive and control system.Using a digital signal processor as the control core, combined with relevant hardware circuits, it achieves speed and position control.Figure 10a illustrates the block diagram of the control system, consisting of three main parts.The first part employs a digital signal processor as the control computation core.The second part comprises the hardware of the three-axis shooting platform, including a set of visual effect computers, three sets of servos, a joystick, and VR headsets.The third part primarily serves as the interface for receiving digital and network signals, including three sets of encoder signals, Can Bus, RS422, and network communication.The TMS-320F-28377D digital signal processor is a 32-bit floating-point module executing the required instructions for computation.The software program includes position and velocity calculations, iterative learning algorithms, visual effect computer network interfaces, monitoring computers, and multishooting platform interface programs.The visual effect computer selected was a fanless computer produced by Advantech, paired with an RTX2080 Ti graphics card, a company based in Santa Clara, CA, USA.The VR headset chosen was the Oculus model from Meta's Quest series.Figure 10b presents the 3D design diagram of the proposed three-axis platform.A detailed comparison is shown in Table 1. Figure 11 depicts the internal perspective, where personnel manipulate a three-axis joystick to track an AI enemy aircraft.Upon targeting, shooting is initiated by pressing the trigger button.The gearbox was manufactured by SPT with a gear ratio of 240.The motors selected were three TECO PBC08ABKB servo motors, each rated at 750 watts, with parameters detailed in Table 2.

System Overview
This section provides an overview of the three-axis shooting platform drive and control system.Using a digital signal processor as the control core, combined with relevant hardware circuits, it achieves speed and position control.Figure 10a illustrates the block diagram of the control system, consisting of three main parts.The first part employs a digital signal processor as the control computation core.The second part comprises the hardware of the three-axis shooting platform, including a set of visual effect computers, three sets of servos, a joystick, and VR headsets.The third part primarily serves as the interface for receiving digital and network signals, including three sets of encoder signals, Can Bus, RS422, and network communication.The TMS-320F-28377D digital signal processor is a 32-bit floating-point module executing the required instructions for computation.The software program includes position and velocity calculations, iterative learning algorithms, visual effect computer network interfaces, monitoring computers, and multi-shooting platform interface programs.The visual effect computer selected was a fanless computer produced by Advantech, paired with an RTX2080 Ti graphics card, a company based in Santa Clara, CA, USA.The VR headset chosen was the Oculus model from Meta's Quest series.Figure 10b presents the 3D design diagram of the proposed three-axis platform.A detailed comparison is shown in Table 1. Figure 11 depicts the internal perspective, where personnel manipulate a three-axis joystick to track an AI enemy aircraft.Upon targeting, shooting is initiated by pressing the trigger button.The gearbox was manufactured by SPT with a gear ratio of 240.The motors selected were three TECO PBC08ABKB servo motors, each rated at 750 watts, with parameters detailed in Table 2.
Figure 12 illustrates the operational flowchart.Upon pressing the power button on the control box, power is supplied to the cockpit.Subsequently, the computer initiates and enters the human-machine interface.The operator executes the zeroing button, as depicted in the diagram.Once the personnel confirm readiness by being seated, the preparation button is activated.Then, through communication between the servo and the visual computer, pressing the start button enables control of the platform via the joystick.Upon pressing the end button to conclude the game, the platform automatically returns to its original position.Pressing the reset button during startup or operation retains only the zero state, while all other states are cleared, awaiting new instructions.The iterative learning controller and servo software were developed and debugged using Code Composer Studio (CCS) version 8.2.The vision system computer transmits joystick data via the network interface to the servo for updates, calculations, and actuation.The servo system continuously receives commands from the operating computer and transmits the internal state of the servo.The defined packet contents are displayed on the screen for the operator to monitor. Figure 13a-c depicts the wiring of three rotating axes.In Figure 13a, the wire enters the yaw axis bracket hole and passes through to the top exit hole, leaving a length of 500 mm from the bracket to the rotating body.Then, it follows the servo wiring along the roll axis bracket (Figure 13b) and the pitch axis bracket (Figure 13c), while the power and signal for in-cabin use enter from the middle of the bearing on the other side of the pitch axis for internal use. Figure 14a-c illustrates the internal configuration of the control box, divided into three sections.The left section in Figure 14a consists of toggle switches and relays.As shown in Figure 14b, it comprises circuit breakers, digital signal processors, interface boards, and drivers.Figure 14c serves primarily as the power source for in-cabin use and for network communication transmission and reception.
picted in the diagram.Once the personnel confirm readiness by being seated, the preparation button is activated.Then, through communication between the servo and the visual computer, pressing the start button enables control of the platform via the joystick.Upon pressing the end button to conclude the game, the platform automatically returns to its original position.Pressing the reset button during startup or operation retains only the zero state, while all other states are cleared, awaiting new instructions.The iterative learning controller and servo software were developed and debugged using Code Composer Studio (CCS) version 8.2.The vision system computer transmits joystick data via the network interface to the servo for updates, calculations, and actuation.The servo system continuously receives commands from the operating computer and transmits the internal state of the servo.The defined packet contents are displayed on the screen for the operator to monitor. Figure 13a-c depicts the wiring of three rotating axes.
In Figure 13a, the wire enters the yaw axis bracket hole and passes through to the top exit hole, leaving a length of 500 mm from the bracket to the rotating body.Then, it follows the servo wiring along the roll axis bracket (Figure 13b) and the pitch axis bracket (Figure 13c), while the power and signal for in-cabin use enter from the middle of the bearing on the other side of the pitch axis for internal use.

Experimental Results
The servo software was written and debugged using the CCS software and then executed.The visual effects computer was connected to update, compute, and actuate the servos via the network interface.It also constantly receives instructions from the operating screen for the operator to monitor. Figure 13a-c depicts the wiring of three rotating axes.
In Figure 13a, the wire enters the yaw axis bracket hole and passes through to the top exit hole, leaving a length of 500 mm from the bracket to the rotating body.Then, it follows the servo wiring along the roll axis bracket (Figure 13b) and the pitch axis bracket (Figure 13c), while the power and signal for in-cabin use enter from the middle of the bearing on the other side of the pitch axis for internal use.

Experimental Results
The servo software was written and debugged using the CCS software and then executed.The visual effects computer was connected to update, compute, and actuate the servos via the network interface.It also constantly receives instructions from the operating

Experimental Results
The servo software was written and debugged using the CCS software and then executed.The visual effects computer was connected to update, compute, and actuate the servos via the network interface.It also constantly receives instructions from the operating computer and transmits the internal status to the servos.Figure 15 depicts the visual scene, set in an island location to make the flight path more challenging.As the flight attitude varies with different flight path planning, slight rolling effects are observed, as indicated by the fluctuation in height between different green dots.Figure 16a shows the response of three servo systems when controlling the 3-DoF platform using a joystick.Figure 16b,c, respectively, presents the experimental results of the proposed method and traditional control.A joystick was utilized to command the velocity, and the actual speeds of the three servos were measured.It is observed that Figure 16b exhibits better control performance compared to Figure 16c when varying velocities.Figure 17a,b depicts the errors corresponding to Figure 16a,b, respectively.It can be noted that the proposed method yields errors of approximately ±4 degrees per second, which is superior to the errors of approximately ±12 degrees per second obtained using the traditional PI control.Figure 18 illustrates the control test of the position loop.When a ±100-degree forward and reverse motion is provided, the response diagram of the three-axis angle and speed is obtained.Figure 19a-c shows the servo response after zeroing.It can be observed from Figure 19a that the pitch axis moves clockwise, while the roll axis and yaw axis move counterclockwise, as shown in Figure 19b.The angular acceleration of the three axes is shown in Figure 19c.After zeroing is completed, a pitch down command is issued to the pitch axis, and the ball will move from the zero-degree position to −25 degrees, stopping at a position where personnel can enter, as shown in Figure 18. Figure 20 illustrates that when personnel enter the ball and the operator issues a centering command, the turret will realign and prepare to enter the experiential course.Figure 21a,b shows the three-axis commands received by the servos in the first-stage scene.The servos operate passively, providing the crew with a sense of immersion.Figure 22a-c illustrates the second-stage scene where the servos are controlled by the joystick.At this time, the servos operate actively, providing the crew with a real-time sense of shooting at enemy aircrafts.It can be seen from the figures that the red and black lines have no values, indicating no joystick control, and the roll axis flight attitude is approximately within ±15 degrees.In Figure 23a, it can be observed that at 12.5 s the pitch axis will pitch down to −25 degrees and the ball will move to a position where the experiential personnel can dismount.Due to the aircraft being hit, the visual effects computer will simulate a momentary shaking sensation through the roll axis, as shown in Figure 23b,c.From the figure, it can be seen that there are four hits, as reflected by the four shaking effects.The quantitative results are summarized in Table 3.
Appl.Syst.Innov.2024, 7, x FOR PEER REVIEW 15 of 24 control.A joystick was utilized to command the velocity, and the actual speeds of the three servos were measured.It is observed that Figure 16b exhibits better control performance compared to Figure 16c when varying velocities.Figure 17a,b depicts the errors corresponding to Figure 16a,b, respectively.It can be noted that the proposed method yields errors of approximately ±4 degrees per second, which is superior to the errors of approximately ±12 degrees per second obtained using the traditional PI control.Figure 18 illustrates the control test of the position loop.When a ±100-degree forward and reverse motion is provided, the response diagram of the three-axis angle and speed is obtained.Figure 19a-c shows the servo response after zeroing.It can be observed from Figure 19a that the pitch axis moves clockwise, while the roll axis and yaw axis move counterclockwise, as shown in Figure 19b.The angular acceleration of the three axes is shown in Figure 19c.After zeroing is completed, a pitch down command is issued to the pitch axis, and the ball will move from the zero-degree position to −25 degrees, stopping at a position where personnel can enter, as shown in Figure 18. Figure 20 illustrates that when personnel enter the ball and the operator issues a centering command, the turret will realign and prepare to enter the experiential course.Figure 21a,b shows the three-axis commands received by the servos in the first-stage scene.The servos operate passively, providing the crew with a sense of immersion.Figure 22a-c illustrates the second-stage scene where the servos are controlled by the joystick.At this time, the servos operate actively, providing the crew with a real-time sense of shooting at enemy aircrafts.It can be seen from the figures that the red and black lines have no values, indicating no joystick control, and the roll axis flight attitude is approximately within ±15 degrees.In Figure 23a, it can be observed that at 12.5 s the pitch axis will pitch down to −25 degrees and the ball will move to a position where the experiential personnel can dismount.Due to the aircraft being hit, the visual effects computer will simulate a momentary shaking sensation through the roll axis, as shown in Figure 23b,c.From the figure, it can be seen that there are four hits, as reflected by the four shaking effects.The quantitative results are summarized in Table 3.

Conclusions
This study developed a 3-DoF shooting platform that combines interactivity with virtual reality to achieve high-fidelity effects.Participants can control the roll, pitch, and yaw axes using a joystick, while the roll axis movement is partially determined by the visual effects computer based on the target aircraft's attitude.When encountering attacks from AI opponents, the platform generates shaking on the roll axis, enhancing immersion in the virtual reality environment.ILC is employed to mitigate mechanical backlash in the 3-DoF servos, complemented by network connectivity and integration with visual effects computer scenes.This setup produces fully immersive 3D stereoscopic images, making participants feel as if they are in a real-world scenario.The experimental results reveal the simulator's advanced capabilities in several critical areas.Firstly, the system demonstrates exceptional precision and responsiveness in servo control, ensuring smooth and accurate movements of the platform.Secondly, the visual effects interaction is highly realistic, with dynamic and responsive visual feedback that enhances the overall user experience.The 3-DoF control is effective and intuitive, allowing users to engage with the simulation naturally and accurately.Finally, the hardware development is robust and reliable, providing a stable and high-performance foundation for the simulation system.Overall, the experimental outcomes confirm the feasibility and effectiveness of the developed three-axis

Conclusions
This study developed a 3-DoF shooting platform that combines interactivity with virtual reality to achieve high-fidelity effects.Participants can control the roll, pitch, and yaw axes using a joystick, while the roll axis movement is partially determined by the visual effects computer based on the target aircraft's attitude.When encountering attacks from AI opponents, the platform generates shaking on the roll axis, enhancing immersion in the virtual reality environment.ILC is employed to mitigate mechanical backlash in the 3-DoF servos, complemented by network connectivity and integration with visual effects computer scenes.This setup produces fully immersive 3D stereoscopic images, making participants feel as if they are in a real-world scenario.The experimental results reveal the simulator's advanced capabilities in several critical areas.Firstly, the system demonstrates exceptional precision and responsiveness in servo control, ensuring smooth and accurate movements of the platform.Secondly, the visual effects interaction is highly realistic, with dynamic and responsive visual feedback that enhances the overall user experience.The 3-DoF control is effective and intuitive, allowing users to engage with the simulation naturally and accurately.Finally, the hardware development is robust and reliable, providing a stable and high-performance foundation for the simulation system.Overall, the experimental outcomes confirm the feasibility and effectiveness of the developed three-axis shooting platform, achieving a high level of immersion and coordination with AI-controlled enemy aircrafts.This innovative approach sets a new standard for shooting simulation systems, emphasizing the integration of advanced control mechanisms, realistic visual effects, and interactive elements to create a compelling and engaging user experience.Future research should address several limitations of the current approach.One potential area is the development of adaptive control algorithms to improve the system's response to varying loads and dynamic conditions.Additionally, integrating augmented reality (AR) with virtual reality VR could create even more immersive training environments, enhancing the overall effectiveness of the system.

Figure 1 .
Figure 1.The previous closed-loop control system.

i
are the d -axis and q -axis currents, s r is the resistance of the motor, d L and q L are the inductances,  m is the flux linkage, and  re is the electrical speed of motor.

Figure 1 .
Figure 1.The previous closed-loop control system.

Figure 2 .
Figure 2. Closed-loop speed control system block diagram.Figure 2. Closed-loop speed control system block diagram.

Figure 2 .
Figure 2. Closed-loop speed control system block diagram.Figure 2. Closed-loop speed control system block diagram.

Figure 3 .
Figure 3. Closed-loop angle control system block diagram.Considering the representation of the angle controller in the frequency doma

Figure 4 .
Figure 4. Iterative learning control diagram.D-type iterative learning control (DILC) is represented as follows:

Figure 5 .
Figure 5.The proposed closed-loop control system.Figure5.The proposed closed-loop control system.

Figure 9 .
Figure 9. AI Interface design: (a) cockpit view and (b) relationship between target aircraft and AI enemy aircraft.

Figure 11 .
Figure 11.Aiming at AI enemy aircraft with joystick.Figure 11.Aiming at AI enemy aircraft with joystick.

Figure 13 .Figure 14 .
Figure 13.Illustrates the wiring of the three rotating axes of the platform: (a) yaw axis; (b) roll axis; and (c) pitch axis.

Figure 13 .
Figure 13.Illustrates the wiring of the three rotating axes of the platform: (a) yaw axis; (b) roll axis; and (c) pitch axis.

Figure 13 .Figure 14 .
Figure 13.Illustrates the wiring of the three rotating axes of the platform: (a) yaw axis; (b) roll axis; and (c) pitch axis.

Figure 14 .
Figure 14.Depicts the internal configuration of the electrical control box: (a) left distribution panel; (b) main distribution panel; (c) right distribution panel.

Figure 15 .
Figure 15.Visual effects scene flight path.Figure 15.Visual effects scene flight path.

Figure 15 .
Figure 15.Visual effects scene flight path.Figure 15.Visual effects scene flight path.

Figure 16 .
Figure 16.Measured response of angular velocity response for the 3-DoF platform controlled by joystick: (a) test photo image; (b) proposed; and (c) PI.

Figure 23 .
Figure 23.Measured response of interaction between second segment virtual scene and physical sphere: (a) angle; (b) angular velocity; and (c) angular acceleration.

Figure 23 .
Figure 23.Measured response of interaction between second segment virtual scene and physical sphere: (a) angle; (b) angular velocity; and (c) angular acceleration.

Table 1 .
A comparison of existing studies.

Table 1 .
A comparison of existing studies.

Table 2 .
Parameters of the motor.

Table 3 .
Quantitative comparison of proposed method effectiveness.

Table 3 .
Quantitative comparison of proposed method effectiveness.