Stabilization and Speed Control of a Permanent Magnet Synchronous Motor with Dual-Rotating Rotors

: The permanent magnet synchronous motor (PMSM) with dual-rotating rotors is a typical nonlinear multi-variable coupled system. It is sensitive to load disturbances and the change of interior parameters. The traditional proportional-integral (PI) controller is widely used in the speed control of a motor because of its simplicity; however, it cannot meet the requirements needed for high performance. In addition, when the loads of both of the rotors change, it is difﬁcult to ensure that the system runs stably. With an aim to mitigate these problems, a method called master-slave motor control is proposed to guarantee the stability of the motor system in all cases. And then, a speed controller is designed to eliminate the inﬂuence of uncertain terms. The proposed control strategy is implemented both in simulations and in experiments. Through the analysis and comparison of the proportional-integral (PI) controller and the sliding-mode controller, the effectiveness of the proposed control strategy is validated.


Introduction
The permanent magnet synchronous motor (PMSM) has been widely utilized in different industry fields because of its superior power density, high torque, and high efficiency [1,2]. Similar to the traditional PMSM, the PMSM with dual-rotating rotors also has characteristics such as high efficiency, high torque capability, and compact size, and has been a topic of research in the last couple of decades [3,4]. Thus, the PMSM with dual-rotating rotors has been widely used in various applications such as electric ships, UVs (underwater vehicles), hybrid electric vehicles, and airplane propulsion due to its compact construction and high-power density [5,6].
Usually, a motor with multiple rotating rotors can be looked at as multiple traditional motors connected in parallel or in series [4,[7][8][9]. For the topology of the motor with dual-rotating rotors, the two working surfaces of the stator core are used and the winding end portion is greatly shortened, which allows the machine to exploit a much higher percentage of the stator winding for the production of the machine torque, compared with conventional machines. Although the PMSM with dual-rotating rotors has these advantages, it also faces an unavoidable problem of how to keep the speed of both rotors synchronized when the load changes. For the traditional PMSM, the solution for synchronism is that the electromagnetic torque must be equal to the load torque, and the rotor rotation speed must be synchronized with the magnetic field rotation speed. Similarly, for the PMSM with dual-rotating rotors, each rotor's rotation speed should also be synchronized with the magnetic field rotation speed. For the inverter (VSI). The PMSM with dual-rotating rotors can be considered as having both permanent magnet motors connected in series. For convenience of explanation, the PMSM with dual-rotating rotors can be regarded as being two PM motors connected in series; motor 1 and motor 2 are named. In Figure 1a, motor 1 consists of half of the stator (stator iron and toroidal windings) and rotor 1. Similarly, motor 2 consists of the other half of the stator and rotor 2.
As is illustrated in Figure 1b, the overview of the stator is shown. In order for both of the rotors to rotate in the anti-direction, the phase order of toroidal windings must be opposite. The opposite phase order can be developed through shifting two phase windings (phase B and C). When the three-phase power is supplied to the motor, both magnetic fields can develop and rotate in opposite directions at the two sides of the stator. The rotor flux separately interacts, with respective rotating fields, to develop the electromagnetic torques which drive the two rotors to run in the opposite direction [4,16,17]. The prototype of the motor is shown in Figure 1c.

Mathematical Modeling and Control Methodology
In order to facilitate the description of the proposed control strategy in the paper, it is necessary to introduce the mathematical model of the motor, the speed controller designed based on SMC, and the study of stable operation.

Mathematical Modeling
For mathematical modeling, it was necessary to introduce the d-q1 synchronization reference frame (for motor 1) and d-q2 (for motor 2) synchronization reference frame. The two rotors rotated in the opposite direction, and the armature magnetic fields also rotated in the opposite direction. For both rotors, the directions of the two angular speeds are the same [4,16,17], namely that the rotation directions for the two d-q reference frames in space are the same. Therefore, both rotors can be put in a uniform d-q coordinate frame for analysis.
In order to explain the mathematical modeling, it was assumed that the magnetic flux of the two PM motors was not saturated, the magnetic field was sinusoidal, and the influence of the magnetic hysteresis was negligible. Because of being connected in series, the stator voltage equations of the PMSM with dual-rotating rotors can be expressed as follows: As is illustrated in Figure 1b, the overview of the stator is shown. In order for both of the rotors to rotate in the anti-direction, the phase order of toroidal windings must be opposite. The opposite phase order can be developed through shifting two phase windings (phase B and C). When the three-phase power is supplied to the motor, both magnetic fields can develop and rotate in opposite directions at the two sides of the stator. The rotor flux separately interacts, with respective rotating fields, to develop the electromagnetic torques which drive the two rotors to run in the opposite direction [4,16,17]. The prototype of the motor is shown in Figure 1c.

Mathematical Modeling and Control Methodology
In order to facilitate the description of the proposed control strategy in the paper, it is necessary to introduce the mathematical model of the motor, the speed controller designed based on SMC, and the study of stable operation.

Mathematical Modeling
For mathematical modeling, it was necessary to introduce the d-q1 synchronization reference frame (for motor 1) and d-q2 (for motor 2) synchronization reference frame. The two rotors rotated in the opposite direction, and the armature magnetic fields also rotated in the opposite direction. For both rotors, the directions of the two angular speeds are the same [4,16,17], namely that the rotation directions for the two d-q reference frames in space are the same. Therefore, both rotors can be put in a uniform d-q coordinate frame for analysis.
In order to explain the mathematical modeling, it was assumed that the magnetic flux of the two PM motors was not saturated, the magnetic field was sinusoidal, and the influence of the magnetic hysteresis was negligible. Because of being connected in series, the stator voltage equations of the PMSM with dual-rotating rotors can be expressed as follows: where ψ is the permanent magnet flux linkage, ω 1 is the electrical angular speed of rotor 1, ω 2 is the electrical angular speeds of rotor 2. There is R s1 = R s2 = R s and L d = L q = L, where R s is the stator resistance and L d and L q are the d-q axes stator inductances, respectively. In (1) and (2), the subscript n = 1 or n = 2 indicates whether the quantity corresponds to the d-q1 reference frame (for motor 1) or d-q2 reference frame (for motor 2).
The mechanical model of the two motors can be described as follows: where J is the moment of inertia. T l1 and T l2 and T e1 and T e2 are the load torques and the electromagnetic torques, respectively. θ 1 and θ 2 are the angular positions of both rotors.
Using the method of field-oriented control (FOC), the d-axis current should be controlled to be zero, namely i d = 0. When balanced load torques (T l1 = T l2 ) were applied to both rotors, both of the rotors rotated at the same speed during the steady operation. For the motor system, there was ω 1 = ω 2 = ω and θ 1 = θ 2 = θ. Meanwhile, the load torque angles δ 1 and δ 2 satisfied the relationship of δ 1 = δ 2 = 90 • . The electromagnetic torque mathematic model can be expressed as where p is the number of pole pairs. Figure 2a demonstrates the vector diagram in the case of balanced load torques (T l1 = T l2 ).
where  is the permanent magnet flux linkage, 1  is the electrical angular speed of rotor 1, 2  is the electrical angular speeds of rotor 2. There is the stator resistance and d L and q L are the d-q axes stator inductances, respectively. In (1) and (2), the subscript 1 n  or 2 n  indicates whether the quantity corresponds to the d-q1 reference frame (for motor 1) or d-q2 reference frame (for motor 2).
The mechanical model of the two motors can be described as follows: where J is the moment of inertia.
When the load torque is suddenly applied to the rotor, the rotation speed of the rotor may change, which makes ω 1 and ω 2 unequal. Consequently, the next goal was to drive both rotors to rotate at the same speed in a steady state. Using the method of field-oriented control (FOC), the flux linkage of rotor 1 (ψ 1 ) was oriented. Therefore, motor 1 (called the 'master motor') could be controlled so that the torque angle of rotor 1 satisfied the relationship of δ 1 = 90 • . As shown in Figure 2b, the ψ 2 led the ψ 1 when T l1 > T l2 and there was δ 2 < 90 • . But when T l1 < T l2 , the ψ 2 lagged behind the ψ 1 , and there was δ 2 > 90 • , as shown in Figure 2c. Consequently, the electromagnetic torque should be rewritten as follows:

Stability Analysis of the PMSM System
The proposed motor is distinguished by both of its rotors rotating at the same rate as the magnetic field which drives it. This synchronism has to always be respected whenever the load torques change. When the load torque (T li ) is applied to the rotor, to ensure the stability of the PMSM with dual-rotating rotors, the electromagnetic torque must tend towards this value: T ei = T li . The subscript i = 1 or i = 2 suggests whether the quantity corresponds with motor 1 or motor 2.
As described above, motor 1 was the master motor while motor 2 was the slave motor. For the master motor (motor 1), ψ 1 was always oriented, and there was T e1 = 3pψ 2 i q and δ 1 = 90 • . For the slave motor (motor 2), the following is mainly to discuss whether its electromagnetic torque was equal to its load torque.
∴⇒ The stability of slave motor 2 cannot be guaranteed.

Using the Rotor Position to Select the Master Motor
The positions of both the rotors can change when the load torques change, as mentioned above: If there is T l1 ≥ T l2 , the angular position meets θ 1 ≤ θ 2 , and motor 1 can be selected as the master motor, and motor 2 can also run stably. If there is T l1 < T l2 , the angular position meets θ 1 > θ 2 . If the ψ 1 is oriented and the master motor is motor 1, motor 2 cannot run stably.
Therefore, the main motor can be selected by comparing the sizes of both the rotor positions. When the angular position meets θ 1 > θ 2 , motor 2 becomes the master motor and motor 1 is the slave motor. Because of re-orienting to ψ 2 , the master motor is motor 2. As a result, this situation is the same as case 2 (T l1 > T l2 ) mentioned above, in which the slave motor can run stably. In short, the motor to which the higher load torque is applied has to be chosen as the master and, accordingly, the stability of both the motors can be ensured.

Sliding-Mode Speed Controller Design
Compared with other nonlinear control methods, SMC is more insensitive to internal parameter variations and external disturbances once the system trajectory reaches, and stays on, the sliding surface. In general, the SMC design can be divided into two steps: The first step is to choose a suitable sliding-mode surface; and the second step is to design the control input so that the system trajectory is forced to the sliding-mode surface, which ensures the system satisfies the sliding-mode reaching condition that is expressed as follows: s where s is the sliding-mode surface.
The state variable of the system can be expressed as follows: where ω * is the desired speed, and ω is the actual speed. Thus, the differential equations are given as follows: . ..
As mentioned above, motor 1 or motor 2 can be chosen as the master motor. When the master motor is motor 1, substituting Equations (3) and (5) into Equation (11), the differential Equation (11) can be rewritten as follows: ..
For simplification, we can rewrite Equations (12) and (13). Defining A = 3pψ 2J , the state space expression of the motor system can be written as follows: A typical sliding-mode surface can be chosen as follows: A typical sliding-mode surface can guarantee the asymptotic stability of the sliding mode, and the asymptotic rate of convergence is in direct relation with the value of c. Therefore, the control input of the system should be designed in such a way that the sliding-mode reaching condition (inequality (9)) is met. In order to improve the dynamic quality of the system, an exponential reaching law is used to design the controller. Thus, the reaching law is usually chosen as follows: Taking the time derivative of the sliding-mode surface (15) yields Substituting Equation (14) into Equation (17), the following equation can be obtained as follows: .
Substituting Equation (16) into Equation (18), then the following can be obtained as follows: Therefore, the control input i * q is designed as follows: In practical application, there are undesired chattering phenomena in sliding-mode control. To improve the robustness of the motor system, the boundary layer technique [2,18] is used to eliminate the chattering caused by the sgn function in (20). Therefore, the sat function takes place of the sgn function. The sat function is as follows: where δ is the boundary layer and chosen to be 2. So, the control input i * q can be rewritten as follows: If the Lyapunov function V = 1 2 s 2 is chosen, the following sliding condition can be derived: According to the Lyapunov stability criterion, the designed control system is stable. For improving the response speed and decreasing the steady state error, the absolute value of the speed error is taken into account when choosing the variable parameter in the simulation. As shown in Figure 3, |x 1 | is the absolute value of the speed error, and n i is the given comparison value, n 1 < n 2 < · · · < n i ; and k i is the corresponding coefficient changing with n i , k 0 < k 1 < · · · < k i . For improving the response speed and decreasing the steady state error, the absolute value of the speed error is taken into account when choosing the variable parameter in the simulation. As shown in Figure 3, 1 x is the absolute value of the speed error, and i n is the given comparison value, 1 2 i n n n     ; and i k is the corresponding coefficient changing with i n , Figure 3. Flow chart of variable k.

Simulation and Experimental Results
In this section, the simulation and experimental results are presented to demonstrate the effectiveness of the proposed control scheme. In order to compare the control performance, the traditional PI control and the proposed control method were simulated and tested. The overall block diagram for the proposed control scheme is shown in Figure 4. The overall system consisted of the proposed SMC speed controller, a Space vector pulse width modulation (SVPWM) inverter, the prototype of the motor, a position selector, and a speed selector. The angular positions of both the rotors were compared so as to generate the selection signal. According to the selection signal (k = 0 means motor 1 was the master motor, and k = 1 means motor 2 was the master motor), the Digital Signal Processor (DSP TMS320F28335) controller could make the right decision in the selection of the master motor. The nominal parameters of the PMSM are listed in Table 1.

Simulation and Experimental Results
In this section, the simulation and experimental results are presented to demonstrate the effectiveness of the proposed control scheme. In order to compare the control performance, the traditional PI control and the proposed control method were simulated and tested. The overall block diagram for the proposed control scheme is shown in Figure 4. The overall system consisted of the proposed SMC speed controller, a Space vector pulse width modulation (SVPWM) inverter, the prototype of the motor, a position selector, and a speed selector. The angular positions of both the rotors were compared so as to generate the selection signal. According to the selection signal (k = 0 means motor 1 was the master motor, and k = 1 means motor 2 was the master motor), the Digital Signal Processor (DSP TMS320F28335) controller could make the right decision in the selection of the master motor. The nominal parameters of the PMSM are listed in Table 1.     Figure 5 shows comparisons of the simulation results between the PI speed controller and the proposed SMC speed controller to demonstrate the performance improvement. From the simulation results of the two different control methods, it can be seen that the fluctuations of speed and the electromagnetic torque controlled by SMC were much smaller than those with the conventional PI speed controller. When loading the torque of both the rotors, from 5 Nm to 10 Nm at 2.5 s, it can be seen from Figure 5 that when sliding-mode control was adopted the overshoot of the speed, or the electromagnetic torque, was smaller than that of the conventional PI control. This indicated that the sliding-mode control had better robust performance, and that the dynamic performance and robustness were both improved based on the proposed SMC algorithm. The effectiveness of the proposed control scheme was investigated via experiment in the motor platform. Figure 6 shows the entire experimental platform. The experimental platform was composed of a PMSM with dual-rotating rotors controlled by a Digital Signal Processing (DSP TMS320F28335) controller, which was programmed in CCS (Code Composer System). The control algorithms, including the proposed SMC and PI controls, and the mathematical transformations, as mentioned in Figure 4, were implemented in the DSP TMS320F28335. The input terminals of the motor were connected to a three-phase power source. The load transducer was mounted on the The effectiveness of the proposed control scheme was investigated via experiment in the motor platform. Figure 6 shows the entire experimental platform. The experimental platform was composed of a PMSM with dual-rotating rotors controlled by a Digital Signal Processing (DSP TMS320F28335) controller, which was programmed in CCS (Code Composer System). The control algorithms, including the proposed SMC and PI controls, and the mathematical transformations, as mentioned in Figure 4, were implemented in the DSP TMS320F28335. The input terminals of the motor were connected to a three-phase power source. The load transducer was mounted on the motor rotor and the load generator was connected to the load transducer. In the experiment, the speed controller was the adopted SMC and the current controller was the adopted PI. The parameters of the two current PI controllers were the same: k pc = 10 and k ic = 3.5. It should be noted that the PI parameters of the controller were test values after on-site commission [31]. The parameters of the SMC speed controller were k 0 = 25 and

Rotor Position Alignment
In order to obtain the maximum torque angle of 90°, the d-axis current should be controlled to be zero when the method of field-oriented control is adopted. However, for the permanent magnet synchronous motor with dual-rotating rotors, the positions of both the rotors may not be in the same position at the beginning of the motor start-up. If a vector current is arbitrarily oriented to one rotor, the other rotor may not start simultaneously, especially when both rotors are loaded. Obviously, the load angle of the rotor that cannot be started may just be small, which is not enough to generate adequate electromagnetic torque to drive rotor rotation.
A solution to effectively start the proposed motor was to align the position of both rotors. Firstly, a constant current vector, with certain amplitude, was applied to the stator windings and the direction of the current vector was aligned with the axis of the phase A winding. An

Rotor Position Alignment
In order to obtain the maximum torque angle of 90 • , the d-axis current should be controlled to be zero when the method of field-oriented control is adopted. However, for the permanent magnet synchronous motor with dual-rotating rotors, the positions of both the rotors may not be in the same position at the beginning of the motor start-up. If a vector current is arbitrarily oriented to one rotor, the other rotor may not start simultaneously, especially when both rotors are loaded. Obviously, the load angle of the rotor that cannot be started may just be small, which is not enough to generate adequate electromagnetic torque to drive rotor rotation.
A solution to effectively start the proposed motor was to align the position of both rotors. Firstly, a constant current vector, with certain amplitude, was applied to the stator windings and the direction of the current vector was aligned with the axis of the phase A winding. An electromagnetic field was generated by the current vector, so that both the permanent magnet rotors were attracted and rotated to the specific location of the axis of the A phase winding. It is worth mentioning that the two winding axes were not mechanically identical because of cross-displacement of windings between phase A and B. Secondly, the values of both the rotors' angular positions were read. One of the resolver's stators was removed from the motor, and then the removed resolver's stator was manually rotated an appropriate angle, where the value of the rotor's angular position was roughly equal to the value recorded by the other resolver. Lastly, the removed resolver's stator was mounted to the motor again. What is worth mentioning is that the rotor position did not need to be adjusted to any further extent.
When the proposed motor needed to be started, a current vector, as mentioned above, was supplied into the motor to align both the rotors. The time of the whole alignment process was about one or two seconds. The method of rotor position alignment for the proposed motor is practical because the load torque of the two rotors is relatively small during start-up [16,17]. Figure 7 shows the whole alignment process as mentioned above. In the initial stage of the motor start-up, it was obvious that the position of both the rotors, θ 1 and θ 2 , were not aligned. After about 1.5 seconds, both the rotors rotated in an approximately equal position and had the same angular position (θ), which indicated that the method of the rotor position alignment described above is feasible. When the proposed motor needed to be started, a current vector, as mentioned above, was supplied into the motor to align both the rotors. The time of the whole alignment process was about one or two seconds. The method of rotor position alignment for the proposed motor is practical because the load torque of the two rotors is relatively small during start-up [16,17]. Figure 7 shows the whole alignment process as mentioned above. In the initial stage of the motor start-up, it was obvious that the position of both the rotors, 1  and 2  , were not aligned. After about 1.5 seconds, both the rotors rotated in an approximately equal position and had the same angular position ( ), which indicated that the method of the rotor position alignment described above is feasible.

Master Motor Selection Experiment
The master motor selection method of comparing the rotor position was also verified by way of experiment. As mentioned above, the angular position of the motor with a higher load torque will be smaller than the angular position of the motor with a lighter load torque. The motor to which the higher load torque is applied has to be chosen as the master so that the stability of both the motors can be guaranteed. In the experiment, the load torque

Master Motor Selection Experiment
The master motor selection method of comparing the rotor position was also verified by way of experiment. As mentioned above, the angular position of the motor with a higher load torque will be smaller than the angular position of the motor with a lighter load torque. The motor to which the higher load torque is applied has to be chosen as the master so that the stability of both the motors can be guaranteed. In the experiment, the load torque T l1 remained unchanged (T l1 = 10 Nm), while the load torque T l2 changed from 12 Nm to 5 Nm, and back to 12 Nm.
As shown in Figure 8, the experiment illustrated how the selection signal operates when the load torque changes. The whole experiment process can be divided into three stages: At stage I (T l2 > T l1 ), the angular position θ 2 lagged behind θ 1 , which met θ 1 > θ 2 , and the selection signal met k = 1 and the master motor was motor 2; at stage II (T l1 > T l2 ), the angular position θ 1 lagged behind θ 2 , which met θ 2 > θ 1 , and the select signal changed to k = 0 and thus the master motor was motor 1; at stage III (T l2 > T l1 ) motor 2 became the master motor again. Accordingly, it was shown that the selection signal can correctly select the master motor.  lagging behind 2  to 2  lagging behind 1  ).

