/*********注意事項及相關資料**************/
/*用 51 單片機控制步進電機,注意不能直接使用 GPIO 來驅動電機,而需要相應的
驅動芯片來實現,我們使用 TC1508S 芯片來驅動配置的四線雙極性步進電
機。要實現的功能是:控制步進電機旋轉.
步進電機介紹
步進電機是將電脈沖信號轉變?yōu)榻俏灰苹蚓位移的開環(huán)控制元件。在非超載
情況下,電機的轉速、停止的位置只取決于脈沖信號的頻率和脈沖數,而不受負
載變化的影響,即給電機加一個脈沖信號,電機則轉過一個步距角。這一線性關
系的存在,加上步進電機只有周期性的誤差而無累積誤差等特點,使得步進電機
在速度、位置等控制領域的控制操作非常簡單。雖然步進電機應用廣泛,但它并
不像普通的直流和交流電機那樣在常規(guī)狀態(tài)下使用,它必須由雙環(huán)形脈沖信號、
功率驅動電路等組成控制系統(tǒng)方可使用。因此用好步進電機也非易事,它涉及機
械、電機、電子及計算機等許多專業(yè)知識。
步進電機主要分為以下幾類:
(1)永磁式(PM):一般為二相,轉矩和體積較小,步距角一般為 7.5°或
15°。
(2)反應式(VR): 一般為三相,可實現大轉矩輸出.步距角一般為 1.5°,但
噪聲和振動都很大。在歐美等發(fā)達國家 20 世紀 80 年代已經淘汰。
(3)混合式(HB):指混合了永磁式和反應式的優(yōu)點。它又分為二相和五相,二
相步距角一般為 180°,而五相步距角一般為 0.72°。這種步進電機的應用最
為廣泛。
步進電機主要技術指標如下:
(1)相數:電機內部的線圈組數。 目前常用的有二相、 三相、 四相、 五
相步進電機。電機相數不同, 其步距角也不同。 一般二相電機的步距角為 0.9°
/1.8°, 三相為 0.75°/1.5°、 五相為 0.36°/0.72°。 在沒有細分驅動器時,
用戶主要靠選擇不同相數的步進電機來滿足自己步距角的要求。 如果使用細分驅
動器,則“相數”將變得沒有意義,用戶只需在驅動器上改變細分數,就可以改
變步距角。
(2)步距角:表示控制系統(tǒng)每發(fā)一個步進脈沖信號, 電機所轉動的角度。
電機出廠時給出了一個步距角的值, 如 86BYG250A 型電機的值為 0.9°
/1.8° ( 表示半步工作時為 0.9° 、整步工作時為 1.8° ) , 這個步距角
可稱為“ 電機固有步距角” , 它不一定是電機實際工作時的真正步距角, 真
正的步距角和驅動器有關。
(3)拍數:完成一個磁場周期性變化所需脈沖數或導電狀態(tài),或指電機轉
過一個步距角所需脈沖數。以四相電機為例,有四相四拍運行方式,即
AB-BC-CD-DA-AB;四相八拍運行方式, 即 A-AB-B-BC-C-CD-D-DA-A。
(4)保持轉矩:步進電機通電但沒有轉動時, 定子鎖住轉子的力矩。 它
是步進電機最重要的參數之一, 通常步進電機在低速時的力矩接近保持轉矩。由
于步進電機的輸出力矩隨速度的增大而不斷衰減, 輸出功率也隨速度的增大而
變化,所以保持轉矩就成了衡量步進電機最重要參數之一。 比如, 當人們說 2N· m
的步進電機時,在沒有特殊說明的情況下,是指保持轉矩為 2N·m 的步進電機。
步進電機工作原理
步進電機是一種將電脈沖轉換成相應角位移或線位移的電磁機械裝置。 它
具有快速啟、停能力, 在電機的負荷不超過它能提供的動態(tài)轉矩時, 可以通過
輸入脈沖來控制它在一瞬間的啟動或停止。 步進電機的步距角和轉速只和輸入
的脈沖頻率有關, 和環(huán)境溫度、 氣壓、 振動無關, 也不受電網電壓的波動和
負載變化的影響。 因此, 步進電機多應用在需要精確定位的場合。步進電機有
三線式、 四線式、 五線式和六線式, 但其控制方式均相同, 都
要以脈沖信號電流來驅動。假設每旋轉一圈需要 200 個脈沖信號來勵磁, 可以
計算出每個勵磁信號能使步進電機前進 1.8°。 其旋轉角度與脈沖的個數成正
比。步進電動機的正、反轉由勵磁脈沖產生的順序來控制。 六線式四相步進電
機是比較常見的,
它有 4 條勵磁信號引線 A,/A, B,/B 通過控制這 4 條引線上勵磁脈沖產
生的時刻,即可控制步進電機的轉動。每出現一個脈沖信號, 步進電機只走一
步。 因此,只要依序不斷送出脈沖信號,步進電機就能實現連續(xù)轉動。
勵磁方式
步進電機的勵磁方式分為全步勵磁和半步勵磁兩種。 其中全步勵磁又有一
相勵磁和二相勵磁之分, 半步勵磁又稱一二相勵磁。 假設每旋轉一圈需要 200
個脈沖信號來勵磁,可以計算出每個勵磁信號能使步進電動機前進 1.8° 。簡
要介紹如下:
①一相勵磁: 在每一瞬間,步進電機只有一個線圈導通.每送一個勵磁信號,
步進電機旋轉 1.8, 這是三種勵磁方式中最簡單的一種。
其特點是:精確度好、 消耗電力小,但輸出轉矩最小, 振動較大。 如果以
該方式控制步進電機正轉, 對應的勵磁順序如下表所示。
若勵磁信號反向傳送,則步進電機反轉。表中的 1 和 0 表示送給電機的高
電平和低電平。
②二相勵磁:在每一瞬間,步進電動機有兩個線圈同時導通。每送一個勵磁
信號, 步進電機旋轉 1.8。
其特點是: 輸出轉矩大, 振動小, 因而成為目前使用最多的勵磁方式,若勵
磁信號反向傳送,
則步進電機反轉。
③一二相勵磁:為一相勵磁與二相勵磁交替導通的方式。 每送一個勵磁信
號, 步進電機旋轉 0.9。
其特點是:分辨率高, 運轉平滑, 故應用也很廣泛。若勵磁信號反向傳送, 則步
進電機反轉。
TC1508S 芯片介紹
單片機主要是用來控制而非驅動,如果直接使用芯片的 GPIO
管腳去驅動大功率器件,要么是將芯片燒壞,要么就是驅動不起來。所以要驅動
大功率器件,比如電機。就必須搭建外部驅動電路,我們開發(fā)板上集成了兩種直
流電機驅動電路,一種使用的驅動芯片是 TC1508S,該芯片是一款雙通道直流馬
達驅動器,不僅可以用來驅動我們的直流電機,還可用來驅動開發(fā)板配置的四線
雙極性步進電機,另一種使用的驅動芯片是 ULN2003,
該芯片是一個單片高電壓、高電流的達林頓晶體管陣列集成電路。不僅可以用來
驅動我們的直流電機,還可用來驅動五線四相步進電機,比如 28BYJ-48 步進電
機。我們使用 TC1508S 來驅動直流電機,下面來具體介紹下 TC1508S 芯片的使用:
(1)特點
①雙通道內置功率 MOS 全橋驅動
②驅動前進、后退、停止及剎車功能
③超低的待機電流和工作電流
④低導通電阻(1.0 歐)
⑤最大連續(xù)輸出電流可達 1.8A/每通道,峰值 2.5A
⑥寬電壓工作范圍
⑦采用 SOP-16 封裝形式
使用該芯片驅動直流電機,可實現正反轉、停止控制。
********************END*******************/
#include "reg52.h" //此文件中定義了單片機的一些特殊功能
#include<intrins.h> //因為要用到左右移函數, 所以加入這個頭文件
typedef unsigned int u16; //對數據類型進行聲明定義
typedef unsigned char u8;
sbit MOTOA = P1^0;
sbit MOTOB = P1^1;
sbit MOTOC = P1^2;
sbit MOTOD = P1^3;
#define SPEED 300 //修改此值可改變電機旋轉速度,不能過大或過小
void delay(u16 i)
{
while(i--);
}
void main()
{
P1=0X00;
while(1)
{
MOTOA = 1;
MOTOB = 0;
MOTOC = 1;
MOTOD = 1;
delay(SPEED);
MOTOA = 1;
MOTOB = 1;
MOTOC = 1;
MOTOD = 0;
delay(SPEED);
MOTOA = 0;
MOTOB = 1;
MOTOC = 1;
MOTOD = 1;
delay(SPEED);
MOTOA = 1;
MOTOB = 1;
MOTOC = 0;
MOTOD = 1;
delay(SPEED);
}
}
電機圖片:
步進電機.rar
(483.72 KB, 下載次數: 34)
2019-10-1 16:12 上傳
點擊文件名下載附件
圖
|