基于PIC16C621A和A3955的步進(jìn)電機(jī)驅(qū)動(dòng)器設(shè)計(jì)
摘要: 本文介紹了利用A3955對(duì)步進(jìn)電機(jī)實(shí)現(xiàn)控制的方法及其電路設(shè)計(jì)。
關(guān)鍵詞: 步進(jìn)電機(jī);PIC16C621A; A3955;脈寬調(diào)制
引言
步進(jìn)電機(jī)廣泛應(yīng)用于對(duì)精度要求比較高的運(yùn)動(dòng)控制系統(tǒng)中,如機(jī)器人、打印機(jī)、軟盤驅(qū)動(dòng)器、繪圖儀、機(jī)械閥門控制器等。目前,對(duì)步進(jìn)電機(jī)的控制主要有由分散器件組成的環(huán)形脈沖分配器、軟件環(huán)形脈沖分配器、專用集成芯片環(huán)形脈沖分配器等。分散器件組成的環(huán)形脈沖分配器體積比較大,同時(shí)由于分散器件的延時(shí),其可靠性大大降低;軟件環(huán)形分配器要占用主機(jī)的運(yùn)行時(shí)間,降低了速度;專用集成芯片環(huán)形脈沖分配器集成度高、可靠性好,但其適應(yīng)性受到限制,同時(shí)開(kāi)發(fā)周期長(zhǎng)、需求費(fèi)用較高。
步進(jìn)電機(jī)控制
步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號(hào)轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號(hào),步進(jìn)電機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度,因此非常適合于單片機(jī)控制。步進(jìn)電機(jī)可分為反應(yīng)式步進(jìn)電機(jī)(VR)、永磁式步進(jìn)電機(jī)(PM)和混合式步進(jìn)電機(jī)(HB)。 步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是,它是通過(guò)輸入脈沖信號(hào)來(lái)進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動(dòng)角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號(hào)頻率決定。步進(jìn)電機(jī)的驅(qū)動(dòng)電路根據(jù)控制信號(hào)工作,控制信號(hào)由單片機(jī)產(chǎn)生。其基本控制如下:
*控制換相順序—通電換相這一過(guò)程稱為脈沖分配。例如:混合式步進(jìn)電機(jī)的工作方式,其各相通電順序?yàn)锳-B-C-D,通電控制脈沖必須嚴(yán)格按照這一順序分別控制A,B,C,D相的通斷,這就是所謂脈沖環(huán)形分配器。
*控制步進(jìn)電機(jī)的轉(zhuǎn)向—如果給定工作方式正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn),如果按反序通電換相,則電機(jī)就反轉(zhuǎn)。
*控制步進(jìn)電機(jī)的速度—如果給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。
PIC16C621A和A3955
PIC16C621A是美國(guó)Microchip公司推出的一種性價(jià)比很高的8位單片機(jī)。它價(jià)格低、封裝小、采用CMOS工藝,具有OTP型,開(kāi)發(fā)起來(lái)很方便。它內(nèi)含4路8位高速ADC,將它擴(kuò)展到11位后,可以大大提高單片機(jī)應(yīng)用系統(tǒng)的性價(jià)比。主要特性為:高性能的RISC結(jié)構(gòu)CPU,精簡(jiǎn)的指定集。指令周期時(shí)間為200nS。八級(jí)硬件堆棧,直接,間接,相對(duì)三種尋址方式。雙向可編程設(shè)置I/O,2路比較輸出/PWM輸出,16位定時(shí)器/計(jì)數(shù)器,內(nèi)置上電復(fù)位電路,程序保密位,可防程序代碼的非法拷貝。A3955是美國(guó)Allegro公司推出的一款性價(jià)比很高的脈寬調(diào)制電流輸出的電機(jī)驅(qū)動(dòng)芯片。主要特性為:最大1.5A的最大驅(qū)動(dòng)電流,最高50V的供電電壓,帶有過(guò)熱自動(dòng)關(guān)斷保護(hù)電路,欠電壓鎖定(UVLO)保護(hù),輸出抗浪涌的瞬間保護(hù)功能,自帶PWM 電流控制,3位的線性DAC,帶細(xì)分控制,不同組合不同的細(xì)分?jǐn)?shù),最多8細(xì)分。
硬件設(shè)計(jì)
通常步進(jìn)電機(jī)的脈沖控制是由邏輯電路或?qū)S眯酒瑢?shí)現(xiàn)的脈沖環(huán)形分配的,因A3955不自帶環(huán)形分配功能,本設(shè)計(jì)采用兩片A3955驅(qū)動(dòng)步進(jìn)電機(jī)的兩個(gè)線圈,來(lái)實(shí)現(xiàn)脈沖環(huán)形分配的實(shí)現(xiàn)。
本設(shè)計(jì)采用脈沖加方向的步進(jìn)電機(jī)控制方式,應(yīng)用于驅(qū)動(dòng)二相或四相混合式步進(jìn)電機(jī)。電機(jī)的出線方式不同,與驅(qū)動(dòng)器的連接也不同,一般有以下幾種方式:
*對(duì)于二相四根線電機(jī),可以直接和驅(qū)動(dòng)器相連(見(jiàn)圖1);
*對(duì)于四相六根線電機(jī),中間抽頭的二根線懸空不接,其它四根線和驅(qū)動(dòng)器相連(見(jiàn)圖1)。
圖1 二相四根線電機(jī)與驅(qū)動(dòng)器連接
具體硬件如圖2,CLK 為外部脈沖輸入端,DIR為外部方向輸入端,步進(jìn)脈沖信號(hào)CLK用于控制步進(jìn)電機(jī)的位置和速度,本驅(qū)動(dòng)器的設(shè)計(jì)為CLK信號(hào)為上升沿有效,要求CLK信號(hào)的驅(qū)動(dòng)電流為8-15mA,對(duì)CLK的脈沖寬度也有一定的要求,一般不小于5mS。方向電平信號(hào)DIR用于控制步進(jìn)電機(jī)的旋轉(zhuǎn)方向。此端為高電平時(shí),電機(jī)逆時(shí)針?lè)较蜣D(zhuǎn),此端為低電平時(shí),電機(jī)為順時(shí)針?lè)较蜣D(zhuǎn)。CLK和DIR信號(hào)默認(rèn)幅值為5V,如果不是5V則須外部另加限流電阻R,如信號(hào)幅度為12V時(shí),加680W的電阻。MS0,MS1,MS2 為細(xì)分輸入端,最多為8細(xì)分(見(jiàn)表1)。
圖2 具體硬件電路圖
軟件設(shè)計(jì)
為了防止程序進(jìn)入到非程序區(qū),在非程序區(qū)設(shè)置攔截措施,使程序進(jìn)入陷阱,然后強(qiáng)迫程序回到初始狀態(tài),從而保護(hù)程序的正常運(yùn)行。程序設(shè)計(jì)首先判斷細(xì)分?jǐn)?shù),其次判斷方向信號(hào)DIR,最后判斷脈沖信號(hào)CLK,當(dāng)沒(méi)有脈沖信號(hào)時(shí),程序進(jìn)入休眠狀態(tài),隨時(shí)準(zhǔn)備接收中斷來(lái)的信號(hào),進(jìn)入程序區(qū),根據(jù)判斷的細(xì)分?jǐn)?shù)和方向信號(hào)進(jìn)行電機(jī)的驅(qū)動(dòng)。代碼如下:
MAIN CLRF PORTA
BSF STATUS,5
MOVLW 0x07 ;整步
MOVWF ADCON1
MOVLW 0X06 ;半步
MOVWF OPTIONREG
MOVLW 0x04 ;四細(xì)分
MOVWF TRISA
CLRF PORTB
BSF STATUS,5
MOVLW 0X00 ;八細(xì)分
MOVWF TRISB
BCF STATUS,5
MOVWF TMR0
TEST BTFSS PORTA,0
GOTO CW ;正轉(zhuǎn)
BTFSC PORTA,0
GOTO CCW ;反轉(zhuǎn)
INT MOVLW 0XFF ;中斷接收脈沖
MOVWF TMR0
BCF INTCON,2
RETFIE
結(jié)語(yǔ)
采用此設(shè)計(jì)的八細(xì)分步進(jìn)電機(jī)驅(qū)動(dòng)器,在驅(qū)動(dòng)二相或四相混合式步進(jìn)電機(jī)時(shí)運(yùn)動(dòng)平穩(wěn),速度快,噪音低,控制精高,而且專用芯片細(xì)分?jǐn)?shù)可選。在外觀采用鋁鎂合金,散熱性好,價(jià)格低廉,可廣泛應(yīng)用于需要驅(qū)動(dòng)電流小于1.5A的混合式兩相或四相步進(jìn)電機(jī)的系統(tǒng)中。
參考文獻(xiàn):
1. PIC16CXX Datasheet,美國(guó)Microchip公司
2. A3955 Datasheet,美國(guó)Allegro公司
3. 哈爾濱科利達(dá)智能控制公司的KLD-4H042NA使用說(shuō)明書
4. 王有諸、李拉成,PIC系列單片機(jī)接口技術(shù)及應(yīng)用系統(tǒng)設(shè)計(jì),北京航空航天大學(xué)出版社,2000年
評(píng)論