# Identification and Real Time Speed Control of a Series DC Motor

Authors: Jesús U. Liceaga-Castro; Irma I. Siller-Alcalá; Jorge Jaimes-Ponce; Roberto A. Alcántara-Ramírez; Enrique Arévalo Zamudio
Journal: Mathematical Problems in Engineering
 (2017)

---

## Abstract

The identification and real time speed control, without reverse motion, for a series DC motor is presented. The identification is performed using the transient response analysis of the mechanical and electrical subsystems of a series DC motor. A linearized model which does not include the magnetic saturation around the operating conditions is considered. Based on this model, a PI speed controller is designed. A well-known problem arising in this type of electrical motors is the singularity at zero speed. It is shown that, in spite of this inconvenience, the PI controller, together with an antiwindup scheme, presents adequate regulation and tracking performance. It is also shown that the control system can compensate for varying loads and the counter-electromotive force with acceptable levels of current consumption.


---

## Body

## 1. Introduction

Series DC motors, as well as series universal motors, are electric motors with one voltage supply and a field winding connected in series with the rotor winding. This series connection results in a motor with very high starting torque. However, torque decreases as the speed builds up due to an increment of the back or counter-electromotive force (EMF). This is why series DC motors have poor speed regulation. That is, increasing the motors load tends to slow its speed which in turns reduces the back EMF and increases the torque to accommodate the load. A limitation of these motors is that the sense of rotation is fixed for most of their applications. In order to change the direction of torque and rotation, it is necessary to change the polarity of the current flow.This work is comprised of an investigation of the design of a control system which takes advantage of the high torque properties of series DC motors. By maintaining the high torque generation with low current consumption, these motors may have a greater range of applications.Different control strategies have been applied in order to improve the speed performance of series DC motors. In [1, 2] speed control systems for series DC motors based on a DC chopper and a Buck-Boost converter are presented. These schemes focus mainly on the power driver without reverse motion. A more complex speed control strategy utilizing neurofuzzy techniques with a multilever inverter is presented in [3], but limited to digital simulation. Nonlinear controllers have also been considered; for instance, in [4] a sensorless controller together with a nonlinear observer for a series DC motor is proposed. However, it becomes singular when the current is zero. Also, the results are limited to digital simulations. Meanwhile, in [5], an improved backstepping control is applied to design a nonlinear speed controller for series DC motors but the study is limited to digital simulations without reverse motion. More recently, an active disturbance rejection speed control system for a series DC motor is reported in [6] based on flat systems theory and the use of an extended state observer. Other approaches test the effectivity of systems with non-well-defined relative degree as shown in [7, 8]. In [7], in order to evade the singularity, a division by zero, of the state feedback linearization at speed zero, a small constant ε>0 was included when the current is zero. An alternative to this rather heuristic strategy is presented in [8], where the Nonlinear Generalized Predictive Controller (NLGPC) results to be an excellent alternative to overcome this singularity. Meanwhile, in [9], an estimator, in conjunction with an observer, is used to overcome this singularity.Considering the complexity of the approaches described above, the main objective of this paper is to present a simple and effective controller for the speed control of series DC motors. That is, the paper shows a solution to a nonsolved problem based in well-known techniques suitable to an engineering context which are easy to implement and analyze, contrary to more complex methodologies whose results are limited to digital simulations. A second objective is to show a methodology for the identification of series DC motors, measuring only the motor rotor speed and the current consumption, which is likewise based on the well-known linear transient response analysis. It is shown that adequate design of PI schemes can improve the robustness and performance of these electrical machines resulting in an appropriate engineering design easy to implement and test.The paper is organized as follows: Section2 describes the model of a series DC motor without magnetic saturation. Section 3 presents the identification of the series DC motor together with a description of the experimental setup based on the classical control transient response analysis. Section 4 includes a model linearization around an equilibrium point. A PI controller together with an antiwindup scheme design is presented in Section 5. The experimental results of the control system are shown in Section 6. Finally, the conclusions and discussion of the results are described in Section 7.


## 2. Series DC Motor Model without Magnetic Saturation

A series wound DC motor similar to the shunt wound DC motor or compound wound DC motor is a self-excited DC motor. It gets its name because the field winding is connected internally in series to the armature winding as shown in Figure1. They are also considered self-excited motors due to only requiring one voltage source to supply both the armature and the field winding.Figure 1
Series connection of a DC motor.The electric diagram of the series wound DC motor is shown in Figure2.Figure 2
Electric diagram of a series DC motor.Based on the electric diagram of Figure2, the differential equations comprising the electrical and mechanical subsystems of a series DC motor are given by(1)Vt=Raiat+Rfift+Laddtiat+Lfddtift+EaTet=TLt+bωt+Jddtωt;as ia(t)=if(t)=i(t), (1) reduce to(2)Vt=Ra+Rfit+La+Lfddtit+Ea(3)Tet=TLt+bωt+Jddtωt,where ω(t) is the rotors speed, Ea represents the counter-electromotive force (EMF), TL(t) is the load torque, i(t)=ia(t)=if(t) is the current, b is the friction coefficient, J is the rotor’s inertia, and Te(t) is the electromagnetic torque produced by the motor.The EMFEa and Te(t) both depend on the air-gap flux Φ; that is,(4)Eat=ωtΦiTet=itΦi.The fluxΦ(i) is a function of the current i(t) so (1)–(3) are nonlinear. Also, it is common practice to approximate the flux Φ(i) by a linear relation when the magnetic saturation is neglected; that is, (5)Φi=k0it,where k0 is the mutual inductance between the armature and field coils.Therefore, the differential equations of the series DC motor without magnetic saturation result in(6)Vt=Rit+Lddtit+k0ωtit(7)k0i2t=TLt+bωt+Jddtωt,where R=Ra+Rf and L=La+Lf.


## 3. Model Identification

The identification of the monophasic universal-motor Koblenz model HC8825M110 is presented. The nominal maximum speed and power are 24000 RPM and 0.815 HP.In particular, these machines must operate loaded in order to avoid damage. Hence, a steel disc load was added as shown in Figure3. This extra load was considered as a part of the rotors inertia J.Figure 3
Series DC motor.From (6) and (7) it is clear that it is possible to estimate the motors parameters by analyzing the responses of the current and angular velocity of the rotor to step input voltages. This is performed using the setup experiment depicted in Figure 4.Figure 4
Experimental setup.The experimental setup consists of a voltage source with a maximum voltage of 50 [V] and a maximum current of 3 [A], the series DC motor, and a power driver with a USB communication. The power driver was designed considering the electric demand of the motor. Hence, the power driver is based on the MOSFET 12N65, which operates with a maximum current of 12 [A] and a maximum input voltage of 650 [V]. An equally important element is the ACS711LC circuit used to monitor the power consumed by the motor.Inductive loads together with pulsed excitation signals generate reverse currents that may damage switching elements such as MOSFETs. Although the MOSFETs used in the implementation have an internal protection diode, two transistors FR307 of rapid recovery were added in order for additional protection.The electric diagram of the power driver is shown in Figure5 where the SIGNAL block denotes the microcontroller.Figure 5
Power driver.


### 3.1. Electric Subsystem Identification

From (6) it is clear that if the rotor shaft is fully locked, then ω(t)=0  ∀t, reducing the electric subsystem to a simple RL circuit with a differential equation given by (8)Vt=Rit+Lddtitwith a transfer function GE(s) given by(9)GEs=IsVs=1Ls+R.The steady state gain and the steady state time ofGE(s) are KGE=1/R and tssE=4L/R, respectively. With the rotor shaft locked, the current response i(t), obtained by feeding a step input voltage V(t) from 0 to 20 [V], is shown in Figure 6. The current variation is approximately 0.7207 [A] so the steady state gain is KGE=0.03603, and hence R=27.75Ω. Also, from Figure 6, the steady state time of the current response is tssE=0.004sec. Thus, the inductance is L=28.011mH.Figure 6
Current step response (rotor locked).The mutual inductancek0 can be estimated measuring the steady state responses of the current i(t) and the speed of the rotor ω(t) to a step input voltage V(t). It should be noted that under this condition d/dti(t)≈0.Rearranging (6),(10)k0=Vt-Ritωtit.In Figures7 and 8, the current, i(t), and shaft speed, ω(t), responses to a step input voltage from 0 to 20 [V] are shown. From the steady state responses, the previously estimated resistance, R, and (10), the mutual inductance value is k0=0.186 N-m/Wb-A.Figure 7
Current step response.Figure 8
Rotor’s speed step response.


