`
`1111111111111111111111111111111111111111111111111111111111111
`US007342379B2
`
`(12) United States Patent
`Marcinkiewicz et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,342,379 B2
`Mar. 11,2008
`
`(54) SENSORLESS CONTROL SYSTEMS AND
`METHODS FOR PERMANENT MAGNET
`ROTATING MACHINES
`
`(75)
`
`Inventors: Joseph G. Marcinkiewicz, St. Peters,
`MO (US); Prakash B. Shahi, St. Louis,
`MO (US); Michael I. Henderson,
`North Yorkshire (GB)
`
`(73) Assignee: Emerson Electric Co., St. Louis, MO
`(US)
`
`5,006,774 A
`5,173,650 A
`5,220,264 A
`5,311,435 A *
`5,447,414 A
`5,457,375 A
`
`4/1991 Rees
`12/1992 Hedlund
`6/1993 Yamada
`5/1994 Yocum et al.
`9/1995 Nordby et al.
`10/1995 Marcinkiewicz et al.
`
`.............. 7011226
`
`(Continued)
`
`OTHER PUBLICATIONS
`
`( *) Notice:
`
`Subject to any disclaimer, the tenn of this
`patent is extended or adjusted under 35
`U.S.c. 154(b) by 137 days.
`
`"High Performance Sensorless Solutions For Induction Motor Con(cid:173)
`trol", V. Bostan, M. Cuibus and C. Ilas; pp. 1-9; prior to Jun. 24,
`2005.
`
`(21) Appl. No.: 111293,744
`
`(22) Filed:
`
`Dec. 2, 2005
`
`(65)
`
`Prior Publication Data
`
`(Continued)
`
`Primary Examiner-Karen Masih
`(74) Attorney, Agent, or Firm-Harness, Dickey & Pierce,
`P.L.c.
`
`US 2006/0290302 Al
`
`Dec. 28, 2006
`
`(57)
`
`ABSTRACT
`
`Related U.S. Application Data
`
`(60) Provisional application No. 60/694,077, filed on Jun.
`24, 2005, provisional application No. 60/694,066,
`filed on Jun. 24, 2005.
`
`(51)
`
`Int. Cl.
`(2006.01)
`H02P 23/00
`(52) U.S. Cl. ...................... 318/807; 318/561; 318/615;
`318/431
`(58) Field of Classification Search ... ... ... ....... 318/807,
`318/508.18,568.22,561,615,616,618,
`318/560,430,431,432,433,434; 388/805,
`388/814, 820; 364/459
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,288,726 A
`4,633,157 A
`5,006,770 A *
`
`911981 Vazquez-Cuervo et al.
`1211986 Streater
`411991 Sakamoto et al.
`
`.......... 318/561
`
`Systems and methods for controlling a rotating electromag(cid:173)
`netic machine. The rotating machine, such as a pennanent
`magnet motor or hybrid switched reluctance motor, includes
`a stator having a plurality of phase windings and a rotor that
`rotates relative to the stator. A drive is connected to the phase
`windings for energizing the windings. A controller outputs a
`control signal to the drive in response to an input demand
`such as a demanded speed or torque. Control methods
`(which can be implemented separately or in combination)
`include varying the gain of an estimator as a function of a
`demanded or estimated speed to position control system
`poles at desired locations, decoupling control system cur(cid:173)
`rents to achieve a constant torque with motor speed, com(cid:173)
`pensating flux estimates of the estimator for saturation
`operation of the stator, estimating rotor position using aver(cid:173)
`ages of sample values of energization feedback, and calcu(cid:173)
`lating a trim adjusted speed error from a plurality of speed
`estimates.
`
`23 Claims, 13 Drawing Sheets
`
`fJ
`
`Eslimaledeleclricalangla
`
`lQdractLlal
`
`j ~'------~~==~-----------,
`i
`
`Ma~~~~! C::~aand
`
`"0
`
`206
`
`
`
`US 7,342,379 B2
`Page 2
`
`u.s. PATENT DOCUMENTS
`5,495,162 A
`211996 Rozman et al.
`5,498,945 A
`311996 Prakash
`1011996 Taylor et al.
`5,569,994 A
`5,635,810 A
`611997 Goel
`411998 Nordby et al.
`5,736,823 A
`511998 Rozman et al.
`5,747,971 A
`811998 Watkins
`5,789,893 A
`911998 Sugden et al.
`5,801,935 A
`1211998 Nakazawa
`5,854,547 A
`5,903,128 A
`511999 Sakakibara et al.
`711999 Tang
`5,929,590 A
`5,953,491 A
`911999 Sears et al.
`6,005,364 A
`1211999 Acarnley
`6,081,093 A
`6/2000 Oguro et al.
`10/2000 Jansen
`6,137,258 A
`6,232,692 Bl
`5/2001 Kliman
`6,278,256 Bl
`8/2001 Aoyama
`6,297,621 Bl
`1012001 Hui et al.
`1012001 O'Meara et al.
`6,304,052 Bl
`6,326,750 Bl
`1212001 Marcinkiewicz
`6,362,586 Bl
`3/2002 Naidu
`4/2002 Beifus et al.
`6,369,536 B2
`6/2002 Marcinkiewicz
`6,404,154 B2
`8/2002 Pavlov et al.
`6,433,506 Bl
`6,441,580 B2
`8/2002 Marcinkiewicz
`912002 Suzuki
`6,443,873 B2
`1012002 Iij ima et al.
`6,462,491 Bl
`6,515,395 Bl
`212003 Jansen
`6,515,442 Bl * 212003 Okubo et al. ............... 318/560
`6,567,282 Bl
`5/2003 Kikuchi et al.
`6,586,904 B2
`7/2003 McClelland et al.
`6,603,226 Bl
`8/2003 Liang et al.
`912003 Iwaji et al.
`6,628,099 B2
`6,661,194 B2
`1212003 Zaremba et al.
`212004 Iwaji et al.
`6,690,137 B2
`
`6,696,812 B2
`6,731,083 B2
`6,750,626 B2
`6,756,753 Bl
`6,756,757 B2
`6,791,293 B2
`6,801,012 Bl
`6,828,751 B2
`6,831,439 B2
`6,874,221 B2
`6,879,124 Bl
`6,883,333 B2
`6,894,454 B2
`7,084,591 B2
`7,095,131 B2
`2003/0163226 Al *
`
`Kaneko et al.
`212004
`Marcinkiewicz
`5/2004
`Leonardi et al.
`6/2004
`Marcinkiewicz et al.
`6/2004
`Marcinkiewicz et al.
`6/2004
`Kaitani
`912004
`Islam et al.
`1012004
`Sadasivam et al.
`1212004
`Won et al.
`1212004
`Jansen et al.
`4/2005
`Jiang et al.
`4/2005
`Shearer et al.
`4/2005
`Patel et al.
`5/2005
`Kobayashi et al.
`8/2006
`Mikhail et al.
`8/2006
`8/2003 Tan ............................... 70111
`
`OTHER PUBLICATIONS
`
`"An AC Motor Closed Loop Performances With Different Rotor
`Flux Observers", M. Alexandru, R. Bojoi, G. Ghelardi and S.M.
`Tenconi; pp. 1-7; prior to Jun. 24, 2005.
`"Indirect Rotor-Position Estimation Techniques For Switched
`Reluctance Motors-A Review"; Iqbal Hussain; pp. 1-15; prior to
`Jun. 24, 2005.
`"Lecture 9: State Observer And Output Feedback Controller"; pp.
`1-14; May 16, 2005.
`"Sensorless Motor Control Method For Compressor Applications";
`Yashvant Jani; pp. 1-23; Mar. 29, 2005.
`"Energy Conversion and Transport"; George G. Karady and Keith
`Holbert; Chapter 9, Introduction to Motor Control And Power
`Electronics; EE360; pp. 1-37; prior to Jun. 24, 2005.
`"Minimum Error Entropy Luenberger Observer"; Jian-Wu Xu,
`Deniz Erdogmus and Jose C. Principe; pp. 1-13; prior to Jun. 24,
`2005.
`* cited by examiner
`
`
`
`100
`
`<
`
`110
`
`108
`
`Controller
`
`Drive
`
`114
`
`Input
`Demand
`
`Energization
`Feedback
`
`112
`
`FIG. 1
`
`104
`
`102
`
`106A
`
`1068
`106C
`
`101 , /
`PM Motor
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`~
`
`~
`:-: ....
`.... ~
`
`N
`0
`0
`QO
`
`('D
`
`rFJ =-('D
`.....
`....
`0 ....
`....
`
`(.H
`
`d
`rJl
`-....l
`W
`~
`N w
`\C = N
`
`-....l
`
`
`
`Q) -0 Estimated electrical angle
`go ~~ ______________ __
`~B
`IQdr actual
`Q) U
`r------~~~r~.-------------~--------------------------------------~
`'0 g
`Measured current and
`Q) .E
`Applied voltage
`E IJI
`en c:
`li:~
`I(cid:173)
`"----
`
`e •
`
`7Jl
`•
`
`214
`\ .
`
`Torque
`Scaler
`
`Scaled
`Torque
`Demand
`
`Demanded
`Torque
`
`Torque to
`IQdr Map
`
`IQdr
`demand
`vectorize I (cid:173)
`,+'----_-----1
`
`Idrdemand
`
`Iqr Current VQ g.9
`Controller ~ ~ i5 I1l
`iii
`,-----..- ~ 0
`Qdr. ~ r=.£?
`t: .ra.
`Voltages o.E ~
`Q) Ul .:=
`-"0.. E CI1l
`~ ~
`Vdr ,--I.L..,.----I
`
`It-
`
`, . . . . -____
`
`......
`
`t--+ Idr Current
`Controller
`
`Alpha(cid:173)
`Beta
`Voltage
`demand
`
`--+1 Drive
`
`J:
`
`t
`Idr Injection 1
`I
`c;)I ___ ~_r---___ +--~-------~---108~------~
`
`dc-link
`
`Estimated
`Electrical angle
`
`Estimated electrical speed
`
`Input Filter rl----------------..... ~. __ s_p_e_e_d_---J. L
`
`I
`
`I
`
`FIG. 2
`
`... 1
`_
`
`Clamp
`
`1
`
`Filtered speed demand
`
`"I
`I
`r ' --------------~
`llntegrate r
`
`Abc
`Ivoltage~
`~ Motor 1-------1
`
`I
`
`N o
`o
`QO
`
`1 202
`
`Flux Estimator.
`Electrical Angle ~ ___ ...J
`Estimate.
`
`r 204
`
`1
`
`Gain
`Scheduler
`
`.
`
`Drive Angle
`
`
`
`r - -
`
`~ ~I Estimated electrical angle
`c 0 <~~ ______________ _
`~.9
`QI U
`
`Measured currem ana
`Applied voltage
`
`7Jl
`•
`~
`r-------fl & -g l
`~
`..... E
`~
`~ = ~
`o ...
`w.!2 E II)
`co c:
`.... ~
`IJ..I-
`L - -
`
`IQdr actual
`
`e •
`
`~
`~ :-: ....
`.... ~
`N o
`o
`QO
`
`('D
`('D
`
`(.H
`
`rFJ =(cid:173)
`.....
`o .....
`....
`
`(.H
`
`d
`rJl
`-....l
`W
`~
`N
`W
`-....l
`
`\C = N
`
`lOr
`
`IQdr
`
`306 ' \
`
`Iqr Current VOr
`Controller
`,--+L..-__ _
`
`.-.+speed Loopl
`Controller
`
`torque
`
`Demanded
`...------,
`Torque to
`~I
`
`IOdr Map ,
`
`302
`
`304
`
`Idr demand
`
`Idr Injection Scheme
`
`-
`
`1
`
`I t=:
`r:::;:, f t .
`~ do·"o"
`1
`
`Vdr
`
`308
`
`. EsUmaled
`
`1
`
`E'eotrl"", aogle
`
`Motor t-I - - - I
`
`r 302
`
`I Input Filter I
`
`~ ... 1 _ __ __ -'
`
`Speed
`Clamp
`
`-,
`
`Gain
`Scheduler
`
`FIG.3
`
`~ I Integrate
`
`Drive Angle
`
`•
`Filtered speed demand--f ~304
`
`Speed error
`
`Estimated electrical speed
`
`Flux Estimator.
`Electrical Angle 1""1
`Estimate.
`
`• . - - - - - '
`
`
`
`u.s. Patent
`
`Mar. 11,2008
`
`Sheet 4 of 13
`
`US 7,342,379 B2
`
`t
`
`Sr.
`_ .... ~ ... -~-.~-.. ~..........----
`1\ /"
`~ f
`o -;..., ..... ---.... --.. - L
`I f
`
`.
`
`I
`I
`
`I
`
`-
`
`-
`
`....
`
`-
`
`(
`
`'
`
`I
`
`I
`
`---.. ;. -.-.----==::-:: -F .-._'-.. -----==~~-.-:-::::-.-.~~::::::. - - - (cid:173)
`
`.. -
`
`..
`
`-
`
`-
`
`-
`
`-
`
`I
`;
`
`I
`.. -
`
`:
`
`I
`
`I
`•
`
`_ ... -
`
`. -
`
`- ~ •
`
`-
`
`..
`
`I
`.oj _ . . ..
`
`.. -
`
`- ~ ~ -
`
`I
`
`I
`
`I
`
`-l ~ -
`,
`
`~ ... -
`
`-
`
`-
`
`.... -
`
`-.
`
`:
`~
`
`'
`I
`I
`
`- . , -
`
`•• ,
`
`-
`
`• ~ . , ~ "
`
`:
`
`1
`
`-
`
`•
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`I
`•
`I
`•• ! - - -
`
`:
`
`I
`
`-
`
`- - -
`
`-
`
`- -
`
`I
`I
`I
`- J - -
`
`:
`
`)
`
`- - - - - -
`
`- -
`
`•
`1
`:
`- -' - - -
`
`;
`
`:
`
`- -
`
`• . - - .• -
`
`-
`
`I
`J
`\
`!
`I
`:
`..I
`
`ii
`-5 n <
`Ii
`d
`"
`f
`i
`-1 0 l .
`1
`t
`-15 ~ ....... -.
`I
`I
`-20 L. ___ . _______ ._~ ___ . ____ . _ __'_ ____ __L __ __ __'~ __
`o
`200
`600
`800
`400
`Motor Electrical Speed (radians per second)
`
`- - - '. - " ;. .. - . .. - - .. - .... - ~ - . -- - -- - - - - ~ - - - - - - - i " . . . . -
`
`• _.
`
`1000
`
`FIG. 4
`
`
`
`u.s. Patent
`
`Mar. 11,2008
`
`Sheet 5 of 13
`
`US 7,342,379 B2
`
`5r-----~~====~~I~==~=-I:~~~==~=-~====TI=-----~
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`
`I
`
`Or--------f--------t-------- --------1--------~--------
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`-5 --------r--------r-------- --------,--------,--------
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`-10 --------r--------r-------- --------~--------4--------
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`I
`I
`I
`I
`I
`
`-15 --------t--------t--------,--------1--------i--------
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I I : :
`I
`-20~----~------~------~----~------~----~
`-3000
`-2000
`-1000
`0
`-1000
`-2000
`-3000
`Motor Electrical Speed (radians per second)
`
`FIG.5a
`
`300r-------~------~,--------.-------~------~,------~
`I
`I
`I
`I
`I
`I
`
`I
`
`I
`
`200 --------i--------t-------- --------t--------i--------
`
`I
`I
`I
`
`I
`I
`I
`
`I
`I
`I
`
`I
`I
`I
`
`100 --------f--------t-------- --------1--------~--------
`
`<V
`:::J
`
`I
`I
`I
`I
`
`I
`
`I
`I
`I
`
`I
`I
`I
`
`I
`I
`
`I
`I
`
`I
`I
`
`I
`I
`
`FIG. 5b
`
`I
`I
`I
`ro >
`0'-- - - - - - l - I
`C
`I
`Oro
`:
`<D -100r--------r--------r-------- --------1--------l--------
`
`I
`I
`I
`
`I
`I
`I
`
`- ' r=----"""""'~'=-=-=~-::::~,i-=-· - - - - --
`
`I
`I
`I
`I
`: :
`
`I
`I
`I
`
`I
`I
`I
`
`-200.---------i--------t-------- --------t--------i--------
`: I : 1
`I
`-300L-----~------~----~----~------~----~
`-2000
`-1000
`0
`-1000
`-2000
`-3000
`-3000
`Motor Electrical Speed (radians per second)
`
`
`
`Integer
`Delay
`
`omega_r
`
`omega_v
`D
`
`3·3-100"'2* pi/SO
`
`Constant
`
`SWitch1
`
`Lookup column one of
`Luenberger gain matrix
`
`table
`2 I index
`
`Luenberger
`Gain Matrix
`column one
`
`~~oa
`~h!E:IJ~--t>"1
`
`2
`
`Pre Look-UP
`Index Search
`table index
`
`L- table
`index
`2
`
`Luenberaer I .
`Gain Ma rix
`column one
`Lookup column two of
`Luenberger gain matrix
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`Horiz Cat
`~,----,[4x.2)_ G::Iin
`
`M::Itriy
`
`~
`~ :-: ....
`.... ~
`
`N
`0
`0
`QO
`
`('D
`
`rFJ =-('D
`.....
`0\
`0 ....
`....
`
`(.H
`
`FIG. 6
`
`d
`rJl
`",-.....1
`W
`~
`N
`W
`-.....1
`
`\C = N
`
`
`
`u.s. Patent
`
`Mar. 11,2008
`
`Sheet 7 of 13
`
`US 7,342,379 B2
`
`714
`
`Look up or calculate
`Estimator gains
`
`FIG. 7
`
`
`
`u.s. Patent
`
`Mar. 11,2008
`
`Sheet 8 of 13
`
`US 7,342,379 B2
`
`802
`
`804
`
`806
`
`808
`
`810
`
`814
`
`Read demanded
`electrical speed
`
`Calculate speed
`error
`
`Update the control
`action
`
`injection
`
`FIG. 8
`
`
`
`--..(f) Torque_Demand
`
`904
`
`demanded value of
`Iqr current
`
`908
`Signal
`co~verSion
`[3x1]
`[3x1]
`
`.---Inl-o-n-o-m-in-a-lI-y .. :·I1----~ 1
`
`902
`
`Speed loop
`torque
`controller
`
`.t
`
`errorin~t.)
`mechanical speed
`trim
`
`~ zero
`Izero current Mux Iqr_hat and
`Idr hat to
`sequence,
`produce Iqdr_hat
`nominally
`zero
`
`Iqdr_demand
`
`~I<I
`
`omega_v
`
`demanded
`_ omega v
`vd&r _cfemand value of Idr
`' .
`InJection
`Idr
`~, 2
`
`I
`
`current 1"1 ><
`
`Product
`
`Constant3
`
`ConstantS
`
`vdc
`
`Idr table gain
`O=minimum
`2-m
`.
`aXlrnum in use
`-
`
`FIG. 9
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`~
`~ :-: ....
`.... ~
`N o
`o
`QO
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`\0
`o ....
`....
`
`(,H
`
`d
`rJl
`",-.....1
`W
`~
`N
`W
`-.....1
`
`\C = N
`
`
`
`u.s. Patent
`
`Mar. 11,2008
`
`Sheet 10 of 13
`
`US 7,342,379 B2
`
`
`
`matted'S'fl
`
`" c
`co
`E
`(D
`"C
`.... 1
`CT
`
`X
`
`-, • •
`
`II
`
`Iqr_demand
`
`3SD
`L"
`
`Z
`
`“gO
`
`00
`
`(I)
`5'CD
`CDA
`p—t
`
`O OHp
`
`—t
`OJ
`
`
`
`Zfl6L‘E‘Z17‘E‘LSfl
`
`0
`
`~
`
`(9
`LL
`
`FIG. 10
`
`ldr
`
`Galm
`
`M c
`ro
`CD
`
`V
`
`~
`or-
`
`N
`c:
`ctI
`C!)
`
`Q)"O
`::J C
`cr m
`L. E
`o <D
`1-1;::1
`
`N
`N
`
`10 .
`
`~
`
`
`
`In
`c:
`0
`U
`
`c ro -
`
`.....
`
`Product
`
`
`
`
`~
`C
`co
`(')
`
`Censtant
`
`
`
`[2 1)
`lambda_qdv ~ x
`[2x1]
`lambda_fqdv
`
`theta w-----
`~ K(theta v)
`~ -
`-
`theta_v offset
`Subsystem
`
`I [3x3] Multiply
`
`Matrix
`
`t i l [3x3)
`
`C_alpha beta_abc l [3x3j
`Constant
`
`0.0126
`-0.0061
`[-D.032
`
`-0.0141
`-0.0066
`.(J.174
`
`1
`
`Constant1
`
`Gain
`
`[3x2]
`
`CD2
`
`lalpha_beta
`
`] I [3x2]
`
`-0.015 0.0039
`-0.01
`0.0053
`[
`_ 0.036 -0.121
`
`Constant3
`
`[3x2]
`
`---(cid:173)
`
`(1/25)"3
`
`11 (L+M)
`o
`o
`
`[
`
`0
`0
`l/ (L+r~)
`0
`0
`l/(.L+M)
`
`[3x3]
`
`Matrix
`M. utliply
`[2x1]
`! I [3X111~1
`[3X1JI'~o
`I 0,
`Selector
`Product9
`
`.0)
`
`Iqdv _hat
`
`'?;:I [3x1] -Ii [3x1]
`(2x1]
`~2X1]
`o
`
`Q-tiJ
`Signal
`Conversion
`
`theta v otrset1
`
`[3x1]
`p r.:-
`
`[3x1)
`
`2
`
`L
`r
`
`If=! Selector2
`Product5
`3@.....J 3 ~:Ixl ~
`00- _~F!
`Selector3°
`p OSelector4
`3@.....J ~~
`--------------=-~ ~Oduct6
`
`~- '3x2]
`
`3
`
`SelectorS
`
`[3x3)
`
`FIG. 11
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`~
`~ :-: ....
`.... ~
`N o
`o
`QO
`
`('D
`('D
`
`rFJ =(cid:173)
`.....
`....
`....
`o ....
`....
`
`(,H
`
`d
`rJl
`-....l
`W
`~
`N
`W
`-....l
`
`\C = N
`
`
`
`Electrical angle
`
`;-
`
`FIG. 12a
`
`~
`
`~
`Actual angle
`
`2e
`
`..;
`
`~f
`
`~
`
`Time
`
`Single sample period
`
`Estimated angle
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`~
`~ :-:
`....
`.... ~
`
`N
`0
`0
`QO
`
`Electrical angle
`
`i
`
`FIG.12b
`
`Estimated
`angle
`
`~
`Actual angle
`~I
`~ ~
`
`e
`
`~
`
`Actual Angle
`
`I /T III
`
`e
`
`I
`
`~I
`
`Time
`
`Single sample period
`
`Estimated angle
`
`('D
`
`rFJ =-('D
`.....
`....
`N
`....
`0
`....
`
`(.H
`
`d
`rJl
`-....l
`W
`~
`N
`W
`-....l
`
`\C = N
`
`
`
`12:34 +-1 - - - ,
`
`Integer
`Delay
`
`r ~ ~I
`
`Digital Clock1
`~rn3
`Hit
`Crossing
`
`labc
`
`Trim speed
`estimate
`
`Trim error
`
`ZOH
`
`Swilch3
`
`Abs11ul
`
`Gain1
`
`Constant2
`
`slow filter at 500Hz1
`~ 0.01587
`
`Rate
`Transition1
`
`Iol-----.J
`Constant1
`
`Switch4
`
`e •
`
`7Jl
`•
`~
`~
`~
`
`~ = ~
`
`Math
`Function1
`
`Gain2
`
`~
`~ :-: ....
`.... ~
`N o
`o
`QO
`
`('D
`('D
`
`(.H
`
`rFJ =(cid:173)
`.....
`....
`o ....
`....
`
`(.H
`
`.CD
`Trim )
`~
`1306
`
`Scope
`
`~ - 1- 0.9841z -1 r-r-------·B
`m
`Sa~uratlo~ upon
`trim estimate
`
`FIG. 13
`
`d
`rJl
`",-.....1
`W
`~
`N
`W
`-.....1
`
`\C = N
`
`
`
`US 7,342,379 B2
`
`2
`poses of illustration only and should not be construed as
`limiting the scope of the invention.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`1
`SENSORLESS CONTROL SYSTEMS AND
`METHODS FOR PERMANENT MAGNET
`ROTATING MACHINES
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application claims the benefit of U.S. Provisional
`Applications No. 60/694,077 and No. 60/694,066 filed Jun.
`24, 2005, the entire disclosures of which are incorporated
`herein by reference.
`
`FIELD OF THE INVENTION
`
`The present invention relates generally to control of
`rotating machines, including but not limited to sensorless
`control of permanent magnet rotating machines.
`
`BACKGROUND OF THE INVENTION
`
`Permanent magnet machines, such as brushless perma(cid:173)
`nent magnet motors, have been conventionally provided
`with position sensing devices. Such devices indicate, for use
`in controlling the motor, the rotor position with respect to the
`stator. However, rotor position sensors can be quite expen- 25
`sive, occupy space within a motor housing, and sometimes
`fail. To eliminate the need for position sensors, various
`"sensorless" motor constructions and methods have been
`developed with varying degrees of success. As recognized
`by the present inventors a need exists for improvements in 30
`sensorless control systems for rotating permanent magnet
`machines.
`
`SUMMARY OF THE INVENTION
`
`FIG. 1 is a block diagram of a rotating permanent magnet
`(PM) machine system according to one exemplary embodi(cid:173)
`ment of the invention.
`FIG. 2 is a block diagram of a PM machine system
`10 configured to operate primarily in a torque control mode
`according to another exemplary embodiment of the inven(cid:173)
`tion.
`FIG. 3 is a block diagram of a PM machine system
`configured to operate primarily in a speed control mode
`15 according to another exemplary embodiment of the inven(cid:173)
`tion.
`FIG. 4 is a graph illustrating how gain values can be
`varied with respect to rotor speed so as to maintain the poles
`of an observer employed by the estimators of FIGS. 2 and
`20 3 in desired locations.
`FIGS. Sa and Sb illustrate how estimator gain values
`approach excessive values as the rotor speed approaches
`zero.
`FIG. 6 is a block diagram illustrating how estimator gain
`values can be stored in and accessed from lookup tables.
`FIG. 7 is a flow diagram of a method implemented by the
`gain schedulers of FIGS. 2 and 3 according to another
`exemplary embodiment of the invention.
`FIG. 8 is a flow diagram of a method of calculating a
`Qr-axis current based on a given dr-axis current injection to
`produce a desired rotor torque according to another exem(cid:173)
`plary embodiment of the invention.
`FIG. 9 is a block diagram of a speed loop controller, a
`torque to IQdr Map block, and a Idr injection block accord-
`35 ing to another exemplary embodiment of the invention.
`FIG. 10 is a block diagram of the torque and Idr to IQr
`map block of FIG. 9 according to another exemplary
`embodiment.
`FIG. 11 is a block diagram illustrating how saturation
`40 effects can be compensated for in the measurement path of
`an observer according to another exemplary embodiment.
`FIG. 12(a) is graph illustrating how two energization
`feedback samples are collected at the beginning and end of
`an exemplary sampling interval according to the prior art.
`FIG. 12(b) is a graph illustrating how two energization
`feedback samples can be collected and averaged to produce
`an estimated rotor position/angle according to another
`embodiment of the invention.
`FIG. 13 is a block diagram of an exemplary speed trim
`50 mechanism for producing a speed trim value that can be
`provided to the estimator of FIG. 3 according to another
`exemplary embodiment of the invention.
`Like reference symbols indicate like elements or features
`throughout the drawings.
`
`In one aspect of the present invention, a method is
`provided for controlling a permanent magnet rotating
`machine. The machine includes a stator having a plurality of
`energizable phase windings situated therein, a rotor situated
`to rotate relative to the stator, and an estimator having at
`least one gain value and employing an observer. The method
`includes varying the gain of the estimator as a function of
`either a demanded rotor speed or an estimated rotor speed to
`thereby position poles of the observer at desired locations.
`In another aspect of the invention, a method is provided 45
`for controlling a permanent magnet rotating machine. The
`machine includes a stator having a plurality of energizable
`phase windings situated therein, and a rotor situated to rotate
`relative to the stator. The method includes determining a
`value ofIdr-axis current to be injected, and selecting a value
`of IQr-axis current that, in conjunction with the value of
`Idr-axis current, will produce a desired rotor torque.
`In still another aspect of the invention, a method is
`provided for controlling a permanent magnet rotating
`machine. The machine includes a stator having a plurality of 55
`energizable phase windings situated therein, and a rotor
`situated to rotate relative to the stator. The method includes
`receiving energization feedback from the machine, and
`producing a flux estimate compensated for saturation in the
`stator.
`Further aspects of the present invention will be in part
`apparent and in part pointed out below. It should be under(cid:173)
`stood that various aspects of the invention may where
`suitable be implemented individually or in combination with
`one another. It should also be understood that the detailed
`description and drawings, while indicating certain exem(cid:173)
`plary embodiments of the invention, are intended for pur-
`
`DETAILED DESCRIPTION OF EXEMPLARY
`EMBODIMENTS
`
`Illustrative embodiments of the invention are described
`60 below. In the interest of clarity, not all features of an actual
`implementation are described in this specification. It will be
`appreciated that in the development of any actual embodi(cid:173)
`ment, numerous implementation-specific decisions must be
`made to achieve specific goals, such as performance objec-
`65 tives and compliance with system-related, business-related
`and/or environmental constraints. Moreover, it will be
`appreciated that such development efforts may be complex
`
`
`
`US 7,342,379 B2
`
`3
`and time-consuming, but would nevertheless be a routine
`undertaking for those of ordinary skill in the art having the
`benefit of this disclosure.
`FIG. 1 illustrates a rotating permanent magnet machine
`system 100 according to one embodiment of the present
`invention. The machine system 100 includes a rotating
`permanent magnet electric machine 101, such as a penna(cid:173)
`nent magnet alternating current (PMAC) motor or a hybrid
`permanent magnet/switched reluctance (PMlSR) motor. For
`simplicity, the term "motor" is often used in this specifica(cid:173)
`tion. However, one skilled in the art having the benefit of this
`disclosure will understand that the present invention is
`applicable to other types of rotating electric machines,
`including generators. The PM machine 101 shown in FIG. 1
`includes a stationary component (stator) 102 and a rotating
`component (rotor) 104. The machine 101 can have an inner
`rotor or an outer rotor construction. In this exemplary
`embodiment, the PM machine 101 is a three phase machine
`having an inner rotor construction with energizable phase
`windings 106A, 106B, 106C wound about the stator 102,
`which are energized through the application of electric
`power to the motor tenninals.
`A drive 108 is coupled to the terminals of the machine for
`providing electric power. The drive 108 receives control
`inputs from a controller 110 that receives energization 25
`feedback 112 from the machine (such as the currents and/or
`voltages at the motor tenninals), or that assumes the actual
`voltage supplied to the motor is that which was demanded by
`the controller 110 (e.g., in the form of PWM duty cycle),
`from which the electrical angle and electrical speed can be 30
`determined (i.e., estimated sensorlessly). From these esti(cid:173)
`mates, rotor speed can be inferred, as can rotor angle (to the
`extent the estimates are based upon electrical angle). The
`controller 110 of FIG. 1 is shown as receiving an input
`demand 114 that may be, for example, a torque demand or 35
`a speed demand.
`While the drive 108 of FIG. 1 is illustrated in exemplary
`form as energizing three power terminals of a three phase
`machine 101, it should be understood that more or fewer
`power terminals may be provided to accommodate machines 40
`with greater or less than three phases, or if various types of
`inverters (e.g., with neutral connections) are used. The drive
`may be of conventional design and configured to provide,
`for example., sine wave excitation to the motor terminals or
`square wave excitation using conventional pulse width 45
`modulation (PWM) excitation.
`FIG. 2 illustrates additional details of the system of FIG.
`1 as configured to operate primarily in a torque control
`mode. For this reason, a torque demand input 214 is shown
`in FIG. 2. The torque demand input may be received directly 50
`by the system 200 as an external command or alternatively,
`may be derived from an external command. For example,
`the torque demand input may be derived from a speed
`demand input or from an air flow demand input (e.g., where
`the system of FIG. 2 is embodied in an air handlerlblower for 55
`a climate control system). Additional details regarding the
`embodiment of FIG. 2 are provided in u.s. application Ser.
`No. 11/293,743 filed on Dec. 2, 2005] titled Control Systems
`and Methods for Pennanent Magnet Rotating Machines and
`filed [on even date herewith], the entire disclosure of which 60
`is incorporated herein by reference.
`FIG. 3 illustrates additional details of the system of FIG.
`1 as configured to operate primarily in a speed control mode.
`Further information regarding operating in speed control
`modes is set forth in U.S. Pat. No. 6,756,753.
`Described below are several additional improvements in
`controlling a PM machine according to various aspects of
`
`4
`the present invention. It should be understood that each
`improvement can be advantageously implemented by itself
`or in combination with one or more other improvements
`disclosed herein.
`As shown in FIGS. 2 and 3, the controller of FIG. 1 can
`include an estimator 202, 302 for estimating the machine's
`electrical speed and angle. In some embodiments, the esti(cid:173)
`mators 202, 302 employ a Luenberger Observer. However,
`other types of observers, including the Kalman Estimator,
`10 may be employed.
`According to one aspect of the present invention, the gain
`of an estimator-such as the estimators 202, 302 shown in
`FIGS. 2 and 3---can be varied (e.g., using the gain sched(cid:173)
`ulers 204, 304 shown in FIGS. 2 and 3) as a fnnction of
`15 either a demanded rotor speed (including a filtered
`demanded speed) or an estimated rotor speed. In this man(cid:173)
`ner, control system poles (i.e., poles of the observer) can be
`positioned at desired locations, including maintaining the
`poles at desired and not necessarily fixed locations to
`20 improve control system and machine stability.
`In a torque control mode of operation, there is no
`demanded speed. Therefore, the estimator gains are prefer(cid:173)
`ably varied as a fnnction of the estimated rotor speed so as
`to position the control system poles at desired locations. The
`estimated rotor speed used in the gain scheduling may be
`pre-processed in a suitable manner before being used in the
`gain scheduling scheme, typically being passed through a
`low pass filter.
`In one embodiment of a speed control mode of operation,
`the pole locations of the estimators 202, 302 are increased as
`speed increases, with the slowest pole locations occurring as
`the system is switched from open loop operation to closed
`loop operation.
`The gain values can be calculated for a range of speeds.
`This may be done on the fly by the gain scheduler 204, 304
`of FIG. 2 or 3 using a closed form set of equations.
`Alternatively, the gain values may be retrieved by the gain
`scheduler from one or more look-up tables or from fitted
`curves characterizing the gain-speed profile for a specific
`motor.
`FIG. 4 illustrates how gain values are varied with respect
`to the electrical speed in one exemplary embodiment so as
`to maintain observer poles at desired locations.
`FIGS. Sa and Sb illustrate how gain values approach
`excessive values as the electrical speed approaches zero. For
`this reason, gain values are preferably not calculated as
`described within a range of values aronnd zero electrical
`speed. At low or zero speeds, predetermined gain values
`which are sufficiently high, but not excessive, are preferably
`used, thereby improving control system stability.
`FIG. 6 illustrates how gain values may be stored in and
`accessed from lookup tables. In the particular embodiment
`of FIG. 6, two colunms of gain values are constructed
`through a multiplexer and then concatenated together to
`form a 4x2 gain matrix.
`FIG. 7 is a flow diagram 700 illustrating one preferred
`implementation of the gain schedulers 204, 304 of FIGS. 2
`and 3 in which the speed used by the gain scheduler, referred
`to as the scheduled speed, is set to the drive speed (i.e., a
`demanded rotor speed) at lower rotor speeds and to the
`estimated electrical speed at higher rotor speeds.
`In step 702, the controller transforms state variables into
`a rotating frame of reference. In step 704, the controller
`65 reads the estimated electrical speed and then reads the drive
`speed (i.e., the demanded speed) in step 706. In step 708, the
`controller compares the drive speed to a predetermined
`
`
`
`US 7,342,379 B2
`
`5
`threshold speed. The predetennined speed threshold param(cid:173)
`eter can be selected, as needed, for any given PM machine.
`If the drive speed is greater than the predetermined
`threshold speed, the scheduled speed used by the gain
`schedulers 204, 304 (FIGS. 2 and 3) is set equal to the
`estimated electrical speed in step 710. If the drive speed is
`less than the predetennined threshold speed, the scheduled
`speed used by the gain schedulers 204, 304 is set equal to the
`drive speed in step 712. Subsequent to controller selection of
`the appropriate scheduled speed, the selected schedule speed
`is used by gain schedulers 204, 304 to look up or calculate
`the estimator gains in step 714 to maintain the system poles
`at desired positions. The estimator uses the scheduled gain
`factors and the updated observer states in step 716 to
`calculate an updated estimated electrical angle in step 718
`and an updated estimated electrical speed in step 720. The
`updated electrical speed estimate is filtered in step 722 and
`the filtered speed estimate is integrated in step 724 to
`produce an updated electrical angle demand.
`According to another aspect of the present invention, a
`Qr-axis current can be selected that, in conjunction with a
`given value of dr-axis current, will produce a desired rotor
`torque. This aspect is particularly well suited to hybrid
`PMlSR motors, where the dr-axis current component con(cid:173)
`tributes to the amount of torque produced, and especially 25
`hybrid PMlSR motors employing a dr-axis injection current.
`FIG. 8 is a flow diagram 800 illustrating a method of
`calculating a Qr-axis current based on a given dr-axis current
`injection to produce a desired rotor torque according to one
`exemplary embodiment. In this embodiment, the dr-axis 30
`current injection is calculated off-line in accordance with a
`dr-axis current injection method described in co-pending
`U.S. application Ser. No. 11/293,743 filed on even date
`herewith] noted above. These values are typically stored in
`a lookup table but may also be described as a mathematical 35
`function in alternative embodiments. The motor speed and
`the value of the dc-link are used to calculate the value of the
`dr-axis injection current to be applied at any given moment
`in time.
`In step 802, the controller reads the demanded electrical
`speed 802 and then reads the estimated electrical speed in
`step 804. In step 806, the controller calculates a speed error.
`The controller uses the calculated speed error from step 806
`to update the control action in step 808. After updating the
`control action, the controller reads the intended dr-axis
`injection current in step 810, calculates the Qr-axis current
`required to produce a demanded torque in step 812 and
`outputs the demanded Qr- and dr-axis currents in step 814 to
`a pair of current controllers, such as current controllers 206,
`208 of FIG. 2 or current controllers 306, 308 of FIG. 3.
`FIG. 9 is a block diagram of a speed loop controller 902,
`a torque to IQdr Map block 904, and a Idr injection block
`906 according to another exemplary embodiment. As shown
`in FIG. 9, the selected Qr-axis current and the dr-axis
`injection current are multiplexed and provided to a pair of 55
`current controllers, preferably as a multiplexed demand
`signal, IQdr demand 908. In this embodiment of the Idr
`injection block 906, the required Idr current is calculated
`from the speed error, assuming that Idr is for the moment
`nominally zero.
`FIG. 10 is a block diagram of the Torque and Idr to IQr
`map block of FIG. 9 according to another exemplary
`embodiment of the invention. In this embodiment, using the
`motor-specific