?? work007.mdl
字號:
}
Line {
SrcBlock "Cartesian to\nPolar"
SrcPort 2
Points [15, 0; 0, 15]
DstBlock "teta"
DstPort 1
}
}
}
Block {
BlockType Gain
Name "Gain1"
Position [820, 140, 850, 170]
ShowName off
Gain "1"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Reference
Name "IGBT Inverter"
Tag "PoWeRsYsTeMbLoCk"
Ports [3, 3]
Position [540, 112, 605, 178]
NamePlacement "alternate"
SourceBlock "powerlib2/Power\nElectronics/Universal Bridge"
SourceType "Universal Bridge"
arms "3"
confi "ABC as output terminals"
injcc "1000"
cf "inf"
device "IGBT / Diodes"
Ron "1e-3"
Lon "0"
VFs "[ 0.8 0.8 ]"
Vf ".8"
gtoparameters "[ 1e-6 , 1e-6 ]"
igbtparameters "[ 1e-6 , 2e-6 ]"
mesure "None"
PSBOutputType "111"
}
Block {
BlockType SubSystem
Name "IM* calculation"
Ports [2, 1]
Position [215, 111, 275, 149]
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
System {
Name "IM* calculation"
Location [2, 74, 790, 555]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "Phir*"
Position [20, 148, 50, 162]
Port "1"
LatchInput off
Interpolate on
}
Block {
BlockType Inport
Name "Phir"
Position [20, 218, 50, 232]
Port "2"
LatchInput off
Interpolate on
}
Block {
BlockType Gain
Name "Gain1"
Position [250, 141, 280, 169]
ShowName off
Gain "28.8184"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [145, 160, 165, 180]
ShowName off
IconShape "round"
Inputs "|+-"
SaturateOnIntegerOverflow on
}
Block {
BlockType Outport
Name "IM1*"
Position [490, 148, 520, 162]
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Line {
SrcBlock "Gain1"
SrcPort 1
DstBlock "IM1*"
DstPort 1
}
Line {
SrcBlock "Phir*"
SrcPort 1
Points [35, 0; 0, 15]
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
Points [30, 0; 0, -15]
DstBlock "Gain1"
DstPort 1
}
Line {
SrcBlock "Phir"
SrcPort 1
Points [100, 0]
DstBlock "Sum"
DstPort 2
}
Annotation {
Position [260, 185]
Text "1/Lm"
}
}
}
Block {
BlockType Reference
Name "Induction Motor\n60 HP / 460 V"
Tag "PoWeRsYsTeMbLoCk"
Ports [4, 1]
Position [630, 112, 705, 198]
NamePlacement "alternate"
SourceBlock "powerlib2/Machines/Asynchronous Machine\nSI Uni"
"ts"
SourceType "Asynchronous Machine"
rotType "Squirrel-cage"
ctrl "Stationary"
x1 "[ 50*746, 460, 60 ]"
x2 "[ 0.087 0.8e-3 ]"
x3 "[ 0.228 0.8e-3 ]"
x4 "34.7e-3"
x5 "[1.662 0.1 2 ]"
x6 "[ 1, 0 , 0 , 0 , 0 , 0 , 0 , 0 ]"
PSBOutputType "1110"
iounits "1"
}
Block {
BlockType Step
Name "Load_torque"
Position [550, 233, 580, 257]
NamePlacement "alternate"
Time "0.5"
Before "0"
After "50"
SampleTime "0"
VectorParams1D on
}
Block {
BlockType SubSystem
Name "PI controler"
Ports [2, 1]
Position [90, 15, 125, 75]
NamePlacement "alternate"
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
MaskType "PI controller"
MaskDescription "Proportional-Integral Speed Controller"
MaskPromptString "Proportional gain (Kp)|Integral gain (Ki)|Torqu"
"e limit (N.m)|Sampling time (s)"
MaskStyleString "edit,edit,edit,edit"
MaskTunableValueString "on,on,on,on"
MaskCallbackString "|||"
MaskEnableString "on,on,on,on"
MaskVisibilityString "on,on,on,on"
MaskToolTipString "on,on,on,on"
MaskVariables "Kp=@1;Ki=@2;Tlim=@3;Ts=@4;"
MaskDisplay "\n"
MaskIconFrame on
MaskIconOpaque off
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "120|3|360|1e-5"
MaskVariableAliases ",,,"
System {
Name "PI controler"
Location [2, 74, 790, 555]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "w*"
Position [25, 53, 55, 67]
Port "1"
LatchInput off
Interpolate on
}
Block {
BlockType Inport
Name "w"
Position [25, 83, 55, 97]
Port "2"
LatchInput off
Interpolate on
}
Block {
BlockType DiscreteIntegrator
Name "Discrete-Time\nIntegrator"
Ports [1, 1]
Position [345, 72, 410, 118]
ShowName off
IntegratorMethod "Trapezoidal"
ExternalReset "none"
InitialConditionSource "internal"
InitialCondition "0"
LimitOutput on
UpperSaturationLimit "Tlim"
LowerSaturationLimit "-Tlim"
ShowSaturationPort off
ShowStatePort off
SampleTime "Ts"
RTWStateStorageClass "Auto"
}
Block {
BlockType Gain
Name "Gain"
Position [305, 81, 330, 109]
ShowName off
Gain "Ki"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Gain
Name "Gain1"
Position [305, 26, 335, 54]
ShowName off
Gain "Kp"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Saturate
Name "Saturation"
Position [445, 60, 465, 80]
ShowName off
UpperLimit "Tlim"
LowerLimit "-Tlim"
LinearizeAsGain on
}
Block {
BlockType Sum
Name "Sum1"
Ports [2, 1]
Position [95, 43, 105, 107]
ShowName off
IconShape "rectangular"
Inputs "+-"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum2"
Ports [2, 1]
Position [425, 14, 430, 121]
ShowName off
IconShape "rectangular"
Inputs "++"
SaturateOnIntegerOverflow on
}
Block {
BlockType Outport
Name "IT*"
Position [490, 63, 520, 77]
Port "1"
OutputWhenDisabled "held"
InitialOutput "0"
}
Line {
SrcBlock "w*"
SrcPort 1
DstBlock "Sum1"
DstPort 1
}
Line {
SrcBlock "w"
SrcPort 1
DstBlock "Sum1"
DstPort 2
}
Line {
SrcBlock "Saturation"
SrcPort 1
DstBlock "IT*"
DstPort 1
}
SrcBlock "Sum2"
SrcPort 1
DstBlock "Saturation"
DstPort 1
}
Line {
SrcBlock "Gain"
SrcPort 1
DstBlock "Discrete-Time\nIntegrator"
DstPort 1
}
Line {
SrcBlock "Gain1"
SrcPort 1
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Sum1"
SrcPort 1
Points [180, 0]
Branch {
DstBlock "Gain1"
DstPort 1
}
Branch {
DstBlock "Gain"
DstPort 1
}
}
Line {
SrcBlock "Discrete-Time\nIntegrator"
SrcPort 1
DstBlock "Sum2"
DstPort 2
}
}
}
Block {
BlockType Scope
Name "Scope"
Ports [4]
Position [875, 75, 905, 180]
BackgroundColor "green"
NamePlacement "alternate"
Floating off
Location [5, 53, 805, 603]
Open off
NumInputPorts "4"
TickLabels "OneTimeTick"
ZoomMode "yonly"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
axes2 "%<SignalLabel>"
axes3 "%<SignalLabel>"
axes4 "%<SignalLabel>"
}
List {
ListType SelectedSignals
axes1 ""
axes2 ""
axes3 ""
axes4 ""
}
Grid "on"
TimeRange "0.06"
YMin "-1000~-250~50~0"
YMax "1000~250~190~17.5"
SaveToWorkspace off
SaveName "ScopeData"
DataFormat "StructureWithTime"
LimitDataPoints off
MaxDataPoints "5000"
Decimation "10"
SampleInput on
SampleTime "5e-6"
}
Block {
BlockType SubSystem
Name "TM-ABC"
Ports [3, 1]
Position [370, 33, 420, 117]
NamePlacement "alternate"
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
System {
Name "TM-ABC"
Location [2, 74, 790, 575]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "IT1*"
Position [55, 113, 85, 127]
Port "1"
LatchInput off
Interpolate on
}
Block {
BlockType Inport
Name "IM1*"
Position [55, 83, 85, 97]
Port "2"
LatchInput off
Interpolate on
}
Block {
BlockType Inport
Name "Teta"
Position [15, 23, 45, 37]
Port "3"
LatchInput off
Interpolate on
}
Block {
BlockType Fcn
Name "Fcn"
Position [75, 51, 105, 69]
ShowName off
Expr "sin(u)"
}
Block {
BlockType Fcn
Name "Fcn1"
Position [75, 19, 105, 41]
ShowName off
Expr "cos(u)"
}
Block {
BlockType Gain
Name "Gain1"
Position [305, 138, 325, 162]
ShowName off
Gain "-1"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Gain
Name "Gain2"
Position [205, 37, 230, 63]
ShowName off
Gain "2/3"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Gain
Name "Gain3"
Position [215, 63, 235, 87]
ShowName off
Gain "2/3"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Mux
Name "Mux"
Ports [4, 1]
Position [125, 15, 130, 135]
ShowName off
Inputs "4"
DisplayOption "none"
}
Block {
BlockType Mux
Name "Mux2"
Ports [3, 1]
Position [350, 36, 355, 114]
ShowName off
Inputs "3"
DisplayOption "none"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [265, 132, 285, 168]
ShowName off
IconShape "rectangular"
Inputs "++"
SaturateOnIntegerOverflow on
}
Block {
BlockType Fcn
Name "ia"
Position [165, 40, 190, 60]
NamePlacement "alternate"
Expr "u[1]*u[3]-u[2]*u[4]"
}
Block {
BlockType Fcn
Name "ib"
Position [170, 66, 195, 84]
Expr "(0.866*u[2]-0.5*u[1])*u[3]+(0.5*u[2]+0.866*"
"u[1])*u[4]"
}
Block {
BlockType Outport
Name "Iabc*"
Position [405, 68, 435, 82]
Port "1"
OutputWhenDisabled "held"
InitialOutput "0"
}
Line {
SrcBlock "ib"
SrcPort 1
DstBlock "Gain3"
DstPort 1
}
Line {
SrcBlock "ia"
SrcPort 1
DstBlock "Gain2"
DstPort 1
}
Line {
SrcBlock "Gain2"
SrcPort 1
Points [5, 0]
Branch {
DstBlock "Mux2"
DstPort 1
}
Branch {
Points [0, 90]
DstBlock "Sum"
DstPort 1
}
}
Line {
SrcBlock "Gain3"
SrcPort 1
Points [10, 0]
Branch {
DstBlock "Mux2"
DstPort 2
}
Branch {
DstBlock "Sum"
DstPort 2
}
}
Line {
SrcBlock "IM1*"
SrcPort 1
DstBlock "Mux"
DstPort 3
}
Line {
SrcBlock "Teta"
SrcPort 1
Points [10, 0]
Branch {
DstBlock "Fcn"
DstPort 1
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -