1222 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 11, NO. 5, OCTOBER 2015
3) High-performance computing ability of GPU is fully
utilized to speedup the search process of particles and
Abs. Fast and exact parameter estimation and tempera-
ture monitoring for PMSM under changing conditions is
realized.
This paper is organized as follows. In Section II, a brief intro-
duction of PMSM model is provided and challenges of design-
ing parameter estimators for PMSM is analyzed. G-PCIPSO
algorithm for parameters estimation and temperature moni-
toring of PMSM is proposed in Section III, where algorithm
principle, mathematical model, and implementation procedure
are addressed in detail. Section IV presents parameter estima-
tion mechanism modeling based on the proposed G-PCIPSO.
Experiment results are given in Section V. Finally, conclusion
and future work are summarized in Section VI.
II. PMSM M
ODEL
The mathematical model of the PMSM in dq-axis frame is
given as
U
d
U
q
=
⎡
⎢
⎣
R + L
d
d
dt
−ωL
q
ωL
d
R + L
q
d
dt
⎤
⎥
⎦
i
d
i
q
+
0
ωψ
(1)
where
d
dt
is a differential operator, ω is the electrical angu-
lar velocity and R, L
d
,L
q
, and ψ are the motor winding
resistance, d-axis and q-axis inductances, and magnet flux,
respectively. U
d
,U
q
,i
d
, and i
q
are dq-axis stator voltage and
current. The motion equation can be expressed in discrete form
as follows when the machine is on the steady-state model [4]
U
d(k)
U
q(k)
=
R −ω(k)L
q
ω(K).L
d
(K) R
i
d(k)
i
q(k)
+
0
ω(k).ψ(k)
(2)
where R, L
d
,L
q
, and ψ are unknown parameters. From (2),
it is clear that there are four parameters to be identified, while
both rank numbers are two and coupled with each other [7],
[8]. Generally, i
d
is set to be zero for decoupling the flux and
torque control and a very short time of i
d
< 0 should be injected
to obtain a full-rank reference model inspired by [7] and [22],
which are shown as follows:
⎡
⎢
⎢
⎣
U
d0(k
0
)
U
q0(k
0
)
U
d(k
1
)
U
q(k1)
⎤
⎥
⎥
⎦
=
⎡
⎢
⎢
⎣
R −ω(k0)L
q
00
ω(k0).L
d
(k0) R 00
00R −ω(k1)L
q
00ω(k1).L
d
(k1) R
⎤
⎥
⎥
⎦
×
⎡
⎢
⎢
⎣
i
d0(k0)
i
q0(k0)
i
d1(k1)
iq
1(k1)
⎤
⎥
⎥
⎦
+
⎡
⎢
⎢
⎣
0
ψω(k
0
)
0
ψω(k
1
)
⎤
⎥
⎥
⎦
. (3)
Equation (3) is the full-rank model of PMSM and will be
used for the design of objective function of multiparameter
estimator. id
0
and id
1
means the id-axis is injected with the
current equal and unequal to zero, respectively. It is a chal-
lengeable work to estimate these parameters simultaneously
since the PMSM operates under various operating conditions.
Noise, disturbance, and parameter variations are unavoidable
and immeasurable in many applications. Therefore, it is very
important to develop an efficient model parameter tracking
approach for PMSM multiparameter identification.
III. GPU-A
CCELERATED PARALLEL IMMUNE
COEVOLUTIONARY PSO
A. Principle of Basic PSO Algorithm
According to the social intelligent behavior of bird flock-
ing, the particles fly toward better searching areas during the
evolutionary process. Assuming in a d-dimensional solution
space, each particle i is composed of two vectors, which are the
velocity vector V
i
= {V
i1
, V
i2
,...,V
id
} and the position vec-
tor X
i
= {X
i1
, X
i2
,...,X
id
}, t he searching procedure can
be given as
V
id
(t +1)=ωV
id
+ c
1
∗ rand
1
() (P best
id
(t) − X
id
(t))
+ c
2
∗ rand
2
() (gBest
d
(t) − X
id
(t)) (4)
X
id
(t +1)=X
id
(t)+V
id
(t +1). (5)
In (4) and (5), P best
id
represents the best position found by
ith particle up to now and gBest
d
is the best particle among the
entire population. c
1
and c
2
are the acceleration coefficients,
ω is the inertia weight factor decreasing linearly, and rand
1
and rand
2
are two uniformly distributed numbers generated
randomly within [0, 1], respectively.
B. Principle of G-PCIPSO Algorithm
The general steps of G-PCIPSO are stated as follows.
Algorithm 1. G-PCIPSO
Step1: Initialize t he normal sub-swarms P
i
and antibodies
memory; set up parameters for G-PCIPSO.
Step2: Transfer data from CPU to GPU.
// sub-processes in “for” are done in parallel
Step3:fori =1 to I//1 ≤ i ≤ I, I is the number of normal
sub-swarms;
Perform the process of PSO for sub-swarms Pi
for j =1to N//1 ≤ j ≤ N, N is the number of parti-
cles //sub-swarms Pi
update particle
i
velocity using the equation (4)
update particle
i
position using the equation (5)
Evaluate the fitness value of particle
i
;
end for
end for
Step4:fori =1to k//1 ≤ i ≤ k, k is the number of Pbests
Perform the vaccine-enhanced for Pbest
i
based on the
equations (9)–(11) and the Fig. 2.
end for