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

📄 simlqgyj.mdl

📁 本例采用最优控制的方法,利用二次型性能指标,保证小车所滑过的距离和整个过程所花费的能量达到最优值.程序包括initial.m,yjlqgctr.m,cartoon.m,simlqgyj.slk等文件
💻 MDL
📖 第 1 页 / 共 2 页
字号:
    Block {
      BlockType		      Outport
      Port		      "1"
      BusObject		      "BusObject"
      BusOutputAsStruct	      off
      PortDimensions	      "-1"
      SampleTime	      "-1"
      DataType		      "auto"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      SignalType	      "auto"
      SamplingMode	      "auto"
      OutputWhenDisabled      "held"
      InitialOutput	      "[]"
    }
    Block {
      BlockType		      RandomNumber
      Mean		      "0"
      Variance		      "1"
      Seed		      "0"
      SampleTime	      "-1"
      VectorParams1D	      on
    }
    Block {
      BlockType		      Scope
      Floating		      off
      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	      "0"
    }
    Block {
      BlockType		      StateSpace
      A			      "1"
      B			      "1"
      C			      "1"
      D			      "1"
      X0		      "0"
      AbsoluteTolerance	      "auto"
      Realization	      "auto"
    }
    Block {
      BlockType		      SubSystem
      ShowPortLabels	      on
      Permissions	      "ReadWrite"
      PermitHierarchicalResolution "All"
      SystemSampleTime	      "-1"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      SimViewingDevice	      off
      DataTypeOverride	      "UseLocalSettings"
      MinMaxOverflowLogging   "UseLocalSettings"
    }
    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"
    }
  }
  AnnotationDefaults {
    HorizontalAlignment	    "center"
    VerticalAlignment	    "middle"
    ForegroundColor	    "black"
    BackgroundColor	    "white"
    DropShadow		    off
    FontName		    "Helvetica"
    FontSize		    10
    FontWeight		    "normal"
    FontAngle		    "normal"
  }
  LineDefaults {
    FontName		    "Helvetica"
    FontSize		    9
    FontWeight		    "normal"
    FontAngle		    "normal"
  }
  System {
    Name		    "simlqgyj"
    Location		    [2, 82, 1014, 721]
    Open		    on
    ModelBrowserVisibility  off
    ModelBrowserWidth	    200
    ScreenColor		    "white"
    PaperOrientation	    "landscape"
    PaperPositionMode	    "auto"
    PaperType		    "A4"
    PaperUnits		    "centimeters"
    ZoomFactor		    "100"
    ReportName		    "simulink-default.rpt"
    Block {
      BlockType		      SubSystem
      Name		      "Atomic Subsystem"
      Ports		      []
      Position		      [170, 44, 270, 86]
      OpenFcn		      "yjlqgctr"
      TreatAsAtomicUnit	      on
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      MaskDisplay	      "disp('aa')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"Atomic Subsystem"
	Location		[106, 380, 608, 695]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"A4"
	PaperUnits		"centimeters"
	ZoomFactor		"100"
      }
    }
    Block {
      BlockType		      Constant
      Name		      "Constant"
      Position		      [70, 130, 100, 160]
      Value		      "zf"
      VectorParams1D	      off
    }
    Block {
      BlockType		      Gain
      Name		      "Gain"
      Position		      [490, 130, 520, 160]
      Gain		      "B"
      Multiplication	      "Matrix(K*u)"
      ParameterDataTypeMode   "Inherit via internal rule"
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Gain
      Name		      "Gain1"
      Position		      [760, 130, 790, 160]
      Gain		      "C"
      Multiplication	      "Matrix(K*u)"
      ParameterDataTypeMode   "Inherit via internal rule"
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Gain
      Name		      "Gain2"
      Position		      [625, 215, 655, 245]
      Orientation	      "left"
      NamePlacement	      "alternate"
      Gain		      "A"
      Multiplication	      "Matrix(K*u)"
      ParameterDataTypeMode   "Inherit via internal rule"
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Gain
      Name		      "Gain4"
      Position		      [255, 130, 285, 160]
      Gain		      "kx"
      Multiplication	      "Matrix(K*u)"
      ParameterDataTypeMode   "Inherit via internal rule"
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Integrator
      Name		      "Integrator"
      Ports		      [1, 1]
      Position		      [635, 130, 665, 160]
      InitialCondition	      "z0"
    }
    Block {
      BlockType		      Mux
      Name		      "Mux2"
      Ports		      [2, 1]
      Position		      [360, 243, 365, 292]
      Orientation	      "left"
      NamePlacement	      "alternate"
      ShowName		      off
      Inputs		      "2"
      DisplayOption	      "bar"
    }
    Block {
      BlockType		      RandomNumber
      Name		      "Random\nNumber"
      Position		      [830, 35, 860, 65]
      Orientation	      "down"
      NamePlacement	      "alternate"
      Variance		      "0.00001"
      SampleTime	      "0"
    }
    Block {
      BlockType		      RandomNumber
      Name		      "Random\nNumber1"
      Position		      [555, 40, 585, 70]
      Orientation	      "down"
      NamePlacement	      "alternate"
      Variance		      "0.0001"
      SampleTime	      "0"
    }
    Block {
      BlockType		      Scope
      Name		      "Scope"
      Ports		      [1]
      Position		      [915, 129, 945, 161]
      Location		      [5, 54, 1029, 741]
      Open		      off
      NumInputPorts	      "1"
      List {
	ListType		AxesTitles
	axes1			"%<SignalLabel>"
      }
      YMin		      "-0.25"
      YMax		      "4.5"
      DataFormat	      "StructureWithTime"
      LimitDataPoints	      off
    }
    Block {
      BlockType		      Scope
      Name		      "Scope1"
      Ports		      [1]
      Position		      [45, 254, 75, 286]
      Orientation	      "left"
      NamePlacement	      "alternate"
      Location		      [5, 54, 1029, 741]
      Open		      on
      NumInputPorts	      "1"
      List {
	ListType		AxesTitles
	axes1			"%<SignalLabel>"
      }
      YMin		      "-0.05"
      YMax		      "1.05"
      SaveName		      "ScopeData1"
      DataFormat	      "StructureWithTime"
      LimitDataPoints	      off
    }
    Block {
      BlockType		      StateSpace
      Name		      "State-Space1"
      Position		      [215, 253, 275, 287]
      Orientation	      "left"
      NamePlacement	      "alternate"
      A			      "Ae"
      B			      "Be"
      C			      "Ce"
      D			      "De"
      X0		      "z0"
    }
    Block {
      BlockType		      SubSystem
      Name		      "Subsystem"
      Ports		      [1, 1]
      Position		      [280, 169, 380, 211]
      FontSize		      10
      TreatAsAtomicUnit	      off
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      System {
	Name			"Subsystem"
	Location		[433, 403, 931, 703]
	Open			on
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"A4"
	PaperUnits		"centimeters"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "In1"
	  Position		  [110, 103, 140, 117]
	  Port			  "1"
	  IconDisplay		  "Port number"
	  LatchInput		  off
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain4"
	  Position		  [245, 95, 275, 125]
	  Gain			  "kx"
	  Multiplication	  "Matrix(K*u)"
	  ParameterDataTypeMode	  "Inherit via internal rule"
	  OutDataTypeMode	  "Inherit via internal rule"
	  SaturateOnIntegerOverflow off
	}
	Block {
	  BlockType		  Outport
	  Name			  "Out1"
	  Position		  [360, 103, 390, 117]
	  IconDisplay		  "Port number"
	  BusOutputAsStruct	  off
	}
	Line {
	  SrcBlock		  "Gain4"
	  SrcPort		  1
	  DstBlock		  "Out1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "In1"
	  SrcPort		  1
	  DstBlock		  "Gain4"
	  DstPort		  1
	}
      }
    }
    Block {
      BlockType		      Sum
      Name		      "Sum"
      Ports		      [3, 1]
      Position		      [555, 130, 585, 160]
      ShowName		      off
      IconShape		      "round"
      Inputs		      "+|+|+"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Sum
      Name		      "Sum1"
      Ports		      [2, 1]
      Position		      [150, 135, 170, 155]
      ShowName		      off
      IconShape		      "round"
      Inputs		      "|+-"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Block {
      BlockType		      Sum
      Name		      "Sum2"
      Ports		      [2, 1]
      Position		      [835, 135, 855, 155]
      ShowName		      off
      IconShape		      "round"
      Inputs		      "++|"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      SaturateOnIntegerOverflow	off
    }
    Line {
      SrcBlock		      "Integrator"
      SrcPort		      1
      Points		      [-5, 0; 45, 0]
      Branch {
	Points			[0, 85]
	DstBlock		"Gain2"
	DstPort			1
      }
      Branch {
	DstBlock		"Gain1"
	DstPort			1
      }
    }
    Line {
      SrcBlock		      "Sum"
      SrcPort		      1
      DstBlock		      "Integrator"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Gain4"
      SrcPort		      1
      Points		      [135, 0]
      Branch {
	DstBlock		"Gain"
	DstPort			1
      }
      Branch {
	Points			[0, 110]
	DstBlock		"Mux2"
	DstPort			1
      }
    }
    Line {
      SrcBlock		      "Constant"
      SrcPort		      1
      DstBlock		      "Sum1"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Sum1"
      SrcPort		      1
      DstBlock		      "Gain4"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Gain1"
      SrcPort		      1
      DstBlock		      "Sum2"
      DstPort		      2
    }
    Line {
      SrcBlock		      "Sum2"
      SrcPort		      1
      Points		      [25, 0]
      Branch {
	DstBlock		"Scope"
	DstPort			1
      }
      Branch {
	Points			[0, 135]
	DstBlock		"Mux2"
	DstPort			2
      }
    }
    Line {
      SrcBlock		      "Random\nNumber"
      SrcPort		      1
      DstBlock		      "Sum2"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Gain2"
      SrcPort		      1
      Points		      [-50, 0]
      DstBlock		      "Sum"
      DstPort		      3
    }
    Line {
      SrcBlock		      "Gain"
      SrcPort		      1
      DstBlock		      "Sum"
      DstPort		      2
    }
    Line {
      SrcBlock		      "Random\nNumber1"
      SrcPort		      1
      DstBlock		      "Sum"
      DstPort		      1
    }
    Line {
      SrcBlock		      "Mux2"
      SrcPort		      1
      DstBlock		      "State-Space1"
      DstPort		      1
    }
    Line {
      SrcBlock		      "State-Space1"
      SrcPort		      1
      Points		      [-50, 0]
      Branch {
	DstBlock		"Sum1"
	DstPort			2
      }
      Branch {
	DstBlock		"Scope1"
	DstPort			1
      }
    }
  }
}

⌨️ 快捷键说明

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