Dynamic Performance Experiment
To verify the effectiveness of the proposed SMC speed control scheme, the dynamic performance of the motor system experiments were carried out through the experiment set-up. Figure 8. Variation of the load torque and transition of the selection signal. (a) Variation of the selection signal and load torques under different conditions; (b) variation of the selection signal (from 1 to 0) and variation of the angular position (from θ 2 lagging behind θ 1 to θ 1 lagging behind θ 2 ); and (c) variation of the selection signal (from 0 to 1) and variation of the angular position (from θ 1 lagging behind θ 2 to θ 2 lagging behind θ 1 ).

Dynamic Performance Experiment
To verify the effectiveness of the proposed SMC speed control scheme, the dynamic performance of the motor system experiments were carried out through the experiment set-up. Experiments were conducted to evaluate the effectiveness of the proposed SMC speed control scheme under various operating conditions, including sudden load and sudden unload conditions. Therefore, the results of the traditional PI speed control were compared with the results of the proposed SMC speed control under the same conditions. Both of the current controllers adopted the PI control scheme; however, the speed controller adopted the SMC or the PI control scheme. When the PI control scheme was adopted, the parameters of the speed controller were k ps = 2.3 and k is = 12. The parameters of the two PI current controllers were the same: k pc = 10 and k ic = 3.5. Figure 9a,b show that the sudden load or unload experiments were done when the proposed motor ran at the nominal speed of 600r/min. The load torques of both of the rotors were changed simultaneously (from 10 Nm to 5 Nm and back again to 10 Nm). It can be concluded that the fluctuations of the speed controlled by the SMC speed control method were much smaller than that of the motor system controlled by the conventional PI speed control strategy. Figure 9c,d show that the command speed was changed from 600 r/min to 300 r/min and then back to 600 r/min. It was obvious that the torques of both the rotors fluctuated during the speed transitions. But the fluctuations of the torque under the SMC speed control condition were much smaller than that of the system under the conventional PI speed control condition. From Figure 9, it can be concluded that the SMC speed controller can improve the dynamic performance and enhance the disturbance suppression ability of the motor system compared with the PI speed controller. Simultaneously, the robustness and the stability of the motor system can be ensured through adopting the SMC control strategy.
Experiments were conducted to evaluate the effectiveness of the proposed SMC speed control scheme under various operating conditions, including sudden load and sudden unload conditions. Therefore, the results of the traditional PI speed control were compared with the results of the proposed SMC speed control under the same conditions. Both of the current controllers adopted the PI control scheme; however, the speed controller adopted the SMC or the PI control scheme. When the PI control scheme was adopted, the parameters of the speed controller were 2.3 ps k  and 12 is k  . The parameters of the two PI current controllers were the same: 10 pc k  and 3.5 ic k  . Figure 9a,b show that the sudden load or unload experiments were done when the proposed motor ran at the nominal speed of 600r/min. The load torques of both of the rotors were changed simultaneously (from 10 Nm to 5 Nm and back again to 10 Nm). It can be concluded that the fluctuations of the speed controlled by the SMC speed control method were much smaller than that of the motor system controlled by the conventional PI speed control strategy. Figure 9c,d show that the command speed was changed from 600 r/min to 300 r/min and then back to 600 r/min. It was obvious that the torques of both the rotors fluctuated during the speed transitions. But the fluctuations of the torque under the SMC speed control condition were much smaller than that of the system under the conventional PI speed control condition. From Figure 9, it can be concluded that the SMC speed controller can improve the dynamic performance and enhance the disturbance suppression ability of the motor system compared with the PI speed controller. Simultaneously, the robustness and the stability of the motor system can be ensured through adopting the SMC control strategy.

Conclusions
In this paper, one nonlinear SMC speed control technique for a permanent magnet synchronous motor with dual-rotating rotors has been proposed in order to design a robust speed controller. The proposed scheme was implemented by using DSP TMS320F28335. The major contributions of this work include: (i) The mathematic model of the PMSM with dual-rotating rotors was developed; (ii) in the case of an unbalanced load, how to select the main motor to ensure the stability of the system was analyzed; (iii) the SMC speed controller was presented; and (iv) the successful application and comparative results demonstrated that the proposed control method was effective and, accordingly, the methodology proposed in this work can be applied to the propeller drive system with dual-rotating rotors.