📄 mimo_lib.mdl
字号:
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Mux"
DstPort 1
}
Line {
SrcBlock "Sum1"
SrcPort 1
DstBlock "Mux"
DstPort 2
}
Line {
SrcBlock "u"
SrcPort 1
DstBlock "Demux"
DstPort 1
}
Line {
SrcBlock "Mux"
SrcPort 1
DstBlock "y"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "3 dt terms"
Ports [1, 1, 0, 0, 0]
Position [140, 275, 175, 305]
Orientation "left"
ShowPortLabels on
MaskType "K(i,j) with 3 dead-time terms"
MaskPromptString "Kdelay(i,j,:)|K{i,j,:}|Length of input D(s)"
MaskStyleString "edit,edit,edit"
MaskTunableValueString "on,on,on"
MaskCallbackString "||"
MaskEnableString "on,on,on"
MaskVisibilityString "on,on,on"
MaskVariables "Kdelay=@1;K=@2;lengthDs=@3;"
MaskDisplay "disp('K{i,j,:}')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "||"
System {
Name "3 dt terms"
Location [398, 592, 729, 773]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "automatic"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
Block {
BlockType Inport
Name "In1"
Position [285, 93, 315, 107]
Orientation "left"
Port "1"
PortWidth "-1"
SampleTime "-1"
DataType "auto"
SignalType "auto"
Interpolate on
}
Block {
BlockType Reference
Name "Kdelay(1,1,1)\n"
Ports [1, 1, 0, 0, 0]
Position [125, 29, 160, 61]
Orientation "left"
SourceBlock "MIMO_lib/Mdelay"
SourceType "Mdelay"
Mdelay "Kdelay(1)"
}
Block {
BlockType Reference
Name "Kdelay(1,1,2)"
Ports [1, 1, 0, 0, 0]
Position [125, 84, 160, 116]
Orientation "left"
SourceBlock "MIMO_lib/Mdelay"
SourceType "Mdelay"
Mdelay "Kdelay(2)"
}
Block {
BlockType Reference
Name "Kdelay(1,1,3)"
Ports [1, 1, 0, 0, 0]
Position [125, 139, 160, 171]
Orientation "left"
SourceBlock "MIMO_lib/Mdelay"
SourceType "Mdelay"
Mdelay "Kdelay(3)"
}
Block {
BlockType Reference
Name "K{1,1,1}"
Ports [1, 1, 0, 0, 0]
Position [190, 30, 220, 60]
Orientation "left"
SourceBlock "simulink3/Math/Matrix\nGain"
SourceType "Matrix Gain"
K "[zeros(1,lengthDs-length(K{1})) K{1}]"
}
Block {
BlockType Reference
Name "K{1,1,2}"
Ports [1, 1, 0, 0, 0]
Position [190, 85, 220, 115]
Orientation "left"
SourceBlock "simulink3/Math/Matrix\nGain"
SourceType "Matrix Gain"
K "[zeros(1,lengthDs-length(K{2})) K{2}]"
}
Block {
BlockType Reference
Name "K{1,1,3}"
Ports [1, 1, 0, 0, 0]
Position [190, 140, 220, 170]
Orientation "left"
SourceBlock "simulink3/Math/Matrix\nGain"
SourceType "Matrix Gain"
K "[zeros(1,lengthDs-length(K{3})) K{3}]"
}
Block {
BlockType Sum
Name "Sum"
Ports [3, 1, 0, 0, 0]
Position [75, 74, 90, 116]
Orientation "left"
ShowName off
IconShape "rectangular"
Inputs "|+++"
SaturateOnIntegerOverflow on
}
Block {
BlockType Outport
Name "Out1"
Position [25, 83, 55, 97]
Orientation "left"
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Line {
SrcBlock "Kdelay(1,1,2)"
SrcPort 1
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Kdelay(1,1,1)\n"
SrcPort 1
Points [-15, 0]
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Out1"
DstPort 1
}
Line {
SrcBlock "K{1,1,2}"
SrcPort 1
DstBlock "Kdelay(1,1,2)"
DstPort 1
}
Line {
SrcBlock "K{1,1,1}"
SrcPort 1
DstBlock "Kdelay(1,1,1)\n"
DstPort 1
}
Line {
SrcBlock "K{1,1,3}"
SrcPort 1
DstBlock "Kdelay(1,1,3)"
DstPort 1
}
Line {
SrcBlock "Kdelay(1,1,3)"
SrcPort 1
Points [-15, 0]
DstBlock "Sum"
DstPort 3
}
Line {
SrcBlock "In1"
SrcPort 1
Points [-35, 0]
Branch {
Points [0, -55]
DstBlock "K{1,1,1}"
DstPort 1
}
Branch {
DstBlock "K{1,1,2}"
DstPort 1
}
Branch {
Points [0, 55]
DstBlock "K{1,1,3}"
DstPort 1
}
}
}
}
Block {
BlockType SubSystem
Name "3_input_state"
Ports [1, 3, 0, 0, 0]
Position [290, 113, 335, 157]
ShowPortLabels on
MaskType "3_input_state"
MaskDescription "The block generate the state vectors of signal "
"[ ..., x''', x'', x' , x ] of each 3 input signals. "
MaskPromptString "D(s) :"
MaskStyleString "edit"
MaskTunableValueString "on"
MaskEnableString "on"
MaskVisibilityString "on"
MaskVariables "Ds=@1;"
MaskDisplay "disp('1/D(s)')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
System {
Name "3_input_state"
Location [323, 406, 611, 666]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "automatic"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom off
Block {
BlockType Inport
Name "In1"
Position [20, 113, 50, 127]
Port "1"
PortWidth "-1"
SampleTime "-1"
DataType "auto"
SignalType "auto"
Interpolate on
}
Block {
BlockType Reference
Name "1_input_state"
Ports [1, 1, 0, 0, 0]
Position [130, 34, 170, 66]
SourceBlock "MIMO_lib/1_input_state"
SourceType "SISO_MSF"
Ds "Ds{1}"
}
Block {
BlockType Reference
Name "1_input_state1"
Ports [1, 1, 0, 0, 0]
Position [130, 104, 170, 136]
SourceBlock "MIMO_lib/1_input_state"
SourceType "SISO_MSF"
Ds "Ds{2}"
}
Block {
BlockType Reference
Name "1_input_state2"
Ports [1, 1, 0, 0, 0]
Position [130, 174, 170, 206]
SourceBlock "MIMO_lib/1_input_state"
SourceType "SISO_MSF"
Ds "Ds{3}"
}
Block {
BlockType Demux
Name "Demux"
Ports [1, 3, 0, 0, 0]
Position [80, 91, 85, 149]
BackgroundColor "black"
ShowName off
Outputs "3"
}
Block {
BlockType Outport
Name "Out1"
Position [195, 43, 225, 57]
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Outport
Name "Out2"
Position [195, 113, 225, 127]
Port "2"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Outport
Name "Out3"
Position [195, 183, 225, 197]
Port "3"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Line {
SrcBlock "Demux"
SrcPort 1
DstBlock "1_input_state"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 2
DstBlock "1_input_state1"
DstPort 1
}
Line {
SrcBlock "1_input_state"
SrcPort 1
DstBlock "Out1"
DstPort 1
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Demux"
DstPort 1
}
Line {
SrcBlock "1_input_state1"
SrcPort 1
DstBlock "Out2"
DstPort 1
}
Line {
SrcBlock "1_input_state2"
SrcPort 1
DstBlock "Out3"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 3
DstBlock "1_input_state2"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "3x3"
Ports [1, 1, 0, 0, 0]
Position [135, 193, 180, 237]
ShowPortLabels on
MaskType "diagonal transfer function matrix"
MaskDescription "A block for the simulation of diagonal transfer"
" function matrix, for example the prefilter, and qd part of the feed back con"
"troller."
MaskPromptString "diagonal cell array of numurator polynomial|dia"
"gonal cell array of denominator polynomial"
MaskStyleString "edit,edit"
MaskTunableValueString "on,on"
MaskCallbackString "|"
MaskEnableString "on,on"
MaskVisibilityString "on,on"
MaskVariables "num=@1;den=@2;"
MaskDisplay "disp('diag TF')"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "|"
System {
Name "3x3"
Location [479, 390, 829, 598]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "automatic"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
Block {
BlockType Inport
Name "In1"
Position [25, 98, 55, 112]
Port "1"
PortWidth "-1"
SampleTime "-1"
DataType "auto"
SignalType "auto"
Interpolate on
}
Block {
BlockType Demux
Name "Demux"
Ports [1, 3, 0, 0, 0]
Position [80, 74, 85, 136]
BackgroundColor "black"
ShowName off
Outputs "3"
}
Block {
BlockType Mux
Name "Mux"
Ports [3, 1, 0, 0, 0]
Position [265, 73, 270, 137]
ShowName off
Inputs "3"
DisplayOption "bar"
}
Block {
BlockType TransferFcn
Name "Transfer Fcn"
Position [140, 27, 200, 63]
Numerator "num{1,1}"
Denominator "den{1,1}"
}
Block {
BlockType TransferFcn
Name "Transfer Fcn1"
Position [140, 87, 200, 123]
Numerator "num{2,2}"
Denominator "den{2,2}"
}
Block {
BlockType TransferFcn
Name "Transfer Fcn2"
Position [140, 147, 200, 183]
Numerator "num{3,3}"
Denominator "den{3,3}"
}
Block {
BlockType Outport
Name "Out1"
Position [295, 98, 325, 112]
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Line {
SrcBlock "Transfer Fcn"
SrcPort 1
DstBlock "Mux"
DstPort 1
}
Line {
SrcBlock "Transfer Fcn1"
SrcPort 1
DstBlock "Mux"
DstPort 2
}
Line {
SrcBlock "Transfer Fcn2"
SrcPort 1
DstBlock "Mux"
DstPort 3
}
Line {
SrcBlock "Demux"
SrcPort 2
DstBlock "Transfer Fcn1"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 1
DstBlock "Transfer Fcn"
DstPort 1
}
Line {
SrcBlock "Demux"
SrcPort 3
DstBlock "Transfer Fcn2"
DstPort 1
}
Line {
SrcBlock "Mux"
SrcPort 1
DstBlock "Out1"
DstPort 1
}
Line {
SrcBlock "In1"
SrcPort 1
DstBlock "Demux"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "3x3system"
Ports [1, 1, 0, 0, 0]
Position [145, 17, 205, 63]
ShowPortLabels on
MaskType "3x3 system"
MaskDescription "The system is described by a cell array of nume"
"rator polynomial, a cell array denominator polynomial of s , and a cell array"
" of dead time."
MaskPromptString "numerator|denominator :|dead time :"
MaskStyleString "edit,edit,edit"
MaskTunableValueString "on,on,on"
MaskCallbackString "||"
MaskEnableString "on,on,on"
MaskVisibilityString "on,on,on"
MaskVariables "num=@1;den=@2;dead=@3;"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
MaskValueString "||"
System {
Name "3x3system"
Location [442, 137, 952, 675]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "automatic"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
AutoZoom on
Block {
BlockType Inport
Name "u"
Position [25, 268, 55, 282]
Port "1"
PortWidth "-1"
SampleTime "-1"
DataType "auto"
SignalType "auto"
Interpolate on
}
Block {
BlockType Demux
Name "Demux"
Ports [1, 3, 0, 0, 0]
Position [80, 255, 90, 295]
BackgroundColor "black"
ShowName off
Outputs "3"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -