📄 sldemo_absbrake_digest5.mdl
字号:
ConRadixGroup "Use specified scaling"
OutScaling "2^0"
SampleTime "inf"
FramePeriod "inf"
}
Block {
BlockType DataTypeConversion
Name "Data Type Conversion1"
Position [210, 36, 265, 64]
ShowName off
OutDataTypeMode "double"
}
Block {
BlockType DataTypeConversion
Name "Data Type Conversion2"
Position [210, 96, 265, 124]
ShowName off
OutDataTypeMode "double"
}
Block {
BlockType RelationalOperator
Name "Relational\nOperator"
Position [140, 32, 170, 63]
Operator ">"
}
Block {
BlockType RelationalOperator
Name "Relational\nOperator1"
Position [140, 92, 170, 123]
Operator "<"
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [305, 64, 325, 91]
Inputs "+-"
}
Block {
BlockType Outport
Name "out_1"
Position [360, 70, 380, 90]
IconDisplay "Port number"
BusOutputAsStruct off
InitialOutput "0"
}
Line {
SrcBlock "Data Type Conversion2"
SrcPort 1
Points [20, 0]
DstBlock "Sum"
DstPort 2
}
Line {
SrcBlock "Data Type Conversion1"
SrcPort 1
Points [20, 0]
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "Sum"
SrcPort 1
DstBlock "out_1"
DstPort 1
}
Line {
SrcBlock "Relational\nOperator"
SrcPort 1
DstBlock "Data Type Conversion1"
DstPort 1
}
Line {
SrcBlock "Relational\nOperator1"
SrcPort 1
DstBlock "Data Type Conversion2"
DstPort 1
}
Line {
SrcBlock "Constant"
SrcPort 1
Points [20, 0]
Branch {
Points [0, -60]
DstBlock "Relational\nOperator"
DstPort 2
}
Branch {
DstBlock "Relational\nOperator1"
DstPort 2
}
}
Line {
SrcBlock "in_1"
SrcPort 1
Points [35, 0]
Branch {
Points [0, 60]
DstBlock "Relational\nOperator1"
DstPort 1
}
Branch {
DstBlock "Relational\nOperator"
DstPort 1
}
}
}
}
Block {
BlockType Integrator
Name "Brake\npressure"
Ports [1, 1]
Position [240, 70, 280, 100]
LimitOutput on
UpperSaturationLimit "PBmax"
LowerSaturationLimit "0"
IgnoreLimit off
}
Block {
BlockType Gain
Name "Force &\ntorque"
Position [310, 67, 350, 103]
Gain "Kf"
Port {
PortNumber 1
Name "brake torque"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
DataLoggingName "%<SignalLabel>"
}
}
Block {
BlockType TransferFcn
Name "Hydraulic Lag "
Position [160, 67, 215, 103]
Numerator "[100]"
Denominator "[TB 1]"
}
Block {
BlockType MinMax
Name "MinMax"
Ports [2, 1]
Position [385, 142, 415, 173]
Function "min"
Inputs "2"
InputSameDT off
SaturateOnIntegerOverflow off
}
Block {
BlockType Sum
Name "Sum"
Ports [2, 1]
Position [485, 75, 505, 95]
ShowName off
IconShape "round"
Inputs "|-+"
}
Block {
BlockType Switch
Name "Switch"
Position [440, 70, 470, 100]
Criteria "u2 ~= 0"
InputSameDT off
SaturateOnIntegerOverflow off
}
Block {
BlockType Integrator
Name "Wheel\nSpeed"
Ports [1, 1]
Position [580, 64, 610, 106]
InitialCondition "v0/Rr"
UpperSaturationLimit "1000"
LowerSaturationLimit "0"
IgnoreLimit off
Port {
PortNumber 1
Name "Ww"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
DataLoggingName "%<SignalLabel>"
}
}
Block {
BlockType Outport
Name "WheelSpeed"
Position [690, 78, 720, 92]
IconDisplay "Port number"
BusOutputAsStruct off
}
Line {
SrcBlock "1/I"
SrcPort 1
DstBlock "Wheel\nSpeed"
DstPort 1
}
Line {
Labels [0, 0]
SrcBlock "Sum"
SrcPort 1
DstBlock "1/I"
DstPort 1
}
Line {
Name "brake torque"
SrcBlock "Force &\ntorque"
SrcPort 1
Points [15, 0]
Branch {
Labels [-1, 1]
Points [0, -10]
DstBlock "Switch"
DstPort 1
}
Branch {
DstBlock "MinMax"
DstPort 1
}
}
Line {
SrcBlock "Brake\npressure"
SrcPort 1
Points [0, 0]
DstBlock "Force &\ntorque"
DstPort 1
}
Line {
SrcBlock "Bang-bang\ncontroller"
SrcPort 1
DstBlock "Hydraulic Lag "
DstPort 1
}
Line {
SrcBlock "Hydraulic Lag "
SrcPort 1
DstBlock "Brake\npressure"
DstPort 1
}
Line {
SrcBlock "BrakeSignal"
SrcPort 1
DstBlock "Bang-bang\ncontroller"
DstPort 1
}
Line {
Name "Ww"
Labels [0, 0]
SrcBlock "Wheel\nSpeed"
SrcPort 1
Points [45, 0]
Branch {
DstBlock "WheelSpeed"
DstPort 1
}
Branch {
Points "[5, 0; 0, 165; -350, 0; 0, -115; 80, "
"0; 0, -50]"
DstBlock "Switch"
DstPort 2
}
}
Line {
Labels [0, 0]
SrcBlock "Tire Torque"
SrcPort 1
Points [0, 0]
Branch {
Points [125, 0]
DstBlock "Sum"
DstPort 2
}
Branch {
DstBlock "MinMax"
DstPort 2
}
}
Line {
SrcBlock "Switch"
SrcPort 1
DstBlock "Sum"
DstPort 1
}
Line {
SrcBlock "MinMax"
SrcPort 1
Points [0, -65]
DstBlock "Switch"
DstPort 3
}
Annotation {
Name "If wheel speed is zero, break torque is"
" equal in magnitude but opposite tire torque"
Position [484, 40]
UseDisplayTextAsClickCallback off
}
}
}
Block {
BlockType Constant
Name "Desired\nrelative\nslip"
Position [25, 27, 55, 53]
Value "0.2"
VectorParams1D on
SamplingMode "Sample based"
OutDataTypeMode "Inherit from 'Constant value'"
OutDataType "sfix(16)"
ConRadixGroup "Use specified scaling"
OutScaling "2^0"
SampleTime "inf"
FramePeriod "inf"
}
Block {
BlockType Gain
Name "Gain"
Position [305, 170, 335, 200]
ShowName off
Gain "-1"
ParameterDataTypeMode "Inherit via internal rule"
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
}
Block {
BlockType Mux
Name "Mux"
Ports [3, 1]
Position [635, 30, 640, 260]
BackgroundColor "black"
ShowName off
Inputs "3"
Port {
PortNumber 1
Name "yout"
PropagatedSignals "Ww, Vs, Sd"
TestPoint on
RTWStorageClass "Auto"
DataLogging on
DataLoggingNameMode "SignalName"
DataLoggingName "yout"
}
}
Block {
BlockType Constant
Name "No Brake"
Position [180, 82, 210, 108]
Value "-1"
VectorParams1D on
SamplingMode "Sample based"
OutDataTypeMode "Inherit from 'Constant value'"
OutDataType "sfix(16)"
ConRadixGroup "Use specified scaling"
OutScaling "2^0"
SampleTime "inf"
FramePeriod "inf"
}
Block {
BlockType Product
Name "Product"
Ports [2, 1]
Position [365, 144, 390, 166]
ShowName off
InputSameDT off
OutDataTypeMode "Inherit via internal rule"
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "Fbrake"
TestPoint on
RTWStorageClass "Auto"
DataLogging on
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Fcn
Name "Relative Slip"
Position [270, 272, 435, 298]
Orientation "left"
Expr "1.0 - u(1)/(u(2) + (u(2)==0)*eps)"
Port {
PortNumber 1
Name "slp"
TestPoint on
RTWStorageClass "Auto"
DataLogging on
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Gain
Name "Rr"
Position [325, 67, 365, 103]
ShowName off
Gain "-Rr"
Port {
PortNumber 1
Name "tire torque"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
DataLoggingName "%<SignalLabel>"
}
}
Block {
BlockType Signum
Name "Sign"
Position [255, 170, 285, 200]
}
Block {
BlockType Integrator
Name "Stopping distance"
Ports [1, 1]
Position [560, 201, 590, 239]
UpperSaturationLimit "1000"
LowerSaturationLimit "0"
IgnoreLimit off
Port {
PortNumber 1
Name "Sd"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Sum
Name "Sum1"
Ports [2, 1]
Position [90, 30, 110, 50]
ShowName off
IconShape "round"
Inputs "|+-"
}
Block {
BlockType Switch
Name "Switch"
Position [245, 35, 275, 65]
Threshold ".5"
InputSameDT off
SaturateOnIntegerOverflow off
Port {
PortNumber 1
Name "BrakeSignal"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Gain
Name "Vehicle speed\n(angular)"
Position [555, 127, 595, 163]
Gain "1/Rr"
Port {
PortNumber 1
Name "Vs"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
}
}
Block {
BlockType Gain
Name "Weight"
Position [200, 133, 245, 167]
Gain "m*g/4"
Port {
PortNumber 1
Name "Ff"
RTWStorageClass "Auto"
DataLoggingNameMode "SignalName"
DataLoggingName "%<SignalLabel>"
}
}
Block {
BlockType Lookup
Name "mu-slip\nfriction curve"
Position [140, 135, 175, 165]
InputValues "slip"
OutputValues "mu"
LookUpMeth "Interpolation-Extrapolation"
OutDataTypeMode "Same as input"
OutDataType "sfix(16)"
OutScaling "2^0"
LockScale off
RndMeth "Floor"
SaturateOnIntegerOverflow on
SampleTime "-1"
LUTDesignTableMode "Redesign Table"
LUTDesignDataSource "Block Dialog"
LUTDesignFunctionName "sqrt(x)"
LUTDesignUseExistingBP on
LUTDesignRelError "0.01"
LUTDesignAbsError "1e-6"
}
Block {
BlockType Outport
Name "BrakingForce"
Position [455, 148, 485, 162]
IconDisplay "Port number"
BusOutputAsStruct off
}
Line {
Name "yout"
Labels [1, 0]
SrcBlock "Mux"
SrcPort 1
Points [50, 0; 0, 140]
DstBlock "Relative Slip"
DstPort 1
}
Line {
Name "Vs"
Labels [0, 0]
SrcBlock "Vehicle speed\n(angular)"
SrcPort 1
DstBlock "Mux"
DstPort 2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -