《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于L297/L298芯片步進(jìn)電機(jī)的單片機(jī)控制
基于L297/L298芯片步進(jìn)電機(jī)的單片機(jī)控制
OFweek電子工程網(wǎng)
摘要: 步進(jìn)電動(dòng)機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成角位移或線位移的精密執(zhí)行元件,由于步進(jìn)電機(jī)具有控制方便、體積小等特點(diǎn),所以在數(shù)控系統(tǒng)、自動(dòng)生產(chǎn)線、自動(dòng)化儀表、繪圖機(jī)和計(jì)算機(jī)外圍設(shè)備中得到廣泛應(yīng)用。
Abstract:
Key words :

  1 引言

  步進(jìn)電動(dòng)機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成角位移或線位移的精密執(zhí)行元件,由于步進(jìn)電機(jī)具有控制方便、體積小等特點(diǎn),所以在數(shù)控系統(tǒng)、自動(dòng)生產(chǎn)線、自動(dòng)化儀表、繪圖機(jī)和計(jì)算機(jī)外圍設(shè)備中得到廣泛應(yīng)用。微電子學(xué)的迅速發(fā)展和微型計(jì)算機(jī)的普及與應(yīng)用,為步進(jìn)電動(dòng)機(jī)的應(yīng)用開辟了廣闊前景,使得以往用硬件電路構(gòu)成的龐大復(fù)雜的控制器得以用軟件實(shí)現(xiàn),既降低了硬件成本又提高了控制的靈活性,可靠性及多功能性。市場(chǎng)上有很多現(xiàn)成的步進(jìn)電機(jī)控制機(jī)構(gòu),但價(jià)格都偏高。應(yīng)用SGS公司推出的L297L298兩芯片可方便的組成步進(jìn)電機(jī)驅(qū)動(dòng)器,并結(jié)合AT89C52單片機(jī)進(jìn)行控制,即可以實(shí)現(xiàn)用相對(duì)便宜的價(jià)格組成一個(gè)性能不錯(cuò)的步進(jìn)電機(jī)驅(qū)動(dòng)電路。

  2 工作原理

  由于步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成直線或角位移的執(zhí)行元件,它不能直接接到交直流電源上,而必須使用專用設(shè)備-步進(jìn)電機(jī)控制驅(qū)動(dòng)器 典型步進(jìn)電機(jī)控制系統(tǒng)如圖1所示:控制器可以發(fā)出脈沖頻率從幾赫茲到幾十千赫茲可以連續(xù)變化的脈沖信號(hào),它為環(huán)形分配器提供脈沖序列。環(huán)形分配器的主要功能是把來自控制環(huán)節(jié)的脈沖序列按一定的規(guī)律分配后,經(jīng)過功率放大器的放大加到步進(jìn)電機(jī)驅(qū)動(dòng)電源的各項(xiàng)輸人端,以驅(qū)動(dòng)步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)。環(huán)形分配器主要有兩大類:一類是用計(jì)算機(jī)軟件設(shè)計(jì)的方法實(shí)現(xiàn)環(huán)分器要求的功能,通常稱軟環(huán)形分配器。另一類是用硬件構(gòu)成的環(huán)形分配器,通常稱為硬環(huán)形分配器。功率放大器主要對(duì)環(huán)形分配器的較小輸出信號(hào)進(jìn)行放大。以達(dá)到驅(qū)動(dòng)步進(jìn)電機(jī)目的。

  

  圖1 典型步進(jìn)電機(jī)控制框圖

  3 硬件組成

  文中所控制的步進(jìn)電機(jī)是四相單極式35BY48HJ120減速步進(jìn)電動(dòng)機(jī)。本文所設(shè)計(jì)的步進(jìn)電機(jī)控制驅(qū)動(dòng)器的框圖如圖2所示。它由AT89C52單片機(jī)、光電耦和器、集成芯片L297和L298組成。AT89C52是美國(guó)ATMEL的低電壓、高性能8位CMOS單片機(jī)。片內(nèi)置8K字節(jié)可重復(fù)擦寫的

  Flash閃速存儲(chǔ)器。256字節(jié)RAM。3個(gè)16位定時(shí)器??删幊檀蠻ART通道。對(duì)完成步進(jìn)電機(jī)的簡(jiǎn)單控制已足以勝任。

  

  圖2 本文提出的步進(jìn)電機(jī)控制驅(qū)動(dòng)器框圖

  L297是步進(jìn)電動(dòng)機(jī)控制器(包括環(huán)形分配器)。L298是雙H橋式驅(qū)動(dòng)器。它們所組成的微處理器至雙橋式步進(jìn)電動(dòng)機(jī)的接口如圖3所示。這種方式結(jié)合的優(yōu)點(diǎn)是,需要的元件很少。從而使得裝配成本低,可靠性高和占空間少。并且通過軟件開發(fā)??梢院?jiǎn)化和減輕微型計(jì)算機(jī)的負(fù)擔(dān)。另外,L297和L298都是獨(dú)立的芯片。所以應(yīng)用是十分靈活的。

  

  L297芯片是一種硬件環(huán)分集成芯片。它可產(chǎn)生四相驅(qū)動(dòng)信號(hào),用于計(jì)算機(jī)控制的兩相雙極或四相單極步進(jìn)電機(jī) 它的心臟部分是一組譯碼器它能產(chǎn)生各種所需的相序。這一部分是由兩種輸入模式控制,方向控制(CW/CCW) 和HALF/FULL 以及步進(jìn)式時(shí)鐘CLOCK.它將譯碼器從一階梯推進(jìn)至另一階梯。譯碼器有四個(gè)輸出點(diǎn)連接到輸出邏輯部分,提供抑制和斬波功能所需的相序。因此L297能產(chǎn)生三種相序信號(hào),對(duì)應(yīng)于三種不同的工作方式:即半步方式(HALF STEP);基本步距(FULL STEP,整步)一相激勵(lì)方式;基本步距兩相激勵(lì)方式。脈沖分配器內(nèi)部是一個(gè)3bit可逆計(jì)數(shù)器,加上一些組合邏輯。產(chǎn)生每周期8步格雷碼時(shí)序信號(hào),這也就是半步工作方式的時(shí)序信號(hào)。此時(shí)HALF/FULL信號(hào)為高電。若HALF/FULL取低電平,得到基本步距工作方式。即雙四拍全階梯工作方式。

  L297另一個(gè)重要組成是由兩個(gè)PWM 斬波器來控制相繞組電流,實(shí)現(xiàn)恒流斬波控制以獲得良好的矩頻特性。每個(gè)斬波器由一個(gè)比較器、一個(gè)RS觸發(fā)器和外接采樣電阻組成,并設(shè)有一個(gè)公用振蕩器,向兩個(gè)斬波器提供觸發(fā)脈沖信號(hào)。圖3中,頻率f是由外接16腳的RC網(wǎng)絡(luò)決定的, 當(dāng)R》10kΩ 時(shí),f=1/0.69RC。當(dāng)時(shí)鐘振蕩器脈沖使觸發(fā)器置1,電機(jī)繞組相電流上升,采樣電阻的R 上電壓上升到基準(zhǔn)電壓Uref時(shí),比

  較器翻轉(zhuǎn),使觸發(fā)器復(fù)位,功率晶體管關(guān)斷,電流下降,等待下一個(gè)振蕩脈沖的到來。這樣,觸發(fā)器輸出的是恒頻PWM信號(hào),調(diào)制L297的輸出信號(hào),繞組相電流峰值由Uref確定。L297的CONTROL端的輸入決定斬波器對(duì)相位線A、B、C、D或抑制線INH1和INH2起作用。CONTROL為高電平時(shí),對(duì)A、B、C、D有控制作用;而為低電平時(shí),則對(duì)INH1和INH2起控制作用,從而可對(duì)電動(dòng)機(jī)轉(zhuǎn)向和轉(zhuǎn)矩進(jìn)行控制。

  L298芯片是一種高壓、大電流雙全橋式驅(qū)動(dòng)器,其設(shè)計(jì)是為接受標(biāo)準(zhǔn)TTL邏輯電平信號(hào)和驅(qū)動(dòng)電感負(fù)載的,例如繼電器、圓筒形線圈、直流電動(dòng)機(jī)和步進(jìn)電動(dòng)機(jī) 具有兩抑制輸入來使器件不受輸入信號(hào)影響。每橋的三級(jí)管的射極是連接在一起的,相應(yīng)外接線端可用來連接外設(shè)傳感電阻??砂仓昧硪惠斎腚娫?,使邏輯能在低電壓下工作。L298芯片是具有15個(gè)引出腳的多瓦數(shù)直插式封裝的集成芯片。

  圖3中.AT89C52通過串口經(jīng)MAX232電平轉(zhuǎn)換之后與微機(jī)相連。接受上位機(jī)指令。向L297發(fā)出時(shí)鐘信號(hào)、正反轉(zhuǎn)信號(hào)、復(fù)位信號(hào)及使能控制等信號(hào)。電路中,電阻R13,R15用來調(diào)節(jié)斬波器電路的參考電壓,該電壓將與通過管腳13,14所反饋的電位的大小比較,來確定是否進(jìn)行斬波控制,以達(dá)到控制電機(jī)繞組電流峰值、保護(hù)步進(jìn)電機(jī)的目的

  由于L297內(nèi)部帶有斬波恒流電路,繞組相電流峰值由Uref確定。當(dāng)采用兩片L297通過L298分別驅(qū)動(dòng)步進(jìn)電機(jī)的兩繞組,且通過兩個(gè)D/A轉(zhuǎn)換器改變每相繞組的Uref時(shí),即組成了步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)電路。另外,為了有效地抑制電磁干擾,提高系統(tǒng)的可靠性,在單片機(jī)與步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)回路中利用兩個(gè)16引腳光電耦合器件TLP521-4組成如圖3所示的隔離電路。其作用是切斷了單片機(jī)與步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)回路之間電的直接聯(lián)系,實(shí)現(xiàn)了單片機(jī)與驅(qū)動(dòng)回路系統(tǒng)地線的分別聯(lián)接。防止處于大電流感性負(fù)載下工作的驅(qū)動(dòng)電路產(chǎn)生的干擾信號(hào)以及電網(wǎng)負(fù)載突變產(chǎn)生的干擾信號(hào)通過線路串入單片機(jī),影響單片機(jī)的正常工作。

  1 引言

  步進(jìn)電動(dòng)機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成角位移或線位移的精密執(zhí)行元件,由于步進(jìn)電機(jī)具有控制方便、體積小等特點(diǎn),所以在數(shù)控系統(tǒng)、自動(dòng)生產(chǎn)線、自動(dòng)化儀表、繪圖機(jī)和計(jì)算機(jī)外圍設(shè)備中得到廣泛應(yīng)用。微電子學(xué)的迅速發(fā)展和微型計(jì)算機(jī)的普及與應(yīng)用,為步進(jìn)電動(dòng)機(jī)的應(yīng)用開辟了廣闊前景,使得以往用硬件電路構(gòu)成的龐大復(fù)雜的控制器得以用軟件實(shí)現(xiàn),既降低了硬件成本又提高了控制的靈活性,可靠性及多功能性。市場(chǎng)上有很多現(xiàn)成的步進(jìn)電機(jī)控制機(jī)構(gòu),但價(jià)格都偏高。應(yīng)用SGS公司推出的L297和L298兩芯片可方便的組成步進(jìn)電機(jī)驅(qū)動(dòng)器,并結(jié)合AT89C52單片機(jī)進(jìn)行控制,即可以實(shí)現(xiàn)用相對(duì)便宜的價(jià)格組成一個(gè)性能不錯(cuò)的步進(jìn)電機(jī)驅(qū)動(dòng)電路。

  2 工作原理

  由于步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成直線或角位移的執(zhí)行元件,它不能直接接到交直流電源上,而必須使用專用設(shè)備-步進(jìn)電機(jī)控制驅(qū)動(dòng)器 典型步進(jìn)電機(jī)控制系統(tǒng)如圖1所示:控制器可以發(fā)出脈沖頻率從幾赫茲到幾十千赫茲可以連續(xù)變化的脈沖信號(hào),它為環(huán)形分配器提供脈沖序列。環(huán)形分配器的主要功能是把來自控制環(huán)節(jié)的脈沖序列按一定的規(guī)律分配后,經(jīng)過功率放大器的放大加到步進(jìn)電機(jī)驅(qū)動(dòng)電源的各項(xiàng)輸人端,以驅(qū)動(dòng)步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)。環(huán)形分配器主要有兩大類:一類是用計(jì)算機(jī)軟件設(shè)計(jì)的方法實(shí)現(xiàn)環(huán)分器要求的功能,通常稱軟環(huán)形分配器。另一類是用硬件構(gòu)成的環(huán)形分配器,通常稱為硬環(huán)形分配器。功率放大器主要對(duì)環(huán)形分配器的較小輸出信號(hào)進(jìn)行放大。以達(dá)到驅(qū)動(dòng)步進(jìn)電機(jī)目的。

  

  圖1 典型步進(jìn)電機(jī)控制框圖

  3 硬件組成

  文中所控制的步進(jìn)電機(jī)是四相單極式35BY48HJ120減速步進(jìn)電動(dòng)機(jī)。本文所設(shè)計(jì)的步進(jìn)電機(jī)控制驅(qū)動(dòng)器的框圖如圖2所示。它由AT89C52單片機(jī)、光電耦和器、集成芯片L297和L298組成。AT89C52是美國(guó)ATMEL的低電壓、高性能8位CMOS單片機(jī)。片內(nèi)置8K字節(jié)可重復(fù)擦寫的

  Flash閃速存儲(chǔ)器。256字節(jié)RAM。3個(gè)16位定時(shí)器??删幊檀蠻ART通道。對(duì)完成步進(jìn)電機(jī)的簡(jiǎn)單控制已足以勝任。

  

  圖2 本文提出的步進(jìn)電機(jī)控制驅(qū)動(dòng)器框圖

  L297是步進(jìn)電動(dòng)機(jī)控制器(包括環(huán)形分配器)。L298是雙H橋式驅(qū)動(dòng)器。它們所組成的微處理器至雙橋式步進(jìn)電動(dòng)機(jī)的接口如圖3所示。這種方式結(jié)合的優(yōu)點(diǎn)是,需要的元件很少。從而使得裝配成本低,可靠性高和占空間少。并且通過軟件開發(fā)。可以簡(jiǎn)化和減輕微型計(jì)算機(jī)的負(fù)擔(dān)。另外,L297和L298都是獨(dú)立的芯片。所以應(yīng)用是十分靈活的。

  

  L297芯片是一種硬件環(huán)分集成芯片。它可產(chǎn)生四相驅(qū)動(dòng)信號(hào),用于計(jì)算機(jī)控制的兩相雙極或四相單極步進(jìn)電機(jī) 它的心臟部分是一組譯碼器它能產(chǎn)生各種所需的相序。這一部分是由兩種輸入模式控制,方向控制(CW/CCW) 和HALF/FULL 以及步進(jìn)式時(shí)鐘CLOCK.它將譯碼器從一階梯推進(jìn)至另一階梯。譯碼器有四個(gè)輸出點(diǎn)連接到輸出邏輯部分,提供抑制和斬波功能所需的相序。因此L297能產(chǎn)生三種相序信號(hào),對(duì)應(yīng)于三種不同的工作方式:即半步方式(HALF STEP);基本步距(FULL STEP,整步)一相激勵(lì)方式;基本步距兩相激勵(lì)方式。脈沖分配器內(nèi)部是一個(gè)3bit可逆計(jì)數(shù)器,加上一些組合邏輯。產(chǎn)生每周期8步格雷碼時(shí)序信號(hào),這也就是半步工作方式的時(shí)序信號(hào)。此時(shí)HALF/FULL信號(hào)為高電。若HALF/FULL取低電平,得到基本步距工作方式。即雙四拍全階梯工作方式。

  L297另一個(gè)重要組成是由兩個(gè)PWM 斬波器來控制相繞組電流,實(shí)現(xiàn)恒流斬波控制以獲得良好的矩頻特性。每個(gè)斬波器由一個(gè)比較器、一個(gè)RS觸發(fā)器和外接采樣電阻組成,并設(shè)有一個(gè)公用振蕩器,向兩個(gè)斬波器提供觸發(fā)脈沖信號(hào)。圖3中,頻率f是由外接16腳的RC網(wǎng)絡(luò)決定的, 當(dāng)R》10kΩ 時(shí),f=1/0.69RC。當(dāng)時(shí)鐘振蕩器脈沖使觸發(fā)器置1,電機(jī)繞組相電流上升,采樣電阻的R 上電壓上升到基準(zhǔn)電壓Uref時(shí),比

  較器翻轉(zhuǎn),使觸發(fā)器復(fù)位,功率晶體管關(guān)斷,電流下降,等待下一個(gè)振蕩脈沖的到來。這樣,觸發(fā)器輸出的是恒頻PWM信號(hào),調(diào)制L297的輸出信號(hào),繞組相電流峰值由Uref確定。L297的CONTROL端的輸入決定斬波器對(duì)相位線A、B、C、D或抑制線INH1和INH2起作用。CONTROL為高電平時(shí),對(duì)A、B、C、D有控制作用;而為低電平時(shí),則對(duì)INH1和INH2起控制作用,從而可對(duì)電動(dòng)機(jī)轉(zhuǎn)向和轉(zhuǎn)矩進(jìn)行控制。

  L298芯片是一種高壓、大電流雙全橋式驅(qū)動(dòng)器,其設(shè)計(jì)是為接受標(biāo)準(zhǔn)TTL邏輯電平信號(hào)和驅(qū)動(dòng)電感負(fù)載的,例如繼電器、圓筒形線圈、直流電動(dòng)機(jī)和步進(jìn)電動(dòng)機(jī) 具有兩抑制輸入來使器件不受輸入信號(hào)影響。每橋的三級(jí)管的射極是連接在一起的,相應(yīng)外接線端可用來連接外設(shè)傳感電阻??砂仓昧硪惠斎腚娫?,使邏輯能在低電壓下工作。L298芯片是具有15個(gè)引出腳的多瓦數(shù)直插式封裝的集成芯片。

  圖3中.AT89C52通過串口經(jīng)MAX232電平轉(zhuǎn)換之后與微機(jī)相連。接受上位機(jī)指令。向L297發(fā)出時(shí)鐘信號(hào)、正反轉(zhuǎn)信號(hào)、復(fù)位信號(hào)及使能控制等信號(hào)。電路中,電阻R13,R15用來調(diào)節(jié)斬波器電路的參考電壓,該電壓將與通過管腳13,14所反饋的電位的大小比較,來確定是否進(jìn)行斬波控制,以達(dá)到控制電機(jī)繞組電流峰值、保護(hù)步進(jìn)電機(jī)的目的

  由于L297內(nèi)部帶有斬波恒流電路,繞組相電流峰值由Uref確定。當(dāng)采用兩片L297通過L298分別驅(qū)動(dòng)步進(jìn)電機(jī)的兩繞組,且通過兩個(gè)D/A轉(zhuǎn)換器改變每相繞組的Uref時(shí),即組成了步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)電路。另外,為了有效地抑制電磁干擾,提高系統(tǒng)的可靠性,在單片機(jī)與步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)回路中利用兩個(gè)16引腳光電耦合器件TLP521-4組成如圖3所示的隔離電路。其作用是切斷了單片機(jī)與步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)回路之間電的直接聯(lián)系,實(shí)現(xiàn)了單片機(jī)與驅(qū)動(dòng)回路系統(tǒng)地線的分別聯(lián)接。防止處于大電流感性負(fù)載下工作的驅(qū)動(dòng)電路產(chǎn)生的干擾信號(hào)以及電網(wǎng)負(fù)載突變產(chǎn)生的干擾信號(hào)通過線路串入單片機(jī),影響單片機(jī)的正常工作。

  4 軟件組成

  在該電路中,將P1.0口設(shè)為電機(jī)開始按鈕,P1.1,P1.2,P1.3為速度選擇按鈕。速度由低到高,P1.4為電機(jī)停止按鈕。并設(shè)三檔速度的最高速度依次為500pps、1000pps、2000pps 。RXD,TXD 已由MAX232電平轉(zhuǎn)換接出串口。此外,步進(jìn)電機(jī)其啟動(dòng),停止的頻率較低,一般在100-250Hz之間,而最高運(yùn)行頻率要求較高。通常為1-3kHz,為使其在啟動(dòng)、運(yùn)行和停止整個(gè)過程中,既不會(huì)失步,又能夠盡快精確地達(dá)到目標(biāo)位置,運(yùn)行速度都要有一個(gè)加速一恒速減速的過程。這里采用常用的離散辦法來逼近理想的近似梯形的升降速曲線,如圖5所示。即利用定時(shí)器中斷方式來不斷改變定時(shí)器裝載值的大小。

  

  本例中。為計(jì)算方便,把各離散點(diǎn)的速度所需的裝載值用公式轉(zhuǎn)化為各自所需的定時(shí)時(shí)間固化在系統(tǒng)的ROM 中,這里用TH0=(65536-time)/256,TL0=(65536-time)%256來計(jì)算裝載值,time表示各階梯所需定時(shí)時(shí)間。系統(tǒng)在運(yùn)行中用查表法查出所需的時(shí)間,從而大幅度減少占用CPU的時(shí)間,提高系統(tǒng)的相應(yīng)速度。因此。該程序主要由控制主程序、加減速子程序組成,主程序框圖如圖4所示。

  

  5 結(jié)論

  本文創(chuàng)新點(diǎn)在于提出應(yīng)用單片機(jī)和L297、L298集成電路構(gòu)成步進(jìn)電機(jī)控制驅(qū)動(dòng)器。使之具有元件少??煽啃愿?、占空間少、裝配成本低等優(yōu)點(diǎn)。通過軟件開發(fā),可以簡(jiǎn)化和減輕微型計(jì)算機(jī)的負(fù)擔(dān)。另外。在上面提出的在加減速程序中定時(shí)器的裝載值用式子計(jì)算不精確,這兩條賦值要執(zhí)行不少的時(shí)間。具體做的時(shí)候??芍苯影殉踔涤?jì)算出來或把除號(hào)用相加來計(jì)算。以達(dá)到精確的目的。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。