### 3.2. Mechanical Subsystem Identification

From (3), the mechanical subsystem without torque load, TL(t)=0, is described by(11)Tet=bωt+Jddtωtwith a transfer function GM(s) given by(12)GMs=ωsTes=1Js+b.Similar to the electrical subsystem identification, the steady state gain and the steady state time for the mechanical subsystem are KGM=1/b and tssM=4J/b, respectively. It should be noted that the electromagnetic input torque Te(t)=k0i2(t) can be obtained by measuring the current i(t) together with the estimated mutual inductance k0=0.186.Figure7 shows that the steady state variation of the current i(t) is 0.22. Thus, from (7) the variation of the electromagnetic torque is 0.009. On the other hand, from Figure 8, the steady state variation of the speed of the rotor is 341 rad/sec. Hence, the gain of the mechanical subsystem is KGM=1/b=37878.78, resulting in a friction coefficient b=0.000026 N-m/Wb-A.Estimating the rotor inertiaJ requires measuring the steady state time tssM of the velocity ω(t) to a step input. However, Figure 6 clearly indicates that the magnetic torque input cannot be assumed as a step input. Nevertheless, the inertia J was initially estimated using the relation J=tssMb/4. Further adjustments via trial and error were carried out finding that J=0.000666 Kg-m2 was closer to the actual response of the system.The résumé of the estimated parameters of the series DC motors is shown in the following list:k0=0.186 N-m/Wb-A;R=27.75Ω;L=28.011 mH;b=0.000026 N-m/Wb-A;J=0.000666 Kg-m2.A comparison of the responses of the real motor with that of the nonlinear model is shown in Figures6 and 7. In these figures the current and rotor speed responses of the real motor and the nonlinear model of (6) and (7) are shown. The red dashed lines correspond to the simulation of the nonlinear model; meanwhile the blue lines are the responses of the actual motor. The data used for the nonlinear model are summarized in the previous list.


## 3.1. Electric Subsystem Identification

From (6) it is clear that if the rotor shaft is fully locked, then ω(t)=0  ∀t, reducing the electric subsystem to a simple RL circuit with a differential equation given by (8)Vt=Rit+Lddtitwith a transfer function GE(s) given by(9)GEs=IsVs=1Ls+R.The steady state gain and the steady state time ofGE(s) are KGE=1/R and tssE=4L/R, respectively. With the rotor shaft locked, the current response i(t), obtained by feeding a step input voltage V(t) from 0 to 20 [V], is shown in Figure 6. The current variation is approximately 0.7207 [A] so the steady state gain is KGE=0.03603, and hence R=27.75Ω. Also, from Figure 6, the steady state time of the current response is tssE=0.004sec. Thus, the inductance is L=28.011mH.Figure 6
Current step response (rotor locked).The mutual inductancek0 can be estimated measuring the steady state responses of the current i(t) and the speed of the rotor ω(t) to a step input voltage V(t). It should be noted that under this condition d/dti(t)≈0.Rearranging (6),(10)k0=Vt-Ritωtit.In Figures7 and 8, the current, i(t), and shaft speed, ω(t), responses to a step input voltage from 0 to 20 [V] are shown. From the steady state responses, the previously estimated resistance, R, and (10), the mutual inductance value is k0=0.186 N-m/Wb-A.Figure 7
Current step response.Figure 8
Rotor’s speed step response.


## 3.2. Mechanical Subsystem Identification

From (3), the mechanical subsystem without torque load, TL(t)=0, is described by(11)Tet=bωt+Jddtωtwith a transfer function GM(s) given by(12)GMs=ωsTes=1Js+b.Similar to the electrical subsystem identification, the steady state gain and the steady state time for the mechanical subsystem are KGM=1/b and tssM=4J/b, respectively. It should be noted that the electromagnetic input torque Te(t)=k0i2(t) can be obtained by measuring the current i(t) together with the estimated mutual inductance k0=0.186.Figure7 shows that the steady state variation of the current i(t) is 0.22. Thus, from (7) the variation of the electromagnetic torque is 0.009. On the other hand, from Figure 8, the steady state variation of the speed of the rotor is 341 rad/sec. Hence, the gain of the mechanical subsystem is KGM=1/b=37878.78, resulting in a friction coefficient b=0.000026 N-m/Wb-A.Estimating the rotor inertiaJ requires measuring the steady state time tssM of the velocity ω(t) to a step input. However, Figure 6 clearly indicates that the magnetic torque input cannot be assumed as a step input. Nevertheless, the inertia J was initially estimated using the relation J=tssMb/4. Further adjustments via trial and error were carried out finding that J=0.000666 Kg-m2 was closer to the actual response of the system.The résumé of the estimated parameters of the series DC motors is shown in the following list:k0=0.186 N-m/Wb-A;R=27.75Ω;L=28.011 mH;b=0.000026 N-m/Wb-A;J=0.000666 Kg-m2.A comparison of the responses of the real motor with that of the nonlinear model is shown in Figures6 and 7. In these figures the current and rotor speed responses of the real motor and the nonlinear model of (6) and (7) are shown. The red dashed lines correspond to the simulation of the nonlinear model; meanwhile the blue lines are the responses of the actual motor. The data used for the nonlinear model are summarized in the previous list.


## 4. Model Linearization

In [8] it was proved that the series DC nonlinear model has a non-well-defined relative degree at speed ω(t)=0 and therefore it cannot be exactly linearized via state feedback in this operating condition. In this context, a linear approximation of (6) and (7) around any equilibrium point may represent a better approach to the design of a speed control system even when the motor operates at speed zero [10].Restructuring (6) and (7), (13)ddtit=-RLit-k0Lωtit+1LVtddtωt=-bJωt-1JTLt+k0Ji2tand defining (14)a1≕k0J;b1≕RL;a2≕bJ;b2≕k0La3≕1J;b3≕1L,x1≕ω,x2≕i,the nonlinear state space representation of the series DC motor is given by(15)x˙1=a1x22-a2x1-a3TLx˙2=-b1x2-b2x1x2+b3V(16)x˙=x˙1x˙2=a1x22-a2x1-a3TL-b1x2-b2x1x2+b3V=fx,u.The equilibrium pointx10,x20 of (16) is given by (17)x20=a2x10+a3TLa1;V=x20b1+b2x10b3.The linear approximation of (16) around the equilibrium point (17) is given by(18)x˙=Ax+Bu;y=Cx,where(19)A=δfx,uδxx10,x20=-a22a1x20-b2x20-b1+b2x10;B=δfx,uδux10,x20=-a300b3;C=1,0with (20)u=TLVT,y=ωt.If the load torque is assumed zero,TL=0, (21)x20=a2x10a1;V=x20b1+b2x10b3;B=0b3.These calculations lead to a model, which can be considered as a system with one input, voltageV(t), subjected to a torque perturbation.The transfer functionG(s) associated with the state space representation (18) around the equilibrium point (21) with x10=341rad/sec is (22)Gs=ωsVs=CsI-A-1B=4354s2+3255s+303.9.The poles of the transfer function (22) are -3254.9,-0.0933 so the series DC motor is stable and overdamped. It is also possible to distinguish the two typical modes of a DC motor from the poles: s+0.0933 representing the slow dynamic of the mechanical subsystem and s+3254.9 the fast dynamic of the electrical subsystem.


## 5. PI Controller Design

The design of the PI controller for the series DC motor was obtained using the validated linear representation (22).One of the advantages of classical control is that stabilization, robustness, and performance of the closed-loop system are inherent to the process design. Thus, by Bode shaping the open loop systems it is possible to guarantee the design specifications. For instance, the objectives of design are bandwidth ofωB=1rad/sec, phase margin Mp>80°, and gain margin MG→∞dB. These conditions were set in order to guarantee good robustness condition and an overdamped response with acceptable time response.The PI controllerC(s) that satisfies the above conditions of design is given by(23)Cs=0.75s+0.0675s=0.75+0.0675s.The Bode plots of the open loop control systemC(s)G(s) are shown in Figure 9. From these plots it is clear that the objectives of design are satisfied.Figure 9
Bode plots ofC(s)G(s).Recalling that the series DC motors cannot reverse the direction of rotation unless the input voltage polarity is likewise reversed, the minimum output of the controller of equation (23) is limited to 0 [V]. This is also necessary in order to avoid instability. On the other hand, it is well known that controllers with integral action in conjunction with saturation have adverse effects on the transient response of any control systems. Therefore, the controller of (22) is implemented including an antiwindup scheme, as shown in Figure 10.Figure 10
Antiwindup PI controller.


## 6. Experimental Results

To verify the performance of the speed control system depicted in Figure10 several experiments are carried out. These experiments allow evaluating the control system over a wide operating range, regulation and tracking, and under unknown torque load perturbations.


### 6.1. Experiment 1

In Figure11 the speed response ω(t) to a square reference signal R(t) from 0 to 630 [rad/sec] is shown. From this plot it is possible to see that the speed control system complies with the specification of design when the speed reference is increased. However, as the speed is reduced the response has different dynamics. This is due to the fact that the input signal V(t) is limited to a minimum of 0 [V]. That is, in this condition the motor is actually operating in open loop.Figure 11
Rotor’s speed response to a square reference signal from 0 to 630 [rad/sec].The range of variation of the reference signal covers the full range of operation of the control system, which, as mentioned in the experimental setup description, is limited by the maximum supply voltage of 50 [V]. The input voltageV(t) and the current consumption i(t) are shown in Figures 12 and 13, respectively.Figure 12
Input voltageV(t).Figure 13
Current consumptionit.Figure12 shows that the control variable, input voltage, is highly affected by the sensor noise. Nonetheless, the current consumption is low, around 0.25 [A], as shown in Figure 13. This means that the electric subsystem remains out of magnetic saturation. Also, in Figure 13, the current peaks are due to the sudden changes in the reference signal, which are not recommended due to an excessive current consumption and to avoid damaging the motor. Nevertheless, despite the limitations in the input voltage and the noise effects, the system behaves according to the specification of design along a wide range of operation.


### 6.2. Experiment 2

Figures14 and 15 show the responses of the control system to two strictly positive sinusoidal signals R(t). The frequencies of the signals are 0.33 rad/sec and 0.66 rad/sec, respectively. These frequencies are consistent with the bandwidth ωB=1rad/sec of the control system.Figure 14
System responses to a sinusoidal signal reference with frequency 33 rad/sec.
(a)
(b)
(c)Figure 15
System responses to a sinusoidal signal reference with frequency 66 rad/sec.
(a)
(b)
(c)Figure14(a) shows the rotor’s speed ω(t) response when the sinusoidal reference signal, R(t), has a frequency of 0.33 rad/sec. It is clear from this plot that the control system has an excellent performance under tracking conditions. Also, and similar to the results of Experiment 1, the input voltage V(t) is highly affected by the sensor noise, Figure 14(b). Finally, the current consumption i(t) is low as it is shown in Figure 14(c).Figure15 shows the responses of rotor’s speed ω(t), input voltage V(t), and current consumption i(t) when the sinusoidal reference signal R(t) has a frequency of 0.66 rad/sec. Contrary to previous responses in this case, the tracking performance is deteriorated in the periods in which the speed is reduced. Similar to Experiment 1, this is due to the limitation of the control variable, input voltage, which is limited to 0.However, in the periods when the speed is increased the control system presents an excellent performance.


### 6.3. Experiment 3

In this experiment the control system is affected by an unknown constant torque load perturbation when the reference signal isR(t)=314rad/sec.The unknown perturbation load torque is applied at 30 sec and released at 60 sec. The responses of rotor’s speed ω(t), input voltage V(t), and current consumption i(t) are shown in Figure 16. From Figure 16(a) it is possible to see that the control system is capable of compensating the torque perturbation with low current i(t) consumption, Figure 16(c), although the control signal, input voltage V(t), in Figure 16(b) is still affected by the sensor noise.Figure 16
System responses to an unknown torque load perturbation.
(a)
(b)
(c)


