汪明珠, 毛德梅, 黃 濟, 李澤彬, 朱雪梅
(皖西學(xué)院, 安徽 六安 237012)
步進電動機是一種將電脈沖信號轉(zhuǎn)化為轉(zhuǎn)角位移的電器元件,在多種機械與設(shè)備中都具有較為廣泛的應(yīng)用。步進電動機的工作原理是根據(jù)其所接受的電脈沖信號的個數(shù)輸出與其完全成正比的轉(zhuǎn)角位移。傳統(tǒng)單片機控制方式在靈活性方面存在著較大的缺陷,無法滿足實際應(yīng)用的需求,因此,開發(fā)新的步進電動機具有一定的必要性[1]。利用現(xiàn)場可編程門陣列所設(shè)計的數(shù)字比較器能夠同時產(chǎn)生多種不同類型的脈沖寬帶調(diào)制波形,同時現(xiàn)場可編程門陣列內(nèi)置的嵌入式陣列塊能夠暫時存放。首先,不同相控制波形數(shù)據(jù)表,因此這種控制方法更加靈活。其次,通過現(xiàn)場可編程門陣列還可以對數(shù)據(jù)表中的相關(guān)數(shù)據(jù)進行修改,并提升計數(shù)器的精確性,最終實現(xiàn)了步進電動機的細分,真正實現(xiàn)了對轉(zhuǎn)角位移的精確控制。通過現(xiàn)場可編程門陣列實現(xiàn)對不同相波形的控制,并不需要外接轉(zhuǎn)換器,因此,整個控制電路被大大簡化,控制效果與控制精度也得到了明顯提升[2]。文中選擇以單片機與現(xiàn)場可編程門陣列為基礎(chǔ)進行步進電動機驅(qū)動系統(tǒng)的設(shè)計。
在本次設(shè)計中系統(tǒng)構(gòu)成如圖1所示。
圖1 系統(tǒng)組成
在該系統(tǒng)中,單片機的主要作用是實現(xiàn)對步進電動機轉(zhuǎn)動速度與轉(zhuǎn)動方向的控制,現(xiàn)場可編程門陣列則實現(xiàn)了對步進電動機的細分控制,其主要原理是現(xiàn)場可編程門陣列產(chǎn)生一種階梯型的脈沖信號,并將其轉(zhuǎn)化成階梯型的電壓信號,從而實現(xiàn)對步進電動機不同相在不同時間內(nèi)的繞組電壓控制。在該系統(tǒng)中嵌入式陣列模塊、轉(zhuǎn)速控制模塊以及數(shù)字比較模塊等功能的實現(xiàn)都是通過VHDL語言編程實現(xiàn)的,不同模塊共同實現(xiàn)了步進電動機的細分控制[3]。在該系統(tǒng)中所選用的驅(qū)動芯片為I293D驅(qū)動芯片。
設(shè)計的步進電動機控制系統(tǒng)中,單片機與現(xiàn)場可編程門陣列是最核心的驅(qū)動技術(shù),因此,該系統(tǒng)的硬件構(gòu)成也是以單片機與現(xiàn)場可編程門陣列為基本核心硬件,系統(tǒng)硬件電路如圖2所示。
圖2 系統(tǒng)電路
驅(qū)動系統(tǒng)所采用的單片機為飛利浦P89V53RB2芯片,其向現(xiàn)場可編程門陣列所傳輸?shù)目刂菩盘柺峭ㄟ^P0接口所傳遞的。由于該單片機內(nèi)置的P0接口屬于一種I/O接口,因此,還必須要接上外部上拉電阻才能作為程序校驗接口或者通用接口。同時將現(xiàn)場可編程門陣列的管腳設(shè)定為43~36,其主要目的在于完成轉(zhuǎn)向、轉(zhuǎn)速以及細分數(shù)的設(shè)定,其中細分數(shù)的設(shè)定需要通過S0~S2三個引腳來實現(xiàn),S0~S2所對應(yīng)的細分數(shù)見表1[4]。
表1 S0~S2所對應(yīng)的細分數(shù)
在該控制系統(tǒng)中,控制器現(xiàn)場可編程門陣列器件為賽靈思公司生產(chǎn)的XC2S15芯片,現(xiàn)場可編程門陣列復(fù)位信號采用RESET信號,存儲地址計數(shù)器脈沖輸入采用CLK,步進電動機轉(zhuǎn)向信號采用DIR表示,“0”表示反向轉(zhuǎn)動,“1”表示正向轉(zhuǎn)動,采用CS1、CS2來控制電動機內(nèi)部模塊的選定,從而實現(xiàn)對多臺步進電動機的有效控制。在該控制系統(tǒng)中提供了86個I/O接口,從而有效避免了單片機內(nèi)置接口數(shù)量不足的基本現(xiàn)狀,其次,還增加了1個L293D芯片,實現(xiàn)了對兩相/四相電動機的有效控制[5]。
系統(tǒng)需要完成對步進電動機轉(zhuǎn)速與轉(zhuǎn)向的控制,同時還需要完成細分數(shù)的設(shè)定,其中轉(zhuǎn)速與轉(zhuǎn)向控制由單片機完成,而細分數(shù)的設(shè)定則通過現(xiàn)場可編程門陣列完成。在實際調(diào)頻過程中可以通過步進頻率不變調(diào)速控制方式實現(xiàn)控制,控制方式如圖3所示[6]。
圖3 步進頻率不變調(diào)速控制方式
根據(jù)步進電動機的實際工作原理,采用PWM細分驅(qū)動,并根據(jù)步進電動機在實際工作中所需要具備的精度要求,對系統(tǒng)結(jié)構(gòu)進一步詳細設(shè)計。該系統(tǒng)主要由以下幾個不同部分組成:PWM計數(shù)器、ROM地址計數(shù)器、ROM存儲器、比較器以及功放電路等。其中,PWM計數(shù)器的主要功能在于發(fā)出鋸齒波形,并將該波形所代表的信號加載到比較器的一端,其次,ROM也根據(jù)鋸齒波形輸出數(shù)據(jù),所得到的數(shù)據(jù)則加在比較器的另一端,最終得到PWM波形。在這個過程中細分電流數(shù)值則被寄存在ROM中,而選址則由地址計數(shù)器隨機產(chǎn)生,因此,主要實現(xiàn)對地址計數(shù)器的控制則可以實現(xiàn)對步進電動機轉(zhuǎn)動的控制,同時,PWM信號也會隨著ROM中數(shù)據(jù)的變化對所輸出信號的占空比進行調(diào)控,從而實現(xiàn)細分控制,最終實現(xiàn)了步距細分的目的[7-8]。
在該系統(tǒng)中現(xiàn)場可編程門陣列設(shè)計是最核心的內(nèi)容,現(xiàn)場可編程門陣列芯片選擇XC2S15,VHDL編寫以及引腳分配均采用QUARTUS完成,并采用VHDL軟件進行仿真處理,從而對兩臺步進電動機實現(xiàn)轉(zhuǎn)向、轉(zhuǎn)動速度以及細分的有效控制。
現(xiàn)場可編程門陣列的頂層系統(tǒng)設(shè)計如圖4所示。
在現(xiàn)場可編程門陣列頂層設(shè)計當中配置了256以及2 560兩個不同的模塊,從而實現(xiàn)了對四相電動機的有效控制,同時,這兩個模塊也是實現(xiàn)對PWM內(nèi)部控制的模塊。
PWM內(nèi)部控制設(shè)計如圖5所示。
針對傳統(tǒng)步進電動機在控制靈活性方面所存在的問題,設(shè)計了一種基于單片機與現(xiàn)場可編程門陣列的電動機驅(qū)動系統(tǒng)。由于使用了現(xiàn)場可編程門陣列,實現(xiàn)了步進電動機步進角的精確控制,同時也在一定程度上簡化了整個電動機驅(qū)動控制系統(tǒng)。隨著現(xiàn)場可編程門陣列技術(shù)的進一步發(fā)展,其在步進電動機控制中的應(yīng)用必然可以得到進一步提升。
圖4 現(xiàn)場可編程門列系統(tǒng)頂層設(shè)計
圖5 PWM內(nèi)部控制設(shè)計
參考文獻:
[1] 黃平,李進,黃德生.基于FPGA的實時寬帶脈沖參數(shù)測量與設(shè)計[J].工業(yè)控制計算機,2017,30(8):26-27.
[2] 潘偉祥,甘宏.基于FPGA多功能鍵盤顯示控制器的設(shè)計與研究[J].科技廣場,2017(5):73-76.
[3] 郭文會.基于FPGA和單片機技術(shù)的多波形信號發(fā)生器設(shè)計[J].自動化與儀器儀表,2016(8):19-20,25.
[4] 劉暢,田國健,黨克,等.計及隨機誤差的高壓斷路器機械參數(shù)測試儀的研究[J].吉林電力,2015,43(6):19-21,46.
[5] 倪祥剛,何華強,李孛.基于C8051F340單片機和FPGA的多路電源電壓在線檢測裝置設(shè)計[J].計算機與數(shù)字工程,2015,43(9):1693-1697.
[6] 冷建偉,徐瓊瓊.基于單片機和FPGA的掃頻信號發(fā)生器[J].化工自動化及儀表,2014,41(8):939-942.
[7] 苗建林,王玉華.交流異步電動機模糊PID矢量控制系統(tǒng)[J].長春工業(yè)大學(xué)學(xué)報:自然科學(xué)版,2012,33(1):73-77.
[8] 董天正,王承中,馮大力.自組織Fuzzy控制在煉油生產(chǎn)作業(yè)計算機控制系統(tǒng)中的應(yīng)用[J].吉林工學(xué)院學(xué)報,1990,11(3):83-87.