# A Hybrid Scheme Motion Controller by Sliding Mode and Two-Degree-of-Freedom Controls to Minimize the Chattering

Authors: Chiu-Keng Lai
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

Sliding mode control (SMC) is rapped for the chattering due to high gain control. However, high gain control causes the system robust. For developing a system with robustness of SMC, a servo motor motion controller combining the two-degree-of-freedom (2DOF) system and SMC is proposed. The discussed motion type is point-to-point control with the constraint of trapezoid velocity profile. SMC is designed to guide the motor motion to follow a predefined trail, and the inner 2DOF system is used to compensate the deterioration due to the adoption of load observer. The proposed hybrid system is realized on a PC-based motion controller, and the validness is verified by simulation and experimental results.


---

## Body

## 1. Introduction

The control of motors used in high-performance servo drive requires that the prescribed torque accuracy, velocity, and position for all operating conditions should be achieved. Nevertheless, a precision model is difficult to construct because of the inherent nonlinearity of friction and dead zone, the parameter variations from temperature, and so on. Also, the time-varying loads often exist in the motor system, which cause those effects of increasing rise time, settling time, and percentage of overshoot in transient and steady state. To design a robust controller with those abilities to compensate the nonlinearity and uncertainties, minimizing the effects from external load is requisite for precision control.Sliding mode control (SMC) is a very effective method to make a system robust and have fast responses [1]. It is thus widely practiced in the position and velocity control of DC and AC motor drives [2–8]. However, systems controlled by SMC will raise the phenomenon of chattering due to the finite switching frequency of relay controller, the high gain design, and the unmodeled system parameters [9, 10]. Finite switching frequency is an inherent problem because the modern controllers are usually implemented with the microprocessor, PC or DSP, which runs program at a finite sampling frequency. As for the high gain design, it is certainly used to guarantee the existence of sliding phase, and its magnitude is usually devised according to the known upper bound of the external load and uncertainty of controlled system. In the case of the third reason of chattering, the unmodeled system may result from the reduced order approximation of system [9] or the occurrence of parasitic dynamics [11]. And a chatter input to the drive may excite the unmodeled poles and cause the system unstable or oscillated. Also, the disturbance and nonlinearities of motor controlled system, such as dead band and backlash, may also prevail in the steady-state mode. Take the precision control into consideration; those nonlinearities cause the system control law to be unremovable when the motor is in steady-state phase. The chatter control thus lasts for all the process time while the system is controlled by SMC. Therefore, a proper control law to overcome the external load and nonlinearities is essential during the period, including the sliding phase and steady-state phase. And one expects that the chatter control is slight enough to lower the chattering and avoid the system oscillating. Some recent developing strategies to reduce the chattering are introduced in [6–8, 10, 12]. In [6], the authors deal with the torque ripple reduction by using a sliding mode control technique to the direct torque control of permanent magnet synchronous motor. In [7, 8], the authors develop the disturbance observer or load torque observer to reduce the chattering. The authors in [10] take the time constant of the actuator, the step size of the real time solver, and so forth into consideration to reduce the chattering for incremental sliding mode controller. While, in [12], gain scheduling is adopted to reduce the chattering effects, here, we adopt a hybrid structure to diminish the chattering. Hybrid structures used to the motor motion control can be found in [12–14], which combine those controllers such as PID controller and adaptive controller to get the desired performances.It is known that the 2DOF system also has the robust ability and is sometimes used to regulate the system performance on transient and steady state. Because the chattering is mostly caused by a high gain control, we thus arrange an observer to estimate the load, and a 2DOF scheme is added as the inner loop to somewhat reduce the magnitude of external disturbance and parameters uncertainty. Regarding the proposed control structure, the control law can be reduced and the system’s robustness is still valid.The paper is organized in the following manner. The servo motor motion control is first shown in Section2; next, Section 3 describes the strategy to estimate the perturbations; Section 4 points out the new structure with the 2DOF control being added in the inner loop; the simulation results which combine the SMC and 2DOF are revealed in Section 5; then, the experimental setup and results of permanent magnet synchronous motor drive position control are illustrated in Section 6; and finally, the conclusion is given in Section 7.


