SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
Electrical drives lectures
1. Electrical Drives
Electrical Drives
MEP 1422
2004/2005-02
Module 1. Introduction to drives:
Elements in electrical drives, overview of DC and AC drives.
Torque equations,
Components of load torque, torque characteristics. Four-quadrant
operation
Notes on Introduction to Electromechanical Energy Conversion
Module 2 Converters in electric drive systems:
Controlled rectifier, Linear scheme, Non-linear scheme,
Switched-mode converters - average model and transfer function,
Two-quadrant converters, Four-quadrant converters, Bipolar
switching, Unipolar switching,
Current-controlled converters, Fixed switching frequency control,
Hysteresis control
Example of Simulink file for 2-Q converter (switching and average
model)
Current ripple in 4 Q converter
Space Vector Modulation (SVM)
Module 3 DC motor drives
DC drives in power point format, in .pdf
Construction, modeling and transfer function, Converters for DC
drives – quadrant of operations.
MATLAB–based controller design method – here
Linear analysis in Simulink
Large signal simulation using SIMULINK – here
http://encon.fke.utm.my/courses/mep1422/modules.html (1 von 2) [17.05.2005 17:09:50]
2. Electrical Drives
Module 4. Induction motor drives
Dynamic model of induction machine
Construction and principle of operations,
Speed Control-
constant V/f, Scalar control – problems at low speed,
current
Simulink example on open-loop constant V/Hz using SIMULINK
s-function for IM simulation
Compiled with Borland C - here
Current controlled and voltage boost, open-loop and closed-loop
control.
Field-oriented control of IM:
Rotor flux orientation
Stator flux orientation
Simulink example on indirect FOC IM – requires imch.dll
PPoint for principles of direct torque control and in pdf
Direct Torque Control using SIMULINK and the required *.dll files
for the S-function
http://encon.fke.utm.my/courses/mep1422/modules.html (2 von 2) [17.05.2005 17:09:50]
9. /
F .
-
* $
= * ω% !
*
F ..
*
* G D *
*
*
F ...
* *
*
* *
F ."
* * G D
*
*
*
G.K. Dubey, “Fundamental of Electrical Drives”, Narosa, 1994.
N. Mohan, “Power Electronics: Converters, applications and design” John Wiley and Sons, 1995.
20. http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl
Model {
Name "rl_2q_average"
Version 5.0
SaveDefaultBlockParams on
SampleTimeColors off
LibraryLinkDisplay "none"
WideLines off
ShowLineDimensions off
ShowPortDataTypes off
ShowLoopsOnError on
IgnoreBidirectionalLines off
ShowStorageClass off
ExecutionOrder off
RecordCoverage off
CovPath "/"
CovSaveName "covdata"
CovMetricSettings "dw"
CovNameIncrementing off
CovHtmlReporting on
covSaveCumulativeToWorkspaceVar on
CovSaveSingleToWorkspaceVar on
CovCumulativeVarName "covCumulativeData"
CovCumulativeReport off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
MinMaxOverflowArchiveMode "Overwrite"
BlockNameDataTip off
BlockParametersDataTip off
BlockDescriptionStringDataTip off
ToolBar on
StatusBar on
BrowserShowLibraryLinks off
BrowserLookUnderMasks off
Created "Thu Sep 11 20:51:10 2003"
UpdateHistory "UpdateHistoryNever"
ModifiedByFormat "%<Auto>"
LastModifiedBy "Nik Rumzi"
ModifiedDateFormat "%<Auto>"
LastModifiedDate "Mon Jul 19 11:38:36 2004"
ModelVersionFormat "1.%<AutoIncrement:14>"
ConfigurationManager "None"
SimParamPage "Solver"
LinearizationMsg "none"
Profile off
ParamWorkspaceSource "MATLABWorkspace"
AccelSystemTargetFile "accel.tlc"
AccelTemplateMakefile "accel_default_tmf"
AccelMakeCommand "make_rtw"
TryForcingSFcnDF off
ExtModeMexFile "ext_comm"
ExtModeBatchMode off
ExtModeTrigType "manual"
ExtModeTrigMode "normal"
ExtModeTrigPort "1"
ExtModeTrigElement "any"
ExtModeTrigDuration 1000
ExtModeTrigHoldOff 0
ExtModeTrigDelay 0
ExtModeTrigDirection "rising"
ExtModeTrigLevel 0
ExtModeArchiveMode "off"
ExtModeAutoIncOneShot off
ExtModeIncDirWhenArm off
ExtModeAddSuffixToVar off
ExtModeWriteAllDataToWs off
http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl (1 von 10) [17.05.2005 17:11:15]
21. http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl
ExtModeArmWhenConnect on
ExtModeSkipDownloadWhenConnect off
ExtModeLogAll on
ExtModeAutoUpdateStatusClock on
BufferReuse on
RTWExpressionDepthLimit 5
SimulationMode "normal"
Solver "ode5"
SolverMode "Auto"
StartTime "0.0"
StopTime "100e-3"
MaxOrder 5
MaxStep "auto"
MinStep "auto"
MaxNumMinSteps "-1"
InitialStep "auto"
FixedStep "1e-6"
RelTol "1e-3"
AbsTol "auto"
OutputOption "RefineOutputTimes"
OutputTimes "[]"
Refine "1"
LoadExternalInput off
ExternalInput "[t, u]"
LoadInitialState off
InitialState "xInitial"
SaveTime on
TimeSaveName "t"
SaveState off
StateSaveName "xout"
SaveOutput on
OutputSaveName "yout"
SaveFinalState off
FinalStateName "xFinal"
SaveFormat "Array"
Decimation "1"
LimitDataPoints off
MaxDataPoints "1000"
SignalLoggingName "sigsOut"
ConsistencyChecking "none"
ArrayBoundsChecking "none"
AlgebraicLoopMsg "warning"
BlockPriorityViolationMsg "warning"
MinStepSizeMsg "warning"
InheritedTsInSrcMsg "warning"
DiscreteInheritContinuousMsg "warning"
MultiTaskRateTransMsg "error"
SingleTaskRateTransMsg "none"
CheckForMatrixSingularity "none"
IntegerOverflowMsg "warning"
Int32ToFloatConvMsg "warning"
ParameterDowncastMsg "error"
ParameterOverflowMsg "error"
ParameterPrecisionLossMsg "warning"
UnderSpecifiedDataTypeMsg "none"
UnnecessaryDatatypeConvMsg "none"
VectorMatrixConversionMsg "none"
InvalidFcnCallConnMsg "error"
SignalLabelMismatchMsg "none"
UnconnectedInputMsg "warning"
UnconnectedOutputMsg "warning"
UnconnectedLineMsg "warning"
SfunCompatibilityCheckMsg "none"
RTWInlineParameters off
BlockReductionOpt on
http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl (2 von 10) [17.05.2005 17:11:15]
22. http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl
BooleanDataType on
ConditionallyExecuteInputs on
ParameterPooling on
OptimizeBlockIOStorage on
ZeroCross on
AssertionControl "UseLocalSettings"
ProdHWDeviceType "Microprocessor"
ProdHWWordLengths "8,16,32,32"
RTWSystemTargetFile "grt.tlc"
RTWTemplateMakefile "grt_default_tmf"
RTWMakeCommand "make_rtw"
RTWGenerateCodeOnly off
RTWRetainRTWFile off
TLCProfiler off
TLCDebug off
TLCCoverage off
TLCAssertion off
BlockDefaults {
Orientation "right"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
NamePlacement "normal"
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
ShowName on
}
BlockParameterDefaults {
Block {
BlockType Constant
Value "1"
VectorParams1D on
ShowAdditionalParam off
OutDataTypeMode "Inherit from 'Constant value'"
OutDataType "sfix(16)"
ConRadixGroup "Use specified scaling"
OutScaling "2^0"
}
Block {
BlockType Gain
Gain "1"
Multiplication "Element-wise(K.*u)"
ShowAdditionalParam off
ParameterDataTypeMode "Same as input"
ParameterDataType "sfix(16)"
ParameterScalingMode "Best Precision: Matrix-wise"
ParameterScaling "2^0"
OutDataTypeMode "Same as input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
}
Block {
BlockType Inport
Port "1"
PortDimensions "-1"
SampleTime "-1"
ShowAdditionalParam off
LatchInput off
DataType "auto"
OutDataType "sfix(16)"
http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl (3 von 10) [17.05.2005 17:11:15]
23. http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
Interpolate on
}
Block {
BlockType Outport
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Reference
}
Block {
BlockType Relay
OnSwitchValue "eps"
OffSwitchValue "eps"
OnOutputValue "1"
OffOutputValue "0"
ShowAdditionalParam off
OutputDataTypeScalingMode "All ports same datatype"
OutDataType "sfix(16)"
OutScaling "2^0"
ConRadixGroup "Use specified scaling"
ZeroCross on
}
Block {
BlockType "S-Function"
FunctionName "system"
PortCounts "[]"
SFunctionModules "''"
}
Block {
BlockType Sin
SineType "Time based"
Amplitude "1"
Bias "0"
Frequency "1"
Phase "0"
Samples "10"
Offset "0"
SampleTime "-1"
VectorParams1D on
}
Block {
BlockType SubSystem
ShowPortLabels on
Permissions "ReadWrite"
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
SimViewingDevice off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
}
Block {
BlockType Sum
IconShape "rectangular"
Inputs "++"
ShowAdditionalParam off
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl (4 von 10) [17.05.2005 17:11:15]
24. http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
}
Block {
BlockType ToWorkspace
VariableName "simulink_output"
MaxDataPoints "1000"
Decimation "1"
SampleTime "0"
}
Block {
BlockType TransferFcn
Numerator "[1]"
Denominator "[1 2 1]"
AbsoluteTolerance "auto"
Realization "auto"
}
}
AnnotationDefaults {
HorizontalAlignment "center"
VerticalAlignment "middle"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
}
LineDefaults {
FontName "Helvetica"
FontSize 9
FontWeight "normal"
FontAngle "normal"
}
System {
Name "rl_2q_average"
Location [2, 78, 1022, 701]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 212
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "115"
ReportName "simulink-default.rpt"
Block {
BlockType Constant
Name "Constant"
Position [315, 390, 345, 420]
Value "100"
}
Block {
BlockType Reference
Name "Dot Product"
Ports [2, 1]
Position [610, 431, 640, 464]
SourceBlock "simulink/MathnOperations/Dot Product"
SourceType "Dot Product"
}
Block {
BlockType Gain
http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl (5 von 10) [17.05.2005 17:11:15]
25. http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl
Name "Gain1"
Position [480, 95, 510, 125]
Gain "200"
}
Block {
BlockType Gain
Name "Gain3"
Position [255, 320, 285, 350]
Gain "200/30"
}
Block {
BlockType Relay
Name "Relay"
Position [340, 95, 370, 125]
OnSwitchValue "0"
OffSwitchValue "0"
}
Block {
BlockType Sin
Name "Sine Wave"
Position [115, 55, 145, 85]
SineType "Time based"
Amplitude "2"
Frequency "1000"
SampleTime "0"
}
Block {
BlockType SubSystem
Name "Subsystem"
Ports [0, 1]
Position [110, 130, 150, 190]
TreatAsAtomicUnit off
MaskPromptString "frekuensi|V peak"
MaskStyleString "edit,edit"
MaskTunableValueString "on,on"
MaskCallbackString "|"
MaskEnableString "on,on"
MaskVisibilityString "on,on"
MaskToolTipString "on,on"
MaskVarAliasString ","
MaskVariables "f=@1;v1=@2;"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "5000|15"
System {
Name "Subsystem"
Location [553, 276, 688, 358]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Reference
Name "RepeatingnSequence"
Ports [0, 1]
Position [25, 25, 55, 55]
SourceBlock "simulink/Sources/RepeatingnSequence"
SourceType "Repeating table"
http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl (6 von 10) [17.05.2005 17:11:15]
26. http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl
rep_seq_t "[0 1/(2*f) 1/f]"
rep_seq_y "[-v1 v1 -v1]"
}
Block {
BlockType Outport
Name "Out1"
Position [80, 33, 110, 47]
}
Line {
SrcBlock "RepeatingnSequence"
SrcPort 1
DstBlock "Out1"
DstPort 1
}
}
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [205, 100, 225, 120]
ShowName off
IconShape "round"
Inputs "+-"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
}
Block {
BlockType Sum
Name "Sum1"
Ports [2, 1]
Position [350, 325, 370, 345]
ShowName off
IconShape "round"
Inputs "|++"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
}
Block {
BlockType ToWorkspace
Name "To Workspace1"
Position [485, 240, 545, 270]
VariableName "vave"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace2"
Position [255, 20, 315, 50]
VariableName "vc"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace3"
Position [660, 100, 720, 130]
VariableName "vau"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
http://encon.fke.utm.my/courses/mep1422/rl_2q_average.mdl (7 von 10) [17.05.2005 17:11:15]
33. SPACE VECTOR MODULATION
In contrast to Sinusoidal Pulse Width Modulation (SPWM), which treats the 3-phase quantities
separately, in SVM, the 3-phase quantities are treated using single equation known as space vector.
Therefore in terms of microprocessor or digital implementation, SVM gives less computational
burden. The space vector of a 3-phase voltage is defined as:
2 4
j j
3 3
s a b c
2
v v (t) v (t)e v (t)e
3
π π
= + + ,
where va, vb and vc are the phase voltages.
In 3-phase VSI, there are 8 possible switch configurations, hence there are eight possible voltage
vectors that can be generated or obtained from the VSI. SVM utilized these 8 voltage vectors to
synthesize the reference voltage.
Given a location of the reference voltage in any of the sectors, the actual voltage can be synthesized,
within a sampling period, by selecting the two adjacent voltage vectors and zero voltage vectors. For
example, if the reference voltage is located in sector 1, voltage vectors v1, v2, v0 and v7 should be
selected. This is illustrated in Figure 2
vd*
vq*
Space vector
modulator
AC
Motor
+
Vd
−
Figure 1 Space vector
modulator applied to AC
motor drive
34. (2/3)Vd
Sector 1Sector 3
Sector 4
Sector 5
Sector 2
Sector 6
(1/√3)Vd
[100]
[110][010]
[011]
[001] [101]
*
sv
0 0.005 0.01 0.015 0.02 0.025 0.03
-100
-50
0
50
100 a b c
sector 6 sector 1 sector 2 sector 3 sector 4 sector 5
Figure 3 Sinusoidal
reference voltage
Figure 4 Example of
modulated waveform in
sector 2
000 010 110 111 110 010 000
Phase a
Phase b
Phase c
T T
d
q
Figure 2 Voltage
vectors of a 3-phase
VSI
T0 T1 T2 T7
35. The interval for each voltage vector, as shown in Figure 4, is determined by equating volt-second
integral of vs with the sum of all voltage vectors within a cycle. Thus, for example in sector 1,
772211oos TvTvTvTvTv ⋅+⋅+⋅+⋅=⋅
Note that v1 and v2 equal dV
3
2
. Thus in terms of d-q components this can be written as:
0T)60sinj60(cosTV
3
2
TV
3
2
0TTv 7
oo
2d1dos ⋅++⋅+⋅+⋅=⋅
Also, we need to satisfy the time constraint: T= T0 + T1 + T2 + T7
If we let T0 = T7, we can calculate all the required time intervals. If the angle between the reference
voltage and the adjacent vector (to the right of the reference voltage) equals α, it can be shown that
for any sector, the time intervals T1 and T2 are given by:
1 s
3 1
T T v cos sin
2 3
= ⋅ ⋅ α − α
2 sT 3 T v sin= ⋅ ⋅ α
In the above equation, vs is the normalized reference vector. The interval for the zero voltage vector is
given by: T0 + T7 = T – (T1 +T2). The ratio between T0 and T7 essentially control the amount of
triplen harmonic components in the fundamental phase voltage.
Further readings:
PG Handley and JT Boys, “Practical real-time PWM modulators: an assessment” IEE Proceedings-B,
Vol 139, No. 2 March 1992
W. Leonhard, “Control of electrical drives”, Springer-Verlag, 1984.
36. 1
DC DRIVES
Principle of operation and construction – a review
DC m ach in e con sists of
stator – station ary – wh ere th e field flu x is produ ced
rotor – rotatin g – wh ere th e arm atu re win din g is placed.
Field flu x is obtain ed eith er from perm an en t m agn et or from field win din g excitation . Field flu x
in teracts with cu rren t carryin g con du ctors in arm atu re to produ ce torqu e. Com m u tator in
arm atu re circu it will en su re th at th e torqu e produ ction is always m axim u m , regardless of rotor
position .
Modeling of DC m otor
Th e torqu e is produ ced as a resu lt of in teraction of field flu x with cu rren t in arm atu re
con du ctors an d is given by
Te = kt Φ ia (1)
wh ere kt is a con stan t depen din g on m otor win din gs an d geom etry
Φ is th e flu x per pole du e to th e field win din g
For th e m otor with wou n d field, th e flu x can be varied to con trol th e speed, bu t for perm an en t
m agn et m otor, th e flu x is fixed an d th u s can be written as:
Te = Ktia
wh ere Kt depen ds on th e perm an en t m agn et m aterial
Th e direction of th e torqu e produ ced depen ds on th e direction of th e arm atu re cu rren t
Wh en th e arm atu re rotates, th e flu x lin kin g th e arm atu re win din g will vary with tim e an d
th erefore accordin g to Faraday’s law, an em f will be in du ced across th e win din g. Th is gen erated
em f, kn own as th e back em f, depen ds on speed of rotation as well as on th e flu x produ ced by
th e field an d is given by:
ea = kt Φ ω (2)
Sim ilarly, for perm an en t m agn et, th is can be written as:
37. 2
ea = Kt ω
Th e polarity of th e back em f depen ds on th e direction of th e m otor rotation
For separately excited DC m otor, th e arm atu re circu it is sh own :
Ra – lu m ped arm atu re win din g resistan ce
La – self in du ctan ce of th e arm atu re win din g
ea – as defin ed before, is th e back em f of th e m otor
Usin g KVL,
(3)
In steady state con dition ,
(4)
In term s of torqu e an d speed th e steady state equ ation can be written as:
(5)
wh ich gives:
(6)
Th u s th ree m eth ods can be u sed to con trol th e speed: Vt , Φ an d Ra
Speed con trol u sin g arm atu re resistan ce by addin g extern al resistor Rext is seldom u sed,
especially for large m otor du e to th e losses associated with Ia
2Rext. Vt is n orm ally con trol for
speed u p to rated speed. Beyon d rated speed, for separately excited DC m otor, th e speed con trol
is ach ieved by flu x con trol, Φ. Wh en speed con trol by flu x con trol is u sed, th e m axim u m torqu e
capability of th e m otor is redu ced sin ce for a given m axim u m arm atu re cu rren t, th e flu x is less
th an th e rated valu e an d th u s th e m axim u m torqu e produ ced is less th an th e m axu m u m
torqu e. Also it sh ou ld be n oted th at , with perm an en t m agn et excitation , speed con trol u sin g
flu x weaken in g is n ot possible – th u s m axim u m speed of perm an en t m agn et m otor is lim ited.
Wh en design in g con trollers for DC m otor drives u sed in servo or h igh perform an ce application s,
a sm all sign al m odel of th e m otor is requ ired. A separately excited DC m otor with fixed field
excitation , or a perm an en t m agn et DC m otor, is described by equ ation s (3), (1) an d (2). If a sm all
pertu rbation arou n d a DC operatin g poin t is in trodu ced, th ese equ ation s can be written as (7)-
(9). Th e ‘~’ in dicates a sm all pertu rbation , wh ich is add to th e DC com pon en ts of vt, ia, ea, Te, TL
an d ω :
+
ea
−
a
a
aaat e
dt
di
LRiv ++=
+
vt
−
Ra La
ωΦ+
Φ
= ta
t
t kR
k
T
V
aaat ERIV +=
( )
a2
tt
t
R
k
T
k
V
Φ
−
Φ
=ω
38. 3
(7)
(8)
(9)
Equ ation describin g th e dyn am ic of th e m ech an ical system is given by:
(10)
wh ere Tl = TL + Bω
Tl is th e load torqu e com posed of workin g torqu e of th e load, TL an d torqu e du e to friction , Bω.
Th e friction al torqu e depen ds on th e rotation al speed, wh ile TL depen ds on th e n atu re of th e
load bein g driven . Sim ilarly, if a sm all pertu rbation is in trodu ced in Te an d TL an d ω, equ ation
(10) can be written as:
(11)
Separatin g th e DC an d sm all pertu rbation or AC com pon en ts in (7)–(9) an d (11), th e steady state
an d sm all sign al equ ation s describin g th e DC m otor can be obtain ed:
Th e tran sfer fu n ction of th e DC m otor is obtain ed by takin g th e Laplace tran sform of th e sm all
sign al equ ation s.
Vt(s) = Ia(s)Ra + LasIa + Ea(s) (12)
Te(s) = kEIa(s) (13)
Ea(s) = kEω(s) (14)
Te(s) = TL(s) + Bω(s) + sJ ω(s) (15)
( ) )e~E(
dt
i
~
Id
LR)i
~
I(v~V aa
aa
aaaatt ++
+
++=+
)iI(kT
~
T aaEee +=+
)~(ke~E Eee ω+ω=+
dt
d
JTT m
le
ω
+=
dt
)~(d
J)~(BT
~
TT
~
T LLee
ω+ω
+ω+ω++=+
a
a
aaat e~
dt
i
~
d
LRi
~
v~ ++=
)i
~
(kT
~
aEe =
)~(ke~
Ee ω=
aaat ERIV +=
aEe IkT =
ω= Ee kE
dt
)~(d
J~BT
~
T
~
Le
ω
+ω+= )(BTT Le ω+=
AC com pon en ts DC com pon en ts
39. 4
Th u s th e block diagram represen tin g th e DC m otor is sh own :
Power electronic converters in DC drives
Th e power electron ic con verters are u sed to obtain an adju stable DC voltage applied to th e
arm atu re of a DC m otor. Th ere are basically two types of con verter n orm ally em ployed in DC
drives: (i) con trolled rectifier (ii) switch –m ode con verter.
(i) Con trolled rectifier
Con trolled rectifier can be operated from a sin gle ph ase or th ree ph ase in pu t
Ou tpu t voltage con tain low frequ en cy ripple wh ich m ay requ ire a large in du ctor in serted in
arm atu re circu it, in order to redu ce th e arm atu re cu rren t ripple. A large arm atu re cu rren t ripple
is u n desirable sin ce it m ay be reflected in speed respon se if th e in ertia of th e m otor–load is n ot
large en ou gh . Con trolled rectifier h as low ban dwidth . Th e average ou tpu t voltage respon se to a
con trol sign al, wh ich is th e delay an gle, is relatively slow. Th erefore con trolled rectifier is n ot
su itable for drives requ irin g fast respon se, e.g. in servo application s.
In term s of qu adran t of operation s, a sin gle ph ase or a th ree ph ase rectifier is on ly capable of
operatin g in first an d fou rth qu adran ts – wh ich is n ot su itable for drives requ irin g forward
breakin g m ode. To be able to operate in all fou r qu adran ts, con figu ration s u sin g back to back
rectifiers or con tactors sh own below m u st be em ployed.
Tk
aa sLR
1
+
)s(Tl
)s(Te
sJB
1
+
Ek
)s(Ia )s(ω)s(Va
+
-
-
+
3-phase
supply
3-phase
supply
+
Va
-
Converter
A
ω
T
Converter
B
Converter
B
Converter
A
Con verter A Con verter B
40. 5
(ii) Switch –m ode con verter
Switch –m ode con verters n orm ally operate at h igh frequ en cy. As a resu lt of th is, (i) th e average
ou tpu t voltage respon se is sign ifican tly faster th an th e con trolled rectifier, in oth er words th e
ban dwidth of a switch –m ode rectifier is h igh er com pared to th e con trolled rectifier, an d (ii) th e
arm atu re cu rren t ripple is relatively less th an th e con trolled rectifier circu it wh en th e sam e
am ou n t of in du ctan ce presen t in th e arm atu re circu it. Th e switch -m ode con verter is th erefore
su itable for application s requ irin g position con trol or fast respon se, for exam ple in servo
application s, robotics, etc. In term s of qu adran t of operation s, 3 possible con figu ration s are
possible: sin gle qu adran t, two–qu adran t an d fou r–qu adran t con verters – th ese are sh own below.
Reference:
N. Mohan, “Electric Drives: An integrative approach”, University of Minnesota Printing services, 2000.
N. Mohan, “Power Electronics: Converters, applications and design” John Wiley and Sons, 1995.
≡ Con tactor
Single-quadrant
Two-quadrant
Four-quadrant
ω
T
F1 and F2
are closed
F1
F2
R1
R2
R1 and R2
are closed
R1 and R2
are closed
F1 and F2
are closed
Q1
Q1Q2
Q2
Q3
Q3
Q4
Q1Q2
Q3 Q4
Q4
ω
T T
T
ω
ω
+ Va -
3–ph ase
su pply
+
va
–
+
va
–
+ va
–
41. DC MOTOR DRIVES
(MEP 1422)
Dr. Nik Rumzi Nik Idris
Department of Energy Conversion
FKE, UTM
42. Contents
• Introduction
– Trends in DC drives
– DC motors
• Modeling of Converters and DC motor
– Phase-controlled Rectifier
– DC-DC converter (Switch-mode)
– Modeling of DC motor
• Closed-loop speed control
– Cascade Control Structure
– Closed-loop speed control - an example
• Torque loop
• Speed loop
• Summary
43. INTRODUCTION
• DC DRIVES: Electric drives that use DC motors
as the prime movers
• Dominates variable speed applications before
PE converters were introduced
• DC motor: industry workhorse for decades
• Will AC drive replaces DC drive ?
– Predicted 30 years ago
– AC will eventually replace DC – at a slow rate
– DC strong presence – easy control – huge numbers
44. Introduction
DC Motors
• Several limitations:
• Advantage: Precise torque and speed control
without sophisticated electronics
• Regular Maintenance • Expensive
• Heavy • Speed limitations
• Sparking
45. Current in
Current out
Stator: field
windings
Rotor: armature
windings
Introduction
DC Motors
•Mechanical commutator
•Large machine employs compensation windings
46. Introduction
at ikTe φ= Electric torque
φω= Ea ke Armature back e.m.f.
Lf Rf
if
a
a
aat e
dt
di
LiRv ++=
+
ea
_
La
Ra
ia+
Vt
_
+
Vf
_
dt
di
LiRv f
fff
+=
47. Introduction
aaat EIRV +=
In steady state,
( )2
T
ea
T
t
k
TR
k
V
φ
−
φ
=ω
Therefore speed is given by,
Three possible methods of speed control:
Field flux
Armature voltage Vt
Armature resistance Ra
a
a
aat e
dt
di
LiRV ++=
Armature circuit:
48. Introduction
For wide range of speed control
0 to ωbase → armature voltage, above ωbase → field flux reduction
Armature voltage control : retain maximum torque capability
Field flux control (i.e. flux reduced) : reduce maximum torque capability
Te
ω
Maximum
Torque capability
Armature voltage control
Field flux control
ωbase
49. MODELING OF CONVERTERS
AND DC MOTOR
Used to obtain variable armature voltage
POWER ELECTRONICS CONVERTERS
• Efficient
Ideal : lossless
• Phase-controlled rectifiers (AC → DC)
• DC-DC switch-mode converters(DC → DC)
50. Modeling of Converters and DC motor
Phase-controlled rectifier (AC–DC)
T
Q1Q2
Q3 Q4
ω
3-phase
supply
+
Vt
−
ia
53. Phase-controlled rectifier (continuous current)
• Firing circuit –firing angle control
→ Establish relation between vc and Vt
firing
circuit
current
controller
controlled
rectifier
α
+
Vt
–
vciref
+
-
Modeling of Converters and DC motor
54. Phase-controlled rectifier (continuous current)
• Firing angle control
π
= 180
v
v
cos
V
V
t
cm
a
α
= ct v
180
v
180
v
v
t
c
=α
linear firing angle control
α= cosvv sc
Cosine-wave crossing control
s
cm
a
v
vV
V
π
=
Modeling of Converters and DC motor
55. Phase-controlled rectifier (continuous current)
•Steady state: linear gain amplifier
•Cosine wave–crossing method
Modeling of Converters and DC motor
•Transient: sampler with zero order hold
T
GH(s)
converter
T – 10 ms for 1-phase 50 Hz system
– 3.33 ms for 3-phase 50 Hz system
56. 0.3 0.31 0.32 0.33 0.34 0.35 0.36
-400
-200
0
200
400
0.3 0.31 0.32 0.33 0.34 0.35 0.36
-10
-5
0
5
10
Phase-controlled rectifier (continuous current)
Td
Td – Delay in average output voltage generation
0 – 10 ms for 50 Hz single phase system
Output
voltage
Cosine-wave
crossing
Control
signal
Modeling of Converters and DC motor
57. Phase-controlled rectifier (continuous current)
• Model simplified to linear gain if bandwidth
(e.g. current loop) much lower than sampling
frequency
⇒ Low bandwidth – limited applications
• Low frequency voltage ripple → high current
ripple → undesirable
Modeling of Converters and DC motor
61. Switch–mode converters
• Switching at high frequency
→ Reduces current ripple
→ Increases control bandwidth
• Suitable for high performance applications
Modeling of Converters and DC motor
62. Switch–mode converters - modeling
+
Vdc
•
Vdc
vc
vtri
q
=
0
1
q
when vc > vtri, upper switch ON
when vc < vtri, lower switch ON
Modeling of Converters and DC motor
65. DC motor – small signal model
Modeling of Converters and DC motor
Extract the dc and ac components by introducing small
perturbations in Vt, ia, ea, Te, TL and ωm
a
a
aaat e
dt
di
LRiv ++=
Te = kt ia ee = kt ω
dt
d
JTT m
le
ω
+=
a
a
aaat
e~
dt
i
~
d
LRi
~
v~ ++=
)i
~
(kT
~
aEe =
)~(ke~
Ee ω=
dt
)~(d
J~BT
~
T
~
Le
ω
+ω+=
ac components
aaat ERIV +=
aEe IkT =
ω= Ee
kE
)(BTT Le ω+=
dc components
66. DC motor – small signal model
Modeling of Converters and DC motor
Perform Laplace Transformation on ac components
a
a
aaat
e~
dt
i
~
d
LRi
~
v~ ++=
)i
~
(kT
~
aEe =
)~(ke~
Ee ω=
dt
)~(d
J~BT
~
T
~
Le
ω
+ω+=
Vt(s) = Ia(s)Ra + LasIa + Ea(s)
Te(s) = kEIa(s)
Ea(s) = kEω(s)
Te(s) = TL(s) + Bω(s) + sJω(s)
67. DC motor – small signal model
Modeling of Converters and DC motor
Tk
aa sLR
1
+
)s(Tl
)s(Te
sJB
1
+
Ek
)s(Ia )s(ω)s(Va
+
-
-
+
68. CLOSED-LOOP SPEED CONTROL
Cascade control structure
• It is flexible – outer loop can be readily added or removed
depending on the control requirements
• The control variable of inner loop (e.g. torque) can be
limited by limiting its reference value
1/s
convertertorque
controller
speed
controller
position
controller
+
-
+
-
+
-
tacho
Motor
θθ* T*ωω*
kT
69. CLOSED-LOOP SPEED CONTROL
Design procedure in cascade control structure
• Inner loop (current or torque loop) the fastest –
largest bandwidth
• The outer most loop (position loop) the slowest –
smallest bandwidth
• Design starts from torque loop proceed towards
outer loops
70. CLOSED-LOOP SPEED CONTROL
Closed-loop speed control – an example
OBJECTIVES:
• Fast response – large bandwidth
• Minimum overshoot
good phase margin (>65o)
• Zero steady state error – very large DC gain
BODE PLOTS
• Obtain linear small signal model
METHOD
• Design controllers based on linear small signal model
• Perform large signal simulation for controllers verification
71. CLOSED-LOOP SPEED CONTROL
Ra = 2 Ω La = 5.2 mH
J = 152 x 10–6 kg.m2B = 1 x10–4 kg.m2/sec
kt = 0.1 Nm/Ake = 0.1 V/(rad/s)
Vd = 60 V Vtri = 5 V
fs = 33 kHz
Permanent magnet motor’s parameters
Closed-loop speed control – an example
• PI controllers • Switching signals from
comparison of vc and triangular
waveform
72. CLOSED-LOOP SPEED CONTROL
Torque controller design
Tc
vtri
+
Vdc
•
q
q
+
–
kt
Torque
controller
Tk
aa sLR
1
+
)s(Tl
)s(Te
sJB
1
+
Ek
)s(Ia )s(ω)s(Va
+
-
-
+
Torque
controller
Converter
peak,tri
dc
V
V)s(Te
-
+
DC motor
73. Bode Diagram
Frequency (rad/s ec)
-50
0
50
100
150
From: Input Point To: Output Point
Magnitude(dB)
10
-2
10
-1
10
0
10
1
10
2
10
3
10
4
10
5
-90
-45
0
45
90
Phase(deg)
CLOSED-LOOP SPEED CONTROL
Torque controller design
Open-loop gain
compensated
compensated
kpT= 90
kiT= 18000
74. CLOSED-LOOP SPEED CONTROL
Speed controller design
Assume torque loop unity gain for speed bandwidth << Torque bandwidth
1Speed
controller
sJB
1
+
ω* T* T ω
–
+
Torque loop
75. Bode Diagram
Frequency (Hz)
-50
0
50
100
150
From: Input Point To: Output Point
Magnitude(dB)
10
-2
10
-1
10
0
10
1
10
2
10
3
10
4
-180
-135
-90
-45
0
Phase(deg)
CLOSED-LOOP SPEED CONTROL
Speed controller
Open-loop gain
compensated
kps= 0.2
kis= 0.14
compensated
77. CLOSED-LOOP SPEED CONTROL – DESIGN EXAMPLE
SUMMARY
Power electronics converters – to obtain variable armature voltage
Phase controlled rectifier – small bandwidth – large ripple
Switch-mode DC-DC converter – large bandwidth – small ripple
Controller design based on linear small signal model
Power converters - averaged model
DC motor – separately excited or permanent magnet
Closed-loop speed control design based on Bode plots
Verify with large signal simulation
Speed control by: armature voltage (0 →ωb) and field flux (ωb↑)
82. USING LINEAR ANALYSIS IN MATLAB
FOR DC MOTOR DRIVE CONTROLLER
DESIGN
Our objective in DC drive system are:
(a) To obtain zero or small steady state error
– making sure DC gain of open–loop plot is large
(b) To achieve fast response
– making sure crossover frequency of open–loop
plot is large or large close–loop bandwidth
83. EXAMPLE in using linear analysis in MATLAB
)1s1.0(s
100
GOL
+
=
1
0.1s+1
Transfe r Fcn
1
s
Integra tor
-K-
Gain
100
0.1s +s2
Tra nsfe r Fcn
85. EXAMPLE in using linear analysis in MATLAB
Select Bode as response type in Plot Configurations window
Try to place input point at several different positions. For
each position, obtain the plot using the Simulink → get
linearized model
1
0.1s+1
Tra nsfer Fcn
Output P oint
1
s
Inte gra tor
Input P oint
-K-
Ga in
1
0.1s+1
Tra nsfer Fcn
Output P oint
1
s
Inte gra tor
Input P oint
-K-
Ga in
1
0.1s+1
Transfe r Fcn
Output Point
1
s
Inte gra tor
Input P oint
-K-
Gain
86. EXAMPLE in using linear analysis in MATLAB
Bode Diagram
Frequency (rad/s ec)
-100
-50
0
50
100
From: Input Point To: Output Point
Magnitude(dB)
10
-1
10
0
10
1
10
2
10
3
-180
-135
-90
-45
0
Phase(deg)
87. EXAMPLE in using linear analysis in MATLAB
1
0.1s+1
Transfe r Fcn
Output Point
1
s
Integra torInput P oint
-K-
Gain
Bode Diagram
Frequency (rad/s ec)
-100
-50
0
50
100
From: Input Point To: Output Point
Magnitude(dB)
10
-1
10
0
10
1
10
2
10
3
-180
-135
-90
-45
0
Phase(deg)
Crossover frequency
approximates close–
loop bandwidth
88. EXAMPLE in using linear analysis in MATLAB
PI controller
s
s
1k
p
i
k
ki
+
• Contain a zero and a pole at origin
• DC gain can be adjusted independently from
location of zero
Transfer function
89. EXAMPLE in using linear analysis in MATLAB
PI controller
Output P oint
1
s
Inte gra torInput P oint
0.1
Ga in1
1
Ga in
Bode Diagram
Frequency (rad/s ec)
-100
-50
0
50
100
From: Input Point To: Output Point
Magnitude(dB)
10
-1
10
0
10
1
10
2
10
3
-90
-45
0
Phase(deg)
ki=1, kp=0.1
ki=100, kp=10
90. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
Model {
Name "dc_m2_linear_large_torque"
Version 5.0
SaveDefaultBlockParams on
SampleTimeColors off
LibraryLinkDisplay "none"
WideLines off
ShowLineDimensions off
ShowPortDataTypes off
ShowLoopsOnError on
IgnoreBidirectionalLines off
ShowStorageClass off
ExecutionOrder off
RecordCoverage off
CovPath "/"
CovSaveName "covdata"
CovMetricSettings "dw"
CovNameIncrementing off
CovHtmlReporting on
covSaveCumulativeToWorkspaceVar on
CovSaveSingleToWorkspaceVar on
CovCumulativeVarName "covCumulativeData"
CovCumulativeReport off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
MinMaxOverflowArchiveMode "Overwrite"
BlockNameDataTip off
BlockParametersDataTip off
BlockDescriptionStringDataTip off
ToolBar on
StatusBar on
BrowserShowLibraryLinks off
BrowserLookUnderMasks on
Created "Wed May 28 20:17:31 2003"
UpdateHistory "UpdateHistoryNever"
ModifiedByFormat "%<Auto>"
LastModifiedBy "Nik Rumzi"
ModifiedDateFormat "%<Auto>"
LastModifiedDate "Mon Jul 26 11:46:55 2004"
ModelVersionFormat "1.%<AutoIncrement:33>"
ConfigurationManager "None"
SimParamPage "Solver"
LinearizationMsg "none"
Profile off
ParamWorkspaceSource "MATLABWorkspace"
AccelSystemTargetFile "accel.tlc"
AccelTemplateMakefile "accel_default_tmf"
AccelMakeCommand "make_rtw"
TryForcingSFcnDF off
ExtModeMexFile "ext_comm"
ExtModeBatchMode off
ExtModeTrigType "manual"
ExtModeTrigMode "normal"
ExtModeTrigPort "1"
ExtModeTrigElement "any"
ExtModeTrigDuration 1000
ExtModeTrigHoldOff 0
ExtModeTrigDelay 0
ExtModeTrigDirection "rising"
ExtModeTrigLevel 0
ExtModeArchiveMode "off"
ExtModeAutoIncOneShot off
ExtModeIncDirWhenArm off
ExtModeAddSuffixToVar off
ExtModeWriteAllDataToWs off
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (1 von 14) [17.05.2005 17:12:11]
91. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
ExtModeArmWhenConnect on
ExtModeSkipDownloadWhenConnect off
ExtModeLogAll on
ExtModeAutoUpdateStatusClock on
BufferReuse on
RTWExpressionDepthLimit 5
SimulationMode "normal"
Solver "ode5"
SolverMode "Auto"
StartTime "0.0"
StopTime "0.45"
MaxOrder 5
MaxStep "0.0001"
MinStep "0.00001"
MaxNumMinSteps "-1"
InitialStep "0.00001"
FixedStep "0.000001"
RelTol "1e-3"
AbsTol "auto"
OutputOption "RefineOutputTimes"
OutputTimes "[]"
Refine "1"
LoadExternalInput off
ExternalInput "[t, u]"
LoadInitialState off
InitialState "xInitial"
SaveTime on
TimeSaveName "t"
SaveState off
StateSaveName "xout"
SaveOutput on
OutputSaveName "yout"
SaveFinalState off
FinalStateName "xFinal"
SaveFormat "Array"
Decimation "1"
LimitDataPoints off
MaxDataPoints "1000"
SignalLoggingName "sigsOut"
ConsistencyChecking "none"
ArrayBoundsChecking "none"
AlgebraicLoopMsg "warning"
BlockPriorityViolationMsg "warning"
MinStepSizeMsg "warning"
InheritedTsInSrcMsg "warning"
DiscreteInheritContinuousMsg "warning"
MultiTaskRateTransMsg "error"
SingleTaskRateTransMsg "none"
CheckForMatrixSingularity "none"
IntegerOverflowMsg "warning"
Int32ToFloatConvMsg "warning"
ParameterDowncastMsg "error"
ParameterOverflowMsg "error"
ParameterPrecisionLossMsg "warning"
UnderSpecifiedDataTypeMsg "none"
UnnecessaryDatatypeConvMsg "none"
VectorMatrixConversionMsg "none"
InvalidFcnCallConnMsg "error"
SignalLabelMismatchMsg "none"
UnconnectedInputMsg "warning"
UnconnectedOutputMsg "warning"
UnconnectedLineMsg "warning"
SfunCompatibilityCheckMsg "none"
RTWInlineParameters off
BlockReductionOpt on
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (2 von 14) [17.05.2005 17:12:11]
92. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
BooleanDataType on
ConditionallyExecuteInputs on
ParameterPooling on
OptimizeBlockIOStorage on
ZeroCross on
AssertionControl "UseLocalSettings"
ProdHWDeviceType "Microprocessor"
ProdHWWordLengths "8,16,32,32"
RTWSystemTargetFile "grt.tlc"
RTWTemplateMakefile "grt_default_tmf"
RTWMakeCommand "make_rtw"
RTWGenerateCodeOnly off
RTWRetainRTWFile off
TLCProfiler off
TLCDebug off
TLCCoverage off
TLCAssertion off
BlockDefaults {
Orientation "right"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
NamePlacement "normal"
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
ShowName on
}
BlockParameterDefaults {
Block {
BlockType Clock
DisplayTime off
}
Block {
BlockType Derivative
}
Block {
BlockType Fcn
Expr "sin(u[1])"
}
Block {
BlockType Gain
Gain "1"
Multiplication "Element-wise(K.*u)"
ShowAdditionalParam off
ParameterDataTypeMode "Same as input"
ParameterDataType "sfix(16)"
ParameterScalingMode "Best Precision: Matrix-wise"
ParameterScaling "2^0"
OutDataTypeMode "Same as input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
}
Block {
BlockType Inport
Port "1"
PortDimensions "-1"
SampleTime "-1"
ShowAdditionalParam off
LatchInput off
DataType "auto"
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (3 von 14) [17.05.2005 17:12:11]
93. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
Interpolate on
}
Block {
BlockType Lookup
InputValues "[-4:5]"
OutputValues " rand(1,10)-0.5"
ShowAdditionalParam off
LookUpMeth "Interpolation-Extrapolation"
OutDataTypeMode "Same as input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
}
Block {
BlockType Outport
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Relay
OnSwitchValue "eps"
OffSwitchValue "eps"
OnOutputValue "1"
OffOutputValue "0"
ShowAdditionalParam off
OutputDataTypeScalingMode "All ports same datatype"
OutDataType "sfix(16)"
OutScaling "2^0"
ConRadixGroup "Use specified scaling"
ZeroCross on
}
Block {
BlockType Saturate
UpperLimit "0.5"
LowerLimit "-0.5"
LinearizeAsGain on
ZeroCross on
}
Block {
BlockType "S-Function"
FunctionName "system"
PortCounts "[]"
SFunctionModules "''"
}
Block {
BlockType SignalGenerator
WaveForm "sine"
Amplitude "1"
Frequency "1"
Units "Hertz"
VectorParams1D on
}
Block {
BlockType Step
Time "1"
Before "0"
After "1"
SampleTime "-1"
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (4 von 14) [17.05.2005 17:12:11]
94. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
VectorParams1D on
ZeroCross on
}
Block {
BlockType SubSystem
ShowPortLabels on
Permissions "ReadWrite"
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
SimViewingDevice off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
}
Block {
BlockType Sum
IconShape "rectangular"
Inputs "++"
ShowAdditionalParam off
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
}
Block {
BlockType ToWorkspace
VariableName "simulink_output"
MaxDataPoints "1000"
Decimation "1"
SampleTime "0"
}
Block {
BlockType TransferFcn
Numerator "[1]"
Denominator "[1 2 1]"
AbsoluteTolerance "auto"
Realization "auto"
}
}
AnnotationDefaults {
HorizontalAlignment "center"
VerticalAlignment "middle"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
}
LineDefaults {
FontName "Helvetica"
FontSize 9
FontWeight "normal"
FontAngle "normal"
}
System {
Name "dc_m2_linear_large_torque"
Location [6, 82, 1018, 533]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 212
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (5 von 14) [17.05.2005 17:12:11]
95. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "92"
ReportName "simulink-default.rpt"
Block {
BlockType Gain
Name "Gain"
Position [410, 230, 440, 260]
Gain "-1"
}
Block {
BlockType Reference
Name "PID Controller"
Ports [1, 1]
Position [335, 90, 365, 120]
SourceBlock "simulink_extras/AdditionalnLinear/PID Controll"
"er"
SourceType "PID Controller"
P "90"
I "90*200"
D "0"
}
Block {
BlockType Reference
Name "PID Controller1"
Ports [1, 1]
Position [150, 90, 180, 120]
SourceBlock "simulink_extras/AdditionalnLinear/PID Controll"
"er"
SourceType "PID Controller"
P "0.2"
I "0.7*0.2"
D "0"
}
Block {
BlockType Relay
Name "Relay"
Position [500, 90, 530, 120]
OnSwitchValue "0"
OffSwitchValue "0"
OnOutputValue "60"
}
Block {
BlockType Relay
Name "Relay1"
Position [520, 230, 550, 260]
OnSwitchValue "0"
OffSwitchValue "0"
OnOutputValue "60"
}
Block {
BlockType Saturate
Name "Saturation1"
Position [225, 90, 255, 120]
UpperLimit "1.5"
LowerLimit "-1.5"
}
Block {
BlockType SignalGenerator
Name "SignalnGenerator"
Position [20, 90, 50, 120]
WaveForm "square"
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (6 von 14) [17.05.2005 17:12:11]
96. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
Amplitude "-30"
Frequency "5"
}
Block {
BlockType Step
Name "Step1"
Position [600, 205, 630, 235]
Time "0"
After "0"
SampleTime "0"
}
Block {
BlockType SubSystem
Name "Subsystem"
Ports [2, 3]
Position [700, 120, 740, 180]
TreatAsAtomicUnit off
MaskPromptString "Armature resistance|La|J|Kt|B"
MaskStyleString "edit,edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on,on"
MaskCallbackString "||||"
MaskEnableString "on,on,on,on,on"
MaskVisibilityString "on,on,on,on,on"
MaskToolTipString "on,on,on,on,on"
MaskVarAliasString ",,,,"
MaskVariables "Ra=@1;La=@2;J=@3;Kt=@4;B=@5;"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "2|5.2e-3|152e-6|0.1|0.0001"
System {
Name "Subsystem"
Location [90, 152, 644, 411]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "Va"
Position [25, 88, 55, 102]
}
Block {
BlockType Inport
Name "Tl"
Position [280, 28, 310, 42]
Port "2"
}
Block {
BlockType Gain
Name "Gain"
Position [250, 80, 280, 110]
Gain "Kt"
}
Block {
BlockType Gain
Name "Gain2"
Position [270, 185, 300, 215]
Orientation "left"
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (7 von 14) [17.05.2005 17:12:11]
97. http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl
Gain "Kt"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [80, 85, 100, 105]
ShowName off
IconShape "round"
Inputs "|+-"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
}
Block {
BlockType Sum
Name "Sum1"
Ports [2, 1]
Position [310, 85, 330, 105]
NamePlacement "alternate"
ShowName off
IconShape "round"
Inputs "-+|"
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
}
Block {
BlockType TransferFcn
Name "Transfer Fcn"
Position [145, 77, 205, 113]
Denominator "[La Ra]"
}
Block {
BlockType TransferFcn
Name "Transfer Fcn1"
Position [375, 77, 435, 113]
Denominator "[J B]"
}
Block {
BlockType Outport
Name "speed"
Position [495, 88, 525, 102]
}
Block {
BlockType Outport
Name "T"
Position [390, 33, 420, 47]
Port "2"
}
Block {
BlockType Outport
Name "Ia"
Position [240, 33, 270, 47]
Port "3"
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Transfer Fcn"
DstPort 1
}
Line {
SrcBlock "Gain"
SrcPort 1
DstBlock "Sum1"
DstPort 2
http://encon.fke.utm.my/courses/mep1422/dc_m2_large_torque.mdl (8 von 14) [17.05.2005 17:12:11]
105. Motor aru h an terdiri dari stator dan rotor
Pada stator terdapat belitan 3 fasa yan g disam bu n g kepada bekalan voltan 3 fasa (a, b, dan c)
Secara am , terdapat du a jen is rotor: squ irrel cage (san gkar tu pai) dan wou n d (berbelit)
Bila voltan sin u soidal tiga fasa seim ban g diken akan , akan terben tu k flu ks m agn et pada sela
u dara yan g berpu tar den gan kelaju an :
f2
p
2
s π=ω rad/ s (1)
ωs – diken ali sebagai freku en si segerak (syn ch ron ou s frequ en cy)
f – ialah freku en si bekalan tiga fasa pada stator
p – ialah bilan gan ku tu b
Flu x sela u dara berpu tar in i akan m en garu h kan dge pada pen galir rotor. Aru s akan terh asil
pada pen galir rotor dan akan berin teraksi den gan flu ks sela u dara berpu tar u n tu k
m en gh asilkan dayakilas yan g akan m em u tarkan rotor.Oleh itu laju rotor sen tiasa ku ran g dari
laju segerak.
Perbezaan laju in i diken ali sebagai laju gelin ciran (slip speed).
ωsl = ωs – ωr (2)
Nisbah laju gelin ciran kepada laju segerak ialah gelin ciran .
s
rs
s
ω
ω−ω
= (3)
Flu ks sela u dara yan g berpu tar ju ga akan m en garu h kan dge pada belitan stator yan g diken ali
sebagai dge balikan (back em f) atau voltan sela u dara (air gap voltage).
Voltan sela u dara yan g teraru h diberi oleh :
Eag = k f φag (4)
J ika Vs ialah voltan per-fasa yan g diken akan pada belitan stator dan Is ialah aru s belitan
stator, persam aan litar stator ialah :
a
b
b’
c
c’
x x
x
•
• •
106. 2
Vs = Rs Is + j(2πf)Lls + Eag (5)
d.g.e. yan g teraru h pada rotor adalah disebabkan oleh flu ks m agn et yan g sam a tapi pada
freku en si gelin ciran dan ia boleh ditu lis sebagai:
Er = k sf φag = sEag (6)
Oleh itu , persam aan u n tu k litar rotor ialah :
Er = sEag = Rr Ir + js(2πf)Llr (7)
J ika kedu a-du a belah persam aan dibah agi den gan s,
lrr
r
ag L)f2(jI
s
R
E π+=⇒ (8)
Litar setara per fasa
Rs – Rin tan gan belitan stator
Rr – Rin tan gan pen galir rotor
Lls – Kearu h an bocor belitan stator
Llr – Kearu h an bocor belitan rotor
Lm – Kearu h an kem agn etan
s – gelin ciran
Rotor tidak m em pu n yai su m ber ku asa, oleh itu ku asa yan g dipin dah kan dari litar stator ke litar
rotor diken ali sebagai ku asa sela u dara (air-gap power) dan diberi oleh :
Ku asa m ekan ikal boleh ditu lis dalam sebu tan dayakilas dan laju rotor sebagai:
Pm = Tem ωr
Tapi sωs = ωs - ωr ⇒ ωr = (1-s)ωs
+
Vs
–
Rs Lls Llr
Rr
s
+
Eag
–
Is Ir
Im
Lm
Hilan g
pada Rr Ditu kar kepada ku asa m ekan ikal
Pm = (1- s)Pag
[ ]s1
s
R
I3RI3
s
R
I3P r2
rr
2
r
r2
rag −+==
107. 3
∴ Pag = Tem ωs
Oleh itu
s
r
2
r
s
ag
em
s
RI3P
T
ω
=
ω
=
J ika
( )lrls
r
s
s
r
XXj
s
R
R
V
I
+++
= , daya kilas boleh ditu lis sebagai:
( )2
lrls
2
r
s
2
s
s
r
em
XX
s
R
R
V
s
R3
T
++
+
ω
=
Ben tu k lazim ciri T-ω u n tu k m otor aru h an :
Gelin ciran sem asa daya kilas m aksim u m diberi oleh :
( )2
lrls
2
s
r
m
XXR
R
s
++
±=
Nilai dayakilas m aksim a (pu ll-ou t torqu e):
( )
++±ω
=
2
lrls
2
ss
2
s
s
m ax
XXRR
V
s
3
T
0 ωrated ωs
1 0
ωr
s
Tm ,rated
Pu ll ou t
Torqu e
Tem
108. 4
Kawalan laju m otor aruhan
Terdapat beberapa kaedah kawalan laju :
(i) Pole ch an gin g ï PHQXNDU ELODQJDQ NXWXE
Laju segerak bergan tu n g kepada bilan gan ku tu b
Den gan m en u kar sam bu n gan pada belitan , bilan gan ku tu b boleh diu bah .
(ii) Variable voltage, fixed frequ en cy
Magn itu d voltan dikawal, freku en si tetap, e.g. m en ggu n akan tran sform er.
(iii) Variable m agn itu de variable frequ en cy
Magn itu d voltan bekalan ditu kar berkadaran den gan freku en si dan m eru pakan kaeadah yan g
palin g popu lar digu n akan dalam pem acu kawalan laju m otor aru h an . Un tu k s yan g kecil dan
φag yan g tetap, boleh ditu n ju kkan h u bu n gan di an tara dayakilas dan laju gelin ciran (slip speed)
adalah lin ear
Un tu k m en gekalkan flu ks sela u dara pada n ilai kadaran , bila voltan diu bah , freku en si ju ga
perlu diu bah :
Eag = k f φag
Oleh u n tu k m en gh asilkan φag yan g m alar pada n ilai kadaran , n isbah
f
Eag
h aru slah m alar. J ika
kejatu h an voltan pada Rs dan Xls adalah kecil diban din gkan den gan Vs,
f
V
f
E sag
≈
Voltan bekalan diu bah secara berkadaran den gan laju atau frequ en si seh in gga laju kadaran .
TL
T
ωr
Lower speed gives
h igh er slip ∴ less
efficien t
109. 5
Un tu k ω ωrated, m agn itu d voltan ditetapkan tapi freku en si din aikkan , oleh itu torque capability
m en gu ran g keran a flu ks m u la m en gu ran g
Bila laju kecil, kejatu h an voltan oleh Rs dan Xls adalah besar jika diban din gkn den gan Vs. Oleh
itu kebiasaan n ya Vs din aikkan lebih besar sedikit (boost) sem asa frequ en si ren dah
Ciri T-ω bila m agn itu d Vs dan f diu bah berkadaran
Bagaim an akah m agn itu d dan freku en si dikawal seren tak ?
Men ggu n akan Pu lse Width Modu lation (PWM) In verter
T
T,rated
TL
ωr
ωr,rated
ωs,rated
Vs
ωr
Vs
f
Vs, rated
frated
110. 6
Exam ple 1
400 V, 50 Hz 4ïSROH 1370 rpm
Rs = 2 Ω, Rr = 3 Ω, Xls = Xlr = 3.5 Ω
Motor is con trolled by a voltage sou rce in verter with con stan t V/ f.
Calcu late:
(a) Speed for frequ en cy of 30 Hz an d 80% of fu ll load
(b) Frequ en cy for a speed of 1000 rpm an d fu ll load torqu e
(c) Torqu e for a frequ en cy of 40 Hz an d speed of 1100 rpm
(a)
8.0,slip
rated
rated,slip
rated
N
T8.0
N
T
=
Nslip,rated = Ns ï 1r,rated = 1500 ï USP
rpm104)130(8.0N
T
T8.0
N rated,slip
rated
rated
8.0,slip ===∴
Pada 30 Hz, laju segerak ialah 30 x 60 = 1800/ 2 = 900 rpm
Fixed AC.
Variable voltage
Variable freq.
IM
PWM in verter
AC–DC
(rectifier)
Con trol
(f an d V)
50 Hz30 Hz
Trated
0.8 Trated
1500
Rated
slip
speed
Nslip,0.8
112. 8
∴T = 0.769 Trated Trated = ?
Trated diperoleh i dari :
Trated = 38.06 Nm
∴ Dayakilas pada 40 Hz, laju 1100 rpm ialah T = 0.769 (38.06) = 29.267 Nm
Example 2
A 4–pole, 3-phase, 50 Hz IM, 1460 rpm has a rated torque of 20 Nm. It is used
to drive a load with characteristic given by TL = Kω2
, such that the speed
equals rated value at rated torque. If a constant V/Hz control method is used,
find the speed of motor at 0.5 rated torque.
If the starting torque of 1.1 times the rated is required, what should be the
starting frequency?
ωslip,r = 1500 – 1460 = 40 rpm or 4.19 rad/s
a) Load torque is given by:
TL = Kω2
1460 rpm ⇒ 152.9 rad/s
20 = K(152.9)2
100
T
130
Trated =
( )2
lrls
2
r
s
2
s
s
r
em
XX
s
R
R
V
s
R3
T
++
+
ω
=
TL = K ω2
TL(Nm)
ω(rad/s)
Trated
Zslip,r
Zsyn,r
Zr,r
50 Hz
0.5 Trated
113. 9
⇒ K = 20/(152.9)2
∴ at 0.5 rated torque, the speed is 108.11 rad/s
Motor T-ω is obtained as follows:
Therefore at 0.5 Trated and speed of 108.11 rad/s
∴ ωsyn = 110.2 ⇒ f = 35 Hz
At start-up,
2
2L
9.152
20
T ω=
rsyn
e
r,rr,syn
rated
slip
rated T
77.4
TT
ω−ω
==
ω−ω
=
ω
rsyne 77.477.4T ω−ω=
)11.108(77.477.410 syn −ω=
TL = K ω2
TL(Nm)
ω(rad/s)
Trated
Zslip,r
Zsyn,r
Zr,r
50 Hz
1.1(Trated)
Zslip = Zsyn
19.4
TT1.1 rated
slip
rated
=
ω
61.4)1.1(19.4synsynslip ==ω∴ω=ω
114. 1 0
SCALAR CONTROL OF IM
We have seen that applying balanced, sinusoidal 3-phase supply to a 3-phase
sinusoidally distributed winding produces a rotating mmf wave and hence
rotating magnetic flux. The rotating magnetic flux will induce emf on the
rotor circuit, which is shorted for squirell cage rotor. Rotor current will
flow and interact with the rotating flux, producing torque.
Per-phase steady state equivalent circuit
To ensure maximum torque capability at all time it is therefore necessary to
maintain the magnetic flux at its rated value at any frequency. From the
steady state equivalent circuit, this is equivalent to maintaining the
magnetizing current at its rated value.
The flux can be maintained constant at its rated by maintaining the ratio Eg
/f
constant. At high speed, where the induced back emf is large, the drop across
the stator leakage and resistance is negligibly small.- therefore Eg
/f is
maintained constant by maintaining V/f constant. However at low speed, the
back emf is low and the drop is significant. Thus the flux is reduced below
rated – torque capability is also reduced.
Simulation results with constant V/f
The performance can be improved by:
(i) Boosting the voltage at low frequency:
speed-
rad/s
torque-Nm
Im
Rs
Rr/ s
LrlLsl
Lm
+
V
−
+
Eg
−
115. 1 1
To accurately boost the voltage, stator current needs to be measured. The
voltage drop drop is calculated and added to stator voltage on-line
ii) Control the stator current such that constant magnetising current is
maintained. This is achieved by using a current-controlled voltage source
inverter.
m
r
lr
r
mlr
1
1
r
mlr
r
lr
m
I
s
R
Lj
s
R
)LL(j
I
I
s
R
)LL(j
s
R
Lj
I
+ω
++ω
=⇒
++ω
+ω
=
Introducing σr = rotor leakage factor, which gives, Llr = σrLm,
,I
1T
1
j
1Tj
I
I
s
R
L
1
j
s
R
Lj
I
m
r
r
r
slip
rslip
1
m
r
r
r
r
r
r
1
+
σ+
σ
ω
+ω
=
+
σ+
σ
ω
+ω
=
Where Tr
= Lr
/Rr
and ωslip
= ω - ωr
= sω
The method depends on the rotor parameters, which vary with temperature.
Open-loop V/f control
116. 1 2
For low cost, low performance drive, open-loop constant V/f control is
normally employed. With open-loop speed control, the rotor speed will be less
than the synchronous speed by slip speed. In other words, the desired speed,
ω*, will differ from the actual speed by slip speed. The slip speed on the
other hand, depends on load. To improve the performance or the speed
regulation, slip speed can be estimated and added to the reference speed –
slip compensation technique. Typical arrangement is shown below:
How is the slip speed estimated?
The slip frequency is proportional to the torque, hence it can estimated by
estimating the torque. The torque is estimated from,
Te
= Pag
/ωsyn
VSIRectifier3-phase
supply IM
Pulse
Width
Modulator
Vboost
Slip speed
calculator
ω*
++
++ V
Vdc Idc
Ramp
117. 1 3
Pag
is estimated by subtracting the input DC power with the inverter and stator
copper losses.
Closed-loop speed control
Speed regulation can be improved by employing closed-loop speed control system
with tachometer feedback, as shown below.
The reference and actual speed are compared. The error is fed to the speed
controller which defines the inverter frequency. The current limit is
activated only when current exceeds the maximum allowable value. The signal
generated by the current limit block will reduce the rate by which the
inverter frequency is increased. This is to avoid the frequency from reaching
the breakdown frequency.
Further readings:
Power Electronic Control of AC Motors – J.M.D. Murphy and F.G. Turnbull,
Pergamon Press
118. 1
Modelling of 3-phase Induction Machine (IM)
The steady state model of IM, which is represented by a steady state per phase equivalent
circuit introduced in the undergraduate courses, describes the steady state behaviour of
the IM. It is used when steady state analysis, such as efficiency, losses, steady state
torque, current, fluxes need to be evaluated. The model assumes input to be a balanced, 3-
phase steady state sinusoidal voltage. If the IM is fed by power electronic converters,
the steady state analysis can be performed by representing the pulse-width modulated
waveform of the inverter using Fourier series. Steady state model of IM is also used to
derive the control signals used for scalar control drives. Since the model only valid in
steady state condition, such drive normally has a poor transient performance. Applications
not requiring good transient response such as fans, blowers or compressors, normally
employ such control technique. Dynamic model on the other hand, describes the transient as
well as the steady state behaviour of the IM. Using the dynamic model, the transients of
IM, which cannot be analysed using steady state equivalent model, can be predicted and
studied. The model can be used to simulate the IM drives and evaluate their transient
performances, including that of using the scalar control technique. Dynamic model is also
essential when developing high performance control techniques for IM drives, such as
vector control or direct torque control drives. A dynamic model of IM must contain effect
of the magnetic coupling between stator phase circuits and the rotor phase circuits, as
well as coupling between phases of each circuit. This will undoubtedly result in a huge
number and complex equations, which are difficult to manage. By using space vector
equations, however, these complex equations are simplified and reduced. We will now
develop a dynamic model of an IM using mathematical equations based on space vectors or
space phasors (these terms will be defined later on).
System equations
Figure 1 shows the conceptual representation of a 3-phase, 2 poles induction machine. The
magnetic axis of each winding is represented by an inductor symbol. As usual the angles
between windings of each phase are 120o
. The angle between rotor’s phase a axis and
stator’s phase a axis is given by θr. The equation describing the stator and rotor
circuits can be written as:
vabcs = Rsiabcs + d(ψψψψabcs)/dt (1)
vabcr = Rriabcr + d(ψψψψabr)/dt (2)
where,
Ψ
Ψ
Ψ
=Ψ==
cs
bs
as
abcs
cs
bs
as
abcs
cs
bs
as
abcs
i
i
i
i
v
v
v
v and
Ψ
Ψ
Ψ
=Ψ==
cr
br
ar
abcs
cr
br
ar
abcr
cr
br
ar
abcr
i
i
i
i
v
v
v
v
It is clear that since the displacements between various windings of all the phases are
non-quadrature, there exists magnetic coupling between them. The stator and rotor flux
linkages (ψabcs and ψabcs)of equations (1) and (2) are contributed by the stator and rotor
currents. Thus:
r,abcss,abcsabcs Ψ+Ψ=Ψ (3)
s,abcrr,abcrabcr Ψ+Ψ=Ψ (4)
119. 2
ψabcs,s and ψabcs,r are the components of the stator flux linkage caused by stator and rotor
currents (phase a, b and c) respectively, and, ψabcr,r and ψabcr,s are the components of the
rotor flux linkage caused by rotor and stator currents (phase a, b and c) respectively
These flux linkages can be written in terms of the inductances and respective currents.
=Ψ
cs
bs
as
csbcsacs
bcsbsabs
acsabsas
s,abcs
i
i
i
LLL
LLL
LLL
(5)
=Ψ
cr
br
ar
cr,csbr,csar,cs
cr,bsbr,bsar,bs
cr,asbr,asar,as
r,abcs
i
i
i
LLL
LLL
LLL
(6)
=Ψ
cr
br
ar
crbcracr
bcrbrabr
acrabrar
r,abcr
i
i
i
LLL
LLL
LLL
(7)
stator, b
rotor, b
rotor, a
stator, a
rotor, c
stator, c
ξ = 0
θr
Figure 1