⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sldemo_absbrake_digest4p1.mdl

📁 如何利用SIMULINK进行精确的建模
💻 MDL
📖 第 1 页 / 共 4 页
字号:
	    Block {
	      BlockType		      Gain
	      Name		      "1/I"
	      Position		      [450, 33, 480, 67]
	      ShowName		      off
	      Gain		      "1/I"
	    }
	    Block {
	      BlockType		      SubSystem
	      Name		      "Bang-bang\ncontroller"
	      Ports		      [1, 1]
	      Position		      [100, 35, 130, 65]
	      ShowPortLabels	      off
	      MinAlgLoopOccurrences   off
	      RTWSystemCode	      "Auto"
	      FunctionWithSeparateData off
	      MaskHideContents	      off
	      MaskType		      "Sign"
	      MaskDescription	      "y = sign(x)"
	      MaskHelp		      "Sign Function:\\n\\t\\t\\ty = 1 if x > "
"0\\n\\t\\t\\ty = 0 if x = 0\\n\\t\\t\\ty = -1 if x < 0"
	      MaskDisplay	      "plot(-50,-50,50,50,[-50,50],[0,0],[0,0]"
",[-50,50],[-40,0],[-30,-30],[0,40],[30,30])"
	      MaskIconFrame	      on
	      MaskIconOpaque	      on
	      MaskIconRotate	      "none"
	      MaskIconUnits	      "autoscale"
	      System {
		Name			"Bang-bang\ncontroller"
		Location		[163, 412, 609, 606]
		Open			off
		ModelBrowserVisibility	off
		ModelBrowserWidth	200
		ScreenColor		"white"
		PaperOrientation	"landscape"
		PaperPositionMode	"auto"
		PaperType		"usletter"
		PaperUnits		"inches"
		TiledPaperMargins	"[0.500000, 0.500000, 0.500000, 0.5000"
"00]"
		TiledPageScale		1
		ShowPageBoundaries	off
		ZoomFactor		"100"
		Block {
		  BlockType		  Inport
		  Name			  "in_1"
		  Position		  [35, 30, 55, 50]
		  IconDisplay		  "Port number"
		}
		Block {
		  BlockType		  Constant
		  Name			  "Constant"
		  Position		  [65, 105, 85, 125]
		  Value			  "0"
		  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		  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, 35, 280, 65]
	      LimitOutput	      on
	      UpperSaturationLimit    "PBmax"
	      LowerSaturationLimit    "0"
	      IgnoreLimit	      off
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Force &\ntorque"
	      Position		      [310, 32, 350, 68]
	      Gain		      "Kf"
	      Port {
		PortNumber		1
		Name			"brake torque"
		RTWStorageClass		"Auto"
		DataLoggingNameMode	"SignalName"
		DataLoggingName		"%<SignalLabel>"
	      }
	    }
	    Block {
	      BlockType		      TransferFcn
	      Name		      "Hydraulic Lag "
	      Position		      [160, 32, 215, 68]
	      Numerator		      "[100]"
	      Denominator	      "[TB 1]"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [410, 40, 430, 60]
	      ShowName		      off
	      IconShape		      "round"
	      Inputs		      "|-+"
	    }
	    Block {
	      BlockType		      Integrator
	      Name		      "Wheel\nSpeed"
	      Ports		      [1, 1]
	      Position		      [505, 29, 535, 71]
	      InitialCondition	      "v0/Rr"
	      LimitOutput	      on
	      UpperSaturationLimit    "1000"
	      LowerSaturationLimit    "0"
	      IgnoreLimit	      off
	      Port {
		PortNumber		1
		Name			"Ww"
		RTWStorageClass		"Auto"
		DataLoggingNameMode	"SignalName"
		DataLoggingName		"%<SignalLabel>"
	      }
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "WheelSpeed"
	      Position		      [585, 43, 615, 57]
	      IconDisplay	      "Port number"
	      BusOutputAsStruct	      off
	    }
	    Line {
	      SrcBlock		      "1/I"
	      SrcPort		      1
	      DstBlock		      "Wheel\nSpeed"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "1/I"
	      DstPort		      1
	    }
	    Line {
	      Name		      "brake torque"
	      Labels		      [0, 0]
	      SrcBlock		      "Force &\ntorque"
	      SrcPort		      1
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Brake\npressure"
	      SrcPort		      1
	      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
	      Points		      [0, 0]
	      DstBlock		      "Bang-bang\ncontroller"
	      DstPort		      1
	    }
	    Line {
	      Name		      "Ww"
	      Labels		      [0, 0]
	      SrcBlock		      "Wheel\nSpeed"
	      SrcPort		      1
	      Points		      [0, 0]
	      DstBlock		      "WheelSpeed"
	      DstPort		      1
	    }
	    Line {
	      Labels		      [0, 0]
	      SrcBlock		      "Tire Torque"
	      SrcPort		      1
	      Points		      [160, 0]
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	  }
	}
	Block {
	  BlockType		  Reference
	  Name			  "Check for positive\nvehicle speed"
	  Description		  "0 < u"
	  Ports			  [1]
	  Position		  [460, 192, 520, 238]
	  SourceBlock		  "simulink/Model\nVerification/Check Static "
"\nLower Bound"
	  SourceType		  "Checks_SMin"
	  ShowPortLabels	  on
	  SystemSampleTime	  "-1"
	  FunctionWithSeparateData off
	  RTWMemSecFuncInitTerm	  "Inherit from model"
	  RTWMemSecFuncExecute	  "Inherit from model"
	  RTWMemSecDataConstants  "Inherit from model"
	  RTWMemSecDataInternal	  "Inherit from model"
	  RTWMemSecDataParameters "Inherit from model"
	  min			  "0"
	  min_included		  off
	  enabled		  on
	  callback		  "warning('Vehicle Speed equals zero. Tire/br"
"ake model is no longer valid.')"
	  stopWhenAssertionFail	  on
	  export		  off
	  icon			  "graphic"
	}
	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		  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		  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		  [305, 67, 345, 103]
	  ShowName		  off
	  Gain			  "Rr"
	  Port {
	    PortNumber		    1
	    Name		    "tire torque"
	    RTWStorageClass	    "Auto"
	    DataLoggingNameMode	    "SignalName"
	    DataLoggingName	    "%<SignalLabel>"
	  }
	}
	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"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -