📄 wang_p254.mdl
字号:
Name "x20"
Position [15, 118, 45, 132]
Port "3"
LatchInput off
Interpolate on
}
Block {
BlockType Fcn
Name "Fcn"
Position [190, 93, 335, 127]
Orientation "left"
Expr "(9.8*sin(u(1))-M*L/(Mc+M)*u(2)*u(2)*cos(u(1"
"))*sin(u(1)))/(L*(4/3-M/(Mc+M)*cos(u(1))*cos(u(1))))"
}
Block {
BlockType Fcn
Name "Fcn1"
Position [155, 145, 335, 175]
Orientation "left"
Expr "cos(u(1))/(Mc+M)/L/(4/3-M/(Mc+M)*cos(u(1))*"
"cos(u(1)))"
}
Block {
BlockType Gain
Name "Gain"
Position [105, 74, 160, 106]
Gain "pi/180"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Gain
Name "Gain1"
Position [60, 19, 85, 51]
Gain "-1"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Gain
Name "Gain2"
Position [105, 109, 160, 141]
Gain "pi/180"
Multiplication "Element-wise(K.*u)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Integrator
Name "Integrator"
Ports [2, 1]
Position [320, 27, 350, 58]
ExternalReset "none"
InitialConditionSource "external"
InitialCondition "x20"
LimitOutput off
UpperSaturationLimit "inf"
LowerSaturationLimit "-inf"
ShowSaturationPort off
ShowStatePort off
AbsoluteTolerance "auto"
}
Block {
BlockType Integrator
Name "Integrator1"
Ports [2, 1]
Position [390, 37, 420, 68]
ExternalReset "none"
InitialConditionSource "external"
InitialCondition "0.25"
LimitOutput off
UpperSaturationLimit "inf"
LowerSaturationLimit "-inf"
ShowSaturationPort off
ShowStatePort off
AbsoluteTolerance "auto"
}
Block {
BlockType Mux
Name "Mux"
Ports [2, 1]
Position [350, 92, 355, 123]
Orientation "left"
ShowName off
Inputs "2"
DisplayOption "bar"
}
Block {
BlockType Mux
Name "Mux1"
Ports [2, 1]
Position [350, 142, 355, 173]
Orientation "left"
ShowName off
Inputs "2"
DisplayOption "bar"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [105, 29, 130, 56]
Inputs "2"
Multiplication "Element-wise(.*)"
SaturateOnIntegerOverflow on
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [165, 35, 185, 55]
ShowName off
IconShape "round"
Inputs "|++"
SaturateOnIntegerOverflow on
}
Block {
BlockType Outport
Name "x1"
Position [450, 78, 480, 92]
Port "1"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Outport
Name "x2"
Position [450, 118, 480, 132]
Port "2"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Line {
SrcBlock "Gain"
SrcPort 1
Points [210, 0]
DstBlock "Integrator1"
DstPort 2
}
Line {
SrcBlock "x10"
SrcPort 1
DstBlock "Gain"
DstPort 1
}
Line {
SrcBlock "Mux1"
SrcPort 1
DstBlock "Fcn1"
DstPort 1
}
Line {
SrcBlock "Product"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Fcn"
SrcPort 1
Points [-10, 0]
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Sum"
SrcPort 1
Points [115, 0]
DstBlock "Integrator"
DstPort 1
}
Line {
SrcBlock "Fcn1"
SrcPort 1
Points [-60, 0]
DstBlock "Product"
DstPort 2
}
Line {
SrcBlock "Integrator"
SrcPort 1
Points [15, 0]
Branch {
Points [0, 70]
Branch {
Points [0, 10]
Branch {
DstBlock "x2"
DstPort 1
}
Branch {
DstBlock "Mux1"
DstPort 2
}
}
Branch {
DstBlock "Mux"
DstPort 2
}
}
Branch {
DstBlock "Integrator1"
DstPort 1
}
}
Line {
SrcBlock "Mux"
SrcPort 1
DstBlock "Fcn"
DstPort 1
}
Line {
SrcBlock "Integrator1"
SrcPort 1
Points [0, 0; 0, 30]
Branch {
Points [0, 15]
Branch {
DstBlock "Mux"
DstPort 1
}
Branch {
Points [0, 50]
DstBlock "Mux1"
DstPort 1
}
}
Branch {
DstBlock "x1"
DstPort 1
}
}
Line {
SrcBlock "Gain1"
SrcPort 1
DstBlock "Product"
DstPort 1
}
Line {
SrcBlock "u"
SrcPort 1
DstBlock "Gain1"
DstPort 1
}
Line {
SrcBlock "x20"
SrcPort 1
DstBlock "Gain2"
DstPort 1
}
Line {
SrcBlock "Gain2"
SrcPort 1
Points [0, -50; 140, 0]
DstBlock "Integrator"
DstPort 2
}
Annotation {
Position [179, 122]
Text "f"
}
Annotation {
Position [145, 172]
Text "g"
}
}
}
Block {
BlockType Mux
Name "Mux1"
Ports [3, 1]
Position [245, 188, 250, 222]
ShowName off
Inputs "3"
DisplayOption "bar"
}
Block {
BlockType RandomNumber
Name "Random\nNumber"
Position [25, 170, 55, 200]
Mean "0"
Variance "1"
Seed "0"
SampleTime "0.03"
VectorParams1D on
}
Block {
BlockType Scope
Name "Scope"
Ports [1]
Position [420, 114, 450, 146]
Floating off
Location [7, 53, 205, 222]
Open on
NumInputPorts "1"
TickLabels "OneTimeTick"
ZoomMode "on"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
}
List {
ListType SelectedSignals
axes1 ""
}
Grid "on"
TimeRange "10"
YMin "-10"
YMax "20"
SaveToWorkspace off
SaveName "ScopeData"
DataFormat "StructureWithTime"
LimitDataPoints on
MaxDataPoints "500000"
Decimation "1"
SampleInput off
SampleTime "0"
}
Block {
BlockType Scope
Name "Scope2"
Ports [1]
Position [270, 189, 300, 221]
Floating off
Location [597, 414, 796, 574]
Open on
NumInputPorts "1"
TickLabels "OneTimeTick"
ZoomMode "on"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
}
List {
ListType SelectedSignals
axes1 ""
}
Grid "on"
TimeRange "10"
YMin "-20"
YMax "20"
SaveToWorkspace off
SaveName "ScopeData2"
DataFormat "StructureWithTime"
LimitDataPoints on
MaxDataPoints "500000"
Decimation "1"
SampleInput off
SampleTime "0"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [185, 70, 205, 90]
ShowName off
IconShape "round"
Inputs "|++"
SaturateOnIntegerOverflow on
}
Block {
BlockType ToWorkspace
Name "To Workspace"
Position [435, 75, 455, 95]
VariableName "x1"
MaxDataPoints "inf"
Decimation "1"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace2"
Position [60, 20, 85, 50]
VariableName "t"
MaxDataPoints "inf"
Decimation "1"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace3"
Position [125, 35, 145, 55]
VariableName "ek"
MaxDataPoints "inf"
Decimation "1"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace4"
Position [180, 35, 200, 55]
VariableName "u"
MaxDataPoints "inf"
Decimation "1"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace5"
Position [370, 155, 390, 175]
VariableName "x2"
MaxDataPoints "inf"
Decimation "1"
SampleTime "-1"
SaveFormat "Array"
}
Line {
SrcBlock "Digital Fuzzy\n Subsystem"
SrcPort 1
Points [10, 0]
Branch {
Points [5, 0]
DstBlock "Sum"
DstPort 1
}
Branch {
DstBlock "To Workspace4"
DstPort 1
}
Branch {
Points [0, 120]
DstBlock "Mux1"
DstPort 2
}
}
Line {
SrcBlock "Inverted Pendulum\nSubsystem"
SrcPort 1
Points [20, 0]
Branch {
DstBlock "Gain"
DstPort 1
}
Branch {
Points [0, 50; -215, 0; 0, -50]
Branch {
Points [0, -40]
DstBlock "To Workspace3"
DstPort 1
}
Branch {
DstBlock "Digital Fuzzy\n Subsystem"
DstPort 1
}
}
}
Line {
SrcBlock "Clock"
SrcPort 1
DstBlock "To Workspace2"
DstPort 1
}
Line {
SrcBlock "Gain"
SrcPort 1
Points [5, 0]
Branch {
DstBlock "To Workspace"
DstPort 1
}
Branch {
Points [0, 45]
DstBlock "Scope"
DstPort 1
}
}
Line {
SrcBlock "Constant"
SrcPort 1
Points [155, 0]
DstBlock "Inverted Pendulum\nSubsystem"
DstPort 2
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "Inverted Pendulum\nSubsystem"
DstPort 1
}
Line {
SrcBlock "Mux1"
SrcPort 1
DstBlock "Scope2"
DstPort 1
}
Line {
SrcBlock "Inverted Pendulum\nSubsystem"
SrcPort 2
Points [10, 0; 0, 30; -30, 0]
DstBlock "Gain1"
DstPort 1
}
Line {
SrcBlock "Gain1"
SrcPort 1
Points [10, 0]
Branch {
DstBlock "To Workspace5"
DstPort 1
}
Branch {
Points [0, 65; -120, 0]
DstBlock "Mux1"
DstPort 3
}
}
Line {
SrcBlock "Random\nNumber"
SrcPort 1
DstBlock "Gain2"
DstPort 1
}
Line {
SrcBlock "Gain2"
SrcPort 1
Points [90, 0]
Branch {
DstBlock "Sum"
DstPort 2
}
Branch {
Points [0, 10]
DstBlock "Mux1"
DstPort 1
}
}
Line {
SrcBlock "Constant1"
SrcPort 1
Points [145, 0; 0, -20]
DstBlock "Inverted Pendulum\nSubsystem"
DstPort 3
}
Annotation {
Position [349, 35]
Text "SIMULINK BLOCK DIAGRAM for FLC design\nChou, Pe"
"nchen, 4/15/2001, FCU_control\nwang_p254.mdl Use with Matlab 6.0\nYinit is l"
"imited in +-20 deg. Ts=0.03 sec."
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -