二相步進電機驅動芯片TA8435H及其應用
發布時間:2007/4/23 0:00:00 訪問次數:1033
腳1(S-GND):信號地;
腳2(RESET):復位端,低電平有效,當該端有效時,電路復位到起始狀態,此時在任何激勵方式下,輸出各相都置于它們的原點;
引腳3(ENABLE):使能端,低電平有效;當該端為高電平時電路處于維持狀態,此時各相輸出被強制關閉;
引腳4(OSC):該腳外接電容的典型值可決定芯片內部驅動級的斬波頻率(15kHz~80kHz),計算公式為:
fosc=1/5.15×COSC
式中,COSC的單位為μFfOSC的單位為kHz。
腳5(CW/CCW):正、反轉控制引腳;
腳6、7(CK2、CK1):時鐘輸入端,可選擇單時鐘輸入或雙時鐘輸入,最大時鐘輸入頻率為5kHz;
腳8、9(M1、M2):選擇激勵方式,00表示步進電機工作在整步方式,10為半步方式,01為1/4細分方式,11為1/8細分方式;
腳10(REF IN):VNF輸入控制,接高電平時VNF為0.8V,接低電平時VNF為0.5V;
腳11(MO):輸出監視,用于監視輸出電流峰值位置;
腳13(VCC):邏輯電路供電引腳,一般為5V;
腳15、24(VMB、VMA):B相和A相負載電源端;
腳16、19( B、B):B相輸出引腳;
腳17、22(PG-B、PG-A):B相和A相負載地;
腳18、21(NFB、NFA):B相和A相電流檢測端,由該引腳外接電阻和REF-IN引腳控制的輸出電流為:IO=VNF/RNF
腳20、23( A、A):A相輸出引腳。
3 實際應用電路
筆者為省重點科研項目《智能化大氣污染系統的研究》所設計的電路共需驅動三個二相步進電機,以分別完成進樣、采樣和閥門控制。
圖2是TA8435H的一個典型應用電路,該電路用一片TA8435H來驅動一個步進電機,輸入信號有使能控制、正反轉控制和時鐘輸入,通過光耦可將驅動器與輸入級進行電隔離,以起到邏輯電平隔離和保護作用;該電路工作在1/8細分模式(M1、M1接高電平),可減小低速時的振動,R8和C1組成復位電路,D1~D4快恢復二極管可用來泄放繞組電流由于REF IN引腳接高電平,因此VNF為0.8V,輸出級斬波電流為VNF/RNF=0.8/0.8=1A,選用不同的二相步進電機時,應根據其電流大小選擇合適的R13和R14。
圖3是步進電機核心控制電路,該電路能夠控制如圖2所示的三個步進電機驅動器。本設計采用外部定時/計數器82C53來給TA8435H提供步進脈沖。因為82C53有三個定時/計數器,可以驅動三個步進電機控制器,因而能滿足設計要求;另外,82C53的工作方式3是一種方波速率發生器。在這種方式下,當CPU設置控制字后,輸出將為高電平,在寫完計數值后就自動開始計數,輸出保持高電平;而當計到一半計數值時,輸出變低直到計數到0,此后輸出又變高以重新開始計數。在計數期間寫入新的計數值并不影響現行的計數過程。但是若在方波半周期結束前和新計數值寫入后收到GATE脈沖,那么計數器將在下一個CLK脈沖時裝入新的計數值并以這個計數值開始計數。否則,新的計數值將在現行半周期結束時裝入計數值。因此,只要寫入不同的計數初值,就能控制步進電機的轉速而不需要用軟件來控制高低電平的轉換,因而編程比較容易。本設計將82C53的GATE端全部接高電平,新的計數值將在現行半周期結束時起作用。
由于采用了定時/計數器82C53作為步進脈沖產生電路,因此系統編程十分簡單,以下語句為控制一個步進電機的相應程序代碼。
#include <reg52.h>
#include <absacc.h>
#incl
腳1(S-GND):信號地;
腳2(RESET):復位端,低電平有效,當該端有效時,電路復位到起始狀態,此時在任何激勵方式下,輸出各相都置于它們的原點;
引腳3(ENABLE):使能端,低電平有效;當該端為高電平時電路處于維持狀態,此時各相輸出被強制關閉;
引腳4(OSC):該腳外接電容的典型值可決定芯片內部驅動級的斬波頻率(15kHz~80kHz),計算公式為:
fosc=1/5.15×COSC
式中,COSC的單位為μFfOSC的單位為kHz。
腳5(CW/CCW):正、反轉控制引腳;
腳6、7(CK2、CK1):時鐘輸入端,可選擇單時鐘輸入或雙時鐘輸入,最大時鐘輸入頻率為5kHz;
腳8、9(M1、M2):選擇激勵方式,00表示步進電機工作在整步方式,10為半步方式,01為1/4細分方式,11為1/8細分方式;
腳10(REF IN):VNF輸入控制,接高電平時VNF為0.8V,接低電平時VNF為0.5V;
腳11(MO):輸出監視,用于監視輸出電流峰值位置;
腳13(VCC):邏輯電路供電引腳,一般為5V;
腳15、24(VMB、VMA):B相和A相負載電源端;
腳16、19( B、B):B相輸出引腳;
腳17、22(PG-B、PG-A):B相和A相負載地;
腳18、21(NFB、NFA):B相和A相電流檢測端,由該引腳外接電阻和REF-IN引腳控制的輸出電流為:IO=VNF/RNF
腳20、23( A、A):A相輸出引腳。
3 實際應用電路
筆者為省重點科研項目《智能化大氣污染系統的研究》所設計的電路共需驅動三個二相步進電機,以分別完成進樣、采樣和閥門控制。
圖2是TA8435H的一個典型應用電路,該電路用一片TA8435H來驅動一個步進電機,輸入信號有使能控制、正反轉控制和時鐘輸入,通過光耦可將驅動器與輸入級進行電隔離,以起到邏輯電平隔離和保護作用;該電路工作在1/8細分模式(M1、M1接高電平),可減小低速時的振動,R8和C1組成復位電路,D1~D4快恢復二極管可用來泄放繞組電流由于REF IN引腳接高電平,因此VNF為0.8V,輸出級斬波電流為VNF/RNF=0.8/0.8=1A,選用不同的二相步進電機時,應根據其電流大小選擇合適的R13和R14。
圖3是步進電機核心控制電路,該電路能夠控制如圖2所示的三個步進電機驅動器。本設計采用外部定時/計數器82C53來給TA8435H提供步進脈沖。因為82C53有三個定時/計數器,可以驅動三個步進電機控制器,因而能滿足設計要求;另外,82C53的工作方式3是一種方波速率發生器。在這種方式下,當CPU設置控制字后,輸出將為高電平,在寫完計數值后就自動開始計數,輸出保持高電平;而當計到一半計數值時,輸出變低直到計數到0,此后輸出又變高以重新開始計數。在計數期間寫入新的計數值并不影響現行的計數過程。但是若在方波半周期結束前和新計數值寫入后收到GATE脈沖,那么計數器將在下一個CLK脈沖時裝入新的計數值并以這個計數值開始計數。否則,新的計數值將在現行半周期結束時裝入計數值。因此,只要寫入不同的計數初值,就能控制步進電機的轉速而不需要用軟件來控制高低電平的轉換,因而編程比較容易。本設計將82C53的GATE端全部接高電平,新的計數值將在現行半周期結束時起作用。
由于采用了定時/計數器82C53作為步進脈沖產生電路,因此系統編程十分簡單,以下語句為控制一個步進電機的相應程序代碼。
#include <reg52.h>
#include <absacc.h>
#incl