技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 如何實現(xiàn)步進電機的正反轉(zhuǎn)?步進電機正反轉(zhuǎn)程序詳解

如何實現(xiàn)步進電機的正反轉(zhuǎn)?步進電機正反轉(zhuǎn)程序詳解

時間:2024-11-12 16:10:00來源:21ic電子網(wǎng)

導(dǎo)語:?步進電動機是將電脈沖激勵信號轉(zhuǎn)換成相應(yīng)的角位移或線位移的離散值控制電動機,這種電動機每當(dāng)輸入一個電脈沖就動一步,所以又稱脈沖電動機。

  步進電動機(stepping motor)把電脈沖信號變換成角位移以控制轉(zhuǎn)子轉(zhuǎn)動的微特電機。在自動控制裝置中作為執(zhí)行元件。每輸入一個脈沖信號,步進電動機前進一步,故又稱脈沖電動機。步進電動機多用于數(shù)字式計算機的外部設(shè)備,以及打印機、繪圖機和磁盤等裝置。步進電動機的驅(qū)動電源由變頻脈沖信號源、脈沖分配器及脈沖放大器組成,由此驅(qū)動電源向電機繞組提供脈沖電流。

  步進電動機的運行性能決定于電機與驅(qū)動電源間的良好配合。步進電機的優(yōu)點是沒有累積誤差,結(jié)構(gòu)簡單,使用維修方便,制造成本低,步進電動機帶動負載慣量的能力大,適用于中小型機床和速度精度要求不高的地方,缺點是效率較低,發(fā)熱大,有時會“失步”。步進電動機分為機電式、磁電式及直線式三種基本類型。

  機電式步進電動機機電式步進電動機由鐵心、線圈、齒輪機構(gòu)等組成。螺線管線圈通電時將產(chǎn)生磁力,推動其鐵心心子運動,通過齒輪機構(gòu)使輸出軸轉(zhuǎn)動一角度,通過抗旋轉(zhuǎn)齒輪使輸出轉(zhuǎn)軸保持在新的工作位置;線圈再通電,轉(zhuǎn)軸又轉(zhuǎn)動一角度,依次進行步進運動。

  磁電式步進電動機磁電式步進電動機 其結(jié)構(gòu)簡單, 可靠性高, 價格低廉, 應(yīng)用廣泛。 主要有永磁式、 磁阻式和混合式。

  (1)永磁式步進電動機。

  永磁式步進電動機的基本原理其轉(zhuǎn)子有永磁體的磁極,在氣隙中產(chǎn)生極性交替磁場,定子由四相繞組組成(見圖)。當(dāng)A相繞組通電時,轉(zhuǎn)子將轉(zhuǎn)向該相繞組所確定的磁場方向。當(dāng)A相斷電、B相繞組被通電勵磁時,就產(chǎn)生一個新的磁場方向,這時,轉(zhuǎn)子就轉(zhuǎn)動一角度而位于新的磁場方向上,被勵磁相的順序決定了轉(zhuǎn)子轉(zhuǎn)動方向。

  若定子勵磁的變化太快,轉(zhuǎn)子將不能和定子磁場方向的變化保持一致,轉(zhuǎn)子即失步。起動頻率和運行頻率較低,是永磁式步進電動機的一個缺點。但永磁式步進電動機消耗功率較小,效率較高。20世紀80年代初,出現(xiàn)了轉(zhuǎn)子是盤式的永磁盤式步進電動機,使步距角及工作頻率達到磁阻式步進電動機的水平。

  (2)磁阻式步進電動機。

  其定、轉(zhuǎn)子鐵芯的內(nèi)外表面上設(shè)有按一定規(guī)律分布的相近齒槽,利用定、轉(zhuǎn)子鐵芯齒槽相對位置變化引起磁路磁阻的變化,從而產(chǎn)生轉(zhuǎn)矩。其轉(zhuǎn)子鐵芯由硅鋼片或軟磁材料做成,當(dāng)定子某相被勵磁時,轉(zhuǎn)子將轉(zhuǎn)到使磁路磁阻最小的位置。當(dāng)另一相被勵磁,轉(zhuǎn)子轉(zhuǎn)到另一位置,使磁路磁阻為最小時,電動機就停止轉(zhuǎn)動。這時,轉(zhuǎn)子轉(zhuǎn)過一個步距角θb,即式中N為轉(zhuǎn)子轉(zhuǎn)過一個齒距的運行拍數(shù);ZR為轉(zhuǎn)子齒數(shù)。磁阻式步進電動機結(jié)構(gòu)形式較多。定子鐵芯有單段式、多段式;磁路有徑向、軸向;繞組相數(shù)有三相、四相、五相。磁阻式步進電動機步距角可做到1°~15°,甚至更小,精度容易保證,起動與運行頻率較高,但功耗較大,效率較低。

  (3)混合式步進電動機。

  它的定、轉(zhuǎn)子鐵芯結(jié)構(gòu)與磁阻式步進電動機相似。轉(zhuǎn)子有永磁體在氣隙中產(chǎn)生單極性磁場,此磁場還被轉(zhuǎn)子上軟磁材料的齒槽調(diào)制?;旌鲜讲竭M電動機兼有永磁式步進電動機與磁阻式步進電動機兩者的優(yōu)點,電動機步距角小,精度高,工作頻率高,且功耗小,效率高。

  步進電機正反轉(zhuǎn)控制方式:

  1、步進電機有四相繞組A、B、C、D,當(dāng)一繞組通電時在電動機內(nèi)部形成N-S極,產(chǎn)生磁場,當(dāng)通電的相發(fā)生變化,磁場發(fā)生旋轉(zhuǎn),在磁場的作用下,轉(zhuǎn)子將轉(zhuǎn)動,若步進電機按雙四拍的方式來工作。

  /2、在A、B、C、D四相繞組上輸入脈沖的順序為AB→BC→CD→DA→AB,步進電機沿順時針方向轉(zhuǎn)動,即正轉(zhuǎn);若在A、B、C、D四相繞組上依次輸入脈沖AB→DA→CD→BC→AB;步進電機將沿逆時針方向旋轉(zhuǎn),即反轉(zhuǎn)。電機內(nèi)部數(shù)據(jù)參數(shù),初始的即可,不用調(diào)改。

  整體程序的結(jié)果:

  (1)先正轉(zhuǎn)一圈,等待一秒后再反轉(zhuǎn)一圈。這一過程可以自己修改程序,把它去掉,即整體main函數(shù)while循環(huán)的前面那部分,只會執(zhí)行一次。

  while(1)

  {

  (2)按下按鈕1,整個電機開始正轉(zhuǎn)N圈,當(dāng)檢測按鈕一直按下時,整個電機就一直正轉(zhuǎn)下去。當(dāng)檢測到其他按鈕按下時,立即跳轉(zhuǎn)到其他按鈕對應(yīng)的程序。

  (3)按下按鈕2,和按鈕1相反。

  (4)按鈕3,使整個電機停止工作。

  }

  上面2,3,4部分是一直在循環(huán)掃描檢測的。

  #include

  #include

  unsigned char code z[]={0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03//315,270,225......360(0)

  };//八拍

  unsigned char code f[]={0x01,0x09,0x08,0x0c,0x04,0x06,0x02,0x03//45,90,145......360(0)

  };

  sbit K1 = P3^0;//定義正轉(zhuǎn)按鈕

  sbit K2 = P3^1;//定義反轉(zhuǎn)按鈕

  sbit K3 = P3^2;//定義停止按鈕

  void zz(unsigned char n);

  void fz(unsigned char n);

  void delay();

  void step();

  void main()

  {

  unsigned char N = 1;//由于設(shè)定好了轉(zhuǎn)一圈的數(shù)據(jù),所以N在此設(shè)定為轉(zhuǎn)多少圈。

  TMOD=0X10;

  TL1=0XF0;

  TH1=0XD8;

  EA=0;

  ET1=0;//這里沒有使用定時器中斷,這里只是使用定時器的定時功能。

  zz(N);

  delay();

  fz(N);

  while(1)

  {

  if(K1 == 0)

  {

  while(1)

  {

  P0 = 0xfe;

  zz(N);

  if(K3 == 0||K2==0) break;

  }

  }

  else if(K2 == 0)

  {

  while(1)

  {

  P0 = 0xfd;

  fz(N);

  if(K3 == 0||K1==0) break;

  }

  }

  else

  {

  P0 = 0xfb;

  P1 = 0x03;

  }

  }

  }

  void zz(unsigned char n)//正轉(zhuǎn)

  {

  unsigned char i,j;

  for(i=0;i

  {

  for(j=0;j<8;j++)//整個for循環(huán),正轉(zhuǎn)一個步距角,因為四相八拍,所以是半個步距角,即半步。

  {

  if(K3 == 0) break;

  P1 = z[j];

  step();

  }

  }

  }

  void fz(unsigned char n)//反轉(zhuǎn)

  {

  unsigned char i,j;

  for(i=0;i

  {

  for(j=0;j<8;j++)

  {

  if(K3 == 0) break;

  P1 = f[j];

  step();

  }

  }

  }

  void delay()//定義1s

  {

  unsigned char i,j,k;

  _nop_();

  i=8;

  j=154;

  k=122;

  do

  {

  do

  {

  while(--k);

  }while(--j);

  }while(--i);

  }

  void step()//定時器計時10ms

  {

  TF1=0;

  TR1=1;

  while(TF1==0);

  TR1=0;

  TL1=0XF0;

  TH1=0XD8;

  }

  1.程序中用到的延時,這個根據(jù)自己的習(xí)慣,可以寫相對應(yīng)的函數(shù)延時,但是由于電機轉(zhuǎn)的過程中的延時,就我上文中for循環(huán)里面的定時10ms,這個是根據(jù)實際情況來調(diào)的,理論上來說,使用proteus仿真的電機延時最低是1ms,如果低于1ms實驗起來,不會看到自己編寫代碼的理想結(jié)果。

  2.步距角的不同,那么想要電機轉(zhuǎn)一圈,執(zhí)行zz或者fz函數(shù)的參數(shù)就要有所不同。以我上面程序為例。

  八拍轉(zhuǎn)一個循環(huán),轉(zhuǎn)過360度,步距角是90°。

  那么步距角是45°時,要想轉(zhuǎn)過360°,那么就需要16拍。

  這里需要各位自己去修改程序去實驗,這里只提供一個提醒。如果超過256拍的話,那么unsigned char是不夠你玩的,需要unsigned int。

  步進電機驅(qū)動器是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機構(gòu)。當(dāng)步進驅(qū)動器接收到一個脈沖信號,它就驅(qū)動步進電機按設(shè)定的方向轉(zhuǎn)動一個固定的角度(稱為“步距角”),它的旋轉(zhuǎn)是以固定的角度一步一步運行的??梢酝ㄟ^控制脈沖個數(shù)來控制角位移量,從而達到準(zhǔn)確定位的目的接下來,詳細為你說下步進驅(qū)動器怎么控制方向 步進驅(qū)動器怎么設(shè)置電機正反轉(zhuǎn)。

  脈沖控制,因為脈沖有數(shù)量,利于精確控制。所以步進電機方向是靠脈沖控制的,

  怎么控制:一般高電平控制一個方向,低電平控制另一個方向。

  也有用兩路脈沖控制的。就是一路脈沖的高電平控制一個方向,另一路脈沖的高電平控制另一個方向。

  只要控制在四相繞組上輸入脈沖的順序,就可以控制電機的正轉(zhuǎn)/反轉(zhuǎn)。(控制延時就能控制轉(zhuǎn)速。)

  方向電平信號DIR用于控制步進電機的旋轉(zhuǎn)方向。當(dāng)該端高時,電動機沿一個方向旋轉(zhuǎn),當(dāng)該端低時,電動機沿另一方向旋轉(zhuǎn)。電機換向必須在電機停止后執(zhí)行,并且換向信號必須在前一個方向的最后一個CP脈沖之后和下一個方向的第一個CP脈沖之前發(fā)送。

  如果控制器(主機)發(fā)送雙脈沖(例如正脈沖和負脈沖)或脈沖信號的幅度不匹配,則需要使用信號模塊將其轉(zhuǎn)換為5v單脈沖(脈沖) 。中文加方向))。

  1.輸入為單個脈沖

  信號模塊的DIP開關(guān)應(yīng)設(shè)置在“單脈沖”位置。如果有脈沖輸出,則電動機將旋轉(zhuǎn)。改變方向信號的高電平和低電平可以改變旋轉(zhuǎn)方向。有關(guān)特定時序,請參閱信號模塊手冊。

  2,輸入為雙脈沖

  信號模塊的DIP開關(guān)應(yīng)置于?雙麥:中間?位置。發(fā)送正脈沖會使電動機正向旋轉(zhuǎn),而發(fā)送負脈沖會使電動機反向。正脈沖和負脈沖不能同時給出,具體時序請參考信號模塊手冊。

  步進電機的運行方向與要求相反。我應(yīng)該如何調(diào)整? Shanshe Motor的技術(shù)工程師提出了兩種實現(xiàn)方法:

  一種方法是更改控制系統(tǒng)的方向信號。

  另一種方法是通過調(diào)整步進電機的接線來改變方向。具體方法如下:

  對于兩相電機,只需將其中一根電機線切換到A +和A交換等步進電機驅(qū)動器即可。

  對于三相電動機,不能更換其中一根電動機電線,但必須依次更換兩相,例如交換A +和B +。

  A-和B-互換。

標(biāo)簽: 步進電機

點贊

分享到:

上一篇:什么是開關(guān)電源?開關(guān)電源有什...

下一篇:分布式光伏項目施工常見的技...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.connectcrack.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號