基于proteus的步進(jìn)電機(jī)控制
一、步進(jìn)電機(jī)常識(shí)
常見的步進(jìn)電機(jī)分三種:永磁式(PM),反應(yīng)式(VR)和混合式(HB),永磁式步進(jìn)一般為兩相,轉(zhuǎn)矩和體積較小,步進(jìn)角一般為7.5度或15度;反應(yīng)式步進(jìn)一般為三相,可實(shí)現(xiàn)大轉(zhuǎn)矩輸出,步進(jìn)角一般為1.5度,但噪聲和振動(dòng)都很大。在歐美等發(fā)達(dá)國家80年代已被淘汰;混合式步進(jìn)是指混合了永磁式和反應(yīng)式的優(yōu)點(diǎn)。它又分為兩相和五相:兩相步進(jìn)角一般為1.8度而五相步進(jìn)角一般為0.72度。這種步進(jìn)電機(jī)的應(yīng)用最為廣泛。
二、永磁式步進(jìn)電機(jī)的控制
圖1 35BY48S03型步進(jìn)電機(jī)的接線圖
圖1是該電機(jī)的接線圖,從圖中可以看出,電機(jī)共有四組線圈,四組線圈的一個(gè)端點(diǎn)連在一起引出,這樣一共有5根引出線。要使用步進(jìn)電機(jī)轉(zhuǎn)動(dòng),只要輪流給各引出端通電即可。將COM端標(biāo)識(shí)為C,只要AC、/AC、BC、/BC,輪流加電就能驅(qū)動(dòng)步進(jìn)電機(jī)運(yùn)轉(zhuǎn),加電的方式可以有多種,如果將COM端接正電源,那么只要用開關(guān)元件(如三極管),將A、/A、B、/B輪流接地。
下表列出了該電機(jī)的一些典型參數(shù):
表1 35BY48S03型步機(jī)電機(jī)參數(shù)
型號(hào) | 步距角 | 相數(shù) | 電壓 | 電流 | 電阻 | 最大靜轉(zhuǎn)距 | 定位轉(zhuǎn)距 | 轉(zhuǎn)動(dòng)慣量 |
35BY48S03 | 7.5 | 4 | 12 | 0.26 | 47 | 180 | 65 | 2.5 |
有了這些參數(shù),不難設(shè)計(jì)出控制電路,因其工作電壓為12V,最大電流為0.26A,因此用一塊開路輸出達(dá)林頓驅(qū)動(dòng)器(ULN2003)來作為驅(qū)動(dòng),通過P1.4~P1.7來控制各線圈的接通與切斷,電路如圖所示。
三、步進(jìn)電機(jī)的驅(qū)動(dòng)實(shí)例
要求:控制電路如圖2所示,開機(jī)后,電機(jī)不轉(zhuǎn),按下啟動(dòng)鍵,電機(jī)旋轉(zhuǎn),速度為25轉(zhuǎn)/分,按下加1鍵,速度增加,按下減1鍵,速度降低,最高速度為100轉(zhuǎn)/分,最低轉(zhuǎn)帶為25轉(zhuǎn)/分,按下停止鍵,電機(jī)停轉(zhuǎn)。速度值要求在數(shù)碼管上顯示出來。
1、要求分析
按上面的分析,改變轉(zhuǎn)速,只要改變P1.0~P1.3輪流變低電平的時(shí)間即可達(dá)到要求,這個(gè)時(shí)間不應(yīng)采用延時(shí)來實(shí)現(xiàn),因?yàn)闀?huì)影響到其他功能的實(shí)現(xiàn)。這里以定時(shí)的方式來實(shí)現(xiàn)。下面首先計(jì)算一下定時(shí)時(shí)間。
按要求,最低轉(zhuǎn)速為25轉(zhuǎn)/分,而上述步進(jìn)電機(jī)的步距角為7.5,即每48個(gè)脈沖為1周,即在最低轉(zhuǎn)速時(shí),要求為1200脈沖/分,相當(dāng)于50ms/脈沖。而在最高轉(zhuǎn)速時(shí),要求為100轉(zhuǎn)/分,即48000脈沖/分,相當(dāng)于12.5ms/脈沖??梢粤谐鱿卤恚?/p>
表2 步進(jìn)電機(jī)轉(zhuǎn)速與定時(shí)器定時(shí)常數(shù)關(guān)系
速度 | 單步時(shí)間(us) | TH1 | TL1 | 實(shí)際定時(shí)(us) |
25 | 50000 | 76 | 0 | 49996.8 |
26 | 48077 | 82 | 236 | 48074.18 |
27 | 46296 | 89 | 86 | 46292.61 |
28 | 44643 | 95 | 73 | 44640.155 |
… | … | … | … | … |
100 | 12500 | 211 | 0 | 12499.2 |
表中不僅計(jì)算出了TH1和TL1,而且還計(jì)算出了在這個(gè)定時(shí)常數(shù)下,真實(shí)的定時(shí)時(shí)間,可以根據(jù)這個(gè)計(jì)算值來估算真實(shí)速度與理論速度的誤差值。
表中TH1和TL1是根據(jù)定時(shí)時(shí)間算出來的定時(shí)初值,這里用到的晶振是11.0592M。有了上述表格,程序就不難實(shí)現(xiàn)了,使用定時(shí)/計(jì)數(shù)器T1為定時(shí)器,定時(shí)時(shí)間到后切換輸出腳即可。
2、程序?qū)崿F(xiàn)
定義DSB-1A實(shí)驗(yàn)板的S1為啟動(dòng)鍵,S2為停止鍵,S3為加1鍵,S4為減1鍵,程序如下:
StartEnd
MinSpd
MaxSpd
Speed
DjCount
Hidden
Counter
DISPBUF
ORG
AJMP
ORG 000BH
JMP DISP
ORG 001BH
JMP DJZD
ORG
MAIN:
MOV A,#Hidden
MOV DispBuf,A
MOV DispBuf+1,A
MOV DispBuf+2,A
MOV DjCount,#11110111B
MOV TMOD,#00010001B ;
MOV TH0,#HIGH(65536-3000)
MOV TL0,#LOW(65536-3000)
MOV TH1,#0FFH;
MOV TL1,#0FFH
SETB TR0
SETB EA
SETB ET0
SETB ET1
LOOP: ACALL
m_NEXT1:
MOV A,Speed
MOV B,#10
DIV AB
MOV DispBuf+5,B ;最低位
MOV B,#10
DIV AB
MOV DispBuf+4,B
MOV DispBuf+3,A
JB StartEnd,m_Next2
CLR TR1 ;關(guān)閉電機(jī)
ORL P1,#11110000B
JMP LOOP
m_Next2:
SETB TR1 ;啟動(dòng)電機(jī)
評(píng)論