## 2. The Servo Motor Motion Control with Sliding Mode System

The rotor dynamics and the torque equation of motor plus driver are given as follows:(1)dθmdt=ωm,dωmdt=-BmJmωm+TeJm-TLJm,Te=Ktν,
where ωm is the rotor velocity, θm is the rotor angular displacement, Jm is the moment of inertia, Bm is the damping coefficient, Te is the generated torque, Kt is the torque constant, ν is the control input to the motor driver, and TL is the external load. It is noted that the notations of the moment of inertia Jm and the damping coefficient Bm symbolize their normal values, J-m and B-m, plus the uncertainties, ΔJm and ΔBm; that is,
(2)Jm=J-m+ΔJm,Bm=B-m+ΔBm.The point-to-point incremental motion control is to move a resting object at timet0 to a fixed desired position θd at time td and then keep still until the next motion is initiated. In such process, the controlled system is not only subjected to the desired velocity and acceleration, but also affected by those conditions such as the uncertainties of parameter (ΔJm and ΔBm), the external applied load (TL), and the nonlinearities of the system (saturation, dead band, etc.). So the motion control is carried out under velocity control in obedience to a desired velocity mode. To fulfill the velocity and acceleration limitations, a trapezoid velocity profile is usually used or discussed [2, 3, 13, 15], as shown in Figure 1. In the acceleration and deceleration segment, the motor responds to a constant acceleration; in the run segment, on the other hand, it runs in the condition of constant velocity.Figure 1
Trapezoid velocity profile for motion control.Because the system dynamics is subjected to unknown load perturbations, parameter variations, and system’s nonlinearities, it is not easy to control the motor motion in accordance with the given trapezoid profile. A robust motion controller based on the SMC system is consequently adopted to process the velocity and acceleration constraint. To reach this goal, the multisegment sliding mode controller according to the trapezoid velocity profile is designed in advance with (i) acceleration segment (acceleration =αd1), (ii) run segment (velocity = ωd), and (iii) deceleration segment (deceleration = -αd3). Therefore, the motor rotates in obedience to the trapezoid velocity profile in spite of the load perturbation and system’s nonlinearities. The general control structure is shown in Figure 2(a).The block diagrams of multisegment motion control scheme: (a) the system without the 2DOF speed loop, (b) the system with 2DOF speed loop, and (c) the simplified block diagram of scheme (b).
(a)
(b)
(c)With a designated rotor positionθd, which is supposed to be a constant within the control process for point-to-point control, one first defines the position error and its derivative as
(3)x1=θm-θdx2=ωm.
Combining (3) with (1), one obtains
(4)x˙1=x2x˙2=-BmJmx2+KtJmν-TLJm.Based on the error dynamical equations in (4), the multisegment sliding mode controller is proposed to drive the motor from initial position θ0 to the specified position θd according to the trapezoid velocity profile.The multisegment SMC-based motion control system consists of two modes: the velocity control one and the position control one. The former is used to drive the rotor to the desired position while the latter is to hold the rotor at the desired position.Based on SMC strategy, four sliding surfaces are assigned to guarantee the velocity and acceleration fitting the desired trapezoidal velocity profile [3].


## 3. The Chattering Reduction with Perturbation Estimation

As mentioned in the introduction and shown on most of the control problems solved by SMC, the chattering phenomenon must be reduced to improve the steady-state performance and to prevent the unmodeled system from exciting. In the following, we will give the strategy to estimate the total perturbation and use the estimated results to reduce the chattering for our control requirement.The description and design of multisegment sliding mode motion controller shown in Section2 are summarized as follows.(1)
The reaching phase does not appear in the proposed multisegment sliding mode control method; that is, the system controlled by the proposed one resides in the sliding mode at the start and in the subsequent processes.(2)
For system in the acceleration/deceleration segment, the motor’s dynamics can be simplified to the following form:(5)Te=Ktν=Jmdωmdt+Bmωm+TL=Bmωm+Jmαd+TL,(6)TLKt=ν-BmKtωm-JmKtαd.And for system in the run action, the motor’s dynamics is simplified to be
(7)Te=Ktν=Bmωm+TL,(8)TLKt=v-BmKtωm.
Finally, once the system resides in the position control mode, the dynamics can be further simplified as
(9)Te=Ktν=TL,(10)TLKt=v.
Thus, the load estimator is designed as
(11)ddtν*=-aν*+aν,
where ν* is the estimated equivalent control law, ν is the original chatter control law from SMC controller and it has a bigger magnitude, and a is the estimator parameter to be designed. Due to the system in the sliding mode at the start, the estimated control law ν* is initially equal to the equivalent control and all the proceeding time. The control law ν* from observer output therefore has the least requirement for maintaining the system motion following the required trajectory. However, it is the same as most of the chattering reduction methodology of SMC, and the system robustness will be deteriorated by the parameter variation. To compensate the fault, 2DOF scheme is thus designed to compensate it.


## 4. The Inner Two-Degree-of-Freedom Servo Motor Speed Compensation

The concept of 2DOF feedback control has been widely applied for the drive system design. The commonly used control schemes are shown in the dashed line circle of Figure2(b). Two feedback loops and two blocks are added to achieve the performance. With the two inserted blocks, Gc1 and Gc2, the system transfer function of speed control loop is first altered to be
(12)H1(s)=ΔΩm(s)V*(s)=Gc1(s)Gp(s)1+Gc1(s)Gp(s)+Gc2(s)Gp(s),
where V*(s) is the SMC controller output while Gp(s) is the controlled motor. The inserted two blocks and feedback loops are designed to compensate the system uncertainties and external disturbances. To reach this goal, these two control blocks are chosen, respectively, as
(13)Gc1(s)=k1,Gc2(s)=sk2,
where k1 and k2 are two constant gains. To substitute (13) and controlled motor transfer function
(14)Gp(s)=Ωm(s)V(s)=KtJms+Bm
into (12), we have
(15)H1(s)=k1Kt/Jms+Bm/Jm×(1+k1Kt/Jms+Bm/Jm+sk2Kt/Jms+Bm/Jm)-1=k1(Kt/Jm)(s+Bm/Jm)+k1(Kt/Jm)+sk2(Kt/Jm).As shown in Figure2(b), one places the 2DOF scheme into the motion system as the inner speed loop and makes the multisegment sliding mode motion controller as the outer loop. In the following, we just consider the compensated results of the inner loop. Motor systems, in (1), with uncertainties and without the external load are rewritten as
(16)(J-m+ΔJm)dωmdt+(B-m+ΔBm)ωm=Te
and the inner speed control loop transfer function, in (15), can be transformed as
(17)H1(s)=k1Kts[(J-m+ΔJm)+k2Kt]+[(B-m+ΔBm)+k1Kt].
If the two parameters, k1 and k2, are chosen large enough, and with a rather quantity of torque constant, Kt, the following two inequalities will be true:
(18)k1Kt≫(B-m+ΔBm),k2Kt≫(J-m+ΔJm).
Then the system characteristics, in (17), are less relative to the uncertainties. It can also be approximated as follows:
(19)H1(s)=k1Kt/((J-m+ΔJm)+k2Kt)s+((B-m+ΔBm)+k1Kt)/((J-m+ΔJm)+k2Kt)≅(k1/k2)s+(k1/k2).
Equation (19) has a dc gain of H1(0)=1, and it demonstrates the benefit of system dominated by 2DOF system that the resulting system is nearly invariant or less relative to the system’s nominal parameters, Kt, J-m, and B-m, and the corresponding uncertainties, ΔJm and ΔBm.To consider the effects from external disturbance,TL, we have the following transfer function for the inner speed loop as Figure 2(c) shows:
(20)Ωm(s)TL(s)=1(Jm+Ktk2)s+(Bm+Ktk1)=1/(Jm+Ktk2)s+(Bm+Ktk1)/(Jm+Ktk2).
Equation (20) illustrates a dc gain of 1/(Bm+Ktk1). Comparing it to the system without 2DOF structure, its dc gain is 1/Bm. The magnitude of external disturbance is reduced by inner 2DOF loop. SMC-based motion control system with the 2DOF scheme added thus needs a less magnitude chatter control to make the sliding mode exist. Because the added 2DOF system can improve the robustness of the sliding mode control system, it compensates the drawbacks due to the usage of observer.


