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

📄 smithpidcontrol.mdl

📁 带simth补偿的pid控制器主要用于纯滞后系统的pid温度控制
💻 MDL
📖 第 1 页 / 共 2 页
字号:
    }
    Block {
      BlockType		      Integrator
      ExternalReset	      "none"
      InitialConditionSource  "internal"
      InitialCondition	      "0"
      LimitOutput	      off
      UpperSaturationLimit    "inf"
      LowerSaturationLimit    "-inf"
      ShowSaturationPort      off
      ShowStatePort	      off
      AbsoluteTolerance	      "auto"
      IgnoreLimit	      off
      ZeroCross		      on
    }
    Block {
      BlockType		      Saturate
      UpperLimit	      "0.5"
      LowerLimit	      "-0.5"
      LinearizeAsGain	      on
      ZeroCross		      on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Scope
      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	      "-1"
    }
    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		      TransferFcn
      Numerator		      "[1]"
      Denominator	      "[1 2 1]"
      AbsoluteTolerance	      "auto"
      Realization	      "auto"
    }
    Block {
      BlockType		      TransportDelay
      DelayTime		      "1"
      InitialOutput	      "0"
      BufferSize	      "1024"
      FixedBuffer	      off
      TransDelayFeedthrough   off
      PadeOrder		      "0"
    }
  }
  AnnotationDefaults {
    HorizontalAlignment	    "center"
    VerticalAlignment	    "middle"
    ForegroundColor	    "black"
    BackgroundColor	    "white"
    DropShadow		    off
    FontName		    "arial"
    FontSize		    10
    FontWeight		    "normal"
    FontAngle		    "normal"
  }
  LineDefaults {
    FontName		    "arial"
    FontSize		    9
    FontWeight		    "normal"
    FontAngle		    "normal"
  }
  System {
    Name		    "smithPIDcontrol"
    Location		    [358, 176, 1237, 694]
    Open		    on
    ModelBrowserVisibility  off
    ModelBrowserWidth	    200
    ScreenColor		    "white"
    PaperOrientation	    "landscape"
    PaperPositionMode	    "auto"
    PaperType		    "A4"
    PaperUnits		    "centimeters"
    ZoomFactor		    "100"
    ReportName		    "simulink-default.rpt"
    Block {
      BlockType		      Sum
      Name		      "Add"
      Ports		      [3, 1]
      Position		      [440, 52, 475, 98]
      Inputs		      "+++"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      OutScaling	      "2^-10"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Sum
      Name		      "Add1"
      Ports		      [2, 1]
      Position		      [475, 184, 495, 226]
      Inputs		      "+-"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      OutScaling	      "2^-10"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Sum
      Name		      "Add2"
      Ports		      [2, 1]
      Position		      [245, 57, 275, 88]
      Inputs		      "+-"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      OutScaling	      "2^-10"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Sum
      Name		      "Add3"
      Ports		      [2, 1]
      Position		      [75, 267, 105, 298]
      Inputs		      "+-"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      OutScaling	      "2^-10"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Sum
      Name		      "Add4"
      Ports		      [2, 1]
      Position		      [145, 277, 175, 308]
      Inputs		      "+-"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      OutScaling	      "2^-10"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Sum
      Name		      "Add5"
      Ports		      [2, 1]
      Position		      [750, 287, 780, 318]
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      OutScaling	      "2^-10"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Constant
      Name		      "Constant1"
      Position		      [15, 350, 45, 380]
      Value		      "160"
    }
    Block {
      BlockType		      Derivative
      Name		      "Derivative"
      Position		      [370, 110, 400, 140]
    }
    Block {
      BlockType		      Gain
      Name		      "Gain"
      Position		      [315, 15, 345, 45]
      Gain		      "0.01"
      ParameterDataTypeMode   "Inherit via internal rule"
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Gain
      Name		      "Gain1"
      Position		      [315, 60, 345, 90]
      Gain		      "0.0001"
      ParameterDataTypeMode   "Inherit via internal rule"
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Gain
      Name		      "Gain2"
      Position		      [315, 110, 345, 140]
      Gain		      "0.5"
      ParameterDataTypeMode   "Inherit via internal rule"
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Integrator
      Name		      "Integrator"
      Ports		      [1, 1]
      Position		      [370, 60, 400, 90]
      IgnoreLimit	      off
    }
    Block {
      BlockType		      Saturate
      Name		      "Saturation"
      Position		      [535, 280, 565, 310]
      LowerLimit	      "0"
    }
    Block {
      BlockType		      Scope
      Name		      "Scope"
      Ports		      [1]
      Position		      [810, 224, 840, 256]
      Floating		      off
      Location		      [188, 390, 512, 629]
      Open		      off
      NumInputPorts	      "1"
      ZoomMode		      "yonly"
      List {
	ListType		AxesTitles
	axes1			"%<SignalLabel>"
      }
      DataFormat	      "StructureWithTime"
      SampleTime	      "0"
    }
    Block {
      BlockType		      Scope
      Name		      "Scope1"
      Ports		      [1]
      Position		      [810, 289, 840, 321]
      Floating		      off
      Location		      [379, 412, 703, 651]
      Open		      off
      NumInputPorts	      "1"
      List {
	ListType		AxesTitles
	axes1			"%<SignalLabel>"
      }
      SaveName		      "ScopeData1"
      DataFormat	      "StructureWithTime"
      SampleTime	      "0"
    }
    Block {
      BlockType		      TransferFcn
      Name		      "Transfer Fcn"
      Position		      [330, 180, 380, 210]
      Numerator		      "[170]"
      Denominator	      "[1500 1]"
    }
    Block {
      BlockType		      TransferFcn
      Name		      "Transfer Fcn1"
      Position		      [330, 229, 385, 261]
      Numerator		      "[170]"
      Denominator	      "[1500 1]"
    }
    Block {
      BlockType		      TransportDelay
      Name		      "Transport\nDelay"
      Position		      [415, 230, 445, 260]
    }
    Block {
      BlockType		      TransportDelay
      Name		      "Transport\nDelay1"
      Position		      [680, 280, 710, 310]
    }
    Block {
      BlockType		      TransferFcn
      Name		      "electric furnace"
      Position		      [590, 277, 650, 313]
      Numerator		      "[170]"
      Denominator	      "[1500 1]"
    }
    Block {
      BlockType		      Constant
      Name		      "set point"
      Position		      [15, 260, 45, 290]
      Value		      "200"
    }
    Line {
      SrcBlock		      "Add2"
      SrcPort		      1
      Points		      [0, 0; 10, 0]
      Branch {
	Points			[0, -45]
	DstBlock		"Gain"
	DstPort			1
      }
      Branch {
	DstBlock		"Gain1"
	DstPort			1
      }
      Branch {
	Points			[0, 50]
	DstBlock		"Gain2"
	DstPort			1
      }
    }
    Line {
      SrcBlock		      "Integrator"
      SrcPort		      1
      DstBlock		      "Add"
      DstPort		      2
    }
    Line {
      SrcBlock		      "Derivative"
      SrcPort		      1
      Points		      [15, 0; 0, -35]
      DstBlock		      "Add"
      DstPort		      3
    }
    Line {
      SrcBlock		      "Gain1"
      SrcPort		      1
      Points		      [0, 0]
      DstBlock		      "Integrator"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Gain2"
      SrcPort		      1
      DstBlock		      "Derivative"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Gain"
      SrcPort		      1
      Points		      [70, 0; 0, 30]
      DstBlock		      "Add"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Add"
      SrcPort		      1
      Points		      [0, 0; 10, 0]
      Branch {
	Points			[15, 0]
      }
      Branch {
	Points			[0, 85; -200, 0; 0, 35]
	Branch {
	  Points		  [0, 50]
	  DstBlock		  "Transfer Fcn1"
	  DstPort		  1
	}
	Branch {
	  DstBlock		  "Transfer Fcn"
	  DstPort		  1
	}
      }
      Branch {
	Points			[30, 0]
	DstBlock		"Saturation"
	DstPort			1
      }
    }
    Line {
      SrcBlock		      "Transfer Fcn"
      SrcPort		      1
      DstBlock		      "Add1"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Transfer Fcn1"
      SrcPort		      1
      Points		      [0, 0]
      DstBlock		      "Transport\nDelay"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Transport\nDelay"
      SrcPort		      1
      Points		      [10, 0]
      DstBlock		      "Add1"
      DstPort		      2
    }
    Line {
      SrcBlock		      "Add1"
      SrcPort		      1
      Points		      [5, 0; 0, 90; -295, 0; 0, -215]
      DstBlock		      "Add2"
      DstPort		      2
    }
    Line {
      SrcBlock		      "Add4"
      SrcPort		      1
      Points		      [10, 0; 0, -230]
      DstBlock		      "Add2"
      DstPort		      1
    }
    Line {
      SrcBlock		      "electric furnace"
      SrcPort		      1
      DstBlock		      "Transport\nDelay1"
      DstPort		      1
    }
    Line {
      SrcBlock		      "set point"
      SrcPort		      1
      DstBlock		      "Add3"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Add3"
      SrcPort		      1
      Points		      [0, 0]
      DstBlock		      "Add4"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Transport\nDelay1"
      SrcPort		      1
      Points		      [0, 0; 10, 0]
      Branch {
	DstBlock		"Add5"
	DstPort			1
      }
      Branch {
	Points			[0, 55; -605, 0; 0, -50]
	DstBlock		"Add4"
	DstPort			2
      }
    }
    Line {
      SrcBlock		      "Add5"
      SrcPort		      1
      Points		      [0, 0]
      DstBlock		      "Scope1"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Constant1"
      SrcPort		      1
      Points		      [0, 0; 10, 0]
      Branch {
	Points			[675, 0]
	DstBlock		"Add5"
	DstPort			2
      }
      Branch {
	DstBlock		"Add3"
	DstPort			2
      }
    }
    Line {
      SrcBlock		      "Saturation"
      SrcPort		      1
      Points		      [0, 0]
      Branch {
	DstBlock		"electric furnace"
	DstPort			1
      }
      Branch {
	Points			[5, 0; 0, -55]
	DstBlock		"Scope"
	DstPort			1
      }
    }
  }
}

⌨️ 快捷键说明

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