📄 demo_gs2.mdl
字号:
SrcBlock "Controlled system"
SrcPort 1
DstBlock "y"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Linear controller"
Ports [1, 1, 0, 0, 0]
Position [130, 120, 220, 170]
Orientation down
DropShadow on
NamePlacement alternate
ShowName off
ShowPortLabels on
MaskType "Linear controller"
MaskDisplay "disp('Linear\\ncontroller');"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate none
MaskIconUnits autoscale
System {
Name "Linear controller"
Location [175, 85, 655, 282]
Open off
ToolBar off
StatusBar off
ScreenColor white
PaperOrientation landscape
PaperPositionMode auto
PaperType usletter
PaperUnits inches
Block {
BlockType Inport
Name "w"
Position [20, 53, 50, 67]
Port "1"
PortWidth "-1"
SampleTime "-1"
}
Block {
BlockType Reference
Name "Controlled system"
Ports [1, 2, 0, 0, 0]
Position [220, 35, 350, 110]
DropShadow on
SourceBlock "NelinSys/Nonlinear Systems Synthesis/Nonlin"
"ear SISO system\n(State-Space model)"
SourceType "Nonlinear SISO system - state-space model"
n "2"
F "[-sqrt(x1); sqrt(x1)-sqrt(x2)]"
Fp "0"
G "[1; 0]"
Gp "0"
H "x2"
Hp "0"
pp "[0.1; 0.01]"
}
Block {
BlockType Scope
Name "Linear\ncontroller"
Ports [1, 0, 0, 0, 0]
Position [420, 125, 450, 155]
Floating off
Location [1, 18, 801, 571]
Open off
Grid on
TickLabels on
ZoomMode on
TimeRange "auto"
YMin "0"
YMax "12"
SaveToWorkspace off
SaveName "ScopeData"
LimitMaxRows on
MaxRows "5000"
Decimation "1"
SampleInput off
SampleTime "0"
}
Block {
BlockType Reference
Name "Linear controller\n(fixed operating point y"
"0=1)"
Ports [2, 1, 0, 0, 0]
Position [95, 49, 175, 96]
DropShadow on
SourceBlock "NelinSys/Nonlinear Systems Synthesis/Gain S"
"cheduling Blocks/State-space gain-scheduling\ncontroller for SISO systems"
SourceType "State-space gain-scheduling controller for "
"SISO systems"
n "2"
vzorec "1/2+8*w-3*x1-9/2*x2"
vzorecP "0"
}
Block {
BlockType Outport
Name "y"
Position [415, 48, 445, 62]
Port "1"
OutputWhenDisabled held
InitialOutput "[]"
}
Line {
SrcBlock "Controlled system"
SrcPort 1
DstBlock "y"
DstPort 1
}
Line {
SrcBlock "w"
SrcPort 1
DstBlock "Linear controller\n(fixed operating point y"
"0=1)"
DstPort 1
}
Line {
SrcBlock "Controlled system"
SrcPort 2
Points [30, 0; 0, 50]
Branch {
Points [-330, 0; 0, -55]
DstBlock "Linear controller\n(fixed operating point"
" y0=1)"
DstPort 2
}
Branch {
DstBlock "Linear\ncontroller"
DstPort 1
}
}
Line {
SrcBlock "Linear controller\n(fixed operating point y"
"0=1)"
SrcPort 1
DstBlock "Controlled system"
DstPort 1
}
}
}
Block {
BlockType Mux
Name "Mux"
Ports [5, 1, 0, 0, 0]
Position [15, 215, 545, 220]
Orientation down
BackgroundColor black
NamePlacement alternate
ShowName off
Inputs "5"
}
Block {
BlockType SubSystem
Name "Output scheduling"
Ports [1, 1, 0, 0, 0]
Position [341, 120, 429, 170]
Orientation down
DropShadow on
NamePlacement alternate
ShowName off
ShowPortLabels on
MaskType "Output scheduling"
MaskDisplay "disp('Output\\nscheduling');"
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate none
MaskIconUnits autoscale
System {
Name "Output scheduling"
Location [175, 85, 655, 282]
Open off
ToolBar off
StatusBar off
ScreenColor white
PaperOrientation landscape
PaperPositionMode auto
PaperType usletter
PaperUnits inches
Block {
BlockType Inport
Name "w"
Position [20, 53, 50, 67]
Port "1"
PortWidth "-1"
SampleTime "-1"
}
Block {
BlockType Reference
Name "Controlled system"
Ports [1, 2, 0, 0, 0]
Position [220, 35, 350, 110]
DropShadow on
SourceBlock "NelinSys/Nonlinear Systems Synthesis/Nonlin"
"ear SISO system\n(State-Space model)"
SourceType "Nonlinear SISO system - state-space model"
n "2"
F "[-sqrt(x1); sqrt(x1)-sqrt(x2)]"
Fp "0"
G "[1; 0]"
Gp "0"
H "x2"
Hp "0"
pp "[0.1; 0.01]"
}
Block {
BlockType Scope
Name "Output\nscheduling"
Ports [1, 0, 0, 0, 0]
Position [420, 125, 450, 155]
Floating off
Location [5, 30, 805, 583]
Open off
Grid on
TickLabels on
ZoomMode on
TimeRange "auto"
YMin "0"
YMax "12"
SaveToWorkspace off
SaveName "ScopeData"
LimitMaxRows on
MaxRows "5000"
Decimation "1"
SampleInput off
SampleTime "0"
}
Block {
BlockType Reference
Name "Output scheduling"
Ports [2, 1, 0, 0, 0]
Position [90, 49, 170, 96]
DropShadow on
SourceBlock "NelinSys/Nonlinear Systems Synthesis/Gain S"
"cheduling Blocks/State-space gain-scheduling\ncontroller for SISO systems"
SourceType "State-space gain-scheduling controller for "
"SISO systems"
n "2"
vzorec "-(-x2^(1/2)+4*x2)/x2*x1+8*x2^(1/2)*(w-x2)+4"
"*x2"
vzorecP "0"
}
Block {
BlockType Outport
Name "y"
Position [415, 48, 445, 62]
Port "1"
OutputWhenDisabled held
InitialOutput "[]"
}
Line {
SrcBlock "Controlled system"
SrcPort 1
DstBlock "y"
DstPort 1
}
Line {
SrcBlock "w"
SrcPort 1
DstBlock "Output scheduling"
DstPort 1
}
Line {
SrcBlock "Controlled system"
SrcPort 2
Points [30, 0; 0, 50]
Branch {
Points [-320, 0; 0, -55]
DstBlock "Output scheduling"
DstPort 2
}
Branch {
DstBlock "Output\nscheduling"
DstPort 1
}
}
Line {
SrcBlock "Output scheduling"
SrcPort 1
DstBlock "Controlled system"
DstPort 1
}
}
}
Block {
BlockType Scope
Name "System output"
Ports [1, 0, 0, 0, 0]
Position [475, 245, 505, 275]
Floating off
Location [129, 319, 695, 573]
Open on
Grid on
TickLabels on
ZoomMode on
TimeRange "15 "
YMin "0 "
YMax "12 "
SaveToWorkspace off
SaveName "ScopeData"
LimitMaxRows on
MaxRows "5000"
Decimation "1"
SampleInput off
SampleTime "0"
}
Line {
SrcBlock "Output scheduling"
SrcPort 1
DstBlock "Mux"
DstPort 4
}
Line {
SrcBlock "Input scheduling"
SrcPort 1
DstBlock "Mux"
DstPort 3
}
Line {
SrcBlock "Linear controller"
SrcPort 1
DstBlock "Mux"
DstPort 2
}
Line {
SrcBlock "Exact linearization"
SrcPort 1
DstBlock "Mux"
DstPort 5
}
Line {
SrcBlock "Desired\nvalue"
SrcPort 1
Points [20, 0]
Branch {
DstBlock "Mux"
DstPort 1
}
Branch {
Points [105, 0]
Branch {
DstBlock "Linear controller"
DstPort 1
}
Branch {
Points [105, 0]
Branch {
DstBlock "Input scheduling"
DstPort 1
}
Branch {
Points [105, 0]
Branch {
DstBlock "Output scheduling"
DstPort 1
}
Branch {
Points [105, 0]
DstBlock "Exact linearization"
DstPort 1
}
}
}
}
}
Line {
SrcBlock "Mux"
SrcPort 1
Points [0, 35]
DstBlock "System output"
DstPort 1
}
Annotation {
Position [271, 27]
Text "Comparison of different methods for nonlinear s"
"ystems synthesis"
FontSize 14
FontWeight bold
}
Annotation {
Position [266, 47]
Text "Control of \"2 tanks without interaction\" syst"
"em"
FontSize 14
}
Annotation {
Position [91, 192]
Text "yellow"
}
Annotation {
Position [196, 192]
Text "purple"
}
Annotation {
Position [301, 192]
Text "cyan"
}
Annotation {
Position [401, 192]
Text "red"
}
Annotation {
Position [511, 192]
Text "green"
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -