📄 fuelsys_demo.mdl
字号:
Position [30, 68, 60, 82]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "air flow"
Position [30, 43, 60, 57]
NamePlacement "alternate"
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Constant
Name "Constant4"
Position [72, 120, 98, 140]
Orientation "up"
NamePlacement "alternate"
ShowName off
Value "0.1"
}
Block {
BlockType Fcn
Name "EGO Sensor"
Position [340, 60, 505, 80]
Expr "(1-tanh(4*(u[1]-14.6)))/2"
}
Block {
BlockType MinMax
Name "MinMax"
Ports [2, 1]
Position [100, 67, 130, 98]
ShowName off
Function "max"
Inputs "2"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [160, 33, 195, 102]
ShowName off
Inputs "*/"
}
Block {
BlockType Reference
Name "system lag"
Ports [1, 1]
Position [225, 52, 285, 88]
SourceBlock "simulink_extras/Additional\nLinear/Tran"
"sfer Fcn\n(with initial outputs)"
SourceType "Transfer Function with Initial Outputs"
N "3"
D "[1 3]"
Y0 "1/14.6"
U0 "1/14.6"
}
Block {
BlockType Outport
Name "o2_out"
Position [540, 63, 570, 77]
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Block {
BlockType Outport
Name "air/fuel\nratio"
Position [540, 103, 570, 117]
Port "2"
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Line {
SrcBlock "Constant4"
SrcPort 1
DstBlock "MinMax"
DstPort 2
}
Line {
SrcBlock "fuel\nrate"
SrcPort 1
DstBlock "MinMax"
DstPort 1
}
Line {
SrcBlock "MinMax"
SrcPort 1
DstBlock "Product"
DstPort 2
}
Line {
SrcBlock "Product"
SrcPort 1
DstBlock "system lag"
DstPort 1
}
Line {
SrcBlock "system lag"
SrcPort 1
Points [20, 0]
Branch {
Points [0, 40]
DstBlock "air/fuel\nratio"
DstPort 1
}
Branch {
DstBlock "EGO Sensor"
DstPort 1
}
}
Line {
SrcBlock "EGO Sensor"
SrcPort 1
DstBlock "o2_out"
DstPort 1
}
Line {
SrcBlock "air flow"
SrcPort 1
DstBlock "Product"
DstPort 1
}
}
}
Block {
BlockType SubSystem
Name "Throttle & Manifold"
Ports [2, 2]
Position [100, 51, 280, 124]
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskHideContents off
System {
Name "Throttle & Manifold"
Location [274, 543, 854, 896]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "Engine Speed, N"
Position [130, 220, 150, 240]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "Throttle Ang."
Position [30, 50, 50, 70]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Constant
Name "Atmospheric\nPressure, Pa\n(bar)"
Position [100, 110, 120, 130]
Value "1.0"
}
Block {
BlockType SubSystem
Name "Intake Manifold"
Ports [2, 2]
Position [215, 178, 450, 247]
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskHideContents off
System {
Name "Intake Manifold"
Location [52, 472, 898, 741]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "mdot Input \n(g/s)"
Position [40, 60, 60, 80]
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "N (rad/sec)"
Position [250, 140, 270, 160]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Mux
Name "Mux"
Ports [2, 1]
Position [350, 61, 355, 179]
BackgroundColor "black"
ShowName off
Inputs "2"
}
Block {
BlockType Fcn
Name "Pumping"
Position [400, 106, 755, 134]
Expr "-0.366 + 0.08979*u[1]*u[2] - 0.0337"
"*u[2]*u[1]*u[1] + 0.0001*u[1]*u[2]*u[2]"
}
Block {
BlockType Gain
Name "RT/Vm"
Position [170, 70, 265, 110]
Gain "0.41328"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [125, 49, 140, 131]
ShowName off
Inputs "+-"
}
Block {
BlockType Integrator
Name "p0 = 0.589 bar"
Ports [1, 1]
Position [285, 61, 315, 119]
InitialCondition ".589"
IgnoreLimit off
}
Block {
BlockType Outport
Name "mdot to\nCylinder\n (g/s)"
Position [795, 110, 815, 130]
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Block {
BlockType Outport
Name "Manifold Pressure,\nPm (bar)"
Position [430, 15, 450, 35]
Port "2"
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Line {
SrcBlock "mdot Input \n(g/s)"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "RT/Vm"
SrcPort 1
DstBlock "p0 = 0.589 bar"
DstPort 1
}
Line {
SrcBlock "N (rad/sec)"
SrcPort 1
DstBlock "Mux"
DstPort 2
}
Line {
SrcBlock "Mux"
SrcPort 1
DstBlock "Pumping"
DstPort 1
}
Line {
SrcBlock "p0 = 0.589 bar"
SrcPort 1
Points [5, 0]
Branch {
DstBlock "Mux"
DstPort 1
}
Branch {
Points [0, -65]
DstBlock "Manifold Pressure,\nPm (bar)"
DstPort 1
}
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "RT/Vm"
DstPort 1
}
Line {
SrcBlock "Pumping"
SrcPort 1
Points [10, 0]
Branch {
Points [0, 90; -680, 0; 0, -100]
DstBlock "Sum"
DstPort 2
}
Branch {
DstBlock "mdot to\nCylinder\n (g/s)"
DstPort 1
}
}
Annotation {
Name "Intake Manifold Vacuum"
Position [427, 243]
UseDisplayTextAsClickCallback off
FontName "Arial"
FontSize 16
FontWeight "bold"
}
}
}
Block {
BlockType Saturate
Name "Limit to Positive"
Position [115, 48, 135, 72]
UpperLimit "inf"
LowerLimit "0"
}
Block {
BlockType SubSystem
Name "Throttle"
Ports [3, 1]
Position [180, 48, 485, 132]
TreatAsAtomicUnit off
MinAlgLoopOccurrences off
RTWSystemCode "Auto"
MaskHideContents off
System {
Name "Throttle"
Location [32, 254, 616, 683]
Open off
ModelBrowserVisibility off
ModelBrowserWidth 200
ScreenColor "white"
PaperOrientation "landscape"
PaperPositionMode "auto"
PaperType "usletter"
PaperUnits "inches"
ZoomFactor "100"
Block {
BlockType Inport
Name "Throttle Angle,\ntheta (deg)"
Position [65, 65, 85, 85]
NamePlacement "alternate"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "Manifold Pressure,\nPm (bar)"
Position [65, 110, 85, 130]
Port "2"
IconDisplay "Port number"
}
Block {
BlockType Inport
Name "Atmospheric Pressure,\nPa (bar) "
Position [65, 180, 85, 200]
Port "3"
IconDisplay "Port number"
}
Block {
BlockType MinMax
Name "MinMax"
Ports [2, 1]
Position [240, 100, 265, 215]
ShowName off
Function "min"
Inputs "2"
Port {
PortNumber 1
Name "pratio"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Product
Name "Product"
Ports [3, 1]
Position [470, 22, 490, 338]
ShowName off
Inputs "3"
}
Block {
BlockType Product
Name "Product1"
Ports [2, 1]
Position [180, 112, 210, 143]
ShowName off
Inputs "*/"
}
Block {
BlockType Product
Name "Product2"
Ports [2, 1]
Position [180, 167, 210, 198]
ShowName off
Inputs "/*"
}
Block {
BlockType Constant
Name "Sonic Flow "
Position [345, 190, 365, 210]
Value "1.0"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [180, 267, 210, 298]
ShowName off
Inputs "+-"
}
Block {
BlockType Signum
Name "direction"
Position [300, 269, 335, 301]
}
Block {
BlockType Fcn
Name "f(theta)"
Position [110, 64, 440, 86]
NamePlacement "alternate"
Expr "2.821 - 0.05231*u[1] + 0.10299*u[1]"
"*u[1] - 0.00063*u[1]*u[1]*u[1]"
}
Block {
BlockType Fcn
Name "g(pratio)"
Position [315, 148, 390, 172]
NamePlacement "alternate"
Expr "2*sqrt(u - u*u)"
}
Block {
BlockType Switch
Name "threshold\n= 0.5"
Position [420, 148, 445, 212]
Threshold "0.5"
}
Block {
BlockType Outport
Name "Throttle \nFlow, mdot\n (g/s)"
Position [535, 170, 555, 190]
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Line {
SrcBlock "Manifold Pressure,\nPm (bar)"
SrcPort 1
Points [40, 0]
Branch {
Points [0, 55]
Branch {
Points [0, 115]
DstBlock "Sum"
DstPort 2
}
Branch {
DstBlock "Product2"
DstPort 1
}
}
Branch {
DstBlock "Product1"
DstPort 1
}
}
Line {
SrcBlock "Product2"
SrcPort 1
DstBlock "MinMax"
DstPort 2
}
Line {
SrcBlock "Product1"
SrcPort 1
DstBlock "MinMax"
DstPort 1
}
Line {
SrcBlock "Atmospheric Pressure,\nPa (bar) "
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -