A multi-motor speed synchronization control enhanced by artificial bee colony algorithm

Relative coupling control (RCC) structure is widely used for multi-motor speed synchronization control. To improve the performance of multi-motor synchronous control, artificial bee colony (ABC) algorithm is developed and applied for enhancing RCC structure. The RCC structure optimized by the ABC algorithm is called the RCC-ABC structure. In the RCC-ABC structure, the ABC algorithm optimizes both the fixed compensation factor in the speed compensator and the parameters of the PID controller acting as a tracking controller. Simulation experiments based on a four-motor system are conducted to validate the efficiency of the RCC-ABC structure. Simulation results show that the RCC-ABC structure has better synchronization and tracking performance compared to the RCC structure.


Introduction
2][3] Synchronization control structures and tracking controllers for multi-motor systems are not only the key to achieving high precision synchronous control but also directly affect the reliability of industrial systems and product manufacturing quality.
At present, the research work on multi-motor speed synchronous control is mainly focused on synchronous control structures and tracking controllers.The main synchronous control structures are master-slave control (MSC) structure, 4 cross-coupling control (CCC) structure, 5 adjacent cross-coupling control (ACCC) structure, 6 and relative coupling control (RCC) structure. 7he most popular synchronous control structure used for multi-motor systems is RCC.To further promote the reliability and effectiveness of RCC, Shi et al. 8 presented an improved relative coupling control structure (IRCC) that introduced an additional speed controller to treat all the motors as an entity.Zhu et al. 9 proposed a mean relative coupling control (MRCC) for multimotor systems.In MRCC, the average speed was used to replace the speed difference between each motor, which simplified the structure of the RCC structure and reduced the calculation of the system.Based on MRCC, Wang et al. 10 proposed a decoupled control structure with synchronous control of the inner loop and following control of the outer loop.Its effectiveness was verified by practical experiments.One major issue in RCC is that the motor synchronization performance is affected by the fixed compensation factors, which are related to the motor's rotational inertia.Therefore, when the load torque varies significantly, the multi-motor system fluctuates greatly and is even unstable.
The tracking accuracy of multi-motor systems is closely related to tracking controllers.In this regard, many controllers, such as proportional integral derivative (PID), 11 sliding mode control (SMC), 12 fuzzy control, 13 neural network control, 14 have been proposed.However, the multi-motor system is a nonlinear, multivariable, and strongly coupled control object.More optimized tracking controllers are needed to further boost the tracking accuracy.
Karaboga and Akay 15 developed the ABC algorithm as one of the bio-inspired optimization methods.Due to its ease of structure, implementation, and wellorganized exploitation and exploration techniques, the ABC algorithm has demonstrated remarkable performance on a variety of actual tasks. 16Many applications have been developed based on the ABC algorithm, including wireless sensor networks, 17 big data, 18 image processing, 19 deep learning, 20 and so on.For existing bio-inspired optimization algorithms, the ABC algorithm remained the top competitor.The literature 21 provides a comprehensive overview of recent advancements and real-world applications.3][24] However, it is worth noting that the application of the ABC algorithm to RCC has rarely been reported.
In this study, we aimed to address these questions by introducing the ABC algorithm in the RCC structure to improve the synchronization performance and tracking performance.Besides, the significant contribution of this study is that a relative coupling control optimized by ABC (RCC-ABC) structure for multi-motor systems using ABC algorithm is proposed.
The rest of the paper is organized into four sections.An introduction is presented in Section 1, followed by the proposed structure, and simulation analysis and validation in Sections 2 and 3, respectively.Section 4 concludes the proposed work.

Traditional RCC structure
Traditional RCC mainly consists of speed compensators and tracking controllers, the structure of which is presented in Figure 1.In Figure 1, e S i is the speed compensation from the speed compensator i, and it can be expressed by the following equation where m represents the total number of motors, P ij is a fixed compensation factor, and it can be given by where J i is the rotational inertia of motor i, J j is the rotational inertia of motor j.From Figure 1, the input E N i to the tracking controller can be expressed as where N ref is the motor reference speed.
Speed compensators dynamically distribute the speed compensation among the motors according to the operating status of each motor.Tracking controllers enable motors to reach the desired speed accurately.The synchronization of multiple motors requires the convergence of errors among the motors, the following conditions must be satisfied where e i1 is speed error between motor i and motor 1, N i is the speed of the motor i, N 1 is the speed of the motor 1, e ij is speed error between motor i and motor j, N j is the speed of the motor j, e im is speed error between motor i and motor m, N m is the speed of the motor m, m represents the total number of motors.
The RCC optimized by the ABC (RCC-ABC) The RCC-ABC proposed in this paper incorporates the ABC algorithm to improve its synchronization performance and tracking performance, and its structure is shown in Figure 2. In the RCC-ABC, the ABC algorithm optimizes the parameters of two kinds.One is the fixed compensation factor (P i1 ,., P im ) and the other is the gain (k P i , k I i , and k D i ) of the PID controller that is used for tracking controller.
In the ABC algorithm, the bees are divided into three types: employed bees, follow bees, and scout bees.A search phrase is set for one type of bees, namely: employed bees phase, follow bees phase, and scout bees phase. 15In the beginning, the algorithm uses a random initialization method to generate the initial population, and its generation method is shown in the following equation ( 5) where i = 1,.,SN,n = 1,.,D.SN represents the population size, D represents the dimension of the problem, rand(0,1) is a random number between 0 and 1, X j max and X j min represents the upper and lower bounds of the individual jth dimension, respectively.
In the stage of the employed bees, the employed bees search for a food source according to equation (6) where k2(1,., SN) and k 6 ¼ i; j2(1,., D). u j i is a uniformly distributed random number on [21,1].
In the follow bees stage, the follow bees use the information that the employed bees share, to select the  food source according to the probability calculated by the following equation (7).
where fit i represents the fitness value of the ith food source.
In the scout bee stage, a food source, if its quality that has not been getting better several times in a row (''limit'' is denoted as the maximum number of times), will be discarded.The following bee searching for this food source will turn into the scout bee.In the ABC algorithm, the food source corresponds to the candidate solution of the optimization problem, and the quality of the food source represents the good or bad candidate solution.
In this paper, performance index (PI) as the fitness value is defined as follows: Comparing the RCC-ABC with the RCC, the differences lie in three aspects.
(1) Difference in structure: In the RCC, there are no ABC algorithms and the motor speed errors are only fed back into the tracking controllers.
The RCC-ABC owns additional ABC algorithms, which makes the parameters in the system more flexible.Motor speed errors are not only fed back into the tracking controller but also into the ABC algorithm through the objective function, which provides the performance index for the ABC algorithm.(2) Difference in synchronized information: When applying the RCC, there is no distinction of synchronization error between motors.Regardless of the change in synchronization error, P ij remains constant.The RCC-ABC instead emphasizes synchronized information through the ABC algorithm to adjust the value of parameter P ij according to motor speed error.(3) Difference in tracking capability: The RCC uses PID controllers or sliding mode controllers as tracking controllers.The parameters of both controllers are not optimal, and the tracking capability of both controllers needs to be further improved.In the RCC-ABC, the tracking controllers are PID controllers of which three gains are precisely tuned by the ABC algorithm.
The tracking capability of the tracking controller is optimized.
The flowchart in Figure 3 summarizes the steps of the ABC algorithm to find the optimal parameters [P i1 ,., P im , k P i , k I i , and k D i ] of the RCC.In the next section, the RCC-ABC will be further analyzed by simulation.

Simulation analysis and validation
The RCC-ABC is verified from two aspects: one is synchronization performance and the other is tracking performance.Synchronization is affected by sudden changes in load torque T L i , so it is verified from no change in load torque T L i and sudden changes in load torque T L i .The tracking performance is affected by the reference speed N ref , so it is simulated at different reference speed N ref .
The modeling and simulation of the four-motor speed synchronous system are carried out by using MATLAB/Simulink.The motors used in the simulation are four permanent magnet synchronous motors (PMSMs).The simulation parameters of PMSMs are shown in Table 1.The modeling of PMSM can be found in the literature. 9he population size and limit affect the performance of the ABC algorithm.First, a test was done to find the appropriate population size, and results are shown in Table 2.In Table 2, synchronous error E ij , is the speed error between the motor i and motor j; Mean is the mean value of the synchronous error; Std is the standard deviation of the synchronous error.
From Table 2, in terms of Mean and Std, population size of 50 is better than population size of 40, and almost tied with population size of 60 and 70.But in terms of running speed, population size of 50 is faster than population size of 60 and 70.As a result, population size of ABC algorithm was set to 50 for all experiments.The other test was performed to determine the optimal value of the limit, and results are shown in Table 3. From Table 3, it can be observed that Mean and Std are obtained as minimum at limit for 180.Therefore, the limit is set to 180 for all experiments.The final parameters of the ABC algorithm are presented in Table 4.  and RCC-ABC, PID controllers were selected as tracking controllers, and its three parameters k p , k i , and k d are set to 5.6, 0.3, and 1.1, respectively.A comparison of the RCC-ABC and the RCC was made.The simulation results are presented in Figure 4.In Figure 4, synchronous error E ij , is the speed error between the motor i and motor j.In addition.

Synchronization simulation
From Figures 4 and 5, the motor responses of the RCC-ABC look more closely than that of the RCC (Figures 4(a  From Figures 6-13, it can be observed with the same two advantages as in Figures 4 and 5: response of four motors is closer to each other and the synchronous error has a smaller Mean and Std.It is also observed that the synchronous error E ij becomes larger due to the sudden increase of load torque T L i .As the number of motors with sudden changes in load torque T L i increases, the trend of increasing synchronous error E ij is obvious.The motor with the greatest variation in load torque has the worst synchronization.The load torque of motor 1 changed from 9 to 18 in Case 1. Motor 1 has the worst synchronization with RCC.But          our RCC-ABC keeps the four motors in good synchronization.The same is true for Case 2, Case 3, and Case 4. In any case, however, the RCC-ABC remains well synchronized.
In summary, the RCC-ABC can keep the speed of each motor in the multi-motor system uniform regardless of the load torque variation, compared with the RCC.

Tracking simulation
Let the maximum value of reference speed N ref be 200, 400, 600, and 800 r/min, respectively.The input types of reference speed N ref were sine, square wave, and triangle wave.The load torques T L i of the four motors were set to 9, 11, 13, and 15 N/m, respectively.Simulation time t = 40s.The sampling frequency of sine, square wave, and triangle wave was is set to 0.001 Hz.In RCC-ABC, in addition to the PID controller optimized with the ABC algorithm (PID with ABC), two other tracking controllers, SMC 12 and PID controllers 11 were used as a comparison.The parameters k p , k i , and k d of PID for four motors remain 5.6, 0.3, and 1.1, respectively.The parameters k p , k i , and k d of PID with ABC four motors are shown in Table 5. Due to space limitations, only the simulation results of motor 1 are listed in Figures 14-25.
In Figures 14-17, the speed profile obtained by PID with ABC is closer to the reference speed profile than SMC and PID.The tracking error obtained by the PID with ABC changes more slowly and is always in a decreasing trend, and finally converges to 0. In contrast to PID with ABC, the tracking error obtained by SMC and PID has large fluctuations that persist until the end of the simulation time.Another noteworthy point is that Mean and Std of the tracking errors obtained by PID with ABC are the smallest for sine input.So the above results verify that the tracking performance of PID with ABC is superior to SMC and PID under sine input.
Next are the simulation results for square wave input and triangle wave input.A common feature can be seen in Figures 18-25: sharp changes in speed lead to a large tracking error that rises with the increase of the maximum value of reference speed.However, this feature is not present in sine input due to its smoother variation (Figures 14-17).The response of motor 1 obtained by PID with ABC is nearer to the reference speed than SMC and PID during the speed smoothing (enlarged plots in Figures 18-21) and speed rising phases (enlarged plots in Figures 22-25).While in the rapid speed change phase (enlarged plots in Figures 18-25), PID with ABC has a small overshoot and quickly transitions to the smoothing and rising phases.In addition, Mean and Std of the tracking error obtained by PID with ABC are also smallest than the other two trackers.The above illustrates that the tracking effect of PID with ABC is better than SMC and PID under square and triangular wave inputs.
In summary, RCC-ABC has good tracking performance under different types of reference speed inputs.

Conclusions
The main goal of the current study was to advance the RCC structure for multi-motor speed synchronization control by incorporating the ABC algorithm.The findings indicate that the RCC-ABC structure was preferable to the RCC structure given the synchronization

Figure 3 .
Figure 3.The flowchart of the ABC algorithm to find the optimal parameters.

1 , 3 ,
No sudden change in load torque.Let the given reference speed N ref = 1000 r/min.The load torques T L and T L 4 of the four motors were 9, 11, 13, and 15 N/m, respectively.Simulation time t = 0.4 s.In RCC

. 2 , T L 3 ,
) and 5(a)), while the two types of compensators do not show much difference in the synchronous errors curve.From Figures4(b) and 5(b), it is also shown that the difference between both methods in terms of Mean and Std of the synchronization errors are not significant.The reason for the observation is that RCC-ABC and RCC are applied in the absence of sudden changes in load torque T L i Sudden change in load torque.The reference speed N ref and simulation time t were also set to 1000 r/min and 0.4 s respectively.In the RCC, PID controllers were also selected as tracking controllers.Sudden change in load torque T L i was divided into four cases:Case 1: The initial load torque T L 1 of motor 1 was 9 N/ m, which changed abruptly to 18 N/m after 0.2 s; The load torques T L and T L 4 of motor 2, motor 3, and motor 4 remain 11, 13, and 15 N/m, respectively.

