📄 flc3_control.mdl
字号:
BusObject "BusObject"
BusOutputAsStruct off
PortDimensions "-1"
SampleTime "-1"
DataType "auto"
OutDataType "sfix(16)"
OutScaling "2^0"
SignalType "auto"
SamplingMode "auto"
OutputWhenDisabled "held"
InitialOutput "[]"
}
Block {
BlockType Product
Inputs "2"
Multiplication "Element-wise(.*)"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Zero"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType RelationalOperator
Operator ">="
InputSameDT on
LogicOutDataTypeMode "Logical (see Configuration Parameters: Optimiza"
"tion)"
LogicDataType "uint(8)"
ZeroCross on
SampleTime "-1"
}
Block {
BlockType Scope
Floating off
ModelBased off
TickLabels "OneTimeTick"
ZoomMode "on"
Grid "on"
TimeRange "auto"
YMin "-5"
YMax "5"
SaveToWorkspace off
SaveName "ScopeData"
LimitDataPoints on
MaxDataPoints "5000"
Decimation "1"
SampleInput off
SampleTime "0"
}
Block {
BlockType SubSystem
ShowPortLabels on
Permissions "ReadWrite"
PermitHierarchicalResolution "All"
SystemSampleTime "-1"
RTWFcnNameOpts "Auto"
RTWFileNameOpts "Auto"
SimViewingDevice off
DataTypeOverride "UseLocalSettings"
MinMaxOverflowLogging "UseLocalSettings"
}
Block {
BlockType Sum
IconShape "rectangular"
Inputs "++"
InputSameDT on
OutDataTypeMode "Same as first input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
}
Block {
BlockType Switch
Criteria "u2 >= Threshold"
Threshold "0"
InputSameDT on
OutDataTypeMode "Inherit via internal rule"
RndMeth "Floor"
SaturateOnIntegerOverflow on
ZeroCross on
SampleTime "-1"
}
Block {
BlockType ToWorkspace
VariableName "simulink_output"
MaxDataPoints "1000"
Decimation "1"
SampleTime "0"
FixptAsFi off
}
Block {
BlockType TransferFcn
Numerator "[1]"
Denominator "[1 2 1]"
AbsoluteTolerance "auto"
Realization "auto"
}
}
AnnotationDefaults {
HorizontalAlignment "center"
VerticalAlignment "middle"
ForegroundColor "black"
BackgroundColor "white"
DropShadow off
FontName "Helvetica"
FontSize 10
FontWeight "normal"
FontAngle "normal"
}
LineDefaults {
FontName "Helvetica"
FontSize 9
FontWeight "normal"
FontAngle "normal"
}
System {
Name "flc3_control"
Location [421, 73, 921, 301]
Open on
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
ReportName "simulink-default.rpt"
Block {
BlockType Clock
Name "Clock"
Position [20, 25, 40, 45]
Decimation "10"
}
Block {
BlockType SubSystem
Name "Fuzzy Subsystem"
Ports [1, 1]
Position [185, 65, 225, 105]
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
System {
Name "Fuzzy Subsystem"
Location [374, 248, 733, 454]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "ek"
Position [20, 58, 50, 72]
Port "1"
IconDisplay "Port number"
LatchInput off
}
Block {
BlockType Abs
Name "Abs"
Position [60, 15, 90, 45]
}
Block {
BlockType Abs
Name "Abs1"
Position [70, 160, 100, 190]
}
Block {
BlockType Abs
Name "Abs2"
Position [200, 160, 230, 190]
}
Block {
BlockType Derivative
Name "Derivative"
Position [55, 105, 85, 135]
}
Block {
BlockType Reference
Name "Fuzzy Logic \nController"
Ports [1, 1]
Position [270, 19, 320, 61]
FontName "Arial"
SourceBlock "fuzblock/Fuzzy Logic \nController"
SourceType "FIS"
ShowPortLabels on
fis "flc2_sugeno"
}
Block {
BlockType Integrator
Name "Integrator"
Ports [1, 1]
Position [255, 110, 285, 140]
}
Block {
BlockType Mux
Name "Mux"
Ports [2, 1]
Position [245, 21, 250, 59]
ShowName off
Inputs "2"
DisplayOption "bar"
}
Block {
BlockType Constant
Name "Nce"
Position [15, 163, 50, 187]
Value "200"
}
Block {
BlockType Constant
Name "Ncu"
Position [140, 162, 180, 188]
Value "0.005"
}
Block {
BlockType Constant
Name "Ne"
Position [20, 17, 45, 43]
Value "100"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [115, 18, 140, 42]
RndMeth "Floor"
}
Block {
BlockType Product
Name "Product1"
Ports [2, 1]
Position [145, 63, 170, 87]
RndMeth "Floor"
}
Block {
BlockType Product
Name "Product2"
Ports [2, 1]
Position [205, 113, 230, 137]
RndMeth "Floor"
}
Block {
BlockType Outport
Name "uk"
Position [315, 118, 345, 132]
IconDisplay "Port number"
}
Line {
SrcBlock "ek"
SrcPort 1
Points [0, 0; 5, 0]
Branch {
Points [0, -15; 40, 0]
DstBlock "Product"
DstPort 2
}
Branch {
Points [0, 25; -25, 0; 0, 30]
DstBlock "Derivative"
DstPort 1
}
}
Line {
SrcBlock "Derivative"
SrcPort 1
Points [0, -55; 40, 0]
DstBlock "Product1"
DstPort 1
}
Line {
SrcBlock "Product1"
SrcPort 1
Points [55, 0]
DstBlock "Mux"
DstPort 2
}
Line {
SrcBlock "Product"
SrcPort 1
DstBlock "Mux"
DstPort 1
}
Line {
SrcBlock "Mux"
SrcPort 1
DstBlock "Fuzzy Logic \nController"
DstPort 1
}
Line {
SrcBlock "Fuzzy Logic \nController"
SrcPort 1
Points [5, 0; 0, 65; -140, 0]
DstBlock "Product2"
DstPort 1
}
Line {
SrcBlock "Abs"
SrcPort 1
Points [5, 0]
DstBlock "Product"
DstPort 1
}
Line {
SrcBlock "Ne"
SrcPort 1
DstBlock "Abs"
DstPort 1
}
Line {
SrcBlock "Nce"
SrcPort 1
DstBlock "Abs1"
DstPort 1
}
Line {
SrcBlock "Abs1"
SrcPort 1
Points [25, 0]
DstBlock "Product1"
DstPort 2
}
Line {
SrcBlock "Ncu"
SrcPort 1
DstBlock "Abs2"
DstPort 1
}
Line {
SrcBlock "Abs2"
SrcPort 1
Points [0, -25; -45, 0]
DstBlock "Product2"
DstPort 2
}
Line {
SrcBlock "Product2"
SrcPort 1
DstBlock "Integrator"
DstPort 1
}
Line {
SrcBlock "Integrator"
SrcPort 1
DstBlock "uk"
DstPort 1
}
}
}
Block {
BlockType Mux
Name "Mux"
Ports [2, 1]
Position [110, 141, 115, 179]
ShowName off
Inputs "2"
DisplayOption "bar"
}
Block {
BlockType DiscretePulseGenerator
Name "Pulse\nGenerator"
Ports [0, 1]
Position [20, 70, 50, 100]
PulseType "Time based"
Period "40"
PulseWidth "50"
}
Block {
BlockType Scope
Name "Scope"
Ports [1]
Position [135, 144, 165, 176]
Location [6, 66, 368, 271]
Open on
NumInputPorts "1"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
}
TimeRange "100"
YMin "-0.5"
YMax "1.5"
DataFormat "StructureWithTime"
MaxDataPoints "50000"
}
Block {
BlockType Scope
Name "Scope1"
Ports [1]
Position [290, 159, 320, 191]
Location [8, 332, 371, 542]
Open on
NumInputPorts "1"
List {
ListType AxesTitles
axes1 "%<SignalLabel>"
}
TimeRange "100"
YMin "-0.5"
YMax "1.5"
SaveName "ScopeData1"
DataFormat "StructureWithTime"
MaxDataPoints "50000"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [75, 75, 95, 95]
ShowName off
IconShape "round"
Inputs "|+-"
}
Block {
BlockType ToWorkspace
Name "To Workspace"
Position [380, 75, 400, 95]
VariableName "y"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace1"
Position [120, 100, 140, 120]
VariableName "in"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType ToWorkspace
Name "To Workspace4"
Position [90, 22, 110, 48]
VariableName "t"
MaxDataPoints "inf"
SampleTime "-1"
SaveFormat "Array"
}
Block {
BlockType TransferFcn
Name "Transfer Fcn2"
Position [265, 66, 345, 104]
Denominator "[1 3 3 1]"
}
Block {
BlockType Outport
Name "NCD Outport"
Position [385, 117, 440, 173]
DropShadow on
OpenFcn "optblock"
IconDisplay "Port number"
InitialOutput "0"
MaskType "NCD Outport"
MaskDisplay "plot([0:10],[-.5 1.5 .6 1.3 .8 1.1 .95 1.02 .99"
" 1 1]);\ndisp('\\n\\n NCD\\n OutPort 1'); "
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
}
Line {
SrcBlock "Fuzzy Subsystem"
SrcPort 1
Points [10, 0]
Branch {
DstBlock "Transfer Fcn2"
DstPort 1
}
Branch {
Points [0, 90]
DstBlock "Scope1"
DstPort 1
}
}
Line {
SrcBlock "Transfer Fcn2"
SrcPort 1
Points [-20, 0; 25, 0]
Branch {
DstBlock "To Workspace"
DstPort 1
}
Branch {
Points [0, 50; -270, 0]
Branch {
DstBlock "Sum"
DstPort 2
}
Branch {
Points [0, 35]
DstBlock "Mux"
DstPort 2
}
}
}
Line {
SrcBlock "Pulse\nGenerator"
SrcPort 1
Points [-5, 0; 10, 0]
Branch {
DstBlock "Sum"
DstPort 1
}
Branch {
Points [0, 25]
Branch {
DstBlock "To Workspace1"
DstPort 1
}
Branch {
Points [0, 40]
DstBlock "Mux"
DstPort 1
}
}
}
Line {
SrcBlock "Clock"
SrcPort 1
DstBlock "To Workspace4"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
Points [70, 0]
Branch {
DstBlock "Fuzzy Subsystem"
DstPort 1
}
Branch {
Points [0, 60]
DstBlock "NCD Outport"
DstPort 1
}
}
Line {
SrcBlock "Mux"
SrcPort 1
DstBlock "Scope"
DstPort 1
}
Annotation {
Name "SIMULINK BLOCK DIAGRAM for FLC design\nChou, Pe"
"nchen, 8/9/2001, 2004/1/6\nflc3_control.mdl Use with Matlab 6.x only."
Position [369, 35]
}
Annotation {
Name "===>Execute flc2_sugeno=readfis('flc2_sugeno')"
"; before simulation."
Position [206, 216]
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -