📄 fuelsys_demo.mdl
字号:
ShowName off
Operator "<="
}
Block {
BlockType Selector
Name "Selector"
Ports [1, 1]
Position [220, 414, 235, 446]
ShowName off
Elements "3"
InputPortWidth "4"
Port {
PortNumber 1
Name "O2 fail\n(warmup)"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Selector
Name "Selector1"
Ports [1, 1]
Position [65, 210, 95, 240]
ShowName off
Elements "[1 2 4 3]"
InputPortWidth "4"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [485, 64, 505, 251]
ShowName off
Inputs "2"
}
Block {
BlockType Sum
Name "Sum1"
Ports [2, 1]
Position [300, 326, 315, 364]
ShowName off
Inputs "-+"
Port {
PortNumber 1
Name "e0"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType DiscreteTransferFcn
Name "Throttle transient\ncorrection"
Position [245, 91, 310, 129]
NamePlacement "alternate"
Numerator "[0.01 -0.01]"
Denominator "[1 -0.8]"
SampleTime ".01"
}
Block {
BlockType Constant
Name "disablemode"
Position [100, 471, 150, 489]
NamePlacement "alternate"
ShowName off
Value "LOW"
}
Block {
BlockType Switch
Name "hold\nintegrator"
Position [445, 329, 470, 391]
Threshold "1"
}
Block {
BlockType Outport
Name "est.\nair\nflow"
Position [565, 153, 595, 167]
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Block {
BlockType Outport
Name "feedback\ncorrection"
Position [565, 353, 595, 367]
Port "2"
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Line {
Name "e2"
Labels [0, 1]
SrcBlock "Integrator"
SrcPort 1
DstBlock "feedback\ncorrection"
DstPort 1
}
Line {
SrcBlock "mode"
SrcPort 1
DstBlock "Relational\nOperator1"
DstPort 1
}
Line {
SrcBlock "sens_in"
SrcPort 1
DstBlock "Selector1"
DstPort 1
}
Line {
SrcBlock "Pumping Constant"
SrcPort 1
DstBlock "Product"
DstPort 2
}
Line {
SrcBlock "Product"
SrcPort 1
DstBlock "Sum"
DstPort 2
}
Line {
Name "manifold pressure, Pm"
Labels [0, 0]
SrcBlock "Demux"
SrcPort 3
Points [40, 0]
Branch {
Points [180, 0]
Branch {
DstBlock "Ramp\nRate (Ki)"
DstPort 2
}
Branch {
DstBlock "Product"
DstPort 3
}
}
Branch {
Points [0, -40]
DstBlock "Pumping Constant"
DstPort 2
}
}
Line {
Name "engine speed, N"
SrcBlock "Demux"
SrcPort 2
Points [40, 0]
Branch {
Labels [-1, 0]
DstBlock "Pumping Constant"
DstPort 1
}
Branch {
Points [0, -35; 165, 0]
Branch {
DstBlock "Product"
DstPort 1
}
Branch {
DstBlock "Ramp\nRate (Ki)"
DstPort 1
}
}
}
Line {
SrcBlock "Selector1"
SrcPort 1
DstBlock "Demux"
DstPort 1
}
Line {
SrcBlock "Throttle transient\ncorrection"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "est.\nair\nflow"
DstPort 1
}
Line {
Name "throttle angle"
Labels [0, 0]
SrcBlock "Demux"
SrcPort 1
DstBlock "Throttle transient\ncorrection"
DstPort 1
}
Line {
Name "O2 fail\n(warmup)"
FontName "Arial"
Labels [0, 0]
SrcBlock "Selector"
SrcPort 1
DstBlock "Logic1"
DstPort 1
}
Line {
SrcBlock "Failures"
SrcPort 1
DstBlock "Selector"
DstPort 1
}
Line {
SrcBlock "disablemode"
SrcPort 1
DstBlock "Relational\nOperator1"
DstPort 2
}
Line {
Name "not normal operation"
Labels [0, 0]
SrcBlock "Relational\nOperator1"
SrcPort 1
DstBlock "Logic1"
DstPort 2
}
Line {
Name "EGO, residual \nexhaust oxygen"
Labels [0, 1]
SrcBlock "Demux"
SrcPort 4
DstBlock "Relational\nOperator3"
DstPort 1
}
Line {
SrcBlock "Oxygen Sensor\nSwitching Threshold"
SrcPort 1
DstBlock "Relational\nOperator3"
DstPort 2
}
Line {
SrcBlock "Constant"
SrcPort 1
Points [0, 30]
DstBlock "Sum1"
DstPort 1
}
Line {
SrcBlock "Ramp\nRate (Ki)"
SrcPort 1
Points [0, 5]
DstBlock "Product1"
DstPort 1
}
Line {
SrcBlock "Constant2"
SrcPort 1
Points [0, -10]
DstBlock "hold\nintegrator"
DstPort 3
}
Line {
Name "e1"
Labels [0, 1]
SrcBlock "Product1"
SrcPort 1
DstBlock "hold\nintegrator"
DstPort 1
}
Line {
SrcBlock "hold\nintegrator"
SrcPort 1
DstBlock "Integrator"
DstPort 1
}
Line {
Name "enable integration"
Labels [0, 0]
SrcBlock "Logic1"
SrcPort 1
Points [35, 0; 0, -95]
DstBlock "hold\nintegrator"
DstPort 2
}
Line {
Name "e0"
Labels [0, 0]
SrcBlock "Sum1"
SrcPort 1
DstBlock "Product1"
DstPort 2
}
Line {
SrcBlock "Relational\nOperator3"
SrcPort 1
DstBlock "Data Type \nConversion"
DstPort 1
}
Line {
SrcBlock "Data Type \nConversion"
SrcPort 1
DstBlock "Sum1"
DstPort 2
}
Annotation {
Name "Intake Airflow Estimation and Closed-Lo"
"op Correction"
Position [338, 33]
UseDisplayTextAsClickCallback off
FontName "Arial"
FontSize 18
FontWeight "bold"
}
Annotation {
Name "Feedback Control"
Position [519, 441]
UseDisplayTextAsClickCallback off
FontName "Arial"
FontSize 14
FontWeight "bold"
}
Annotation {
Name "Feedforward Control"
Position [522, 276]
UseDisplayTextAsClickCallback off
FontName "Arial"
FontSize 14
FontWeight "bold"
}
}
}
Block {
BlockType SubSystem
Name "Fuel Calculation"
Ports [4, 1]
Position [485, 80, 575, 330]
NamePlacement "alternate"
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskHideContents off
System {
Name "Fuel Calculation"
Location [437, 325, 1068, 766]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "est.\nair\nflow"
Position [15, 93, 45, 107]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "feedback\ncorrection"
Position [15, 343, 45, 357]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "Failures"
Position [15, 273, 45, 287]
Port "3"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "mode"
Position [15, 248, 45, 262]
NamePlacement "alternate"
Port "4"
IconDisplay "Port number"
}
Block {
BlockType Constant
Name "F/A Norm"
Position [115, 144, 190, 166]
Value "1/14.6"
}
Block {
BlockType Constant
Name "F/A Rich"
Position [115, 180, 190, 200]
Value "1/(14.6*0.8)"
}
Block {
BlockType MultiPortSwitch
Name "Multiport\nSwitch"
Ports [4, 1]
Position [250, 105, 280, 240]
ShowName off
Inputs "3"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [345, 60, 370, 215]
ShowName off
}
Block {
BlockType Constant
Name "Shutdown"
Position [115, 215, 190, 235]
Value "0"
}
Block {
BlockType SubSystem
Name "Switchable\nCompensation"
Ports [4, 1]
Position [405, 105, 505, 385]
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskHideContents off
MaskIconFrame on
MaskIconOpaque on
MaskIconRotate "none"
MaskIconUnits "autoscale"
System {
Name "Switchable\nCompensation"
Location [469, 415, 1192, 914]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "feedforward\nfuel rate"
Position [35, 210, 55, 230]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "mode"
Position [30, 25, 50, 45]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "Failures"
Position [35, 115, 55, 135]
Port "3"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "feedback\ncorrection"
Position [40, 280, 60, 300]
Port "4"
IconDisplay "Port number"
}
Block {
BlockType Constant
Name "F/A Norm"
Position [278, 105, 312, 125]
Orientation "up"
ShowName off
Value "LOW"
}
Block {
BlockType Constant
Name "F/A Norm1"
Position [400, 270, 440, 290]
ShowName off
Value "RICH"
}
Block {
BlockType Constant
Name "F/A Norm2"
Position [160, 125, 200, 145]
ShowName off
Value "RICH"
}
Block {
BlockType Constant
Name "F/A Norm3"
Position [30, 70, 60, 90]
ShowName off
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -