Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

energies

Article
Online Current Loop Tuning for Permanent Magnet
Synchronous Servo Motor Drives with Deadbeat
Current Control
Zih-Cing You, Cheng-Hong Huang and Sheng-Ming Yang *
Electrical Engineering, National Taipei University of Technology, Taipei 10608, Taiwan;
carefree60024@gmail.com (Z.-C.Y.); yyu124p@gmail.com.tw (C.-H.H.)
* Correspondence: smyang@ntut.edu.tw

Received: 5 August 2019; Accepted: 13 September 2019; Published: 17 September 2019 

Abstract: High bandwidths and accurate current controls are essential in high-performance permanent
magnet synchronous (PMSM) servo drives. Compared with conventional proportional–integral
control, deadbeat current control can considerably enhance the current control loop bandwidth.
However, because the deadbeat current control performance is strongly affected by the variations
in the electrical parameters, tuning the controller gains to achieve a satisfactory current response
is crucial. Because of the prompt current response provided by the deadbeat controller, the gains
must be tuned within a few control periods. Therefore, a fast online current loop tuning scheme is
proposed in this paper. This scheme can accurately identify the controller gain in one current control
period because the scheme is directly derived from the discrete-time motor model. Subsequently,
the current loop is tuned by updating the deadbeat controller with the identified gains within eight
current control periods or a speed control period. The experimental results prove that in the proposed
scheme, the motor current can simultaneously have a critical-damped response equal to its reference
in two current control periods. Furthermore, satisfactory current response is persistently guaranteed
because of an accurate and short time delay required for the current loop tuning.

Keywords: deadbeat current control; PMSM servo motor drives; auto tuning; parameter identification

1. Introduction
A modern servo motor drive usually includes current, speed, and position control loops. In general,
the current loop bandwidth is considerably higher than the bandwidth of the speed and position loops.
Therefore, a current loop with a high bandwidth can fundamentally enhance the performance of the
servo motor drive.
When the current loop is implemented with a digital signal processor (DSP), because of the limited
computation capability, the calculated voltage command requires one control period delay for the
pulse width modulation (PWM) module to output voltage to the motor. This time delay causes an
underdamped or unstable current response when a proportional–integral (PI) controller is used for
motor current regulation [1–4]. The discretized PI controller directly designed in the z-domain has
been proposed in [3,4]; however, limited improvement in the current loop bandwidth was achieved
and current overshoots were persistent. To eliminate the influences of the time delay, schemes based
on the predictive current control [5–11] and deadbeat current control [12–17] have been proposed. The
predictive current controller generates the optimal voltage vector by minimizing a specific cost function.
This voltage vector allows the motor current to reach its reference value as fast as possible with
minimum overshoot. Deadbeat current control is well-known for its zero overshoot, zero steady-state
error, and minimum rise time characteristics. Consequently, the motor current can reach its reference

Energies 2019, 12, 3555; doi:10.3390/en12183555 www.mdpi.com/journal/energies


Energies 2019, 12, 3555 2 of 19

value with minimum control periods without overshoot. Compared with predictive current control,
deadbeat control is simple to implement and requires less computation. However, its performance is
parameter-dependent, as reported in [15–17]. In particular, inductance is sensitive to the current level.
Online controller gain tuning is an effective method to mitigate the effects of parameter variations.
Numerous online electrical parameter identification strategies have been proposed. The
observer-based methods in [18–21] identify the parameters by converging the error between the
sampled and estimated current to zero. In [18], the identified inductance was used for the predictive
current controller to improve the robustness of the current loop. Observer-based methods often require
long execution times because of the delay of the observer and may encounter stability problems.
The authors in [22–24] performed the recursive least-square (RLS) algorithm to identify electrical
parameters. The motor model was used to develop the RLS algorithm. Then, the parameters were
identified by minimizing the discrepancy between the sampled and calculated current. Although
the latency caused by the observer does not exist in RLS-based methods, accurately identifying the
parameters in a few control periods is still difficult. In addition, the electrical parameters are generally
identified instead of the controller gains in these methods. However, the effect caused by the parameter
mismatch can be treated as a disturbance to the current controller. To compensate for this disturbance,
the compensation voltage, which was obtained through the disturbance observer in [12,17] and through
adaptive control in [25], is added to the current loop. Despite their effectiveness, the schemes in [17,25]
involve a complex design procedure to achieve satisfactory performance.
In this study, a deadbeat current controller was designed to enhance the current loop bandwidth
for its simple implementation. A novel online current loop tuning strategy is proposed to reduce
the effect of parameter variations. The proposed method is simple and effective because the method
is directly derived from the discrete-time motor model. In addition, the proposed method directly
identifies the gains of the deadbeat controller instead of the electrical parameters. After the controller
gains are identified, the gains are averaged to further improve accuracy. Then, the current loop is
tuned by updating the deadbeat controller with the average gains.

2. Discrete-Time Motor Model


The stator voltage of a PMSM in the rotor reference frame can be expressed as follows:

vrqs ωr Lds irqs ωr λm


" # " #" # " #
rs + sLqs
= + (1)
vrds −ωr Lqs rs + sLds irds 0

where vrqs , vrds , irqs , and irds are the q- and d-axis voltages and currents, respectively; Lqs and Lds are
the q- and d-axis inductance, respectively; rs , ωr , and λm are the phase resistance, rotor electrical
speed, and magnet flux, respectively; and s denotes the Laplace operator. When the current loop
and PWM function of the PMSM are implemented digitally, a time delay is inevitably introduced.
Figure 1 displays the time sequence of the current sampling, voltage command calculation, and voltage
command output, where Ts is the sampling period of the motor currents and the control period of the
current loop. As depicted in Figure 1, the voltage command is calculated at t0 and outputs to the PWM
module at t0 + Ts . Then, the voltage command is activated by the PWM module and held for one
sampling period during t0 + Ts to t0 + 2Ts . The motor current induced by the corresponding voltage
command is then sampled at t0 + 2Ts . Therefore, a time delay of two sampling periods is generated
in the current loop. The PWM function and calculation delay can be modeled together by using a
zero-order hold involving one sampling period delay. Accordingly, the stator voltage in Equation (1)
can be discretized as follows:

irqs (z) Bmq z−2


( !)
−sTs 1
Gq ( z ) = r =Z e · ZOH = (2)
vqs (z) Lqs s + rs 1 − Amq z−1
Energies 2019, 12, x FOR PEER REVIEW 3 of 20

iqsr ( z )   1   Bmq z −2
Gq ( z ) = rr = Z e − sTs ⋅ ZOH   = B z −2 −1 (2)
ivqsqs ( z )   L s + rs   1 − A
1 mqmq z
Gq ( z ) = r = Z  e − sTs ⋅ ZOH  qs =
vqs ( z )  Lqs s + rs   1 − Amq z −1 (2)
   
Energies 2019, 12, 3555 3 of 19
idsr ( z )   1  Bmd z −2
Gd ( z ) = rr = Z  e − sTs ⋅ ZOH    = (3)
vids ( zz)   L s1+ rs  1 −BA z −z2 −1
Gd ( zr) = dsr =(Z  e − sTs ⋅ ZOH  ds  =
!)
mdmd
(3)
ids (zv)ds ( z )   Lds s1+ rs   1 − Amd
−1
Bzmd z−2
−sT −Ts rs Lqs
Gd (z) = the
where Z{} is the Z-transform; = Zgainse sA mq and Bmq are e =
· ZOH (3)
vrds (model
z) Lds s + rs −Ts rs L1qs− and Amd z(1
−1− Amq)/rs, respectively;
where Z{} is the Z-transform; the model Ts rs Lds Amq and Bmq are e
−gains and (1 − A mq)/rs, respectively;
and the model gains Amd and Bmd are e and (1 − Amd)/rs, respectively. Because the back-EMF
−Ts rs Lds
where Z{}model
the is the gains
and cross-coupling Z-transform;
A the model egains
voltages are approximatelyand
md and B md are A mq and (1 B−mq
constant are
Awithin
md )/res,−T s rs /Lqs and (1 − A
respectively.
one control Because mq )/rthese
period, , respectively;
sthe back-EMF
voltages
and the model gains A and B are e−T r
s s /L ds and (1 − A )/r , respectively. Because the back-EMF
cross-coupling voltages
are assumed to be decoupled md are
from
md approximately constant within one
the current controllermdands are not represented in Equations control period, these voltages
(2)
and
and cross-coupling
are assumed
(3). The q- to and voltages
be decoupled arefrom
approximately
d-axis decoupling currentconstant
thevoltages, namelywithin
controller vqffand and one
arevdffcontrol
not period, these
represented
, respectively, voltages
in derived
are Equations are
(2)
from
assumed
and (3). to
The be decoupled
q- and d-axisfrom the
decoupling current controller
voltages, namely and are
v
Equation (1) by using the estimated electrical parameters and rotor speed in the following
qff not
and represented
v dff , in
respectively,Equations
are (2)
derived and (3).
from
The q- and (1)
Equation
expression: d-axis
by decoupling
using the voltages,
estimated namely
electricalvqff and vdff , respectively,
parameters and rotor are derived
speed in fromtheEquation
following(1)
by using the estimated electrical parameters and rotor speed in the following expression:
expression:
vqff = ωr Lˆ ds idsr + ωr λm
vqvvf qff = ω Lˆ dsˆ iids
f = ωrrL̂ds
rr r+ ωλ (4)
dff = −ωr Lqsds iqs+ ωr r λmm (4)
(4)
f =
vdvf dff = −ω Lˆ qs
−ωrr L̂ irrqs
qs i qs
where “^” denotes the estimated quantity.
where
where “ˆ”
“^”denotes
denotesthe theestimated
estimatedquantity.
quantity.

Figure 1. Time sequence for current sampling, voltage command calculation, and output, where
Figure
Figure Time
1. 1. sequence
Time forfor
sequence current
PWMsampling,
current voltage
sampling, voltage
is pulse-width command calculation,
command
modulation. andand
calculation, output, where
output, PWM
where
is pulse-width modulation. PWM is pulse-width modulation.
3. Overall Control System
3. Overall Control
3. Overall Control System
System
3.1.
3.1. Servo
Servo Control
Control System
System
3.1. Servo Control System
Figure
Figure 22illustrates
illustratesthethe overall
overall servo
servo control
control system,system, van , vbnv,anand
wherewhere , vbnv, and vcn are the phase
cn are the phase voltages;
Figure
voltages; θ m,2θillustrates the overall
r, and ωm denote the servo control
mechanical system,
position, electrical van, vbnand
where angle, vcn are
, andspeed, the phase
respectively;
θm , θr , and ωm denote the mechanical position, electrical angle, and speed, respectively; and “*”
voltages;
and “*” θm, θr, and
denotes the ω m denote the
command mechanical
value. The motorposition,
currentelectrical
is angle,using
regulated and speed,
a respectively;
deadbeat current
denotes the command value. The motor current is regulated using a deadbeat current controller. The
and “*”
controller.denotes the
The classical command value.
proportional The motor current is regulated
position with proportional-plus-integral using a deadbeat
velocity current
classical proportional position with proportional-plus-integral velocity (P-PI) control is (P-PI) control
implemented
controller. The classical
is proportional
motorposition withposition
proportional-plus-integral velocity (P-PI) control
to implemented
regulate the motor to regulate
speed andthe position speed and
[26]. The bandwidths [26]. Thespeed
of the bandwidths
loop andofposition
the speed
looploop
are
is implemented
and position loop to are
regulate
set as the
100 motor
and 10speed
Hz, and positionThe
respectively. [26].proposed
The bandwidths
online of theloop
current speed loop
tuning
set as 100 and 10 Hz, respectively. The proposed online current loop tuning algorithm continuously
and position
algorithm loop are set
continuously as 100
tunes theand
gains10inHz,
thearespectively.
current The
loopcurrentproposed
to achieve online current
a satisfactory currentloop tuning
response.
tunes the gains in the current loop to achieve satisfactory response. The variables associated
algorithm
The continuously tunes
variables the online
gains in the current loop to
inachieve a satisfactory
text. current response.
with the onlineassociated
tuning arewith the
defined in the tuning
followingare text.
defined the following
The variables associated with the online tuning are defined in the following text.

