基于GAL器件的步進(jìn)電機控制器的研究與設計
步進(jìn)電機廣泛應用于對精度要求比較高的運動(dòng)控制系統中,如機器人、打印機、軟盤(pán)驅動(dòng)器、繪圖儀、機械閥門(mén)控制器等。目前,對步進(jìn)電機的控制主要有由分散器件組成的環(huán)形脈沖分配器、軟件環(huán)形脈沖分配器、專(zhuān)用集成芯片環(huán)形脈沖分配器等。分散器件組成的環(huán)形脈沖分配器體積比較大,同時(shí)由于分散器件的延時(shí),其可靠性大大降低;軟件環(huán)形分配器要占用主機的運行時(shí)間,降低了速度;專(zhuān)用集成芯片環(huán)形脈沖分配器集成度高、可靠性好,但其適應性受到限制,同時(shí)開(kāi)發(fā)周期長(cháng)、需求費用較高。通用陣列邏輯GAL(Generic Array Logic)是美國Lattice公司研制的一種電可擦除的可編程的新型PLD器件。近幾年來(lái),GAL以其高性能、高可靠性、可擦除及輸出邏輯結構可組態(tài)等特性和100%的成品率,博得廣大用戶(hù)的信賴(lài)。它可以用來(lái)構成譯碼器、優(yōu)先級編碼器、多路開(kāi)關(guān)、比較器、移位寄存器、計數器、總線(xiàn)仲裁器等。采用GAL器件對三相步進(jìn)電機進(jìn)行控制,不僅簡(jiǎn)化了系統的結構,降低了成本,而且編程靈活方便,提高了系統的可靠性,使系統具有更強的適應性。
本文引用地址:http://dyxdggzs.com/article/79363.htm1 三相六拍步進(jìn)電機控制要求
矩角特性是步進(jìn)電機運行時(shí)一個(gè)很重要的參數,矩角特性好,步進(jìn)電機啟動(dòng)轉矩就大,運行不易失步。改善矩角特性一般通過(guò)增加步進(jìn)電機的運行拍數來(lái)實(shí)現。三相六拍比三相二拍的矩角特性好一倍,因此在很多情況下,三相步進(jìn)電機采用三相六拍運行方式。三相步進(jìn)電機工作在三相六拍運行方式時(shí),每個(gè)狀態(tài)的變化使電機轉動(dòng)1/6齒距,三相激勵規律為A-AB-B-BC-C-CA共六拍,對應時(shí)序如圖1所示。A、B、C分別代表接到三相步進(jìn)電機A相、B相、C相繞組的驅動(dòng)脈沖。

通常,步進(jìn)電機的脈沖控制是由邏輯電路實(shí)現的。在計算機控制的系統中,也可以通過(guò)編制程序,由擴展I/O口輸出脈沖來(lái)決定電機的運行方式、方向及轉速。這種方式電路簡(jiǎn)單、控制靈活,但占用CPU的時(shí)間過(guò)多,每次驅動(dòng)電機時(shí),PC機都得被占用。本文采用可編程邏輯器件(PLD)中的GALl6V8設計邏輯電路。在此,選三個(gè)控制信號:(1)啟動(dòng)控制信號S,當S=1時(shí)為停止,S=0為啟動(dòng);(2)正反轉控制信號D,當D=1時(shí)電機正轉,D=0時(shí)電機反轉;(3)轉速切換信號R和C,當R=0、C=0時(shí),頻率為fck;R=1、C=1時(shí),頻率為fck/2。步進(jìn)電機的轉速通常都是通過(guò)改變時(shí)序脈沖的頻率來(lái)控制的,所以這里用頻率來(lái)表示轉速的改變。由于GAL器件所有觸發(fā)器的時(shí)鐘是連在一起的,不能同時(shí)引入兩種以上頻率的時(shí)鐘,因此從改造組合邏輯部分人手,達到對電動(dòng)機轉速的二分頻控制。同理也可以實(shí)現四相八拍、五相十拍、六項十二拍的步進(jìn)電機控制,這就比專(zhuān)用的集成電路功能更強。
2 采用GAL控制脈沖分配的邏輯設計
若采用集成電路芯片來(lái)實(shí)現三相六拍步進(jìn)電機的控制,所用器件較多,電路一般比較復雜。為了滿(mǎn)足電機轉速的二分頻,在同一時(shí)鐘頻率控制下,必須利用一個(gè)D型觸發(fā)器,通過(guò)C參與組合邏輯來(lái)實(shí)現。其邏輯電路如圖2所示。CK為控制信號,三個(gè)D型觸發(fā)器的輸出O、P、Q分別接步進(jìn)電機的三項繞組。根據步進(jìn)電機驅動(dòng)相數及控制要求,必須有相應于相數的延遲觸發(fā)器保持現態(tài)與次態(tài)間的轉換過(guò)程。對此,可利用GAL中八個(gè)輸出邏輯宏單元中的三個(gè)來(lái)完成,電機的工作狀態(tài)(O、P、Q)中的現態(tài)與控制信號(S、R、D)可通過(guò)GAL的與、或陣列組合邏輯來(lái)完成。

2.1 邏輯控制狀態(tài)表
按照電機的激勵規律,在時(shí)序脈沖作用下,時(shí)序電路的狀態(tài)將在六個(gè)狀態(tài)中循環(huán),驅動(dòng)電機運轉。這里用a、b、c、d、e、f分別表示其六個(gè)狀態(tài),即a=100、b=110、c=010、d=011、e=001、f=101。根據邏輯電路圖可得其狀態(tài)表,如表1所示。

2.2 狀態(tài)真值表
由表1可得狀態(tài)真值表,如表2所示。表中O、P、Q狀態(tài)是在時(shí)鐘脈沖控制下變化的,在控制變量的控制下,決定電機的啟動(dòng)、轉向和轉速大小。
2.3 卡諾圖
在卡諾圖中,輸入變量分兩排表示,變量的取值次序按照循環(huán)碼排列。這種排列方法使得卡諾圖中幾何上相鄰的兩個(gè)小方塊所代表的最小項只有一個(gè)變量不同這正是利用卡諾圖化簡(jiǎn)邏輯函數的基礎。

對于多變量輸入,使用卡諾圖時(shí)要注意以下幾點(diǎn):
(1)按照"最少、最大"的原則(即圈數最少,圈內的最小項個(gè)數盡可能多)圈起所有取值為1的相鄰相。
(2)卡諾圖中四個(gè)角與兩對邊的各項也是相鄰的,卡諾圖里上、下或左右部分中對稱(chēng)的項也是相鄰的。
(3)每圈一個(gè)矩形圈時(shí),必須至少包含一個(gè)在其它圈中未出現過(guò)的最小項,否則出現重復而得不到最簡(jiǎn)式。
(4)每一個(gè)取值為"1"的小方塊都可以被圈多次,但不能遺漏,最小圈可以只包含一個(gè)小方塊,即不能簡(jiǎn)化。
以O為例,由狀態(tài)真值表可得其卡諾圖,如圖3所示。根據圈數和最小項可得其邏輯表達式為:
同樣,也可以求得P、Q的邏輯表達式
3 GAL的軟件設計
3.1 GAL器件選型及引腳變量分配
GAL器件有多種型號,根據設計的需要,同時(shí)從經(jīng)濟的角度考慮,選用GALl6V8來(lái)實(shí)現三相六拍步進(jìn)電機的控制。
3.2 GAL源文件設計
根據控制要求和編程格式,對已得到的時(shí)序邏輯方程編寫(xiě)的源文件如下:
在實(shí)際輸入時(shí)不需要加入,注釋行以";"開(kāi)始。將上述源文件輸入計算機,再對文件進(jìn)行編譯或匯編以生成JEDEC文件、引腳配置圖、熔絲圖等。用編程器對GAL器件進(jìn)行編程,編程器在編程結束后還具有對編程芯片所有的存儲單元進(jìn)行自動(dòng)檢驗的功能。
4 系統的硬件連接
電路原理圖如圖4所示,左邊為GALl6V8芯片的引線(xiàn)圖,S、D、R分別決定電機的啟動(dòng)、轉向和轉速大小,輸出O、P、Q分別接電機的A、B、C三個(gè)線(xiàn)包。圖中只給出一個(gè)線(xiàn)包的驅動(dòng)電路。注意:GAL元件不用的引腳應該直接接地或接電源,不要懸空,否則會(huì )增大功耗,降低抗干擾能力。 這種主要由GALl6V8組成的步進(jìn)電機控制器用于對三相六拍工作制步進(jìn)電機的自動(dòng)控制,既可以獨立運用于驅動(dòng)對象,又可以在微機管理下運行,且不占用CPU的時(shí)間。用一片GAL便可以實(shí)現復雜的時(shí)序電路,縮小組成系統的體積。借助計算機輔助設計,大大加快了設計速度,減少了差錯,降低了成本,提高了系統的可靠性和穩定性,且可反復修改和編程,靈活性極強。
脈沖點(diǎn)火器相關(guān)文章:脈沖點(diǎn)火器原理
評論