📄 closeabc.mdl
字号:
Block {
BlockType Product
Name "Product3 Xsb*cosa"
Ports [2, 1]
Position [615, 382, 645, 413]
Inputs "2"
Multiplication "Element-wise(.*)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum"
Ports [3, 1]
Position [375, 168, 415, 232]
ShowName off
IconShape "rectangular"
Inputs "+--"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum1"
Ports [2, 1]
Position [375, 277, 415, 348]
ShowName off
IconShape "rectangular"
Inputs "+-"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum3"
Ports [2, 1]
Position [695, 237, 725, 268]
IconShape "rectangular"
Inputs "++"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum4"
Ports [2, 1]
Position [695, 347, 725, 378]
IconShape "rectangular"
Inputs "+-"
SaturateOnIntegerOverflow on
}
Block {
BlockType Trigonometry
Name "Trigonometric\nFunction"
Ports [1, 1]
Position [485, 290, 515, 320]
Operator "sin"
OutputSignalType "auto"
}
Block {
BlockType Trigonometry
Name "Trigonometric\nFunction1"
Ports [1, 1]
Position [485, 355, 515, 385]
Operator "cos"
OutputSignalType "auto"
}
Block {
BlockType Outport
Name "Xd"
Position [755, 358, 785, 372]
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Outport
Name "Xq"
Position [750, 248, 780, 262]
Port "2"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Line {
SrcBlock "Gain"
SrcPort 1
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Gain1"
SrcPort 1
DstBlock "Sum1"
DstPort 1
}
Line {
SrcBlock "Gain3"
SrcPort 1
DstBlock "Sum"
DstPort 3
}
Line {
SrcBlock "Gain2"
SrcPort 1
DstBlock "Sum1"
DstPort 2
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Gain4"
DstPort 1
}
Line {
SrcBlock "Sum1"
SrcPort 1
Points [20, 0]
DstBlock "Gain5"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 1
Points [40, 0; 0, -20]
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 2
Points [60, 0]
Branch {
Points [0, -55]
DstBlock "Gain"
DstPort 1
}
Branch {
DstBlock "Gain1"
DstPort 1
}
}
Line {
SrcBlock "Product3 Xsb*cosa"
SrcPort 1
Points [30, 0]
DstBlock "Sum4"
DstPort 2
}
Line {
SrcBlock "Product2 Xsa*sina"
SrcPort 1
Points [30, 0]
DstBlock "Sum4"
DstPort 1
}
Line {
SrcBlock "Gain5"
SrcPort 1
Points [0, 10; 45, 0]
Branch {
Points [0, 125]
DstBlock "Product3 Xsb*cosa"
DstPort 1
}
Branch {
DstBlock "Product1 Xsb*sina"
DstPort 1
}
}
Line {
SrcBlock "Gain4"
SrcPort 1
Points [15, 0; 0, 15]
Branch {
Points [0, 115]
DstBlock "Product2 Xsa*sina"
DstPort 1
}
Branch {
DstBlock "Product Xsa*cosa"
DstPort 1
}
}
Line {
SrcBlock "Product1 Xsb*sina"
SrcPort 1
Points [30, 0]
DstBlock "Sum3"
DstPort 2
}
Line {
SrcBlock "Product Xsa*cosa"
SrcPort 1
Points [30, 0]
DstBlock "Sum3"
DstPort 1
}
Line {
SrcBlock "theta"
SrcPort 1
Points [0, 0; 0, -70]
Branch {
DstBlock "Trigonometric\nFunction1"
DstPort 1
}
Branch {
Points [0, -65]
DstBlock "Trigonometric\nFunction"
DstPort 1
}
}
Line {
SrcBlock "Trigonometric\nFunction"
SrcPort 1
Points [0, 0; 55, 0]
Branch {
Points [0, 40]
DstBlock "Product2 Xsa*sina"
DstPort 2
}
Branch {
Points [0, -25]
DstBlock "Product1 Xsb*sina"
DstPort 2
}
}
Line {
SrcBlock "Trigonometric\nFunction1"
SrcPort 1
Points [0, 0; 70, 0]
Branch {
Points [0, 35]
DstBlock "Product3 Xsb*cosa"
DstPort 2
}
Branch {
Points [0, -140]
DstBlock "Product Xsa*cosa"
DstPort 2
}
}
Line {
SrcBlock "Demux"
SrcPort 3
Points [30, 0; 0, 20; 95, 0]
Branch {
DstBlock "Gain2"
DstPort 1
}
Branch {
Points [0, -110]
DstBlock "Gain3"
DstPort 1
}
}
Line {
SrcBlock "XABC"
SrcPort 1
DstBlock "Demux"
DstPort 1
}
Line {
SrcBlock "Sum3"
SrcPort 1
DstBlock "Xq"
DstPort 1
}
Line {
SrcBlock "Sum4"
SrcPort 1
DstBlock "Xd"
DstPort 1
}
Annotation {
Position [523, 194]
Text "ia"
}
}
}
Block {
BlockType SubSystem
Name " "
Ports [3, 2]
Position [300, 149, 360, 271]
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
MaskType "C2/3"
MaskDescription "[XA XB XC]=C2/3( [Xd ,Xq] )\n\n"
MaskDisplay "disp('dq-abc\\n变换')"
MaskIconFrame on
MaskIconOpaque off
MaskIconRotate "none"
MaskIconUnits "autoscale"
System {
Name " "
Location [115, 213, 911, 695]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "automatic"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "A4"
PaperUnits "centimeters"
ZoomFactor "100"
Block {
BlockType Inport
Name "Xd"
Position [65, 33, 95, 47]
Port "1"
LatchInput off
Interpolate on
}
Block {
BlockType Inport
Name "Xq"
Position [65, 93, 95, 107]
Port "2"
LatchInput off
Interpolate on
}
Block {
BlockType Inport
Name "theta"
Position [45, 223, 75, 237]
Port "3"
LatchInput off
Interpolate on
}
Block {
BlockType Product
Name "Product Xsd*cosa"
Ports [2, 1]
Position [225, 32, 255, 63]
Inputs "2"
Multiplication "Element-wise(.*)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Product
Name "Product1 Xsq*sina"
Ports [2, 1]
Position [225, 92, 255, 123]
Inputs "2"
Multiplication "Element-wise(.*)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Product
Name "Product2 Xsd*sina"
Ports [2, 1]
Position [225, 147, 255, 178]
Inputs "2"
Multiplication "Element-wise(.*)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Product
Name "Product3 Xsq*cosa"
Ports [2, 1]
Position [225, 202, 255, 233]
Inputs "2"
Multiplication "Element-wise(.*)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum2"
Ports [2, 1]
Position [330, 197, 360, 228]
IconShape "rectangular"
Inputs "++"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum5"
Ports [2, 1]
Position [325, 62, 355, 93]
IconShape "rectangular"
Inputs "-+"
SaturateOnIntegerOverflow on
}
Block {
BlockType Trigonometry
Name "Trigonometric\nFunction2"
Ports [1, 1]
Position [125, 245, 155, 275]
Operator "sin"
OutputSignalType "auto"
}
Block {
BlockType Trigonometry
Name "Trigonometric\nFunction3"
Ports [1, 1]
Position [105, 185, 135, 215]
Operator "cos"
OutputSignalType "auto"
}
Block {
BlockType Outport
Name "Xa"
Position [425, 193, 455, 207]
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Outport
Name "Xb"
Position [450, 78, 480, 92]
Port "2"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Line {
SrcBlock "Trigonometric\nFunction2"
SrcPort 1
Points [10, 0; 0, -90]
Branch {
Points [0, -55]
DstBlock "Product1 Xsq*sina"
DstPort 2
}
Branch {
DstBlock "Product2 Xsd*sina"
DstPort 2
}
}
Line {
SrcBlock "Product3 Xsq*cosa"
SrcPort 1
DstBlock "Sum2"
DstPort 2
}
Line {
SrcBlock "Product1 Xsq*sina"
SrcPort 1
Points [50, 0]
DstBlock "Sum5"
DstPort 2
}
Line {
SrcBlock "Product Xsd*cosa"
SrcPort 1
Points [50, 0]
DstBlock "Sum5"
DstPort 1
}
Line {
SrcBlock "Trigonometric\nFunction3"
SrcPort 1
Points [50, 0]
Branch {
Points [0, -145]
DstBlock "Product Xsd*cosa"
DstPort 2
}
Branch {
Points [0, 25]
DstBlock "Product3 Xsq*cosa"
DstPort 2
}
}
Line {
SrcBlock "Product2 Xsd*sina"
SrcPort 1
Points [55, 0]
DstBlock "Sum2"
DstPort 1
}
Line {
SrcBlock "Xd"
SrcPort 1
Points [0, 0; 30, 0]
Branch {
DstBlock "Product Xsd*cosa"
DstPort 1
}
Branch {
Points [0, 115]
DstBlock "Product2 Xsd*sina"
DstPort 1
}
}
Line {
SrcBlock "Xq"
SrcPort 1
Points [0, 0; 50, 0]
Branch {
DstBlock "Product1 Xsq*sina"
DstPort 1
}
Branch {
Points [0, 110]
DstBlock "Product3 Xsq*cosa"
DstPort 1
}
}
Line {
SrcBlock "theta"
SrcPort 1
Points [5, 0]
Branch {
Points [0, -30]
DstBlock "Trigonometric\nFunction3"
DstPort 1
}
Branch {
Points [0, 30]
DstBlock "Trigonometric\nFunction2"
DstPort 1
}
}
Line {
SrcBlock "Sum5"
SrcPort 1
Points [5, 0; 0, 5]
DstBlock "Xb"
DstPort 1
}
Line {
SrcBlock "Sum2"
SrcPort 1
Points [5, 0; 0, -15]
DstBlock "Xa"
DstPort 1
}
Annotation {
Position [517, 310]
Text "va=vd*cosa-vq*sina\nvb=vd*sina+vq*cosa"
}
}
}
Block {
BlockType Mux
Name "Mux"
Ports [3, 1]
Position [570, 152, 575, 228]
ShowName off
Inputs "3"
DisplayOption "bar"
}
Block {
BlockType SubSystem
Name "PIDd"
Ports [1, 1]
Position [215, 155, 245, 185]
BackgroundColor "yellow"
NamePlacement "alternate"
AncestorBlock "simulink_extras/Additional\nLinear/PID Controll"
"er"
ShowPortLabels on
TreatAsAtomicUnit off
RTWSystemCode "Auto"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
MaskType "PID Controller"
MaskDescription "Enter expressions for proportional, integral, a"
"nd derivative terms.\nP+I/s+Ds"
MaskHelp "This block implements a PID controller where pa"
"rameters are entered for the Proportional, Integral and Derivative terms. Unm"
"ask this block to see how it works. The derivative term is implemented using "
"a true derivative block."
MaskPromptString "Proportional:|Integral:|Derivative:|Limit Volta"
"ge"
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 "P=@1;I=@2;D=@3;Ulim=@4;"
MaskDisplay "disp('PID')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "10|1|0|310"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -