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

📄 hdd2.mdl

📁 hard disk drive spindle motor control simulink, show you how to keep the speed at a level
💻 MDL
📖 第 1 页 / 共 3 页
字号:
	      ActionType	      "else"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "Out1"
	      Position		      [325, 78, 355, 92]
	    }
	    Line {
	      SrcBlock		      "In1"
	      SrcPort		      1
	      DstBlock		      "Out1"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  Merge
	  Name			  "Merge"
	  Ports			  [2, 1]
	  Position		  [580, 150, 620, 190]
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum1"
	  Ports			  [2, 1]
	  Position		  [855, 235, 875, 255]
	  ShowName		  off
	  IconShape		  "round"
	  Inputs		  "|++"
	  InputSameDT		  off
	  OutDataTypeMode	  "Inherit via internal rule"
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum2"
	  Ports			  [2, 1]
	  Position		  [255, 115, 275, 135]
	  ShowName		  off
	  IconShape		  "round"
	  Inputs		  "|+-"
	  InputSameDT		  off
	  OutDataTypeMode	  "Inherit via internal rule"
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum4"
	  Ports			  [2, 1]
	  Position		  [720, 160, 740, 180]
	  ShowName		  off
	  IconShape		  "round"
	  Inputs		  "|++"
	  InputSameDT		  off
	  OutDataTypeMode	  "Inherit via internal rule"
	  Port {
	    PortNumber		    1
	    Name		    "xD"
	    TestPoint		    off
	    LinearAnalysisOutput    off
	    LinearAnalysisInput	    off
	    RTWStorageClass	    "Auto"
	    DataLogging		    off
	    DataLoggingNameMode	    "SignalName"
	    DataLoggingDecimateData off
	    DataLoggingDecimation   "2"
	    DataLoggingLimitDataPoints off
	    DataLoggingMaxPoints    "5000"
	  }
	}
	Block {
	  BlockType		  UnitDelay
	  Name			  "Unit Delay"
	  Position		  [195, 105, 230, 145]
	  SampleTime		  "0.01"
	}
	Block {
	  BlockType		  UnitDelay
	  Name			  "Unit Delay1"
	  Position		  [792, 190, 828, 230]
	  Orientation		  "down"
	  NamePlacement		  "alternate"
	  SampleTime		  "-1"
	  Port {
	    PortNumber		    1
	    Name		    "f_error"
	    TestPoint		    off
	    LinearAnalysisOutput    off
	    LinearAnalysisInput	    off
	    RTWStorageClass	    "Auto"
	    DataLogging		    off
	    DataLoggingNameMode	    "SignalName"
	    DataLoggingDecimateData off
	    DataLoggingDecimation   "2"
	    DataLoggingLimitDataPoints off
	    DataLoggingMaxPoints    "5000"
	  }
	}
	Block {
	  BlockType		  ZeroOrderHold
	  Name			  "Zero-Order\nHold"
	  Position		  [195, 171, 230, 209]
	  SampleTime		  "0.01"
	}
	Block {
	  BlockType		  ZeroOrderHold
	  Name			  "Zero-Order\nHold1"
	  Position		  [720, 331, 755, 369]
	  SampleTime		  "0.01"
	}
	Block {
	  BlockType		  Outport
	  Name			  "Out"
	  Position		  [910, 238, 940, 252]
	}
	Line {
	  SrcBlock		  "Unit Delay"
	  SrcPort		  1
	  DstBlock		  "Sum2"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Sum2"
	  SrcPort		  1
	  Points		  [0, 0; 10, 0]
	  Branch {
	    Points		    [0, -55]
	    DstBlock		    "If"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 0]
	    DstBlock		    "If Action\nSubsystem"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "If"
	  SrcPort		  1
	  Points		  [75, 0]
	  DstBlock		  "If Action\nSubsystem"
	  DstPort		  ifaction
	}
	Line {
	  SrcBlock		  "Constant"
	  SrcPort		  1
	  DstBlock		  "If Action\nSubsystem1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "If"
	  SrcPort		  2
	  Points		  [20, 0; 0, 95; 55, 0]
	  DstBlock		  "If Action\nSubsystem1"
	  DstPort		  ifaction
	}
	Line {
	  SrcBlock		  "If Action\nSubsystem"
	  SrcPort		  1
	  Points		  [20, 0; 0, 35]
	  DstBlock		  "Merge"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "If Action\nSubsystem1"
	  SrcPort		  1
	  Points		  [20, 0; 0, -30]
	  DstBlock		  "Merge"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Merge"
	  SrcPort		  1
	  DstBlock		  "Gain1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Gain2"
	  SrcPort		  1
	  DstBlock		  "Sum4"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Gain1"
	  SrcPort		  1
	  DstBlock		  "Sum4"
	  DstPort		  1
	}
	Line {
	  Name			  "xD"
	  Labels		  [0, 0]
	  SrcBlock		  "Sum4"
	  SrcPort		  1
	  Points		  [65, 0]
	  DstBlock		  "Unit Delay1"
	  DstPort		  1
	}
	Line {
	  Name			  "f_error"
	  Labels		  [2, 0]
	  SrcBlock		  "Unit Delay1"
	  SrcPort		  1
	  Points		  [0, 0; 0, 10]
	  Branch {
	    DstBlock		    "Gain2"
	    DstPort		    1
	  }
	  Branch {
	    DstBlock		    "Sum1"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Zero-Order\nHold"
	  SrcPort		  1
	  Points		  [30, 0]
	  DstBlock		  "Sum2"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "In"
	  SrcPort		  1
	  Points		  [0, 0; 95, 0]
	  Branch {
	    Points		    [0, -5]
	    DstBlock		    "Unit Delay"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 60]
	    DstBlock		    "Zero-Order\nHold"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Constant1"
	  SrcPort		  1
	  DstBlock		  "Zero-Order\nHold1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Sum1"
	  SrcPort		  1
	  DstBlock		  "Out"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Zero-Order\nHold1"
	  SrcPort		  1
	  Points		  [105, 0]
	  DstBlock		  "Sum1"
	  DstPort		  2
	}
      }
    }
    Block {
      BlockType		      Constant
      Name		      "DC Drive signal"
      Position		      [465, 195, 495, 225]
      Orientation	      "left"
      Value		      "2"
    }
    Block {
      BlockType		      SubSystem
      Name		      "DocBlock"
      Ports		      []
      Position		      [92, 480, 132, 519]
      ShowName		      off
      List {
	ListType		RTWdata
	document_text01		"Simple model of a hard disk drive spin contro"
"ller"
      }
      CopyFcn		      "docblock('breaklink',gcb);"
      DeleteFcn		      "docblock('close_document',gcb);"
      PreSaveFcn	      "docblock('save_document',gcb);"
      OpenFcn		      "docblock('edit_document',gcb);"
      TreatAsAtomicUnit	      off
      MaskType		      "DocBlock"
      MaskDescription	      "Use this block to save long descriptive text wi"
"th the model.  Double-clicking the block will open an editor."
      MaskPromptString	      "E Coder Flag|Document Type"
      MaskStyleString	      "edit,popup(Text|RTF|HTML)"
      MaskTunableValueString  "off,off"
      MaskCallbackString      "|"
      MaskEnableString	      "on,on"
      MaskVisibilityString    "on,off"
      MaskToolTipString	      "on,on"
      MaskVarAliasString      ","
      MaskVariables	      "ECoderFlag=&1;DocumentType=&2;"
      MaskDisplay	      "plot([.8 0 0 1 1 .8 .8 1],[1 1 0 0 .8 1 .8 .8])"
";\ntext(.5,.5,'DOC','horizontalalignment','center');\n"
      MaskIconFrame	      off
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      MaskValueString	      "|Text"
      System {
	Name			"DocBlock"
	Location		[480, 85, 980, 386]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  SubSystem
	  Name			  "EmptySubsystem"
	  Ports			  []
	  Position		  [115, 50, 145, 80]
	  TreatAsAtomicUnit	  off
	  System {
	    Name		    "EmptySubsystem"
	    Location		    [146, 180, 902, 673]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	  }
	}
      }
    }
    Block {
      BlockType		      DiscretePulseGenerator
      Name		      "Friction disturbance"
      Position		      [605, 483, 650, 517]
      Orientation	      "left"
      AttributesFormatString  "A = %<Amplitude>"
      PulseType		      "Time based"
      Amplitude		      "0.01"
      Period		      "200"
      PulseWidth	      "50"
      PhaseDelay	      "100"
      Port {
	PortNumber		1
	Name			"disturb"
	TestPoint		off
	LinearAnalysisOutput	off
	LinearAnalysisInput	off
	RTWStorageClass		"Auto"
	DataLogging		off
	DataLoggingNameMode	"SignalName"
	DataLoggingDecimateData	off
	DataLoggingDecimation	"2"
	DataLoggingLimitDataPoints off
	DataLoggingMaxPoints	"5000"
      }
    }
    Block {
      BlockType		      Constant
      Name		      "Friction/back emf coeff"
      Position		      [500, 530, 530, 560]
      Orientation	      "up"
      NamePlacement	      "alternate"
      Value		      "-0.1"
    }
    Block {
      BlockType		      From
      Name		      "From1"
      Position		      [750, 190, 810, 210]
      CloseFcn		      "tagdialog Close"
      GotoTag		      "friction"
      Port {
	PortNumber		1
	PropagatedSignals	"friction"
	ShowPropagatedSignals	"on"
	TestPoint		off
	LinearAnalysisOutput	off
	LinearAnalysisInput	off
	RTWStorageClass		"Auto"
	DataLogging		off
	DataLoggingNameMode	"SignalName"
	DataLoggingDecimateData	off
	DataLoggingDecimation	"2"
	DataLoggingLimitDataPoints off
	DataLoggingMaxPoints	"5000"
      }
    }
    Block {
      BlockType		      From
      Name		      "From3"
      Position		      [470, 455, 535, 475]
      Orientation	      "left"
      CloseFcn		      "tagdialog Close"
      GotoTag		      "ang_vel"
      Port {
	PortNumber		1
	PropagatedSignals	"ang vel"
	ShowPropagatedSignals	"on"
	TestPoint		off
	LinearAnalysisOutput	off
	LinearAnalysisInput	off
	RTWStorageClass		"Auto"
	DataLogging		off
	DataLoggingNameMode	"SignalName"
	DataLoggingDecimateData	off
	DataLoggingDecimation	"2"
	DataLoggingLimitDataPoints off
	DataLoggingMaxPoints	"5000"
      }
    }
    Block {
      BlockType		      Gain
      Name		      "Gain"
      Position		      [480, 240, 510, 270]
      Orientation	      "left"
      Gain		      "lgain"
    }
    Block {
      BlockType		      Goto
      Name		      "Goto"
      Position		      [365, 594, 425, 616]
      Orientation	      "left"
      GotoTag		      "friction"
      TagVisibility	      "local"
    }
    Block {
      BlockType		      Goto
      Name		      "Goto1"
      Position		      [705, 129, 765, 151]
      GotoTag		      "ang_vel"
      TagVisibility	      "local"
    }
    Block {
      BlockType		      Product
      Name		      "Product"
      Ports		      [2, 1]
      Position		      [395, 476, 440, 509]
      Orientation	      "left"
      InputSameDT	      off
      Port {
	PortNumber		1
	Name			"Friction proportional to ang vel"
	TestPoint		off
	LinearAnalysisOutput	off
	LinearAnalysisInput	off
	RTWStorageClass		"Auto"
	DataLogging		off
	DataLoggingNameMode	"SignalName"
	DataLoggingDecimateData	off
	DataLoggingDecimation	"2"
	DataLoggingLimitDataPoints off
	DataLoggingMaxPoints	"5000"
      }
    }
    Block {
      BlockType		      Reference
      Name		      "RMS"
      Ports		      [2, 1]
      Position		      [830, 317, 905, 353]
      SourceBlock	      "dspstat3/RMS"
      SourceType	      "RMS"
      run		      on
      reset_popup	      "Rising edge"
    }
    Block {
      BlockType		      Scope
      Name		      "Scope"
      Ports		      [3]
      Position		      [905, 141, 1005, 259]
      Location		      [1, 49, 1025, 739]
      Open		      off
      NumInputPorts	      "3"
      List {
	ListType		AxesTitles
	axes1			"%<SignalLabel>"
	axes2			"%<SignalLabel>"
	axes3			"%<SignalLabel>"
      }
      List {
	ListType		SelectedSignals
	axes1			""
	axes2			""
	axes3			""
      }
      TimeRange		      "200"
      YMin		      "0~-0.11~-0.03"
      YMax		      "25~-0.08~0.03"
      DataFormat	      "StructureWithTime"
      LimitDataPoints	      off
    }
    Block {
      BlockType		      Sum
      Name		      "Sum1"
      Ports		      [2, 1]
      Position		      [505, 490, 525, 510]
      Orientation	      "left"
      ShowName		      off
      IconShape		      "round"
      Inputs		      "|++"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
      Port {
	PortNumber		1
	Name			"friction"
	TestPoint		off
	LinearAnalysisOutput	off
	LinearAnalysisInput	off
	RTWStorageClass		"Auto"
	DataLogging		off
	DataLoggingNameMode	"SignalName"
	DataLoggingDecimateData	off
	DataLoggingDecimation	"2"
	DataLoggingLimitDataPoints off
	DataLoggingMaxPoints	"5000"
      }
    }
    Block {
      BlockType		      Sum
      Name		      "Sum3"
      Ports		      [2, 1]
      Position		      [385, 200, 405, 220]
      Orientation	      "left"
      ShowName		      off
      IconShape		      "round"
      Inputs		      "|+-"
      InputSameDT	      off
      OutDataTypeMode	      "Inherit via internal rule"
    }
    Block {
      BlockType		      ToWorkspace
      Name		      "To Workspace"
      Position		      [945, 395, 1005, 425]
      VariableName	      "meanerror"
      MaxDataPoints	      "1"
      SampleTime	      "-1"
      SaveFormat	      "Array"
    }
    Block {
      BlockType		      Display
      Name		      "error"
      Ports		      [1]
      Position		      [605, 330, 695, 360]
      Decimation	      "1"
    }
    Block {
      BlockType		      Display
      Name		      "meanerror"
      Ports		      [1]
      Position		      [930, 320, 1020, 350]
      Decimation	      "1"
    }
    Block {
      BlockType		      Reference
      Name		      "motor forces\ndrive and friction"

⌨️ 快捷键说明

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