Figure 2. Block diagram of servo control system with the proposed online current loop tuning strategy.

3.2. Dead-Time Compensation


High-performance servo motor drives generally include dead-time compensation. The voltage
error caused by the dead time can be measured through the steady-state voltage command and current
Figure 2. Block diagram of servo control system with the proposed online current loop tuning
3.2. Dead-Time Compensation
strategy.
High-performance servo motor drives generally include dead-time compensation. The voltage
3.2. Dead-Time
error caused by Compensation
the dead time can be measured through the steady-state voltage command and
Energies 2019, 12, 3555 4 of 19
current feedback [27]. The
High-performance servovoltage
motor error
drivesatgenerally
different include
phase currents
dead-time forcompensation.
the inverter used in this
The voltage
study is depicted
error caused in Figure
by the 3. Thecan
dead time configuration
be measured of the motorthe
through drive is listed involtage
steady-state Table A1. The voltage
command and
error
feedbacksaturates when the
[27]. The voltage
current feedback magnitude
[27]. Theerror of the
at different
voltage phase
error phase current
currents
at different is higher
for the
phase than
inverterfor
currents 1
usedA.
the After the
in inverter voltage
this studyused inerror
is depicted
this
is
in calculated
Figure 3. with
The the phase
configuration current
of thefeedback,
motor dead-time
drive is listed compensation
in Table A1. is
Theperformed
voltage
study is depicted in Figure 3. The configuration of the motor drive is listed in Table A1. The voltage by
erroradding the
saturates
voltage
when
error the error
saturates to the
magnitude current
whenofthe loop,
themagnitudeas depicted
phase current in Figure
is higher
of the 2.
than 1 A.
phase current is After
higherthe voltage
than 1 A. error
Afteristhe
calculated with
voltage error
the phase current
is calculated withfeedback,
the phasedead-time compensation
current feedback, is performed
dead-time by adding
compensation the voltage
is performed byerror to the
adding the
current loop, as depicted in Figure 2.
voltage error to the current loop, as depicted in Figure 2.

Figure 3. The voltage error caused by the dead-time at different phase current.

The time delay in The the voltage


currenterror loopcaused
can degrade
by the effectiveness of dead-time compensation.
Figure
Figure 3.
3. by thethe dead-time
dead-time at at different
different phase phase current.
current.
To mitigate the influence of this time delay, the estimated phase current is used to calculate the
voltage
Theerror.
The time Figure
timedelay
delayinin4the illustrates
thecurrent
currentloop the proposed
loop cancandegrade current
degrade thethe estimator.
effectiveness
effectiveness Aof PIdead-time
controller
of dead-time is used
compensation.to reduce
compensation. To
the errorthe
mitigate
To mitigatebetween the of
influence sampled
the influence thisof time this and delay,
time estimated current.
the estimated
delay, the By ignoring
phase
estimated current
phase current the PI controller,
is used to used
is tothe
calculate estimated
the voltage
calculate the
current
error. can
Figure be4 expressed
illustrates as
thefollows:
proposed current estimator.
voltage error. Figure 4 illustrates the proposed current estimator. A PI controller is used to reduce A PI controller is used to reduce the error
between
the errorthe sampled theand estimated current.ˆ By ignoring the ˆignoring
PIr controller, the the estimated current can be
between sampled and iˆqsr (estimated *
( k ) + Aˆ By
k ) = Bmq ⋅ vqsrcurrent. mq ⋅ iqs ( k - 1)
PI controller, the estimated
(5)
expressed as follows:
current can be expressed as follows:
r r ∗ r
îqs (k) = B̂mq · vqs (k) + Âmq · îqs (k − 1) (5)
iˆiˆdsqsr ( k ) = Bˆ md ⋅ rr *
( ) + ˆ ⋅ ˆ r ( k - 1)
r
mq v qs
ds k A mq ds
md i qs (6)
(5)
îrds (k) = B̂md · vrds ∗ (k) + Âmd · îrds (k − 1) (6)
When the parameters are correct, the estimated current approximates the current sampled at
When the parameters are correct, iˆdsr ( kthe ˆ ⋅ vr * ( k )current
) = Bestimated +A ˆ ⋅ iˆapproximates
r
( k - 1v)r* ( k ) . An the current sampled at (6)
the
the (k + 2)th sampling instant, which md
is induced ds
byr∗ vqsr* ( mdk ) dsand ds operator z −2 is added in
(k + 2)th sampling instant, which is induced by vqs (k) and vr∗ ds
(k). An operator z−2 is added in the
the When
feedback the parameters
path of the are
estimator correct,
feedback path of the estimator because the estimated current is from two the
because estimated
the current
estimated approximates
current is from
sampling the
twocurrent
sampling
periods sampled
periods
before at
the
before
the (k +the
present present
2)th sampling
sampled sampled
instant,
current. current.
Then, which
the estimated Then, thephase
is induced estimated vqs ( phase
r*
by current k ) canandcurrent ds ( k )can
r*
bevcalculated . An beoperator
calculated
as follows:z as
−2 is follows:
added in
the feedback path of the  estimator iˆan   because the estimated current is from two sampling periods
1 0 
before the present sampled  ˆ  Then,
 îan current. 1 the 0 estimated
  cos θphase θr  iˆqsr#"can
sincurrent r be calculated as follows:
i bn  = − 1 2 −√ 3 2 cos θr sin θ r r  îqs
r
 " #
(7)
θr cosθr  iˆds  r

iˆ  − 11 2 √ 30 2 −−sin

 bn   = −1/2 − 3/2 (7)
θ θ

sin cos î
îcn   −1/2   r r

cn ds
3/2  cosθ sinθr  iˆqsr 
an
ˆ   r
i bn  = − 1 2 − 3 2   r  (7)
iˆ  − 1 2 3 2  − sinθr cosθr  iˆds 
 cn   

Figure 4. The proposed (a) q-axis and (b) d-axis current estimator.
Figure 4. The proposed (a) q-axis and (b) d-axis current estimator.
The pole-zero cancelation technique is used to design the PI controller of the current estimators.
By canceling the plant pole 4.
Figure with
Thethe controller
proposed zero,and
(a) q-axis the(b)
proportional gain
d-axis current kpqc and kpdc are calculated
estimator.
as follows:  
kpqc = kiqc · Âmq · Ts / 1 − Âmq (8)
 
kpdc = kidc · Âmd · Ts / 1 − Âmd (9)

where kiqc and kidc are the integral gains. Figure 5 shows the damping ratio and bandwidth of the
current estimator for various kiqc values. The bandwidth of the current estimator is determined from
the integral gain, and the proportional gains are then calculated using Equations (8) and (9).
k pqc = kiqc ⋅ A (
ˆ mq ⋅ Ts 1 − A
ˆ mq ) (8)

k pdc = kidc ⋅ A (
ˆ md ⋅ Ts 1 − A
ˆ md ) (9)

where kiqc and


Energies 2019, kidc are the integral gains. Figure 5 shows the damping ratio and bandwidth of
12, 3555 the
5 of 19
current estimator for various kiqc values. The bandwidth of the current estimator is determined from
the integral gain, and the proportional gains are then calculated using Equations (8) and (9).
In this
In this study,
study, the
the bandwidth
bandwidth of of the
the current
current estimator was set
estimator was set to
to 900
900 Hz
Hz because this can
because this can
simultaneously ensure that the estimated current strictly follows the sampled feedback
simultaneously ensure that the estimated current strictly follows the sampled feedback current andcurrent and
the estimator
the estimator predicts
predicts the
the sampled
sampled current
current accurately.
accurately. InIn addition,
addition, the
the current
current estimator
estimator has
has aa
critical-damped response.
critical-damped response.

Figure
Figure 5.
5. The
The (a)
(a) bandwidth
bandwidth and
and (b)
(b) damping
damping ratio
ratio of
of the
the current
current estimator at different integral gain.

4. Deadbeat
4. Deadbeat Current
Current Controller
Controller
When aa conventional
When conventional PI PI controller
controller is
is used
used to to regulate
regulate the
the motor
motor current,
current, the
the time
time delay
delay in
in the
the
control loop
control loop can
cancause
causestability
stabilityproblems
problemsbecause
because ofof
thethe degraded
degraded phase
phase margin.
margin. Consequently,
Consequently, the
the current loop bandwidth is limited to maintaining an acceptable overshoot on
current loop bandwidth is limited to maintaining an acceptable overshoot on the motor current. Tothe motor current.
To enhance
enhance thethe bandwidth
bandwidth of of
thethe current
current loop
loop totoitsitstheoretical
theoreticalmaximum,
maximum,aadeadbeat
deadbeatcurrent
current controller
controller
was
was developed
developed in in this
this study.
study.
Deadbeat Controller Design
Deadbeat Controller Design
Figure 6 depicts the schematics of the q- and d-axis current control loops with the deadbeat
Figure 6 depicts the schematics of the q- and d-axis current control loops with the deadbeat
controller, where C (z) and C (z) are the deadbeat controllers for the q- and d-axes, respectively.
controller, where Cqq(z) and Cdd(z) are the deadbeat controllers for the q- and d-axes, respectively.
Deadbeat controller design is conducted entirely in the z-domain. All the closed-loop poles are placed
Deadbeat controller design is conducted entirely in the z-domain. All the closed-loop poles are
at the origin in the z-domain. The q-axis transfer function is expressed as follows:
placed at the origin in the z-domain. The q-axis transfer function is expressed as follows:
irqs i r CCq (q z(z))·⋅G
Gqq ((zz))
=h(z )
qs
h(z)
iqs r * 1 + Cq (z) · Gq (z)= n zn
r ∗
== (10)
(10)
iqs 1 + Cq (z ) ⋅ Gq (z ) z
where
where the numeratorh(z)
the numerator h(z)provides
providesananadditional
additionaldegree
degreeofof
freedom
freedom forfor
thethe
controller design
controller n isnthe
andand
design is
number of poles. The q-axis current should strictly follow the command value without
the number of poles. The q-axis current should strictly follow the command value without a a steady-state
error. By applying
steady-state error. the
By finite-value
applying thetheorem to Equation
finite-value theorem(10),tothe following
Equation result
(10), the isfollowing
obtained:result is
obtained:   r 
  iqs z  h(z)
lim(z − 1) ·  r ∗ ·
   = lim n = 1 (11)
 iqsi z −z 1   z=1 z
h(z )
z=1 r
lim (z − 1) ⋅  * ⋅
  qs 
z =1   = lim =1 (11)
 iqs
r
For convenience, h(z) is set as 1. The difference
 1  of
z − form z =1
zn
 Equation (10) can be derived as follows:

For convenience, h(z) is set as 1. The idifference


r
(k) = ir ∗form
(k − nof
) Equation (10) can be derived as follows:
(12)
qs qs
i (k ) = iqsr (k − n)
r *
qs (12)
The results indicate that the q-axis current lags the command value by n control periods when
h(z) = 1. Except for the zero steady-state error, the q-axis current can also reach the command value
without an overshoot.
Energies 2019, 12, x FOR PEER REVIEW 6 of 20

The results indicate that the q-axis current lags the command value by n control periods when
h(z) = 1. Except for the zero steady-state error, the q-axis current can also reach the command value
Energies 2019, 12, 3555 6 of 19
without an overshoot.

Figure 6. (a)
(a)q-axis
q-axisand
and(b)
(b)d-axis
d-axiscurrent
currentloop
loopwith
withthe deadbeat
the controller
deadbeat when
controller thethe
when motor is at
motor is
standstill.
at standstill.

According to Equation (10) and the relation h(z) =


relation h(z) = 1, the deadbeat controller Cq((z)
z) can be derived
using the estimated electrical parameters. The deadbeat controller Cqq((z) is expressed
z) is expressed as follows:
2
− Â
zz2 − Aˆ ⋅·zz
Cq (qz() =) ˆ mq
mq
C z = (13)
(13)
mq ·⋅ ((z −−11))
n
B̂Bmq n

The transfer function of the qq-axis


-axis voltage command is given as follows:
r *
vvrqsqs∗ zz22 −−A ˆ z
Âmq
mq z
r* =
= (14)
(14)
irqsiqs∗ ˆ z nn
BB̂ mq z
mq

To satisfy the causality,


causality, the
the following
following inequality
inequalitymust mustbe
besatisfied:
satisfied:

nn≥≥ deg
n
{
ˆ zo = 2
deg zz2 2−−ÂAmqz = 2
mq
} (15)
(15)

where deg{}denotes
where deg{} denotesthethe highest
highest order
order ofpolynomial.
of the the polynomial.
When When n is selected
n is selected to the
to be 2 and be parameters
2 and the
parameters are perfectly matched, the q-axis current can attain the steady-state
are perfectly matched, the q-axis current can attain the steady-state and equal the command and equal the
value
command value in two control periods. In addition, the voltage command can attain
in two control periods. In addition, the voltage command can attain the steady state in two control the steady
state in after
periods two the
control periods
current after changes.
command the current command
Therefore, changes.
Cq (z) Therefore,
is modified Cq(z) is modified as
as follows:
follows:
z22 − ˆ mq · z
Cq (z) = z − Amq ⋅ z (16)
Cq ( z ) = B̂mq · (z22 − 1) (16)
Bˆ mq ⋅ ( z − 1)
The q-axis voltage command at the kth control instant can be derived from (16) as follows:
The q-axis voltage command at the kth control instant can be derived from (16) as follows:

( ) ( )
   
vrqs ∗ (kv)r =* vr ∗ ( k
(k ) =
qs v (k 2)
r *− 2) + K̂1q
− + ˆ
K · ⋅irqsi r∗ (* (kk))−− iirqs (k ) − K ⋅ i
r ∗
(k − 1) − i (k
r
r (k) −ˆK̂2q · r i*qs (k − 1) r− iqs (k − 1)
− 1) (17)
(17)
qs qs 1q qs qs 2q qs qs