Case 2 : 1 , 1 ,
The initial load torque T L 1 and T L 2 of motor 1 and motor 2 were 9 and 11 N/m, respectively, which changed abruptly to 18 and 22 N/m after 0.2 s respectively; the load torques T L 3 and T L 4 of motor 3 and motor 4 remain 13 and 15 N/m, respectively.Case 3: The initial load torque T L motor 2, and motor 3 were 9, 11, and 13 N/m, respectively, which changed abruptly to 18, 22, and 26 N/m after 0.2 s, respectively; the load torques T L 4 of motor 4 remain 15 N/m.Case 4: The initial load torque T L motor 2, motor 3, and motor 4 were 9, 11, 13, and 15 N/m, respectively, which changed abruptly to 18, 22, 26, and 30 N/m after 0.2 s, respectively.The simulation results for the four cases are shown in Figures5-8.

Figure 5 .
Figure 5. RCC and PID controller used in no changes in load torque: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 4 .
Figure 4. RCC-ABC and PID controller used in no changes in load torque: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 7 .
Figure 7. RCC and PID controller used in case 1: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 8 .
Figure 8. RCC-ABC and PID controller used in case 2: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 9 .
Figure 9. RCC and PID controller used in case 2: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 6 .
Figure 6.RCC-ABC and PID controller used in case 1: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 11 .
Figure 11.RCC and PID controller used in case 3: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 12 .
Figure 12.RCC-ABC and PID controller used in case 4: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 13 .
Figure 13.RCC and PID controller used in case 4: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 10 .
Figure 10.RCC-ABC and PID controller used in case 3: (a) motor speed, (b) synchronous error curve, and (c) variation of three-phase current of motor 1.

Figure 14 .
Figure 14.Comparison of tracking controllers for sine input at a maximum speed of 200 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.
performance and tracking performance.These findings shed new light on optimization methods applying to multi-motor speed synchronization control.Some limitations to our study should be noted, including that we have only verified the RCC-ABC structure from simulation experiments, and the settings in the simulation experiments are idealized.Future work will investigate that the effect of other advanced optimization algorithms, such as particle swarm optimization (PSO), differential evolution (DE), genetic algorithms (GA), etc., or variant ABC algorithms on the enhancement of the RCC structure.

Figure 15 .
Figure 15.Comparison of tracking controllers for sine inputs at a maximum speed of 400 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 16 .
Figure 16.Comparison of tracking controllers for sine input at a maximum speed of 600 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 17 .
Figure 17.Comparison of tracking controllers for sine input at a maximum speed of 800 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 19 .
Figure 19.Comparison of tracking controllers for square wave input at a maximum speed of 400 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 20 .
Figure 20.Comparison of tracking controllers for square wave input at a maximum speed of 600 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 18 .
Figure 18.Comparison of tracking controllers for square wave input at a maximum speed of 200 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 22 .
Figure 22.Comparison of tracking controllers for triangle wave input at a maximum speed of 200 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 23 .
Figure 23.Comparison of tracking controllers for triangle wave input at a maximum speed of 400 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Figure 21 .
Figure 21.Comparison of tracking controllers for square wave input at a maximum speed of 800 r/min: (a) response of motor 1, (b) tracking error curve of motor 1, and (c) variation of three-phase current of motor 1 for PID with ABC.

Table 2 .
Test results for different population size.

Table 3 .
Test results for different limit.

Table 4 .
The parameters of the ABC algorithm.

Table 1 .
The parameters of PMSMs.

Table 5 .
The parameters of PID with ABC.