夏繼強 鄔學 弈乙(北京航空航天大學100083)
郭永豐 劉晉春(哈爾濱工業大學)
摘 要 設計了一種用于經濟翌-數控的通用型 步進電機微步驅動系統,該系統由一片8031單片機作為CPU,可以用于額定電流3A以下的三相、四相、五相反應式步進電動機的微步驅動。由于其靈活的軟硬件設計,系統可以方便地用于脈沖驅動、RS232接口、CTD總線接口等場合。文中著重介紹了系統的軟硬件設計。
敘 詞 步進電動機微步驅動通用軟硬件設計
1 引 言
步進電機是一種能將電脈沖信號轉換成角位移和線位移的執行元件,由于其具有步距準確、可開環控制、便于數字控制等優點,廣泛用在各種執行機構上,也是經濟型數控機床中最常采用的執行元件之一[1]。步進電機的性能與其驅動電路密切相關,為了提高步進電機的步進分辨率,微步驅動是十分有效的措施[z]。另外,采用步進電機微步驅動,可以用機械直拖,省去了中間傳動環節,不僅使進給精度得到保證,也使得進給系統的頻率響應大大提高。隨著數控技術的發展,微步驅動技術不斷得到完善,出現了多種驅動器。但是,目前國內的微步驅動器往往是針對某一種類步進電機獨立設計的,通用性較差,國外的通用驅動器價格又比較昂貴,而且對外接口單一,通常只有RS232接口[3]。因此,研制一種通用的驅動系統很有必要。這種驅動器應具有以下幾個特征:驅動電路性能良好,功耗低、效率高、體積小;通用性好,驅動器應具有一定的智能控制功能,不需硬件改劫就能驅動多種步進電機;接口多,除了能接收脈沖信號外,還應有RS232等多種接口,以便和其它系統通訊,使其不但是一個獨立的驅動器,而且是一個智能驅動模塊。
本文利用脈寬調制電流控制技術和單片機技術設計了通用驅動器,滿足了上述要求。文中對驅動器的軟硬件設計作了詳細介紹。
2驅動系統的硬件設計
整個硬件結構如圖1所示,它包括控制通用型步進電動機微步驅動系統電路、驅動電路和接口電路三個部分,設計電路時,嚴格按照STD模板尺寸設計。
控制電路主要由單片機最小系統、譯碼器、微動開關、DlA轉換和環分電路組成。微動開關與單片機8031的Pl口相連,用于不同場合的步進電機相數設置、細分數設置以及不同連接接口的設置。8031單片機系統是控制電路的核心,用于不同需要的軟件以子程序或中斷服務程序存儲于程序存儲器中。執行步進命令時,單片機把電機電流對應的數字量輸入到D/A轉換器的數據端口,D/A轉換器的模擬輸出量經環分電路輸送給驅動電路。DlA轉換器可根據轉換精度的需要選擇8位的DAC0832或12位的DAC12 30,只要改變相應的軟件即可。
驅動電路采用脈寬調制技術實現微步驅動中各相平均電流的控制,脈寬調制由專用集成芯片TL494完成,簡化了電路的設計,而且電路的可靠性和抗干擾能力都大大提高。脈寬調制后的電流控制信號變成不同脈沖寬度同頻率的一系列脈沖串,這些脈沖串與功放電路的輸入相連,控制功放管的導通和關斷。在控制不同相屯流時,功放管始終工作于開關狀態,發熱少,省去了散熱裝置,減小了驅動電路的體積,這是功放管工作于放大狀態時所不能做到的。最末一級功放管采用VMOS管,它是一種電壓型驅動元件,對驅動電流的要求很低,但是考慮到其柵源間的電容,在它的輸入級前又增加了一級推挽驅動,使驅動脈沖的上升沿和下降沿都很陡,功放管的導通和關斷過渡時間更短,進一步降低了功率損耗。對于不同額定電流的步進電機,反饋信號的放大倍數可以調整,實踐表明,所設計的驅動電路對于額定電流小于3A以下的反應式步進電機都是適用的。
接口電路的多樣性使系統的適應性更強。在系統設計中,除了用單片機的P3,3、P3.4作為系統的脈沖驅動接口外,還應用1488、1489擴展了RS232接口,應用兩片數據鎖存器擴展了STD總線接口,這主要是出于系統用在多軸聯動控制時的考慮。另外,硬件中還用555設計了脈沖發生器,使系統可以獨立地用于步進電機不同速度下的轉動。
3 系統的軟件設計
軟件設計是本系統適應性強的關鍵。本設計的突出特點是用同一電路,不用改變硬件連線,只要設計不同的控制軟件,就可以方便靈活地實現多種控制方案,圖2是系統的軟件總體結構簡圖。
3.1針對不同相數步進電機的設計
在設計中考慮了系統可以用于多種步進電機的特點,因此可以用于驅動三相、四相、五相反應式步進電機。如果要求微步驅動的步距角是均勻的,對于不同相數的步進電機,即使額定電流相同,驅動電流的波形也是不一樣的。要實現一個驅動器用于不同電流波形的驅動,對于硬件電路是很難實現的,而對于軟件就容易得多,只需將離散的不同電流波形存儲于程序存儲器的不同區域,8031的CPU使用時正確調用即可。另外,對于不同相數的步進電機,環行分配器也是不同的,這也靠軟件環分實現,不同的環分表以表格數據存儲于程序存儲器中,在初始化時根據需要調入內存,在程序中控制模擬開關的選通信號。如驅動四相反應式步進電機時,兩片D/A轉換器輸出波形如圖3所示,對應的選通信號分別是001和010,oV模擬信號所對應的選通信號為000,相應的環形分配表就是表1的形式。電機繞組產生如圖4所示的微步驅動電流波形。系統和外部的信息交換更加靈活多樣,尤其是STD總線接口,被定義地址后,外部可以通過不同的命令,控制系統的動作。
3.2針對不同通訊方式的設計
在STD總線通訊方式時;外部命令向本系統8031的CPU申請中斷,系統命令的執行靠中斷服務程序完成。系統接到中斷申請后,先向外部發出響應口令。然后,系統針對不同命令執行相應的操作,再向外部發出相應口令。系統針對不同命令執行相應的操作,再向外部發出相應口令,通知外部。圖5給出了與外界通訊的軟件框圖。系統的8031本身具有串行通訊的能力,與RS232的連按很簡單,雖然串行通訊相對較慢,但系統用于多軸聯動控制時,與微機可采用這種方式通訊,軟件中命令的執行與STD總線通訊方式相似。表1微步驅動的環形分配表
3.3 可變微步距的設計步角
從硬件電路的介紹中可知,在使用前可以通過微動開關設置不同的微步距。但在一些應用場合,步距角實時可變是必要的。如在電火花加工伺服控制中,精密加工時,進給速度慢,放電間隙小,為了正確地跟蹤放電間隙、穩定加工,要求進給步距角小;而在空載進給或短路回退時,步距角應該較大,節省時間。由于系統有多種通訊方式,步距角的改變就簡單了,只要定義改變步距角的命令即可。系統用DAC0832作DlA轉換器時,考慮轉換誤差,可以40細分,變步距后可以增加20、10、8、5、4、2、1七種細分數設置,如果細分數更多或精度更高,可選用DAC1230代替DAC0832。
4結語
實踐表明,系統通用性強、可靠性好、安全性強。
|