text.skipToContent text.skipToNavigation

步進電機轉速控制

  隨著電子技術的發(fā)展,利用微處理器對步進電機進行控制在實際中已得到廣泛的應用。目前用于步進電機控制的微處理器種類很多,例如S51 系列、MSP430系列、DSP系列和驅動卡系列等,但其控制原理基本相同,以下內容主要以89C51單片機為例進行分析步進電機轉速控制。   步進電機轉速控制實際上是控制各通電狀態(tài)持續(xù)時間的長短,這可以采取兩種方法:一種是軟件延時法,另一種是定時器中斷法。

步進電機轉速控制方法

1、軟件延時法

  這種步進電機轉速控制方法是在每次轉換通電狀態(tài)后,調用一個延時子程序,待延時結束后,再次執(zhí)行該換相子程序。如此反復,就可使步進電機按某一確定的轉速運轉。例如,執(zhí)行下列程序,將控制步進電機正向連續(xù)旋轉。要想改變轉速,只需改變data1、data2的值即可。 步進電機轉速控制方法-軟件延時法   Delay程序的延時時間為:t=[1 +(1 + 2 x data2 + 2)x data1 ] + 2 x T   式中,T為機器周期,89C51單片機采用6MHz的晶振時,T=2μs。若采用12MHz的晶振時,T=1μs。   軟件延時法的特點是:改變data1、data2的值,或調用不同的延時子程序就可實現(xiàn)不同的速度控制,編程簡單,且占用硬件資源較少。但它的缺點是占用CPU時間太多,因此通常只在簡單的控制過程中采用。

2、定時器中斷法

  由于用軟件延時法進行步進電機轉速控制會占用CPU的時間太多,所以在復雜的控制系統(tǒng)中一般采用定時器延時法,即給定時器加載適當?shù)亩〞r初值。經過一定的時間,定時器溢出,產生中斷信號,暫停主程序的執(zhí)行,轉而執(zhí)行定時器中斷服務程序,產生硬件延時。若將步進電機換相子程序放在定時器中斷服務程序之中,則定時器每中斷一次,電動機就換相一次,通過改變定時器的初值可實現(xiàn)對電動機的速度控制。因為電動機的換相是在中斷服務程序中完成的,所以對CPU時間的占用較少,可使CPU有時間從事其他工作。   下面以使用89C51中的T0定時器為例,介紹速度控制子程序。設定時器以方式1工作,電動機的運轉速度定為每秒1000脈沖,則換相周期為1ms。設89C51使用12MHz的晶振,則機器周期為1μs。故T0定時器應該每1000(03E8H)個機器周期中斷一次。由于TO是執(zhí)行加計數(shù),到0FFFFH后,再加一就產生溢出中斷,所以T0的加載初值應為10000H-03E8H,也就是0FC18H。在此初值下,執(zhí)行加計數(shù)1000次,就會產生溢出。中斷服務程序如下: 步進電機轉速控制方法-定時器中斷法   調試上述程序時會發(fā)現(xiàn),電動機的轉速低于設定值,不夠精確。若要精確定時,還應考慮加載定時器,開、停定時器以及中斷響應等時間,并進行修正。   下面是一個能準確定時的子程序TIM1。其中為了提供實時改變加載值的可能性,將加載值存放在中間單元R6、R7中。為了考慮中斷響應時間,將加載值和定時器溢出后繼續(xù)加計數(shù)而形成的原始計數(shù)值相加。此外,還要考慮程序中從CLR TR0到SETB TFO之間的指令周期延時的7個機器周期T。因此,換相周期為1ms時,R7、R6中的加載值應為0FC18H+07H,即0FC1FH。具體程序如下: 步進電機轉速控制方法-定時器中斷法   反復執(zhí)行這個中斷程序時,步進電機將按給定頻率準確運行。改變R6和R7中的數(shù)值,可以改變電動機的運行速度。

步進電機轉速一般多少

  步進電機的轉速范圍較廣,具體如下:   常見轉速范圍:常見步進電機的轉速通常在幾十到幾百轉 / 分鐘之間,適用于許多一般工業(yè)應用,如自動化設備、印刷機械、紡織機械等。   高速應用轉速:對于一些有高速應用需求的場景,如需要快速定位或高速運動,高速步進電機的轉速可以達到幾千轉/分鐘甚至更高。   空載轉速:以普通二相步進電機為例,空載轉速可達1000-2000轉/分鐘。   額定負載轉速:通常在額定負載時,步進電機轉速一般在 0-1000 轉/分鐘。

步進電機轉速計算公式

  步進電機轉速的計算可以根據(jù)不同的已知條件,使用不同的步進電機轉速計算公式:

1、基于脈沖頻率和步距角計算

  步進電機是將電脈沖信號轉變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件,每輸入一個脈沖信號,電機就轉動一個固定的角度(步距角)。通過脈沖頻率和步距角可以計算出電機的轉速公式: 步距角計算公式 轉速 n 的單位為轉/分鐘(r/min),脈沖頻率 f 的單位為赫茲(Hz),步距角 θ 的單位為度(°)。   該步進電機轉速計算公式推導過程:   A、因為每秒輸入f 個脈沖,每個脈沖使電機轉動 θ 度,所以電機每秒轉動的角度為θf 度;   B、而1分鐘有60秒,1轉是360度,那么電機每分鐘轉動的轉數(shù) (轉/分鐘)就等于(每分鐘轉動的角度)÷(360度),即如以上公式。

2、 基于細分驅動器的情況

  細分驅動器可以將步進電機的步距角進一步細分,通過細分倍數(shù)可以更精確地控制電機的轉動,在計算轉速時需要考慮細分倍數(shù)。此公式為: 步距角計算公式 轉速 n 的單位為轉/分鐘(r/min),脈沖頻率 f 的單位為赫茲(Hz),步距角 θ 的單位為度(°),細分數(shù)為 m。   以上是關于步進電機轉速相關內容,鳴志的步進電機產品的轉速可通過混合步進電機選型工具計算,無需自行計算,如下圖所示。(選型工具:http://www.zjhhongshangm.cn/searchrobot 混合步進電機選型工具

更多推薦文章:

步進電機步距角及計算公式 電機選擇計算公式及案例 常見負載轉矩計算 步進電機如何實現(xiàn)精準運動控制
天镇县| 汤原县| 波密县| 温泉县| 宜川县| 宁都县| 靖州| 晋江市| 原平市| 绥芬河市| 吴川市| 邵阳县| 长海县| 桃园县| 沾益县| 柳江县| 济阳县| 昔阳县| 错那县| 玉山县| 玉溪市| 北京市| 黄梅县| 苗栗县| 文水县| 绍兴县| 得荣县| 旌德县| 高青县| 博爱县| 大竹县| 揭西县| 阜平县| 沁阳市| 高青县| 怀来县| 高陵县| 武定县| 丽江市| 双桥区| 海口市|