## 6.1. Experiment 1

In Figure11 the speed response ω(t) to a square reference signal R(t) from 0 to 630 [rad/sec] is shown. From this plot it is possible to see that the speed control system complies with the specification of design when the speed reference is increased. However, as the speed is reduced the response has different dynamics. This is due to the fact that the input signal V(t) is limited to a minimum of 0 [V]. That is, in this condition the motor is actually operating in open loop.Figure 11
Rotor’s speed response to a square reference signal from 0 to 630 [rad/sec].The range of variation of the reference signal covers the full range of operation of the control system, which, as mentioned in the experimental setup description, is limited by the maximum supply voltage of 50 [V]. The input voltageV(t) and the current consumption i(t) are shown in Figures 12 and 13, respectively.Figure 12
Input voltageV(t).Figure 13
Current consumptionit.Figure12 shows that the control variable, input voltage, is highly affected by the sensor noise. Nonetheless, the current consumption is low, around 0.25 [A], as shown in Figure 13. This means that the electric subsystem remains out of magnetic saturation. Also, in Figure 13, the current peaks are due to the sudden changes in the reference signal, which are not recommended due to an excessive current consumption and to avoid damaging the motor. Nevertheless, despite the limitations in the input voltage and the noise effects, the system behaves according to the specification of design along a wide range of operation.


## 6.2. Experiment 2

Figures14 and 15 show the responses of the control system to two strictly positive sinusoidal signals R(t). The frequencies of the signals are 0.33 rad/sec and 0.66 rad/sec, respectively. These frequencies are consistent with the bandwidth ωB=1rad/sec of the control system.Figure 14
System responses to a sinusoidal signal reference with frequency 33 rad/sec.
(a)
(b)
(c)Figure 15
System responses to a sinusoidal signal reference with frequency 66 rad/sec.
(a)
(b)
(c)Figure14(a) shows the rotor’s speed ω(t) response when the sinusoidal reference signal, R(t), has a frequency of 0.33 rad/sec. It is clear from this plot that the control system has an excellent performance under tracking conditions. Also, and similar to the results of Experiment 1, the input voltage V(t) is highly affected by the sensor noise, Figure 14(b). Finally, the current consumption i(t) is low as it is shown in Figure 14(c).Figure15 shows the responses of rotor’s speed ω(t), input voltage V(t), and current consumption i(t) when the sinusoidal reference signal R(t) has a frequency of 0.66 rad/sec. Contrary to previous responses in this case, the tracking performance is deteriorated in the periods in which the speed is reduced. Similar to Experiment 1, this is due to the limitation of the control variable, input voltage, which is limited to 0.However, in the periods when the speed is increased the control system presents an excellent performance.


## 6.3. Experiment 3

In this experiment the control system is affected by an unknown constant torque load perturbation when the reference signal isR(t)=314rad/sec.The unknown perturbation load torque is applied at 30 sec and released at 60 sec. The responses of rotor’s speed ω(t), input voltage V(t), and current consumption i(t) are shown in Figure 16. From Figure 16(a) it is possible to see that the control system is capable of compensating the torque perturbation with low current i(t) consumption, Figure 16(c), although the control signal, input voltage V(t), in Figure 16(b) is still affected by the sensor noise.Figure 16
System responses to an unknown torque load perturbation.
(a)
(b)
(c)


## 7. Conclusions

A speed control system for a series DC motor based on a classical PI controller was designed and implemented. It is proved that despite the nonlinearities and the non-well-defined relative degree of this kind of motors it is possible to design classical controllers, like the PID, based on linear models resulting in control systems with excellent performance along a wide range of operation. Moreover, by means of several real time experiments it is verified that the control system has excellent performance under tracking and torque load perturbations conditions. It is also found that in order to fully exploit the capabilities of this kind of motors, high torque with low current consumption, it is necessary to improve the power driver so that it can reverse the direction of the magnetic torque and therefore the direction of rotation of rotor. The design of the controller here proposed was based on linear models obtained through an identification process based on the step response of the real motor and the nonlinear model without magnetic saturation.



---

*Source: 7348263-2017-03-27.xml*