## 5. The Simulation Results

To demonstrate the effectiveness of the proposed control strategy, simulations are done by SIMNON software. The velocity profile for simulation is, respectively, set as follows [3]: αd1=165 rad/sec2, ωd=30 rad/sec, and αd3=165 rad/sec2, and the position control mode is achieved by making c4=5. The motor’s parameters are severally J-m=0.002 Nm/sec2, B-m=0.0015 Nm/sec, and Kt=2.25 Nm/v. Furthermore, two kinds of perturbations are assumed: (1) an external load of 2 Nm is added at 0.2 sec and removed at 1.2 sec; (2) the motor parameter with uncertainties, Jm=10J-m and Bm=2B-m. For those conditions being set, the control gains for each segment can be decided according to the maximum values: Jmmax⁡=0.02 Nm/sec2, Bmmax⁡=0.003 Nm/sec, and TLmax⁡=2.0 Nm [3]. In addition, we use the speed observer, Hso(z), in which
(21)Hso(z)=1+z-1+z-2+z-3+z-45,
to compute the motor’s rotating velocity from the encoder pulse. To realize the block Gc2, a high-pass filter
(22)Gc2(s)=100ss+100
is used, and its discrete equivalent, Gc2(z), as shown in (23), is programmed as follows:
(23)Gc2(z)=100z-100z-0.9802.
Likewise, to obtain the equivalent control law, a perturbation estimator,
(24)ddtν*=-50ν*+50ν,
is used. All of the equivalent digital filters are simulated on sampling frequency of 5 kHz. Figures 3 and 4 are the simulated results. Figure 3 is under nominal condition, whereas Figure 4 is with load and parameter perturbations. In Figures 3 and 4, plots (a) and (b) are, respectively, the position and velocity responses, while (c) and (d) are the motor driver input and the output of multisegment SMC controller. Figures 3(d) and 4(d) show that high frequency chattering exists in the control laws and the equivalent controls, ν*, are estimated by the perturbation estimator, in (24), as shown in Figures 3(e) and 4(e). It is apparent that the control law is completely a smooth function and the chattering is reduced. Figures 3(f) and 4(f) are, respectively, the estimated motor acceleration. It shows that the added 2DOF control block and perturbation estimator truly lower the system chattering and maintain the robustness.The simulated results for nominal system. (a) The position response, (b) the speed response, (c) the motor driver input, (d) the multisegment SMC controller output, (e) the perturbation observer output, and (f) the estimation of acceleration.
(a)
(b)
(c)
(d)
(e)
(f)The simulated results for system with load and parameter uncertainties. (a) The position response, (b) the speed response, (c) the motor driver input, (d) the multisegment SMC controller output, (e) the perturbation observer output, and (f) the estimation of acceleration.
(a)
(b)
(c)
(d)
(e)
(f)


## 6. The Experimental Setup and Results

### 6.1. Experimental System Setup

To practically evaluate the performance of the proposed control scheme, a prototype PMSM motion control system is built and examined. The realized system is composed of a PC, an A/D-D/A card with a 16-bit up/down counter, and a 750 W PMSM. The multisegment control algorithms, perturbation observer, and 2DOF controller are implemented by the PC. The position signals are sensed by a 2000 pulse/rev encoder and feedback to PC through a 16-bit up/down counter with four-time precision multiplied. The corresponding mechanical velocity is computed in PC through the difference in encoder pulse per sampling with fifth-order smooth average as (21) shows. The acceleration estimator is accomplished by two cascaded first-order discrete-type high-pass filters with the transfer function as follows:
(25)Hhp(z)=100z-100z-0.9802,
where the estimator input comes from the encoder pulse. The recognized system for experimentation is shown in Figure 5.Figure 5
The experimental setup.The main program for managing data input and output is programmed by assembly language, and control system including all the calculation is implemented on PC. A hardware timer which supports 5 kHz interrupt request is served as the sampling rate and is used to periodically trigger the PC-based controller and run the control algorithms. The data of experimental results, including the accelerationαd, the velocity ωm, the position θm, the control laws ν, and the estimated equivalent control ν*, are directly collected in PC,and processed and printed out through MATLAB. To show the impactions from external load, the PMSM is axially coupled to another motor. And the resulting system has the moment of inertia of 10-time the nominal condition, and the damping coefficient of twice the nominal condition.


### 6.2. Experimental Results

The actual experimental results are shown in Figures6 and 7 where the control parameters are set as those in the simulation. Each of the experimental processes is running twice and the results are accumulated in the second time. Figure 6 demonstrates the experimental results of motion control without the motor load, while Figure 7 shows the results under the coupled motor load.The experimental results of nominal condition. (a) The position responses, (b) the velocity responses, (c) the estimated acceleration, (d) the multisegment sliding mode controller output, and (e) the 2DOF controller output.
(a)
(b)
(c)
(d)
(e)The experimental results of system with external load. (a) The position responses, (b) the velocity responses, (c) the estimated acceleration, (d) the multisegment sliding mode controller output, and (e) the 2DOF controller output.
(a)
(b)
(c)
(d)
(e)Figures6(a) and 7(a) are the responses of position with the position command 4π radian forward running at time 0 sec and then backward running to the original position at time 2 sec. Figures 6(b) and 7(b) are their corresponding velocity. It is obvious that the velocity responses for both with and without motor load show good results as the programmed and the simulated results revealed on the last section. Figures 6(c) and 7(c) are the estimated acceleration during the process under the cascaded second-order high-pass filter of (25). As the setting in the simulation, the programmed acceleration and deceleration rates are 165 rad/sec2 and −165 rad/sec2, respectively, and the experimental acceleration results of Figures 6(c) and 7(c) indicate that the desired acceleration profiles are achieved despite the fact that the little ripples exist at the steady-state condition.Figures6(d) and 7(d) illustrate the control laws from the output of multisegment sliding mode controller. The style of control law of multisegment sliding mode control is designated by (6), (8), and (10). Comparing the simulated and experimental results in Figures 3(d), 4(d), 6(d), and 7(d), they all display that the chattering controls exist at the output of sliding mode control. To reduce the impact of chattering phenomenon, a perturbation estimator shown in (24) is designed to estimate the equivalent control law, minimize the amplitude of control law, and maintain the motor rotor following the desired track. Owing to the low-pass characters of perturbation estimator, the motor motion control under the trapezoid velocity profile has to alter its acceleration rate whenever the control segments change over. The 2DOF controller is thus applied to compensate the weakness and improve the robustness of motion controller. Figures 6(e) and 7(e) are the control laws made by the 2DOF control loop. The control command of 2DOF control loop is from the output of perturbation estimator. Because the designed 2DOF control scheme can compensate the system uncertainty and external disturbance, the needed control law from the SMC controller is thus reduced. The problem of chattering and robustness caused by the high gain control of SMC and perturbation observer is therefore overcome by the added 2DOF controller. The control results shown in Figures 6(a) and 7(a) for both systems with and without perturbation fit the expectation.


## 6.1. Experimental System Setup

To practically evaluate the performance of the proposed control scheme, a prototype PMSM motion control system is built and examined. The realized system is composed of a PC, an A/D-D/A card with a 16-bit up/down counter, and a 750 W PMSM. The multisegment control algorithms, perturbation observer, and 2DOF controller are implemented by the PC. The position signals are sensed by a 2000 pulse/rev encoder and feedback to PC through a 16-bit up/down counter with four-time precision multiplied. The corresponding mechanical velocity is computed in PC through the difference in encoder pulse per sampling with fifth-order smooth average as (21) shows. The acceleration estimator is accomplished by two cascaded first-order discrete-type high-pass filters with the transfer function as follows:
(25)Hhp(z)=100z-100z-0.9802,
where the estimator input comes from the encoder pulse. The recognized system for experimentation is shown in Figure 5.Figure 5
The experimental setup.The main program for managing data input and output is programmed by assembly language, and control system including all the calculation is implemented on PC. A hardware timer which supports 5 kHz interrupt request is served as the sampling rate and is used to periodically trigger the PC-based controller and run the control algorithms. The data of experimental results, including the accelerationαd, the velocity ωm, the position θm, the control laws ν, and the estimated equivalent control ν*, are directly collected in PC,and processed and printed out through MATLAB. To show the impactions from external load, the PMSM is axially coupled to another motor. And the resulting system has the moment of inertia of 10-time the nominal condition, and the damping coefficient of twice the nominal condition.


## 6.2. Experimental Results

The actual experimental results are shown in Figures6 and 7 where the control parameters are set as those in the simulation. Each of the experimental processes is running twice and the results are accumulated in the second time. Figure 6 demonstrates the experimental results of motion control without the motor load, while Figure 7 shows the results under the coupled motor load.The experimental results of nominal condition. (a) The position responses, (b) the velocity responses, (c) the estimated acceleration, (d) the multisegment sliding mode controller output, and (e) the 2DOF controller output.
(a)
(b)
(c)
(d)
(e)The experimental results of system with external load. (a) The position responses, (b) the velocity responses, (c) the estimated acceleration, (d) the multisegment sliding mode controller output, and (e) the 2DOF controller output.
(a)
(b)
(c)
(d)
(e)Figures6(a) and 7(a) are the responses of position with the position command 4π radian forward running at time 0 sec and then backward running to the original position at time 2 sec. Figures 6(b) and 7(b) are their corresponding velocity. It is obvious that the velocity responses for both with and without motor load show good results as the programmed and the simulated results revealed on the last section. Figures 6(c) and 7(c) are the estimated acceleration during the process under the cascaded second-order high-pass filter of (25). As the setting in the simulation, the programmed acceleration and deceleration rates are 165 rad/sec2 and −165 rad/sec2, respectively, and the experimental acceleration results of Figures 6(c) and 7(c) indicate that the desired acceleration profiles are achieved despite the fact that the little ripples exist at the steady-state condition.Figures6(d) and 7(d) illustrate the control laws from the output of multisegment sliding mode controller. The style of control law of multisegment sliding mode control is designated by (6), (8), and (10). Comparing the simulated and experimental results in Figures 3(d), 4(d), 6(d), and 7(d), they all display that the chattering controls exist at the output of sliding mode control. To reduce the impact of chattering phenomenon, a perturbation estimator shown in (24) is designed to estimate the equivalent control law, minimize the amplitude of control law, and maintain the motor rotor following the desired track. Owing to the low-pass characters of perturbation estimator, the motor motion control under the trapezoid velocity profile has to alter its acceleration rate whenever the control segments change over. The 2DOF controller is thus applied to compensate the weakness and improve the robustness of motion controller. Figures 6(e) and 7(e) are the control laws made by the 2DOF control loop. The control command of 2DOF control loop is from the output of perturbation estimator. Because the designed 2DOF control scheme can compensate the system uncertainty and external disturbance, the needed control law from the SMC controller is thus reduced. The problem of chattering and robustness caused by the high gain control of SMC and perturbation observer is therefore overcome by the added 2DOF controller. The control results shown in Figures 6(a) and 7(a) for both systems with and without perturbation fit the expectation.


## 7. Conclusions

In this paper, the multisegment SMC and 2DOF controllers are used to complete the motion control under the constraint of trapezoid velocity profile. The motor rotor velocity and acceleration control are programmed by the multisegment SMC controller, and the chattering phenomenon from the high gain setting is reduced by a perturbation observer. And the inner 2DOF control scheme is used to make up the robustness due to the adoption of perturbation observer. The simulation and experimental results confirm the validness.



---

*Source: 583280-2014-05-19.xml*