where K̂Kˆ1q1q = Bˆ mq
= 11/ B̂mq ˆ 22q
and KK̂
, ,and =ˆ Â ˆ/B̂ . Similarly,
q = AmqmqBmq mq
. Similarly, thethe deadbeat
deadbeat Cd(Cz)d (z)
controller
controller cancan
be be derived
derived as
as follows:
follows:
z2 − Âmd · z
Cd (z) = 2 (18)
ˆz2 −⋅ z1)
B̂zmd−· (A
Cd ( z ) = md
(18)
The d-axis voltage command at the kth sampling Bˆ ⋅ (instant
z 2 − 1) is expressed as follows:
md

   
The d-axisvrvoltage

vr ∗ (k − 2) at
(k) = command K̂1d k· thir sampling
+ the ∗
(k) − ir (instant ir ∗ (k − 1)as
k) − K̂2dis·expressed r
− ifollows:
(k − 1) (19)
ds ds ds ds ds ds
r *
vds
where K̂1d = 1/B̂md , and 2d md md
(
(k )K̂= vdsr=* (Âk − 2/) +B̂ Kˆ 1d. Figure ) ( *
)
⋅ idsr (k ) − idsr (k ) − Kˆ 2d ⋅ idsr (k − 1) − idsr (k − 1)
*
(19)
7 depicts the detailed schematics of Cq (z) and Cd (z)
ˆ
with theKˆdecoupling
where voltage ˆ andˆvoltage ˆ limitation.
1d = 1 Bmd , and K 2 d = Amd Bmd . Figure 7 depicts the detailed schematics of Cq(z) and Cd(z)

with the decoupling voltage and voltage limitation.


Energies 2019, 12, x FOR PEER REVIEW 7 of 20

Energies 2019, 12, 3555 7 of 19


Energies 2019, 12, x FOR PEER REVIEW 7 of 20

Figure 7. Block diagram of the deadbeat controller with the decoupling voltage and voltage
limitation block, (a) Cq(z) and (b) Cd(z).
Figure 7. Block
Figure diagram
7. Block of the
diagram of deadbeat controller
the deadbeat with the
controller decoupling
with voltagevoltage
the decoupling and voltage
and limitation
voltage
5. Simulation Results
block, (a) Cq (z)
limitation (b)CC
and(a)
block, q(z)
d (z).
and (b) Cd (z).
A 400-W servo motor was used in the simulation. The motor parameters are listed in Table A2.
5. Simulation
5. drive
Simulation Results
The lossesResults
were ignored in the simulation. The voltage command was limited to half of the
AA400-W
DC voltage 400-W servomotor
servo
because motorwas
sinusoidal used
usedin
wasPWM in the
was simulation.
theimplemented, The motorparameters
as motor
simulation. The parameters
illustrated areare
in Figure 7. listed
in in
Because
listed Table
the
Table dA2.A2.
-axis
TheThedrive
current is losses
drive were
expected
losses weretoignored
have ainin
ignored the
thesimulation.
similar The
responseThe
simulation. voltage
the q-axis
as voltage command
current,
command was
wasonlylimited to half
the toq-axis
limited half of
thethe
current
of
DC voltage
simulation
DC voltage because
results sinusoidal
are
because presented.
sinusoidal PWM
PWMwas wasimplemented,
implemented, asas illustrated
illustratedininFigure
Figure7.7.Because
Because thethe d-axis
d-axis
current
currentis expected
is expectedto have a similar
to have response
a similar response q-axis
as the as the current,
q-axis current, q-axis
only theonly thecurrent
q-axissimulation
current
5.1.simulation
Results
results with Correct
are presented.
results are Motor Parameters
presented.
Figureswith
5.1.5.1.
Results
8 and 9 illustrate the q-axis current, current command, and voltage command when the
Results withCorrect
CorrectMotor
MotorParameters
Parameters
current steps from 0 to 1 A and from 0 to 4 A, respectively, when the motor is at standstill. As
Figures
depicted Figures 8 8and
in Figure and98,
9illustrate
illustrate
the q-axis the qq-axis
thecurrent current,
-axis current,
does not current
currentexhibit command,
command,
overshoot andandandvoltage
voltage
is command
exactlycommand whento
equal when
thethe
the current
current steps
steps from
from 0 to
0 to1 1A A and
and from
from 0 0to to4 4A,A, respectively,
respectively,
command value in two control periods after the current command changes. The voltage command when
when the motor
the motor is at
is atstandstill.
standstill. AsAs
depicted
depicted in in Figure
Figure 8, 8,
the the
q-axis q -axis
currentcurrent
does does
not not
exhibit exhibit
overshoot
is generated immediately after the current command changes. The voltage commands at the kTs and overshoot
and is and is
exactly exactly
equal toequal
the to the
command
(k +command
value 1)T two value
ins control
control inperiods
periodstwocan control
after
be periods
the current
calculated after the currentchanges.
command
as follows: command changes.
The voltageThe voltage is
command command
generated
immediately after the current command changes. The voltage commands at the kTs and kT
is generated immediately after the current command changes. The voltage commands at the and
(ks + 1)Ts
qs ( ( + ) s ) qs ( ( ) s )
− +
r r
(k + 1)periods
Ts control periods can be calculated i k 2 T
as follows: i k 1 T
control can vqs ( kTs ) ≈ Lqs
be calculatedr * as follows: = 84.14 V (20)
iqsr ( ( k + 2 ) Ts )T−s irqsr ( ( k + 1) Ts )
vqs ( kTs ) ≈ Liqsqs ((k + 2)Ts ) − iqs ((k + 1)Ts )= 84.14 V
r * r
(20)
vrqs ∗ (kTs ) ≈ Lqs T = 84.14 V (20)
v ( ( k + 1) T ) ≈ r ⋅ i (s ( k + 2 ) T ) = 2.1 V
r *
qs s s qs
rT * s
s (21)
∗v ( ( k + 1) T ) ≈ r ⋅ i ( ( k + 2 ) T ) = 2.1 V
r * rr *∗
Note that these command vrqsvalues
((k + 1are)Tsless
qs )s ≈ rthan ((k +
ss · i half )T
of 2the
qs
qs s s ) = 2.1 V
DC supply. (21)(21)
Conversely,
Note that
Note these
that as command
these depicted
commandvaluesin Figure
values are
areless 9, than
less the half
than q-axis current
of the
the DC supply.
DC increases slowly and requires
supply.
approximately
Conversely, six
Conversely, control
as depicted periods
in Figure
as depicted to attain
in Figure the
9, the q-axis command
9, thecurrent value
q-axisincreases because
current slowlyincreasesthe
andvoltage
requires
slowly required for the
approximately
and requires
current
six to periods
control increase
approximately tofrom
six attain0the
control to command
4 A to
periods in attain
onevalue
control
thebecause period
command exceeds
thevalue
voltage the command
because
required for the limit.
the voltage The
required
current voltage
tofor the
increase
command
current saturates
to increase several
from 0 times
to 4 Abefore
in one the q-axis
control current
period reaches
exceeds the its
from 0 to 4 A in one control period exceeds the command limit. The voltage command saturates several command
command value,
limit. Thewhich
voltageis in
agreement
command
times with the
saturates
before the control
q-axis several law
currenttimes presented
reachesbefore in Equation
the q-axis value,
its command (17). The
currentwhich
reaches actual rise
itsagreement
is in time
command with is dependent
value,the
which on
is in
control the
law
motor inductance.
agreement
presented with the control
in Equation lawactual
(17). The presented in Equation
rise time (17). The
is dependent onactual
the motorrise time is dependent on the
inductance.
motor inductance.

Figure 8. The simulated q-axis current, current command, and voltage command when the current
Figure 8. The simulated q-axis current, current command, and voltage command when the current
Figure 8.steps
command The simulated
from 0 A toq-axis
1 A. current, current command, and voltage command when the current
command
command steps from 0 A to11A.
steps from 0 A to A.
Energies 2019, 12, x FOR PEER REVIEW 8 of 20

Energies 2019, 12, 3555 8 of 19


Energies 2019, 12, x FOR PEER REVIEW 8 of 20

Figure 9. The simulated q-axis current, current command, and voltage command when the current
command steps from 0 A to 4 A.
Figure 9. The simulated q-axis current, current command, and voltage command when the current
Figure 9. The
command simulated
from 0 A q-axis current, current command, and voltage command when the current
Figure 10steps
command illustrates
steps
to 4 A.
from 0 A the frequency response of the deadbeat controller without voltage
to 4 A.
limitations. The current loop gain is 0 dB at low frequencies and is flat until the Nyquist frequency.
Figure 10 illustrates the frequency response of the deadbeat controller without voltage limitations.
This Figure
indicates10that the current can
illustrates follow its command without overshoot and steady-state error.
The current loop gain is 0 dBthe frequency
at low response
frequencies and is of
flatthe
untildeadbeat
the Nyquistcontroller without
frequency. voltage
This indicates
However,
limitations.the phase
Thecan lag
current increases
loop with
gain is 0 dB frequency. The
at lowovershoot phase
frequencies margin decreases to 0 at 4.575 kHz.
that the current follow its command without andand is flat until
steady-state the However,
error. Nyquist frequency.
the phase
Therefore,
This the maximum
indicates theoretical
thatfrequency.
the current bandwidth of the proposed deadbeat controller is one-fourth of
lag increases with Thecan follow
phase its command
margin decreases without overshoot
to 0 at 4.575 and steady-state
kHz. Therefore, error.
the maximum
the controlthe
However, frequency.
phase lag increases with frequency. The phase margin decreases to 0 at 4.575 kHz.
theoretical bandwidth of the proposed deadbeat controller is one-fourth of the control frequency.
Therefore, the maximum theoretical bandwidth of the proposed deadbeat controller is one-fourth of
the control frequency.

Figure 10. The frequency response of the deadbeat current controller without voltage limitation.
Figure 10. The frequency response of the deadbeat current controller without voltage limitation.
5.2. Results with Parameter Mismatch
5.2. Results
Figurewith
10. Parameter
The frequency Mismatch
response of the deadbeat current controller without voltage limitation.
The phase resistance and q- and d-axis inductances are required to design a deadbeat controller. The
The phase resistance
deadbeat controller performance and q- and d-axis inductances
is dependent on the accuracyare required
of the to design aelectrical
estimated deadbeatparameters.
controller.
5.2. Results
The deadbeat with Parameter Mismatch
Figures 11 and controller
12 displayperformance
the dominantis poles dependent on thecurrent
of the q-axis accuracy loop ofinthe
theestimated
z-domainelectrical
and the
parameters. Figures
The phaseq-axis
corresponding 11
resistance and
current 12 display the
q- and d-axis
andresponse dominant
wheninductances poles
the current are of the q
required
command -axis current
to design
steps from 0atoloop inand
deadbeat
1A thecontroller.
z-domain
the phase
and
The the corresponding
deadbeat controller q
resistance varies 50% and 150% from its nominal value, respectively. The figures indicate that and
-axis current
performance response
is when
dependent the
on current
the command
accuracy of steps
the from
estimated 0 to 1 A
electrical
the
the phase
parameters.
poles remainresistance
Figures
near the11varies
and 50%
origin 12 and 150%
display
regardless of from
thethe
dominantits nominal
variations poles
in theofvalue,
the
phase respectively.
q-axis currentThe
resistance. The
loop figures
in
q-axis indicate
thecurrent
z-domain
can
that reach
and
still the corresponding
the poles remain near
its command qvaluethein
-axis origin
current regardless
response
two control of the
when
periods; variations
the current
however, in the overshoot
command
marginal phase resistance.
steps from 0 toThe
is observed. 1Aq-axis
and
This
current
the phasecan still
resistance reach its
varies command
50% and value
150% in
from twoits control
nominal periods;
value, however,
respectively.
implies that the influence of the resistance mismatch to the deadbeat controller is trivial. However, the marginal
The overshoot
figures indicateis
observed.
that the
q-axis This implies
poles depicted
current remain near that the influence
the origin
in Figure of
11 isregardless the resistance
marginallyoflower mismatch
the variations to the
in the phase
than its command deadbeat
valueresistance. controller
at the steadyThe qstate is
-axis
trivial.
current However,
can still the
reach q -axis
its current
command depicted
value in in
two Figure
control 11 is marginally
periods; however,
because the resistance is smaller than its nominal value. Conversely, the q-axis current illustrated in lower than
marginal its command
overshoot is
value
observed.at the
Thissteady state
implies because
that the the resistance
influence of the is smaller
resistance than its
mismatch nominal
Figure 12 is marginally higher than its command value at the steady state because the resistance is to the value.
deadbeatConversely,
controller the
is
q-axis than
trivial.
larger currentits illustrated
However, nominal in Figure
the qvalue.
-axis current 12 depicted
is marginally higher11
in Figure than its command
is marginally valuethan
lower at the itssteady
commandstate
because
value at the
the resistance
steady stateis larger
because than itsresistance
the nominal value.
is smaller than its nominal value. Conversely, the
q-axis current illustrated in Figure 12 is marginally higher than its command value at the steady state
because the resistance is larger than its nominal value.
Energies 2019, 12, x FOR PEER REVIEW 9 of 20
Energies 2019, 12, x FOR PEER REVIEW 9 of 20
Energies 2019, 12, 3555 9 of 19
Energies 2019, 12, x FOR PEER REVIEW 9 of 20

Figure 11. (a) The dominant poles and (b) simulated q-axis current and voltage command with
rˆs = 0.5r11.
Figure (a) The
s when the dominant poles and
current command (b)from
steps simulated
0 A to 1q-axis
A. Thecurrent
motor and voltage command with
is at standstill.
Figure 11. (a) The dominant poles and (b) simulated q-axis current and voltage command with
rˆs = 0.5rs11.when
Figure the current
(a) The dominantcommand steps
poles and (b)from 0 A to 1q-axis
simulated A. Thecurrent
motor is
andat standstill.
voltage command with
r̂s = 0.5rs when the current command steps from 0 A to 1 A. The motor is at standstill.
rˆs = 0.5rs when the current command steps from 0 A to 1 A. The motor is at standstill.

Figure 12. (a) The dominant poles and (b) simulated q-axis current and voltage command with
Figure
rˆs = 1.5r12.
Figure 12. ((a)
s when
The
a) The dominant
the dominant
current poles and
poles
command and (b)
(b)from
steps 0 A to 1q-axis
simulated
simulated q-axis
A. Thecurrent
motor and
current is at voltage
and voltage command
command with
standstill. with
=
r̂Figure 1.5r
rˆs = 1.5r12.
s s
when
s when the current
the current
(a) The dominantcommand
command steps
steps
poles and from
(bfrom 0 A to 1 A. The
0 A to 1q-axis
) simulated motor
A. Thecurrent is
motor is at
and standstill.
at standstill.
voltage command with
rˆs = 1.5rs 13
Figures when
andthe14 current
illustratecommand steps from
the dominant poles0 Aof tothe
1 A.q-axis
The motor
current is atloop
standstill.
and the corresponding
Figures 13 and 14 illustrate the dominant poles of the q-axis current loop and the corresponding
q-axisFigures
current13response
and 14 illustrate
when the thecurrent
dominant poles ofsteps
command the q-axis
from current
0 to 1 Aloop andand thethe corresponding
q-axis inductance
q-axisFigures
current13response
and 14 when the
illustrate thecurrent
dominant command
poles steps
of the qfrom
-axis 0 to 1 Aloop
current andand q-axis
the the inductance
corresponding
qvaries
-axis current response when the current command steps from 0 to
50% and 120% from its nominal value, respectively. In contrast to the results depicted in 1 A and the q -axis inductance
varies
q-axis 50%currentandresponse
120% from when its the
nominal value, respectively. In contrast
0 to 1 A to thetheresults depicted in
varies
Figures 50% and12,
11 and 120% from
the variations incurrent
its nominal command
value,
the inductance steps from
respectively.
considerably In deteriorate
contrast and
tothethesystemq-axis
results inductance
depicted
performance. in
Figures
varies 11
50% and
and 12, the variations in the inductance considerably deteriorate the system performance.
Figures
As depicted11 and 12,120%
the 13,
in Figure fromthe its
variations nominal
in the
current value,becomes
inductance
response respectively.
considerably Indeteriorate
overdamped contrast
whentothe theinductance
resultsperformance.
system depicted
is smallerin
As depicted
Figures 11 in Figure
and 12, the 13, the current
variations in response
the inductancebecomes overdamped
considerably when the
deteriorate the inductance
system is smaller
performance.
As depicted in Figure 13, the current response becomes overdamped
than its nominal value because the poles mitigate toward the unit circle along the real axis. However, when the inductance is smaller
than its nominal
AsFigure
depicted value 13, because the poles mitigate towardoverdamped
the unit circle along the real axis. However,
than
in 14,inthe
its nominal Figure
value
current the
because current
the poles
response response
mitigate
becomes becomes
toward the unit
underdamped whencircle
the when
along the
inductancetheinductance
realis axis.
larger is than
smaller
However, its
in Figure
than 14,
its nominal the current
value response
because becomes
themitigate
poles underdamped
mitigate toward when the inductance is larger than its
in Figure
nominal 14, the
value current
because theresponse
poles becomes the unitthe
underdamped
toward unitalong
when
circle circle
the thealong
inductancethe real
imaginary is axis.
largerHowever,
axis. than its
Although
nominal
in Figure value because
14, the currentthe poles mitigate toward the unit circlewhen alongthe the inductance
imaginary axis. Althoughthan no
nominal
no value
steady-state because
error theresponse
is observed, thebecomes
poles mitigate transient underdamped
toward the unit
response of circle along
the q-axis the imaginary
current is axis.
is considerablylarger Although its
affected.
steady-state
nominal error
value is
becauseobserved,
the the
poles transient
mitigate response
toward theof the
unit q-axis
circle current
along the is considerably
imaginary axis.affected.
Although In
no steady-state
In addition, the error
current is observed,
loop can becomethe transient response
unstable if the poles q-axis current
of themitigate outside is the
considerably
unit circleaffected.
because
addition,
no the current
steady-state error loop
is can become
observed, the unstable response
transient if the poles of mitigate
the q-axis outside
current the
is unit circle because
considerably of
affected.
In addition, the current
of the mismatched inductance. loop can become unstable if the poles mitigate outside the unit circle because
the mismatched
In the
addition, inductance.
the current loop can become unstable if the poles mitigate outside the unit circle because
of mismatched inductance.
of the mismatched inductance.

Figure 13. (a) The dominant poles and (b) simulated q-axis current and voltage command response
Figure 13. (a) The dominant poles and (b) simulated q-axis current and voltage command response
with L̂qs = 0.5L qs when the current
poles command steps from 0 A current
to 1 A, the
andmotor is atcommand
standstill.response
with Lˆ13.
Figure (a) The dominant and (b) simulated q-axis voltage
qs = 0.5 Lqs when the current command steps from 0 A to 1 A, the motor is at standstill.
FigureLˆ qs
with 13.= (0.5
a) LThe dominant poles and (b) simulated q-axis current and voltage command response
qs when the current command steps from 0 A to 1 A, the motor is at standstill.
with Lˆ qs = 0.5 Lqs when the current command steps from 0 A to 1 A, the motor is at standstill.
Energies 2019, 12, 3555 10 of 19
Energies 2019, 12, x FOR PEER REVIEW 10 of 20

Figure 14. (a) The dominant poles and (b) simulated q-axis current and voltage command response
Figure 14. (a) The dominant poles and (b) simulated q-axis current and voltage command response
with L̂qsˆ = 1.2Lqs when the current command steps from 0 A to 1 A, the motor is at standstill.
with Lqs = 1.2 Lqs when the current command steps from 0 A to 1 A, the motor is at standstill.
6. Online Current Loop Tuning
6. Online Current Loop Tuning
The deadbeat controller performance is considerably affected by parameter mismatch because
The deadbeat
the voltage command controller performance
is directly is considerably
related to the voltage dropaffected by parameter
on the inductance andmismatch
resistance.because
In this
the voltage
study, command
a novel is directly
online current looprelated
tuningto the voltage
strategy drop on thetoinductance
was developed and
preserve the resistance.
deadbeat In this
controller
study, a novelOnly
performance. online
thecurrent
q-axis loop tuning
current loopstrategy was because
is discussed developed to preserve
similar results the
candeadbeat controller
be obtained for the
performance.
d-axis loop. the q-axis current loop is discussed because similar results can be obtained for the
current Only
d-axis current loop.
6.1. Controller Gain Identification
6.1. Controller Gain Identification
From Equation (2), the q-axis current sampled at the kth and (k − 1)th control instants can be
expressed
From as follows:(2), the q-axis current sampled at the kth and (k − 1)th control instants can be
Equation
expressed as follows:
irqs (k) Bmq · vrqs (k − 2) + Amq · irqs (k − 1)
" # " #
= (22)
irqs (k −iqs1()k )  BBmq vqsrqs((kk −−23))++AA
mq ⋅· v ⋅ iqsr· i(rqsk(-k1−
) 2)
r r
mqmq
r =  (22)
iqs ( k - 1)   Bmq ⋅ vqs ( k − 3) + Amq ⋅ iqs ( k - 2 ) 
r r

Equation (22) can be rearranged as follows:
Equation (22) can be "rearranged as follows: #"
irqs (k) −irqs (k − 1)
# " r #
K1q vqs (k − 2)
= (23)
irqs (k −iqs1()k ) −irqs-i(qsk (−k2-)1)  K 1q   vqsr v( krqs−(k2−
)3)
r r
K2q
r  = r  (23)
iqs ( k - 1) −iqs ( k - 2 )   K2 q   vqs ( k − 3) 
r

where K1q and K2q are defined as K1q = 1/Bmq and K2q = Amq /Bmq , respectively. Because the voltage
error
wherecaused
K1q andbyKthe dead-time
2q are defined as K1q = 1 Bmq and
is satisfactorily K 2q = Amq the
compensated, Bmq controller K1q andthe
gainsBecause
, respectively. K2qvoltage
can be
reasonably estimated using the command values, which are expressed as follows:
error caused by the dead-time is satisfactorily compensated, the controller gains K1q and K2q can be
reasonably estimated using" the# command values, rwhich are#−1 expressed as follows:
ir (k)
" " r ∗ #
K̂1q −iqs (k − 1) vqs (k − 2)
= r qsr −1 (24)
K̂2q Kˆ 1q  iqs (ikqs −( k1)) −i-iqsqsr ((kk -−12) )  vqsr *v(qsk −(k2 −) 3)
r r ∗
 =    (24)
 ˆ  iqsr ( k - 1) −iqsr ( k - 2 )   vqsr * ( k − 3) 
To solve Equation (24), the K  
 2 qdeterminant of the inverse   matrix must  be a nonzero value. This
condition is expressed as follows:
To solve Equation (24), the determinant of the inverse matrix must be a nonzero value. This
condition is expressed as follows:
det irqs = irqs (k − 1)2 − irqs (k) · irqs (k − 2) , 0
 
(25)

As presented in Equation (24), the


( )
det iqsr = iqsr ( k − 1) − iqsr ( k ) ⋅ iqsr ( k − 2 ) ≠ 0
2
(25)
controller gains can be estimated using the sampled currents
and voltage commands.
As presented in Equation (24), the controller gains can be estimated using the sampled currents
and voltage commands.
6.2. Estimation Accuracy Improvement
 
6.2. Estimation Accuracy
The controller gains cannot be identified in the steady state because det irqs is 0. In addition,
Improvement
gains cannot be identified in the steady state because det (i qsr ) is 0. In addition,
although the current ripples caused by the speed and position controller or current sensor noise yield
The controller
r

nonzero det iqs , these currents cannot be used to identify controller gains because they have a low
although the current ripples caused by the speed and position controller or current sensor noise
correlation with the motor parameters and consequently a low signal-to-noise-ratio (SNR). Figure 15a
yield nonzero det (i qsr ) , these currents cannot be used to identify controller gains because they have a
low correlation with the motor parameters and consequently a low signal-to-noise-ratio (SNR).
Energies 2019, 12, 3555 11 of 19
Energies 2019, 12, x FOR PEER REVIEW 11 of 20

Figure 15a depicts a steady-state q-axis current with a current ripple. Although the current ripple is
depicts a steady-state q-axis current with a current ripple. Although the current ripple is unpredictable
unpredictable in practice, the ripple is modeled as a square wave with an amplitude of Δi for
in practice,
 theofripple is modeled as a square wave with an amplitude of ∆i for convenience of analysis.
convenience r analysis. Then, det (i qsr ) with the current ripple is calculated as follows:
Then, det iqs with the current ripple is calculated as follows:

( ) ( ) ( )
2
det iqsr = iqsr * + Δi2 − iqsr * ⋅ iqsr * − Δi  = 3iqsr * ⋅ Δi + Δi 2 (26)
det irqs =SS irqs ∗ + ∆i − irqs ∗ · irqs ∗ − ∆i = 3irqs ∗ · ∆i + ∆i2 (26)
SS
 (iqs ) SS versus the q-axis current command when Δi is set as
r
Figure 15b depicts a plot of det
Figure 15b depicts a plot of det i versus the q-axis rcurrent command when ∆i is set as 10%
r
10% of the command value. It canqs be SS seen  that
 det (i qs ) increases with the current level.
SS
of the command value. It can ber seen that det irqs increases with the current level. Therefore, a
Therefore, a threshold
  for det (i qs ) must be set toSSavoid identification error in the steady state.
threshold for det irqs must be set to avoid identification error in the steady state. Accordingly, controller
Accordingly, controller gain identification is performed only when the following condition is
gain identification is performed only when the following condition is satisfied:
satisfied:

( ) ( )
   
det irqsiqsr >> det
det detthres rr
thres iqs
qs (27)
(27)

det thres (iiqsrr ) isis the


where det thethreshold
thresholdvalue. In general, the threshold value can be tuned
can bethrough
 
where thres qs value. In general, the threshold value tuned
experiments.
through experiments.

( )
 
15.(a)
Figure 15. (aSteady-state q-axis
) Steady-state current
q-axis with current
current ripple, ripple,
with current det irqs
and (b) and (b) det r
versus
iqs current command.
versus current
SS SS

command.
The identification accuracy can be further improved by averaging the controllergains calculated in
the last m control periods. In addition, each identified gain is weighted using its det irqs . The averaged
The identification accuracy can be further improved by averaging the controller gains
controller gains are calculated as follows:
calculated in the last m control periods. In addition, each identified gain is weighted using its
det (i qsr ) . The averaged controller gains
X m are calculated
 as  follows:
Xm  
K̂1q,y · det y irqs / det y irqs

K1q = (28)
m m
K1q,y ⋅ det y (iqsr )
 det y (iqsr )

y=1 ˆ y=1
K1q = (28)
my =1
X   X
=1
ym
 
K2q = r
K̂2q,y · det y iqs / det y irqs (29)
m m
Kˆ 2 q,y ⋅ det y (iqsr )
 det y (iqsr )

y=1 y=1
K2q =  (29)
Because the average controller gain is dominated by the identified gain with higher det irqs , the
y =1 y =1

identification accuracy
Because the controller gain is dominated by the identified gain with higher det (i qsr ) ,
improves.
average
After the average controller gains are calculated, the model gains can be determined as follows:
the identification accuracy improves.
After the average controller gains are Âmq calculated,
= K2q /K1q the model gains can be determined(30)
as
follows:

ˆ mq = 1/K2q (31)
A mq = K 2 q K1q (30)
Because the effect of resistance variation on the current response is trivial, the estimated q-axis
Bˆ = 1 K 2 q (31)
inductance can be approximated as follows: mq
Because the effect of resistance variation on the current
  response is trivial, the estimated q-axis
L̂qs ≈ −Ts rs /ln Âmq (32)
inductance can be approximated as follows:

( )
Lˆ qs ≈ − Ts rs ln A
ˆ
mq (32)
Energies 2019, 12, x FOR PEER REVIEW 12 of 20
Energies 2019, 12, 3555 12 of 19
The model gains Âmd and B̂md as well as the estimated d-axis inductance can be obtained
similarly. As depicted in Figure 1, the estimated inductances and model gains are used for the
The model gains Âmd and B̂md as well as the estimated d-axis inductance can be obtained similarly.
decoupling voltage calculation and dead-time compensation, respectively.
As depicted in Figure 1, the estimated inductances and model gains are used for the decoupling voltage
calculation and dead-time compensation, respectively.
6.3. Identification when Voltage Command is Limited
6.3. Identification
As illustratedWhen Voltage7,Command
in Figure the statorIsvoltage
Limitedsaturates to a maximum voltage Vmax as follows:
As illustrated in Figure 7, the stator voltage2 saturates
r 2
to a maximum voltage Vmax as follows:
vqsr + vds ≤ V max (33)
q
Vmax depends on the DC voltage and vrqsthe
2 + vr 2 ≤ V
dead-time
ds maxof the inverter. The motor used in (33)
this
study has almost identical q- and d-axis inductances. Thus, the d-axes current is controlled to 0 to
Vmax the
generate depends on the
required DC voltage
torque with aand the dead-time
minimum statorofcurrent.
the inverter. The motorthe
Consequently, usedd-axis
in thisvoltage
study
has almost identical q- and d-axis inductances. Thus, the d-axes current
approximates to the decoupling voltage and the steady-state q-axis voltage can be calculated using is controlled to 0 to generate
the required
Equation (34)torque
whenwith a minimum
the stator voltagestator current.
saturates to VConsequently,
max.
the d-axis voltage approximates to
the decoupling voltage and the steady-state q-axis voltage can be calculated using Equation (34) when
2 r 2 2
vqsr. = ± Vmax − vds = ± Vmax − vdff
the stator voltage saturates to Vmax 2
(34)
q q
Subsequently, the voltage vrqs command
= ± Vmaxused 2 − vrto2 identify
= ± Vmax the2 controller
− vd f f 2 gains when the voltage (34) is
ds
limited is obtained as follows:
Subsequently, the voltage command used to identify the controller gains when the voltage is
vqsr * = vqsr − vqff (35)
limited is obtained as follows:
vrqs ∗ = vrqs − vq f f (35)
6.4. Gain Update Method
6.4. Gain Update Method
Figure 16 illustrates the timing for identifying and updating the gains in a deadbeat controller
Figure 16
and current illustrates
estimator, the timing
where the green for bar
identifying
denotes and updating of
the execution thethe gains in a control
current deadbeat and controller
the blue
and current estimator,
bar denotes the execution where the speed
of the green andbar denotes
positionthe execution
control. of the
Because thecurrent control and
d-axis current the blue
is controlled
bar
to 0,denotes the
only the execution
gains in the of the speed
q-axis current and
loopposition control. Because
are identified. However, thebecause Lqs ≈ Lisds controlled
d-axis current , the gains to in
0, only the gains in the q-axis current loop are identified. However,
Cd(z) and the d-axis current estimator are set equal to the corresponding q-axis values. because Lqs ≈ L ds , the gains in C
The controller d (z)
and
gainsthe d-axis
are current
identified estimator
when are setcontrol
the current equal toloop the corresponding q-axis the
is executed. Because values. The control
current controller gains
executes
are identified
eight when
times faster the the
than current
speed control loop is executed.
and position control, atBecause the current
most eight control
controller gainsexecutes eight
are identified
times faster than the speed and position control, at most eight controller gains are identified before the
before the next speed control is executed. Then, K 1q , K 2 q , Âmq , B̂mq , Lˆ qs , and kpqc are calculated
next speed control is executed. Then, K1q , K2q , Âmq , B̂mq , L̂qs , and kpqc are calculated using Equations (8)
using Equations (8) and (28)–(32) when the speed control is executed. Subsequently, the gains in the
and (28)–(32) when the speed control is executed. Subsequently, the gains in the deadbeat controller
deadbeat controller and the parameters in the current estimator are updated in the next execution of
and the parameters in the current estimator are updated in the next execution of the current control
the current control because the motor current generally reaches steady state at this instant. The PI
because the motor current generally reaches steady state at this instant. The PI controller in the current
controller in the current estimator is updated two control periods after the model gain is updated
estimator is updated two control periods after the model gain is updated because the sampled current
because the sampled current is two control periods behind the estimated current.
is two control periods behind the estimated current.

Figure 16. Time sequence of the gain identification, calculation and updating.
Figure 16. Time sequence of the gain identification, calculation and updating.
7. Experimental Results
7. Experimental Results
A 400-W servo motor was used for experimental verifications. The parameters of the motor are
A 400-W
provided servo
in Table motor
A1. was17used
Figure for experimental
illustrates verifications.
the experimental system.TheThe
parameters
proposedofonline
the motor are
current
provided in Table A1. Figure 17 illustrates the experimental system. The proposed online
loop tuning scheme is implemented using a Texas Instruments TMS320F28335 DSP. The detailed current
loop tuning scheme is implemented using a Texas Instruments TMS320F28335 DSP. The detailed
Energies 2019, 12, x FOR PEER REVIEW 13 of 20
Energies 2019, 12, 3555 13 of 19
Energies 2019, 12, x FOR PEER REVIEW 13 of 20
configuration of the drive is detailed in Table A2. In this study, Vmax was set to 139 V to account for
the losses caused
configuration
configuration of bydrive
ofthe
the the dead
drive time. in
isisdetailed
detailedThe motor
inTable A2.
Table position
In In
A2. this and
study,
this speed
Vmax
study, were
was
Vmax measured
set
was to 139
set using
V to
to 139 an encoder
Vaccount for the
to account for
with
losses a resolution
caused by of
the 2500
dead pulse/rev.
time. The motor position and speed were measured using an
the losses caused by the dead time. The motor position and speed were measured using an encoder encoder with a
resolution of 2500of
with a resolution pulse/rev.
2500 pulse/rev.

Figure 17. Experimental system.


Figure
Figure 17. Experimental system.
17. Experimental system.
The experimental results shown in Figures 18–21 were obtained without the online current loop
tuning
Thealgorithm.
The experimental
experimental Figure 18 illustrates
results
results shown
shown in inthe
Figuresq-axis
Figures current
18–21
18–21 were
were and voltagewithout
obtained
obtained command
without the response
the online
online whenloop
current
current the
loop
current
tuning increased
algorithm. from
Figure 0 to
18 1 A and
illustrates from
the 0 to
q-axis 4 A, respectively,
current and when
voltage
tuning algorithm. Figure 18 illustrates the q-axis current and voltage command response when the the
command motor was
response at standstill.
when the
The voltage
current
current command
increased
increased from0was
from 0toto1less
1AAandthan
andfromthe
from 0limit
to 4for
0 to A,
4 A,therespectively,
1 A step but
respectively, when exceeded
when the the
the motor motor limit
was atfor
was atthe 4 A step.
standstill. The
standstill.
As depicted
voltage
The command
voltage in Figure
command was was18a,than
less the than
less q-axis thecurrent
the limit for the
limit forwas Aexactly
1the step buttwo
1 A step butcurrent
exceeded
exceeded control
the limit periods
for
the limit the
for 4thebehind
A step.
4 A step.the
As
command
depicted in value.
Figure Furthermore,
18a, the q-axis overshoot
current was and steady
exactly two state error
current
As depicted in Figure 18a, the q-axis current was exactly two current control periods behind the were
control not observed
periods behind forthethe current.
command
However,
value.
command the q-axis
Furthermore,
value. current presented
overshoot
Furthermore, and steady
overshoot in and
Figure
state 18b required
error
steady wereerror
state notapproximately
observed
were notfor seven
the
observed control
current.
for periods
theHowever,
current.
to reach
the q-axisthe
However, thecommand
currentq-axis valuepresented
presented
current because
in Figurethe 18b voltage
required
in Figure wasapproximately
18b limited to
required 139seven
V. These
approximately controlresults
seven highlyto
periods
control concur
reach
periods
with
the the
command simulation
value results
because described
the voltage in Section
was limited5. Thus,
to 139 theV.
to reach the command value because the voltage was limited to 139 V. These results highly concureffectiveness
These results of the
highly deadbeat
concur current
with the
controller
simulation
with was
the simulation verified.
results described in Sectionin5. Section
results described Thus, the effectiveness
5. Thus, of the deadbeat
the effectiveness of the current
deadbeat controller
current
was Figure
verified. 19a demonstrates
controller was verified. the q-axis current, voltage, and speed response when the motor had
rotation
Figure speeds
19a between
demonstrates −3000 the and
q-axis3000 rpm.
current, The
voltage,q-axisand current
Figure 19a demonstrates the q-axis current, voltage, and speed response when the motor had speed followed
response the
when command
the motor value
had
rotation regardless
closely
rotation speeds
speedsbetween of the
between motor
−3000
−3000 and speed.
and3000 Figure
rpm.
3000 The19b,c
rpm. q-axis
The depicts
current
q-axis the amplified
followed
current views
the command
followed of value
the command the situation
closely
value
when the
regardless current
of the increased
motor speed.from −4
Figure to 4 A
19b,c and decreased
depicts the from
amplified
closely regardless of the motor speed. Figure 19b,c depicts the amplified views of the situation 4 to −4 A,
views respectively.
of the situationThe deadbeat
when the
controller
current produced
increased from pulse-wise
−4 to 4 A andvoltage
decreased because from the
4 tostator
−4 A, voltage was
respectively.
when the current increased from −4 to 4 A and decreased from 4 to −4 A, respectively. The deadbeat limited.
The deadbeat Although
controller the
voltage command
produced
controller producedhad
pulse-wise an opposite
voltage
pulse-wise because polarity
the stator
voltage tovoltage
because thattheofwasthelimited.
stator decoupling
voltage voltage,
Although
was the Although
the voltage
limited. q-axis current
command the
required
had an seven
opposite control
polarity periods
to that to
of reach
the the
decoupling command
voltage, value.
the
voltage command had an opposite polarity to that of the decoupling voltage, the q-axis current According
q-axis current to the
required aforementioned
seven control
results, to
periods
required the performance
reach
seven the command
control of thevalue.
periods deadbeat controller
According
to reach to the
the command was independent
aforementioned
value. According of the motor
results, tothethe speed.
performance However,
aforementioned of the
a marginal
deadbeat current
controller overshoot
was independent is observed
of the in
motor Figures
speed. 18b and
However,
results, the performance of the deadbeat controller was independent of the motor speed. However, 19b,c
a because
marginal of
current the magnetic
overshoot is
saturation.
observed in Figures 18b and 19b,c because of the magnetic
a marginal current overshoot is observed in Figures 18b and 19b,c because of the magnetic saturation.
saturation.

Figure 18. q-axis


Figure 18. q-axis current
current andand voltage
voltage when
when the
the motor
motor is
is at
at standstill
standstill and
and the
the current
current command
command steps
steps
from
from (a)
(a ) 0
0 A
A to
to 1
1 A,
A, (b)
(b ) 0
0 A
A to
to44 A.
A.
Figure 18. q-axis current and voltage when the motor is at standstill and the current command steps
from (a) 0 A to 1 A, (b) 0 A to 4 A.
Energies 2019, 12, 3555 14 of 19
Energies 2019, 12, x FOR PEER REVIEW 14 of 20

q-axiscurrent,
19. q-axis
Figure 19. current,voltage,
voltage,and
andspeed
speed when
when thethe motor
motor cycles
cycles between
between −3000 −3000
rpmrpm and 3000
and 3000 rpm
with
rpm step
withcurrent command,
step current (a) complete
command, (a) waveform,
complete (b) amplified(bview
waveform, when current
) amplified view command steps
when current
from −4 A steps
command to 4 A,from
(c) amplified view
−4 A to 4 A, (c) when current
amplified viewcommand steps from
when current −4 A.from 4 A to −4 A.
4 A tosteps
command

Figures
Figures 20a 20aandand21a21a illustrate the q-axis
illustrate current
the q-axis and voltage
current response
and voltage when thewhen
response current
theincreased
current
from 0 to 1 A as the estimated inductance was set as 50% and 120% of
increased from 0 to 1 A as the estimated inductance was set as 50% and 120% of its nominal value,its nominal value, respectively.
The experiments
respectively. Thewere performed
experiments when
were the motorwhen
performed was at thestandstill.
motor was As depicted in Figure
at standstill. 20a, when
As depicted in
L̂ = 0.5L , the ˆ
q-axis current became overdamped and required seven
Figure 20a, when Lqs = 0.5 Lqs , the q-axis current became overdamped and required seven control
qs qs control periods to reach the
command value. However, as depicted in Figure 21a, when L̂qs = 1.2Lqs , the q-axis current became
periods to reach
underdamped andthe
hadcommand
an observable value. However,
overshoot. The asexperimental
depicted in Figure when toLˆthe
21a,similar
results are qs = simulation
1.2 Lqs , the
q-axis current
results presented became underdamped
in Section 5. and had
 an observable overshoot. The experimental results are
similar
Figure 20b,c displays the calculated det in
to the simulation results presented irqsSection 5.
and controller gains for the transient response depicted
( ) r
 
Figure 20b,c displays the calculated det i and
in Figure 20a, respectively. Similarly, Figure 21b,cqs displays the calculated controller gainsdetfor irqs
theandtransient response
controller gains

( )
for the transient response presented in Figure 21a, respectively. For convenience of observation, the
depicted in Figure 20a, respectively. Similarly, Figure 21b,c displays the calculated det iqsr and
controller gains were normalized by their nominal values. Moreover, only the gains within ±200% of
controller gains
their nominal value arefor the transient response presented in Figure 21a, respectively. For convenience of
 displayed.
 As depicted in the aforementioned figures, a large current difference
observation,
resulted in a high r
the controller gains were
det iqs magnitude. normalized highly
Consequently, by their nominal
accurate values.
gains were Moreover,
obtained becauseonly theof
gains within ±200% of their nominal value are displayed. As depicted in the aforementioned figures,
 
a superior SNR. In general, the controller gain could be accurately identified for det irqs ≥ 0.1. The
a large current
maximum error difference
between the resulted in acontroller
identified high detgains( )iqsr magnitude. Consequently,
and their nominal values were highly accurate
within 16%.
Moreover,
gains werethe proposed
obtained
because identification method
of a superior could
SNR. Inidentify
general,the
thecontroller gains
controller gainincould
one current control
be accurately

period provided
identified for det

( )r
detiqsr iqs≥ 0.1
was sufficiently
. The maximum large.
error between the identified controller gains and their
nominal values were within 16%. Moreover, the proposed identification method could identify the
controller gains in one current control period provided det ( iqsr ) was sufficiently large.
Energies 2019,
Energies 2019, 12,
12, 3555
x FOR PEER REVIEW 15
15 of
of 20
19
Energies 2019, 12, x FOR PEER REVIEW 15 of 20

Figure 20. Current command steps from 0 A to 1 A when the motor is at standstill and Lˆ qs = 0.5 Lqs ,
Figure
Figure Current
20.current
(a) q-axis Current command
command
and steps
stepsfrom
from(00bA
voltage command, )Ato
to11iA
det ( )
rA when
whenthe themotor
motorisisat
atstandstill
standstilland Lˆ qs =
and L̂
qs , (c) normalized identified controller gains.
=0.5 Lqsqs, ,
0.5L
(a) q-axis current and voltage command, (b) det i ( )
rr , (c) normalized identified controller gains.
(a) q-axis current and voltage command, (b) det iqs , (c) normalized identified controller gains.
qs

Figure 21. Current command steps from 0 A to 1 A when the motor is at standstill and L̂ˆqs = 1.2Lqs ,
Figure 21. Current command steps from 0 A to 1r A  when the motor is at standstill and Lqs = 1.2 Lqs ,
(a) q-axis current and voltage command, (b) det iqs , (c) normalized identified controller gains.
Figure 21. Current command steps from 0 A to 1( )
A
r when the motor is at standstill and L ˆ qs = 1.2 Lqs ,
(a) q-axis current and voltage command, (b) det iqs , (c) normalized identified controller gains.
(Figure
a) q-axis22 displays
current and the speed,
voltage position,
command, (b)and (i ) , (c) normalized
detcurrent r
qs responses identified
when thecontroller
motor was controlled in
gains.
the positioning mode. The
Figure 22 displays the motor
speed, moved forward
position, to 11πresponses
and current and then back
whentothe0. motor
The maximum speed
was controlled
was 3000
in the rpm, which
positioning
Figure is
mode.the
22 displays the
Therated speed of
motorposition,
speed, the motor.
moved forward Furthermore,
to 11π
and current the
and thenwhen
responses motor
back the was
to 0.motor accelerating
The maximum and
speed
was controlled
decelerating
was
in the3000 with
rpm,
positioning its rated
which
mode. is thecurrent.
Therated An observable
motorspeed
movedof the motor.
forward position error
to Furthermore,
11π and thenθmthe
∗ − θmotor
back mtowas obtained
was
0. The only speed
accelerating
maximum when
and
the
was motor
deceleratingwas
3000 rpm, accelerating
which
with and decelerating.
is the current.
its rated rated speed In the
of the motor.
An observable following
Furthermore,
position − θmotor
θm*the
errorexperiments,
m wasthe
waswaveforms in
accelerating
obtained only the
and
when
acceleration
decelerating
the motor was region
with were amplified
its rated current.
accelerating to examine
An observable
and decelerating. the effectiveness
position
In the θm − θm wasthe
of* the online current loop tuning
errorexperiments,
following obtained only in
waveforms whenthe
acceleration
the motor wasregion were amplified
accelerating to examineInthe
and decelerating. theeffectiveness of the online
following experiments, thecurrent loop tuning
waveforms in the
acceleration region were amplified to examine the effectiveness of the online current loop tuning
Energies 2019, 12, x FOR PEER REVIEW 16 of 20

scheme. In addition, the lowest bound of det min (iqsr ) for the controller gain calculation was set as 0.2
Energies 2019, 12, 3555 16 of 19
Energies
to ensure2019, 12, x FOR PEER
sufficient REVIEW accuracy.
identification 16 of 20

mini(
riqs )for
 r
scheme. In
scheme. In addition,
addition, the
the lowest
lowestbound
boundofofdet
det
min
for the
the controller
controller gain
gain calculation
calculation was
was setset
as as
0.20.2
to
qs
to ensure
ensure sufficient
sufficient identification
identification accuracy.
accuracy.

Figure 22. Speed, position, and current waveforms when the motor is controlled in the positioning
mode.

Figures22.23a,
Figure 22. 24a,
Speed,
Speed, and and
position,
position, 25a depict
current
and the current
waveforms
current when
waveforms response
the
when motor with Lˆ qsin=the
is controlled
the motor is controlled Lqsin Lˆ qspositioning
, the
positioning = 0.5mode.
Lqs , and
mode.
Lˆ qs =Figure
1.2 Lqs 23a,respectively,
Figure 24a, when online 25a
and Figure current
depict loop thetuning
currentwas deactivated.
response with L̂qsConversely,
= Lqs , L̂qs =Figures 23b,
0.5Lqs , and
24b, and
1.2L25b
L̂qs =Figures display thewhen sameonline
waveforms but with online current loop tuning activated. The
qs respectively,
23a, 24a, and 25a depict current
the loopcurrent tuningresponse with Lˆ qs =Conversely,
was deactivated. Lqs , Lˆ qs = 0.5Figure
Lqs , 23b,
and
average
Figure 24b, controller
and Figuregains 25b were normalized
display the samebywaveforms
their nominal valueonline
but with for a clear
currentobservation.
loop tuningFigureactivated.23a
Lˆ qs = 1.2 Lqs respectively, when online current loop tuning was deactivated. Conversely, Figures 23b,
indicates that even with the correct inductance, overshoot and undershoot
The average controller gains were normalized by their nominal value for a clear observation. Figure 23a were observed for the
24b, and
q-axis
indicates current 25b at
that display
high
even with thethesame
current levels
correctwaveforms
because
inductance, ofbut the with online
magnetic
overshoot current
saturation.
and undershoot loop tuning
By contrast,
were activated.
as for The
indicated
observed in
the
average
Figure
q-axis 23b,controller
current no at gains
apparent
high were levels
overshoot
current normalized
was byof
observed
because their
the nominal
after onlinevalue
magnetic currentfor loop
saturation. a clear
By observation.
tuning
contrast,wasas Figure 23a
activated.
indicated in
indicates
Figure As23b, that
depicted even with
in Figure
no apparent the correct
24a, because
overshoot inductance,
the estimated
was observed overshoot and
inductance
after online undershoot
current was loop set were
to half
tuning observed
wasof for
the nominal
activated. the
q-axisAscurrent
value, the
depicted at high
q-axis in current
current
Figure levels
response
24a, because
became
because theof the magnetic
overdamped.
estimated Insaturation.
inductance wasBy
addition, thecontrast,
set tod-axis as the
indicated
current
half of had in
nominal a
Figure
marginal 23b, no apparent
steady-state overshoot
error. By was
contrast, observed
as illustratedafter online
in Figurecurrent
value, the q-axis current response became overdamped. In addition, the d-axis current had a marginal 24b, loop
the tuning
q-axis was
current activated.
was tuned to
reach Asitsdepicted
steady-state error.inwithout
reference ByFigure 24a, as
overshoot
contrast, because the aestimated
within
illustrated inspeed
Figure inductance
control
24b, theperiod
q-axiswas
and set
thetod-axis
current half of the nominal
was current
tuned tohad no
reach
value,
steady
its the q-axis
state
reference error
without current
after
overshootresponse
online current
within became
loop
a speed overdamped.
tuning controlwasperiod In and
activated.addition,
The the current
q-axis
the d-axis d-axis current
current in Figure
had had
no steady 25aa
marginal
exhibits
state error steady-state
after onlineerror.
considerable overshoot
current By loop
contrast,
despite
tuning asthe
illustrated
was current in Figure
level
activated. 24b, the
because
The q-axis the q-axis
q-axis
current incurrent was
inductance
Figure 25a tuned
is 20%
exhibits to
reach itsthan
higher
considerable reference
its
overshootwithout
nominal despiteovershoot
value. This
the within
caused
current level aadditional
speed
because control period
ripples
the q-axis to and theon
appear
inductance d-axis
the current
is 20% d-axis had no
higher current.
than its
steady state
However,
nominal as error
value. after
depicted
This inonline
caused Figure current
25b, the
additional loop tuning
overshoot
ripples to appearwas
wason activated.
eliminated
the d-axis The q-axisa However,
within
current. current in as
speed control Figure 25a
period
depicted
exhibits
after
in online
Figure considerable
25b,current loopovershoot
the overshoot tuning
waswas despite thewithin
activated.
eliminated current
It can belevel
a speed because
observed
control the q-axis
inperiod
Figures inductance
24bonline
after and 25b that
current is after
20%
loop
higher
the
tuning thanactivated.
deadbeat
was its nominal
controller value.
Itiscan
tuned This
by
be observedthecaused
proposed
in Figuresadditional
method,
24b and ripples
the
25b to after
required
that appear theon
sampling the d-axis
period
deadbeat for current.
current
controller is
However,
to reach its as depicted
command in
value Figure
is 25b,
reduced the
from overshoot
nine to was
two eliminated
sampling
tuned by the proposed method, the required sampling period for current to reach its command value is within
periods, a
and speed
the control
overshoot period
on the
after online
current
reduced isfrom current
reducednine to loop
fromtwo0.4 tuning was
A to 0.09
sampling activated.
A. These
periods, and It
thecan be observed
experimental
overshoot on thein
results Figures
verify
currentthatis24b
the and 25bfromthat
proposed
reduced 0.4 after
method
A to
theeffective
is
0.09 deadbeat
A. These andcontroller
can greatly
experimental is tuned
reduce
results by the
theproposed
verify sensitivity
that method,
the proposed the
of the method required
deadbeat sampling
controller
is effective and period
tocan for current
thegreatly
variationsreducein
to reach
inductance. its command value is reduced from nine
the sensitivity of the deadbeat controller to the variations in inductance. to two sampling periods, and the overshoot on the
current is reduced from 0.4 A to 0.09 A. These experimental results verify that the proposed method
is effective and can greatly reduce the sensitivity of the deadbeat controller to the variations in
inductance.

Figure 23. The amplified current response in the acceleration region of Figure 23 with L̂qs = Lqs when
the online current loop tuning is (a) de-activated and (b) activated.
Energies 2019, 12, x FOR PEER REVIEW 17 of 20
Energies 2019, 12, x FOR PEER REVIEW 17 of 20
Energies 2019, 12, x FOR PEER REVIEW 17 of 20
Figure 23. The amplified current response in the acceleration region of Figure 23 with Lˆˆqs = Lqs
Figure 23. The amplified current response in the acceleration region of Figure 23 with Lqs = Lqs
Figure
when the The amplified
23.online current
current loop response
tuning in the acceleration
is (a) de-activated region of Figure 23 with
and (b) activated. Lˆ qs = Lqs
when
Energies 2019,the online current loop tuning is (a) de-activated and (b) activated.
12, 3555 17 of 19
when the online current loop tuning is (a) de-activated and (b) activated.

Figure 24. The amplified current response in the acceleration region of Figure 23 with Lˆˆqs = 0.5 Lqs
Figure 24. The amplified current response in the acceleration region of Figure 23 with Lqs = 0.5 Lqs
Figure
Figure The
The amplified
24.online
when the amplified current
current
current loop response
response
tuning in
in the
the acceleration
and (b) region
acceleration
is (a) de-activated of Figure 23 with L̂Lˆqsqs =
activated. = 00.5L
.5 Lqsqs
when the online current loop tuning is (a) de-activated and (b) activated.
when the online current loop tuning is (a) de-activated and (b) activated.
when the online current loop tuning is (a) de-activated and (b) activated.

Figure 25. The amplified current response in the acceleration region of Figure 23 with Lˆˆqs = 1.2 Lqs
Figure 25. The
Figure 25. The amplified
amplified current response in the the acceleration
acceleration region
region of
of Figure
Figure 23
23 with Lqs== 1.2L
with L̂qs 1.2 Lqs
qs
Figure
when 25.
the The
onlineamplified
current current
loop response
tuning is (a ) in the acceleration
de-activated and (b ) region of
activated. Figure 23 with ˆ qs = 1.2 Lqs
L
when the online current loop tuning is (a) de-activated and (b) activated.
when the online current loop tuning is (a) de-activated and (b) activated.
when the online current loop tuning is (a) de-activated and (b) activated.
Figure 26 26displays
displaysthe measured
the measured andand
calculated frequency
calculated response
frequency of the of
response q-axis
the deadbeat current
q-axis deadbeat
Figure 26 displays the measured and calculated frequency response of the q-axis deadbeat
controller.
current
Figure In26the
controller. measurements,
In the
displays voltageand
themeasurements,
measured wasvoltage
within was
calculatedthefrequency
limit andthe
within the motor
limit and
response was
of theat q-axis
thestandstill.
motor It can
was
deadbeat at
current controller. In the measurements, voltage was within the limit and the motor was at
standstill.
be seen
current thatIt can
the
controller. be seen
current that
amplitude the current
did not amplitude
vary with did not
frequency. vary with
However, frequency.
the phase However,
delay the
gradually
standstill. It can beInseen the that
measurements, voltage was
the current amplitude didwithin the with
not vary limitfrequency.
and the motor was the
However, at
phase delay
increased
standstill. with
It gradually
canfrequency.
be seen increased
This
that isthe with the
because frequency.
current deadbeatThis
amplitude is
controller
did notbecause the frequency.
was designed
vary with deadbeat
to reachcontroller was
its reference
However, in
the
phase delay gradually increased with frequency. This is because the deadbeat controller was
designed
two
phasecontrol
delayto periods,
reach itsand
gradually reference in two
the phase
increased control
delay
with periods,
for two and isthebecause
timeThis
frequency. periods phase
was delay
small for two
theat deadbeat
low time
frequenciesperiods was
but large
controller
designed to reach its reference in two control periods, and the phase delay for two time periods was
was
small
at highat
designed low frequencies
frequencies.
to reach its but
reference large
in at
two high frequencies.
control periods, and the phase delay for two time periods was
small at low frequencies but large at high frequencies.
small at low frequencies but large at high frequencies.

The measured
Figure 26. The
Figure measured and
and the
the calculated
calculated frequency
frequency response of the deadbeat current controller.
controller.
Figure 26. The measured and the calculated frequency response of the deadbeat current controller.
Figure 26. The measured and the calculated frequency response of the deadbeat current controller.
8. Conclusions
8. Conclusions
8. Conclusions
In this study, we present an online controller gain tuning scheme for deadbeat current control. The
8. Conclusions
experimental results verify that the motor current can reach its reference value without overshoot in
two current control periods with the deadbeat controller and correct parameters. However, the current
Energies 2019, 12, 3555 18 of 19

response can easily become overdamped or underdamped when the controller gains are calculated
using incorrectly estimated inductances. The proposed online controller gain tuning scheme is derived
on the basis of the discrete-time motor model. The experimental results indicate that the correct
controller gains can be identified in one current control period, and the control loop is tuned in a speed
control period. Consequently, the deadbeat controller can persistently control the motor current to its
reference value in two sampling periods without overshoot irrespective of the inductance variations.
Furthermore, the proposed scheme is easy to implement and requires limited computations.

Author Contributions: Conceptualization, Z.-C.Y., C.-H.H., and S.-M.Y.; methodology, Z.-C.Y. and C.-H.H.;
software, C.-H.H.; validation, Z.-C.Y., C.-H.H., and S.-M.Y.; formal analysis, Z.-C.Y. and C.-H.H.; investigation,
Z.-C.Y. and C.-H.H.; resources, S.-M.Y.; data curation, C.-H.H.; writing—original draft preparation, Z.-C.Y.;
writing—review and editing, S.-M.Y.; visualization, Z.-C.Y.; supervision, S.-M.Y.; project administration, S.-M.Y.
Funding: This research received no external funding.
Conflicts of Interest: The authors declare no conflict of interest.

Appendix A
Table A1. Main drive parameters.

Value Unit
DC voltage 300 V
Sampling period for current loop (Ts ) 55 µs
Sampling period for speed and
440 µs
position loop
Dead-time 2 µs

Table A2. Main motor parameters.

Value Unit
Rated speed/pole pairs 3000/5 rpm
Rated current 4 A
Magnet flux (λm ) 0.042 Wb-turns
Stator resistance (rs ) 1.4 Ω
d-axis inductance (Lds ) 4.46 mH
q-axis inductance (Lqs ) 4.54 mH

References
1. Bocker, J.; Beineke, S.; Bahr, A. On the Control Bandwidth of Servo Drives. In Proceedings of the 13th
European Conference Power Electronics Applications, Barcelona, Spain, 8–10 September 2009; pp. 1–10.
2. Huh, K.K.; Lorenz, R.D. Discrete-Time Domain Modeling and Design for AC Machine Current Regulation.
In Proceedings of the Conference Record 42th IEEE/IAS Annual Meeting, New Orleans, LA, USA,
23–27 September 2007; pp. 2066–2073.
3. Kim, H.; Degner, M.W.; Guerrero, J.M.; Briz, F.; Lorenz, R.D. Discrete-Time Current Regulator Design for AC
Machine Drives. IEEE Trans. Ind. Appl. 2011, 46, 1425–1435.
4. Yepes, A.G.; Vidal, A.; Malvar, J.; Lopez, O.; Jesus, D.G. Tuning Method Aimed at Optimized Setting Time
and Overshoot for Synchronous Proportional-Integral Current Control in Electric Machines. IEEE Trans.
Power Electron. 2014, 29, 3041–3054. [CrossRef]
5. Andersson, A.; Thiringer, T. Assessment of an Improved Finite Control Set Model Predictive Current
Controller for Automotive Propulsion Applications. IEEE Trans. Ind. Electron. 2019, 67, 91–100. [CrossRef]
6. Cortes, P.; Kazmierkowski, M.P.; Kennel, R.M.; Quevedo, D.E.; Rodriguez, J. Predictive Control in Power
Electronics and Drives. IEEE Trans. Ind. Electron. 2008, 55, 4312–4324. [CrossRef]
7. Zhang, Y.; Xu, D.; Liu, J.; Gao, S.; Xu, W. Performance Improvement of Model-Predictive Current Control of
Permanent Magnet Synchronous Motor Drives. IEEE Trans. Ind. Appl. 2017, 53, 3683–3695. [CrossRef]
Energies 2019, 12, 3555 19 of 19

8. Lin, C.K.; Liu, T.H.; Yu, J.T.; Fu, L.C.; Hsiao, C.F. Model-Free Predictive Current Control for Interior
Permanent-Magnet Synchronous Motor Based on Current Difference Detection Technique. IEEE Trans.
Ind. Electron. 2014, 61, 667–681. [CrossRef]
9. Lin, C.K.; Yu, J.T.; Lai, Y.S.; Yu, H.C. Improved Model-Free Predictive Current Control for Synchronous
Reluctance Motor Drives. IEEE Trans. Ind. Electron. 2016, 63, 3942–3953. [CrossRef]
10. Young, H.A.; Perez, M.A.; Rodriguez, J. Analysis of Finite-Control-Set Model Predictive Current Control
with Model Parameter Mismatch in a Three-Phase Inverter. IEEE Trans. Ind. Electron. 2016, 63, 3100–3107.
[CrossRef]
11. Ahmed, A.A.; Koh, B.K.; Lee, Y.I. A Comparison of Finite Control Set and Continuous Control Set Model
Predictive Control Schemes for Speed Control of Induction Motors. IEEE Trans. Ind. Informat. 2018, 14,
1334–1346. [CrossRef]
12. Yang, H.; Zhang, Y.; Liang, J.; Xia, B.; Walker, P.D.; Zhang, N. Deadbeat Control Based on a Multipurpose
Disturbance Observer for Permanent Magnet Synchronous Motors. IET Electr. Pwer Appl. 2018, 12, 708–716.
[CrossRef]
13. Isermann, R. Digital Control System; Springer: Berlin, Germany, 1981.
14. Moon, H.T.; Kim, H.S.; Youn, M.J. A Discrete-Time Predictive Current Control for PMSM. IEEE Trans.
Power Electron. 2003, 18, 464–472. [CrossRef]
15. Walz, S.; Lazar, R.; Buticchi, G.; Liserre, M. Dahlin-Based Fast and Robust Current Control of a PMSM in
Case of Low Carrier Ratio. IEEE Access 2019, 7, 102199–102208. [CrossRef]
16. Yang, S.M.; Lee, C.H. A Deadbeat Current Controller for Field Oriented Induction Motor Drives. IEEE Trans.
Power Electron. 2002, 17, 772–778. [CrossRef]
17. Zhang, X.; Hou, B.; Mei, Y. Deadbeat Predictive Current Control of Permanent-Magnet Synchronous Motors
with Stator Current and Disturbance Observer. IEEE Trans. Power Electron. 2017, 32, 3818–3834. [CrossRef]
18. Zhang, X.; Zhang, L.; Zhang, Y. Model Predictive Current Control for PMSM Drives with Parameter
Robustness Improvement. IEEE Trans. Power Electron. 2019, 34, 1645–1657. [CrossRef]
19. Boileau, T.; Leboeuf, N.; Babak, N.M.; Farid, M.T. Online Identification of PMSM Parameters: Parameter
Identifiability and Estimator Comparative Study. IEEE Trans. Ind. Appl. 2011, 47, 1944–1957. [CrossRef]
20. Liu, K.; Zhu, Z.Q.; Zhang, Q.; Zhang, J. Influence of Nonideal Voltage Measurement on Parameter Estimation
in Permanent-Magnet Synchronous Machine. IEEE Trans. Ind. Electron. 2012, 59, 2438–2447. [CrossRef]
21. Hamida, M.A.; Leon, J.D.; Glumineau, A.; Boisliveau, R. An Adaptive Interconnected Observer for Sensorless
Control of PM Synchronous Motors with Online Parameter Identification. IEEE Trans. Ind. Electron. 2013, 60,
739–748. [CrossRef]
22. Ichikawa, S.; Timita, M.; Doki, S.; Okuma, S. Sensorless Control of Permanent-Magnet Synchronous Motors
Using Online Parameter Identification Based on System Identification Theory. IEEE Trans. Ind. Electron.
2006, 53, 363–372. [CrossRef]
23. Inoue, Y.; Yamada, K.; Morimoto, S.; Sanada, M. Effectiveness of Voltage Error Compensation and Parameter
Identification for Model-Based Sensorless Control. IEEE Trans. Ind. Appl. 2009, 45, 213–221. [CrossRef]
24. Feng, G.; Lai, C.; Mukherjee, K.; Kar, N.C. Current Injection-Based Online Parameter and VSI Nonlinearity
Estimation for PMSM Drives Using Current and Voltage DC Components. IEEE Trans. Transp. Electrific.
2016, 2, 119–128. [CrossRef]
25. Mohamed, Y.A.I.; Saadany, E.F.E. Robust High Bandwidth Discrete-Time Predictive Current Control
with Predictive Internal Model–A Unified Approach for Voltage-Source PWM Converters. IEEE Trans.
Power Electron. 2008, 23, 126–136. [CrossRef]
26. Yang, S.M.; Lin, K.W. Automatic Control Loop Tuning for Permanent-Magnet AC Servo Motor Drives.
IEEE Trans. Ind. Electron. 2016, 63, 1499–1506. [CrossRef]
27. Shen, G.; Yao, W.; Chen, B.; Wang, K.; Lee, K.; Lu, Z. Automeasurement of the Inverter Output Voltage Delay
Curve to Compensate for Inverter Nonlinearity in Sensorless Motor Drives. IEEE Trans. Power. Electron.
2014, 29, 5542–5553. [CrossRef]

© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC BY) license (http://creativecommons.org/licenses/by/4.0/).

You might also like