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

📄 bldc_00.mdl

📁 Velocity control of BLDC motor
💻 MDL
📖 第 1 页 / 共 5 页
字号:
      DropShadow	      on
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      FunctionWithSeparateData off
      MaskHideContents	      off
      MaskDisplay	      "disp('?')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"Double click here for more info"
	Location		[278, 109, 925, 559]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	TiledPaperMargins	[0.500000, 0.500000, 0.500000, 0.500000]
	TiledPageScale		1
	ShowPageBoundaries	off
	ZoomFactor		"100"
	Annotation {
	  Name			  "Demonstration"
	  Position		  [19, 252]
	  HorizontalAlignment	  "left"
	  VerticalAlignment	  "top"
	  ForegroundColor	  "blue"
	  UseDisplayTextAsClickCallback	off
	  FontSize		  14
	  FontWeight		  "bold"
	}
	Annotation {
	  Name			  "Circuit Description"
	  Position		  [14, 102]
	  HorizontalAlignment	  "left"
	  VerticalAlignment	  "top"
	  ForegroundColor	  "blue"
	  UseDisplayTextAsClickCallback	off
	  FontSize		  14
	  FontWeight		  "bold"
	}
	Annotation {
	  Name			  "This demonstration illustrates use of the B"
"LDC in a closed-loop\nspeed and voltage control on a 1 kW, 3000 rpm industria"
"l motor    "
	  Position		  [14, 17]
	  HorizontalAlignment	  "left"
	  VerticalAlignment	  "top"
	  UseDisplayTextAsClickCallback	off
	  FontSize		  14
	  FontWeight		  "bold"
	}
	Annotation {
	  Name			  "A three-phase motor rated 1 kW, 500 Vdc, 30"
"00 rpm is fed by a six step voltage inverter. The inverter is a \nMOSFET brid"
"ge used from the SimPowerSystems library. A speed regulator is used to contro"
"l the DC \nbus voltage. The gates of the inverter are controlled by the Hall "
"effects switches, passing through a gates \ndecoder. The three-phase output o"
"f the inverter are applied to the PMSM block's stator windings. The load \nto"
"rque applied to the  machine's shaft is originally set to 0 and steps to its "
"nominal value (3 N.m) at t = 0.1 s. \n\nTwo control loops are used. The inner"
" loop synchronise the impulsions of the bridge with the electromotive \nforce"
". The outer loop controls the motor's speed, by varying the DC bus voltage."
	  Position		  [16, 120]
	  HorizontalAlignment	  "left"
	  VerticalAlignment	  "top"
	  UseDisplayTextAsClickCallback	off
	  FontName		  "Arial"
	  FontSize		  12
	}
	Annotation {
	  Name			  "Observe that the waveform of the current is"
" the shape of saw-teeth.That is caused by the DC bus voltage \nwhich applies "
"a constant value during 120 electrical degrees to the motor inductance. The i"
"nitial current is \nhigh and decreases during the acceleration to the nominal"
" speed. When the nominal torque is applied, the \nstator current increases to"
" maintain the nominal speed. The saw-teeth waveform is also observed in the "
"\nelectromagnetic torque signal Te. However, the motor's inertia prevents thi"
"s noise from appearing in the \nmotor's speed waveform.                      "
"      \n\nChange the \"Flux distribution\" of the motor from trapezoidal to s"
"inusoidal and observe the waveform of the \nelectromotive force e_a.\n"
	  Position		  [19, 281]
	  HorizontalAlignment	  "left"
	  VerticalAlignment	  "top"
	  UseDisplayTextAsClickCallback	off
	  FontName		  "Arial"
	  FontSize		  12
	}
	Annotation {
	  Name			  "Olivier Tremblay, Louis-A. Dessaint (Ecole "
"de technologie superieure, Montreal)"
	  Position		  [249, 68]
	  UseDisplayTextAsClickCallback	off
	  FontName		  "Arial"
	  FontSize		  12
	}
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "Gates"
      Ports		      [1, 1]
      Position		      [505, 30, 585, 70]
      Orientation	      "left"
      BackgroundColor	      "lightBlue"
      NamePlacement	      "alternate"
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      FunctionWithSeparateData off
      MaskHideContents	      off
      System {
	Name			"Gates"
	Location		[91, 268, 905, 724]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	TiledPaperMargins	[0.500000, 0.500000, 0.500000, 0.500000]
	TiledPageScale		1
	ShowPageBoundaries	off
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "emf_abc\n"
	  Position		  [20, 143, 50, 157]
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Reference
	  Name			  "Compare\nTo Zero"
	  Ports			  [1, 1]
	  Position		  [275, 59, 320, 81]
	  ShowName		  off
	  SourceBlock		  "simulink/Logic and Bit\nOperations/Compare"
"\nTo Zero"
	  SourceType		  "Compare To Zero"
	  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"
	  relop			  ">"
	  LogicOutDataTypeMode	  "boolean"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Reference
	  Name			  "Compare\nTo Zero1"
	  Ports			  [1, 1]
	  Position		  [275, 99, 320, 121]
	  ShowName		  off
	  SourceBlock		  "simulink/Logic and Bit\nOperations/Compare"
"\nTo Zero"
	  SourceType		  "Compare To Zero"
	  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"
	  relop			  "<"
	  LogicOutDataTypeMode	  "boolean"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Reference
	  Name			  "Compare\nTo Zero2"
	  Ports			  [1, 1]
	  Position		  [275, 139, 320, 161]
	  ShowName		  off
	  SourceBlock		  "simulink/Logic and Bit\nOperations/Compare"
"\nTo Zero"
	  SourceType		  "Compare To Zero"
	  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"
	  relop			  ">"
	  LogicOutDataTypeMode	  "boolean"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Reference
	  Name			  "Compare\nTo Zero3"
	  Ports			  [1, 1]
	  Position		  [275, 179, 320, 201]
	  ShowName		  off
	  SourceBlock		  "simulink/Logic and Bit\nOperations/Compare"
"\nTo Zero"
	  SourceType		  "Compare To Zero"
	  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"
	  relop			  "<"
	  LogicOutDataTypeMode	  "boolean"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Reference
	  Name			  "Compare\nTo Zero4"
	  Ports			  [1, 1]
	  Position		  [270, 219, 315, 241]
	  ShowName		  off
	  SourceBlock		  "simulink/Logic and Bit\nOperations/Compare"
"\nTo Zero"
	  SourceType		  "Compare To Zero"
	  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"
	  relop			  ">"
	  LogicOutDataTypeMode	  "boolean"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Reference
	  Name			  "Compare\nTo Zero5"
	  Ports			  [1, 1]
	  Position		  [270, 259, 315, 281]
	  ShowName		  off
	  SourceBlock		  "simulink/Logic and Bit\nOperations/Compare"
"\nTo Zero"
	  SourceType		  "Compare To Zero"
	  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"
	  relop			  "<"
	  LogicOutDataTypeMode	  "boolean"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Demux
	  Name			  "Demux2"
	  Ports			  [1, 3]
	  Position		  [155, 28, 160, 272]
	  BackgroundColor	  "black"
	  ShowName		  off
	  Outputs		  "3"
	  DisplayOption		  "bar"
	}
	Block {
	  BlockType		  Mux
	  Name			  "Mux3"
	  Ports			  [6, 1]
	  Position		  [420, 124, 425, 221]
	  ShowName		  off
	  Inputs		  "6"
	  DisplayOption		  "bar"
	}
	Block {
	  BlockType		  Outport
	  Name			  "Gates"
	  Position		  [465, 168, 495, 182]
	  IconDisplay		  "Port number"
	  BusOutputAsStruct	  off
	}
	Line {
	  SrcBlock		  "emf_abc\n"
	  SrcPort		  1
	  DstBlock		  "Demux2"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Mux3"
	  SrcPort		  1
	  DstBlock		  "Gates"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Demux2"
	  SrcPort		  1
	  Points		  [0, 0; 75, 0]
	  Branch {
	    DstBlock		    "Compare\nTo Zero"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 40]
	    DstBlock		    "Compare\nTo Zero1"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Demux2"
	  SrcPort		  2
	  Points		  [0, 0; 75, 0]
	  Branch {
	    DstBlock		    "Compare\nTo Zero2"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 40]
	    DstBlock		    "Compare\nTo Zero3"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Demux2"
	  SrcPort		  3
	  Points		  [0, 0; 70, 0]
	  Branch {
	    DstBlock		    "Compare\nTo Zero4"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 40]
	    DstBlock		    "Compare\nTo Zero5"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Compare\nTo Zero"
	  SrcPort		  1
	  Points		  [60, 0; 0, 65]
	  DstBlock		  "Mux3"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Compare\nTo Zero1"
	  SrcPort		  1
	  Points		  [45, 0; 0, 40]
	  DstBlock		  "Mux3"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Compare\nTo Zero2"
	  SrcPort		  1
	  Points		  [30, 0; 0, 15]
	  DstBlock		  "Mux3"
	  DstPort		  3
	}
	Line {
	  SrcBlock		  "Compare\nTo Zero3"
	  SrcPort		  1
	  Points		  [30, 0; 0, -10]
	  DstBlock		  "Mux3"
	  DstPort		  4
	}
	Line {
	  SrcBlock		  "Compare\nTo Zero4"
	  SrcPort		  1
	  Points		  [45, 0; 0, -35]
	  DstBlock		  "Mux3"
	  DstPort		  5
	}
	Line {
	  SrcBlock		  "Compare\nTo Zero5"
	  SrcPort		  1
	  Points		  [60, 0; 0, -60]
	  DstBlock		  "Mux3"
	  DstPort		  6
	}
	Annotation {
	  Name			  "This module implements the following true t"
"able\n\n   emf_a   |   emf_b   |   emf_c   ||   Q1   |   Q2   |   Q3   |   Q4"
"   |   Q5   |   Q6\n    -----------------------------------------------------"
"-------------------------------------------------------------\n      0       "
"       0                0            0          0          0           0     "
"   0        0\n      0               -1              +1          0          0"
"          0           1        1        0\n    -1              +1            "
"    0          0          1          1           0        0        0\n    -1 "
"              0               +1          0          1         0           0 "
"       1        0\n   +1               0                -1          1        "
"  0          0           0        0        1\n   +1              -1          "
"      0           1          0          0           1        0        0\n    "
" 0              +1               -1           0          0          1        "
"   0        0        1\n    0              0                0             0  "
"        0          0           0        0        0\n "
	  Position		  [559, 324]
	  UseDisplayTextAsClickCallback	off
	}
      }
    }
    Block {
      BlockType		      Scope
      Name		      "N (rpm)"
      Ports		      [1]
      Position		      [955, 165, 985, 195]
      BackgroundColor	      "green"
      NamePlacement	      "alternate"
      Floating		      off
      Location		      [466, 394, 921, 686]
      Open		      off
      NumInputPorts	      "1"
      ZoomMode		      "yonly"
      List {
	ListType		AxesTitles
	axes1			"Rotor speed (rpm)"
      }
      TimeRange		      "0.2"
      YMin		      "0"
      YMax		      "3500"
      SaveToWorkspace	      on
      SaveName		      "N"
      DataFormat	      "StructureWithTime"
      LimitDataPoints	      off
      SampleTime	      "0"
    }
    Block {
      BlockType		      SubSystem
      Name		      "PWM Module"
      Ports		      [2, 1]
      Position		      [1025, 42, 1135, 98]
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      FunctionWithSeparateData off
      MaskHideContents	      off
      System {
	Name			"PWM Module"
	Location		[316, 453, 1300, 710]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	TiledPaperMargins	[0.500000, 0.500000, 0.500000, 0.500000]
	TiledPageScale		1
	ShowPageBoundaries	off
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "Hall\n"
	  Position		  [60, 43, 90, 57]
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Inport
	  Name			  "Duty"
	  Position		  [60, 103, 90, 117]
	  Port			  "2"
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Abs
	  Name			  "Abs"
	  Position		  [455, 35, 485, 65]
	  SaturateOnIntegerOverflow off
	  ZeroCross		  on
	  SampleTime		  "-1"
	}
	Block {
	  BlockType		  Sum

⌨️ 快捷键说明

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