步進(jìn)電機(jī)在打印機(jī)驅(qū)動器的應(yīng)用
步進(jìn)電機(jī)廣泛應(yīng)用于對精度要求比較高的運(yùn)動控制系統(tǒng)中,如機(jī)器人、打印機(jī)、軟盤驅(qū)動器、繪圖儀、機(jī)械閥門控制器等。目前,對步進(jìn)電機(jī)http://bbsic.big-bit.com/的控制主要有由分散器件組成的環(huán)形脈沖分配器、軟件環(huán)形脈沖分配器、專用集成芯片環(huán)形脈沖分配器等。分散器件組成的環(huán)形脈沖分配器體積比較大,同時由于分散器件的延時,其可靠性大大降低;軟件環(huán)形分配器要占用主機(jī)的運(yùn)行時間,降低了速度;專用集成芯片環(huán)形脈沖分配器集成度高、可靠性好,但其適應(yīng)性受到限制,同時開發(fā)周期長、需求費(fèi)用較高。
本文引用地址:http://cafeforensic.com/article/201612/329303.htm步進(jìn)電機(jī)控制
步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號轉(zhuǎn)變成角位移,即給一個脈沖信號,步進(jìn)電機(jī)就轉(zhuǎn)動一個角度,因此非常適合于單片機(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)是,它是通過輸入脈沖信號來進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號頻率決定。步進(jìn)電機(jī)的驅(qū)動電路根據(jù)控制信號工作,控制信號由單片機(jī)產(chǎn)生。其基本控制如下:
*控制換相順序—通電換相這一過程稱為脈沖分配。例如:混合式步進(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ā)一個控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個脈沖,它會再轉(zhuǎn)一步。兩個脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。
PIC16C621A和A3955
PIC16C621A是美國Microchip公司推出的一種性價比很高的8位單片機(jī)。它價格低、封裝小、采用CMOS工藝,具有OTP型,開發(fā)起來很方便。它內(nèi)含4路8位高速ADC,將它擴(kuò)展到11位后,可以大大提高單片機(jī)應(yīng)用系統(tǒng)的性價比。主要特性為:高性能的RISC結(jié)構(gòu)CPU,精簡的指定集。指令周期時間為200nS。八級硬件堆棧,直接,間接,相對三種尋址方式。雙向可編程設(shè)置I/O,2路比較輸出/PWM輸出,16位定時器/計數(shù)器,內(nèi)置上電復(fù)位電路,程序保密位,可防程序代碼的非法拷貝。A3955是美國Allegro公司推出的一款性價比很高的脈寬調(diào)制電流輸出的電機(jī)驅(qū)動芯片。主要特性為:最大1。5A的最大驅(qū)動電流,最高50V的供電電壓,帶有過熱自動關(guān)斷保護(hù)電路,欠電壓鎖定(UVLO)保護(hù),輸出抗浪涌的瞬間保護(hù)功能,自帶PWM電流控制,3位的線性DAC,帶細(xì)分控制,不同組合不同的細(xì)分?jǐn)?shù),最多8細(xì)分。
硬件設(shè)計
通常步進(jìn)電機(jī)的脈沖控制是由邏輯電路或?qū)S眯酒瑢?shí)現(xiàn)的脈沖環(huán)形分配的,因A3955不自帶環(huán)形分配功能,本設(shè)計采用兩片A3955驅(qū)動步進(jìn)電機(jī)的兩個線圈,來實(shí)現(xiàn)脈沖環(huán)形分配的實(shí)現(xiàn)。
本設(shè)計采用脈沖加方向的步進(jìn)電機(jī)控制方式,應(yīng)用于驅(qū)動二相或四相混合式步進(jìn)電機(jī)。電機(jī)的出線方式不同,與驅(qū)動器的連接也不同,一般有以下幾種方式:
*對于二相四根線電機(jī),可以直接和驅(qū)動器相連(見圖1);
*對于四相六根線電機(jī),中間抽頭的二根線懸空不接,其它四根線和驅(qū)動器相連(見圖1)。
圖1二相四根線電機(jī)與驅(qū)動器連接
具體硬件如圖2,CLK為外部脈沖輸入端,DIR為外部方向輸入端,步進(jìn)脈沖信號CLK用于控制步進(jìn)電機(jī)的位置和速度,本驅(qū)動器的設(shè)計為CLK信號為上升沿有效,要求CLK信號的驅(qū)動電流為8-15mA,對CLK的脈沖寬度也有一定的要求,一般不小于5mS。方向電平信號DIR用于控制步進(jìn)電機(jī)的旋轉(zhuǎn)方向。此端為高電平時,電機(jī)逆時針方向轉(zhuǎn),此端為低電平時,電機(jī)為順時針方向轉(zhuǎn)。CLK和DIR信號默認(rèn)幅值為5V,如果不是5V則須外部另加限流電阻R,如信號幅度為12V時,加680W的電阻。MS0,MS1,MS2為細(xì)分輸入端,最多為8細(xì)分(見表1)。
圖2具體硬件電路圖
軟件設(shè)計
為了防止程序進(jìn)入到非程序區(qū),在非程序區(qū)設(shè)置攔截措施,使程序進(jìn)入陷阱,然后強(qiáng)迫程序回到初始狀態(tài),從而保護(hù)程序的正常運(yùn)行。程序設(shè)計首先判斷細(xì)分?jǐn)?shù),其次判斷方向信號DIR,最后判斷脈沖信號CLK,當(dāng)沒有脈沖信號時,程序進(jìn)入休眠狀態(tài),隨時準(zhǔn)備接收中斷來的信號,進(jìn)入程序區(qū),根據(jù)判斷的細(xì)分?jǐn)?shù)和方向信號進(jìn)行電機(jī)的驅(qū)動。代碼如下:
MAINCLRFPORTA
BSFSTATUS,5
MOVLW0x07;整步
MOVWFADCON1
MOVLW0X06;半步
MOVWFOPTIONREG
MOVLW0x04;四細(xì)分
MOVWFTRISA
CLRFPORTB
BSFSTATUS,5
MOVLW0X00;八細(xì)分
MOVWFTRISB
BCFSTATUS,5
MOVWFTMR0
TESTBTFSSPORTA,0
GOTOCW;正轉(zhuǎn)
BTFSCPORTA,0
GOTOCCW;反轉(zhuǎn)
INTMOVLW0XFF;中斷接收脈沖
MOVWFTMR0
BCFINTCON,2
RETFIE
結(jié)語
采用此設(shè)計的八細(xì)分步進(jìn)電機(jī)驅(qū)動器,在驅(qū)動二相或四相混合式步進(jìn)電機(jī)時運(yùn)動平穩(wěn),速度快,噪音低,控制精高,而且專用芯片細(xì)分?jǐn)?shù)可選。在外觀采用鋁鎂合金,散熱性好,價格低廉,可廣泛應(yīng)用于需要驅(qū)動電流小于1。5A的混合式兩相或四相步進(jìn)電機(jī)的系統(tǒng)中。
評論