




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于 FPGA 的四相步進(jìn)電機(jī)細(xì)分控制電路設(shè)計摘要步進(jìn)電動機(jī)又稱階躍電動機(jī)或脈沖電動機(jī), 它是一種典型的機(jī)電一體化器件。步進(jìn)電動機(jī)可以接收數(shù)字脈沖信號并轉(zhuǎn)變其為角位移或線位移。本次設(shè)計使用的是四相步進(jìn)電機(jī),而目的是要實現(xiàn)四相步進(jìn)電機(jī)的細(xì)分控制,即對四相電流先進(jìn)行八拍細(xì)分,而后再對每拍進(jìn)行細(xì)分,而 FPGA 技術(shù)的發(fā)展和改善,很有可能實現(xiàn)步進(jìn)電機(jī)的細(xì)分,并且可以進(jìn)行穩(wěn)定、精確的響應(yīng)和控制。要想實現(xiàn)基于 FPGA 的四相步進(jìn)電機(jī)細(xì)分控制電路設(shè)計,首先我要對 FPGA(現(xiàn)場可編程集成電路)進(jìn)行了解,并按照 FPGA 設(shè)計流程進(jìn)行編寫和仿真實現(xiàn),電路的設(shè)計和輸入我應(yīng)用了 VHDL 編程語言,在 Qua
2、rtus 軟件上進(jìn)行了波形仿真,在設(shè)計過程中,我應(yīng)用了 PWM 細(xì)分驅(qū)動技術(shù),從而于每拍電流形成階梯性向上的波形,由此實現(xiàn)細(xì)分的目的。對每個模塊兒進(jìn)行編寫和成功仿真后,完成了軟件設(shè)計部分。硬件設(shè)計部分我應(yīng)用了 L298N 驅(qū)動集成電路,L298N 能夠?qū)崿F(xiàn) FPGA 弱信號的功能放大,并針對弱信號和強(qiáng)電流的沖突問題在連接中設(shè)置了光電耦合器,最終成功驅(qū)動步進(jìn)電機(jī),實現(xiàn)了步進(jìn)電機(jī)的細(xì)分驅(qū)動。關(guān)鍵詞:步進(jìn)電機(jī);FPGA; PWM 細(xì)分驅(qū)動FPGA based four phase stepping motor subdivision control designAbstractStepper mot
3、or is also called step motor or pulse motor, it is a typical mechatronics device. Stepper motor can receive digital pulse signal and change it into angular displacement or line displacement. This design is the use of four phase stepping motor, and the aim is to achieve the four phase stepping motor
4、subdivision control, namely the four phase current for the first eight shot segmentation, and then to take every segment, and the development of FPGA technology and improved, it is possible to achieve the breakdown of stepper motor, and can be a stable, accurate response and control.In order to real
5、ize based on the FPGA four phase stepping motor subdivision control circuit design, first of all I want to understand the FPGA ( field programmable integrated circuit ), and according to the FPGA design process for the preparation of and simulation, circuit design and input I used VHDL programming l
6、anguage, on the Quartus software had waveform simulation, in the design process, I used PWM subdivision driving technology, thus to take every step to form the current waveform, thereby realizing the aim of subdivision. Each of the modules of infants were prepared and successful simulation, complete
7、d the part of software design.The hardware design part I used L298N driver integrated circuits, L298N can achieve FPGA weak signal amplifying function, and aiming at the weak signal and the current conflict problem in connecting in the setting of photoelectric coupler, the ultimate success of the st
8、epper motor drive, realize the stepper motor subdivision drive.Key words: stepping motor; FPGA; PWM subdivision drive目錄1緒論.1引言.1步進(jìn)電機(jī)的特點和應(yīng)用.1課題研究的目的與意義.22步進(jìn)電機(jī)的結(jié)構(gòu)和細(xì)分驅(qū)動原理.3步進(jìn)電機(jī)的結(jié)構(gòu).3步進(jìn)電機(jī)細(xì)分驅(qū)動原理.4步進(jìn)電機(jī)細(xì)分驅(qū)動的研究現(xiàn)狀.53步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)的軟件設(shè)計.7FPGA.73.2VHDL.9PWM 細(xì)分驅(qū)動電路 .10控制部分.11模塊仿真.144步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)的硬件設(shè)計.164.1 驅(qū)動系統(tǒng)的組成 .16
9、4.2 L298N .164.3 L298N 對功能放大的實現(xiàn).165結(jié)論.18參考文獻(xiàn):.19致 謝.201 緒論引言步進(jìn)電動機(jī)又稱階躍電動機(jī)或脈沖電動機(jī), 它是一種典型的機(jī)電一體化器件。步進(jìn)電動機(jī)可以接收數(shù)字脈沖信號并轉(zhuǎn)變其為角位移或線位移。因為不必進(jìn)行數(shù)模轉(zhuǎn)換, 故使用起來非常方便, 它廣泛于閥門控制、數(shù)控機(jī)床、繪圖儀、打印機(jī)以及光學(xué)儀器等需要高定位精度及高靈活控制性的系統(tǒng)中應(yīng)用。步進(jìn)電動機(jī)運行時對于有相當(dāng)功率的時序脈沖按要求的邏輯饋送給它的各個控制繞組有著要求, 并且為了步進(jìn)電動機(jī)調(diào)速的實現(xiàn), 要求其能夠改變送給各個控制繞組的時序脈沖的頻率?,F(xiàn)如今,隨著 FPGA 技術(shù)的發(fā)展和改善,很
10、有可能使用其進(jìn)行各種各樣的運算,并且可以進(jìn)行穩(wěn)定、精確的響應(yīng)和控制。近些年,隨著不斷增加的需求量,F(xiàn)PGA 的技術(shù)得到了迅速的發(fā)展,總的來說現(xiàn)在的FPGA 的性能等同于 2.0um 時代的門陣列水平,仍未達(dá)到固定標(biāo)準(zhǔn)程序階段。在光通信區(qū)域的商家為了保持競爭力,必須采用以 FPGA 設(shè)計的 ASIC 電路。近些年我國迅速發(fā)展的光通信系統(tǒng)中也較多的采用了 FPGA 器件。FPGA 的市場發(fā)展、FPGA 研究開發(fā)最早、產(chǎn)品系列最多、換代最快的是美國,至于日本,因為一些廠家認(rèn)為 FPGA 只是產(chǎn)品開發(fā)階段被采用,批量生產(chǎn)時就會被門陣列電路代替,所以占有率不是很高,而在我國電子產(chǎn)品的開發(fā)及生產(chǎn)蓬勃發(fā)展,
11、FPGA 的應(yīng)用也受到人們極大的關(guān)注,F(xiàn)PGA 不但可以應(yīng)用于某些高檔次產(chǎn)品,一些消費性電子產(chǎn)品也已經(jīng)廣泛使用。不少大學(xué)還將 FPGA 應(yīng)用于科研教學(xué)工作之中。且預(yù)計我國的 FPGA 的需求量還會不斷的上升。步進(jìn)電機(jī)是把脈沖信號轉(zhuǎn)換成角位移或直線位移的執(zhí)行原件,是一種對應(yīng)于輸出與輸入數(shù)字脈沖中的增量驅(qū)動元件。具有定位、精度高、無積累誤差、啟動性能好、價格低廉、易于控制及計算機(jī)接口方便等優(yōu)點,廣泛應(yīng)用于數(shù)控系統(tǒng)中。計算機(jī)技術(shù)的發(fā)展,對數(shù)字控制系統(tǒng)技術(shù)的發(fā)展起到了促進(jìn)的作用。步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)可以減小步進(jìn)電機(jī)的步距角、提高電機(jī)運行的平穩(wěn)性,增加控制的靈活性等。利用 FPGA 中的嵌入式 EAB可
12、以構(gòu)成存放電機(jī)各相電流所需的控制波形表,再利用數(shù)字比較器同步產(chǎn)生多路 FPGA 電流波形,以控制多相步進(jìn)電機(jī)。改變控制波形表的數(shù)據(jù)、增加計數(shù)器和比較器的位數(shù)、提高計數(shù)精度、就可以予 PWM 波形的細(xì)分精度以提高,進(jìn)而對步進(jìn)電機(jī)的步進(jìn)轉(zhuǎn)角進(jìn)行任意級的細(xì)分,以實現(xiàn)轉(zhuǎn)角的精確控制。步進(jìn)電機(jī)的特點和應(yīng)用步進(jìn)電機(jī)是一種由數(shù)字系統(tǒng)控制的執(zhí)行電動機(jī),其具有以下優(yōu)點:(1) 整個系統(tǒng)簡單廉價且可以用數(shù)字信號直接進(jìn)行控制。(2) 位移與輸出脈沖信號數(shù)一一對應(yīng),可以組成結(jié)構(gòu)較為簡單而且具有一定精度的開環(huán)控制,步距誤差不長期積累,也可在要求更高精度的情況下組成閉環(huán)控制系統(tǒng)。(3) 無刷,電動機(jī)本體部件比較少,可靠性
13、高。(4) 正反轉(zhuǎn)及速度響應(yīng)性好,易于啟動/停止。(5) 停止時有自鎖能力。(6) 步距角可以在大范圍內(nèi)進(jìn)行選擇,通??梢圆唤?jīng)減速器直接驅(qū)動負(fù)載,在小步距情況下,通??梢栽诔娃D(zhuǎn)速下高速矩穩(wěn)定運行。(7) 速度可平滑調(diào)節(jié)在相當(dāng)寬范圍內(nèi),同時用一臺控制器控制幾臺步進(jìn)電動機(jī)可完全同步運行。但是步進(jìn)電動機(jī)也存在著很多的不足,其帶慣性負(fù)載能力較差。因為存在失步和共振,步進(jìn)電機(jī)的加減速方法根據(jù)利用狀態(tài)的不同而復(fù)雜化。且需要專用的伺服控制器控制,不可以直接使用普通的交直流電源驅(qū)動。步進(jìn)電機(jī)卻別于其他電動機(jī)的最大特點為:它接受電脈沖信號(數(shù)字控制信號) ,并將其轉(zhuǎn)換成與之相對應(yīng)的角位移或是直線位移。它本身就
14、是一個完成模擬/數(shù)字轉(zhuǎn)換的執(zhí)行元件。且它可以進(jìn)行開環(huán)位置控制,通過輸入一個脈沖信號就可以得到一個規(guī)定的位置增量,這樣的增量位置控制系統(tǒng)比較起傳統(tǒng)的直流伺服務(wù)器系統(tǒng),成本有顯著的降低。因此,步進(jìn)電機(jī)的應(yīng)用隨著運動控制系統(tǒng)數(shù)字化的到來而日益廣泛。在通過控制買成個數(shù)來控制角位移兩從而達(dá)到準(zhǔn)確定位目的的同時,也可以通過控制脈沖頻率來控制電機(jī)轉(zhuǎn)動的速度/加速度以達(dá)到調(diào)速的目的?;诓竭M(jìn)電機(jī)再生產(chǎn)應(yīng)用上的優(yōu)點,其已經(jīng)在許多工業(yè)控制系統(tǒng)中作為重要執(zhí)行部件得到了應(yīng)用。在計算機(jī)外圍設(shè)備種總有步進(jìn)電機(jī)的出現(xiàn)。步進(jìn)電機(jī)在數(shù)字、工具程序控制系統(tǒng)之中得到了廣泛的應(yīng)用。課題研究的目的與意義步進(jìn)電機(jī)由于其可用數(shù)字信號直接進(jìn)
15、行開環(huán)控制,唯一于輸入脈沖信號數(shù)相對應(yīng),步距誤差步長期累積,可靠性高,無刷,電機(jī)本體部件少;易于啟動和停止、正反轉(zhuǎn)及變速,響應(yīng)性好等優(yōu)點的存在,被廣泛應(yīng)用于工業(yè)控制之中,但是,步進(jìn)電機(jī)運行工況也存在著許多的不阻止住,例如噪聲大,分辨率較低,低頻震蕩等,嚴(yán)重對其應(yīng)用范圍造成了制約。如果步進(jìn)電機(jī)能夠克服以上的缺點,那可以肯定其應(yīng)用范圍可進(jìn)一步擴(kuò)大。采用電路細(xì)分控制的策略便是為了有望克服步進(jìn)電機(jī)在運行工況中出現(xiàn)的諸多不足之處。但是目前的狀況為:基于單片機(jī)細(xì)分驅(qū)動器性能不好,并且發(fā)展空間局限,基于占用控制芯片的細(xì)分驅(qū)動器通常只能用來驅(qū)動較小功率的步進(jìn)電機(jī),而基于 DSP 的細(xì)分驅(qū)動器的成本又比較高。故
16、本課題利用的基于 FPGA 的低成本構(gòu)成,步進(jìn)電機(jī)驅(qū)動器的高性能便成為了首選。FPGA 的大容量,高速處理能力可以集所有的控制部分于 FPGA 芯片之中,很大程度上的提高了系統(tǒng)可靠性。這種新型驅(qū)動器體積小,硬件結(jié)構(gòu)簡單,成本低,控制能力強(qiáng),并可以輕易完成驅(qū)動器升級換代,一旦投入使用必將步進(jìn)電機(jī)的應(yīng)用范圍擴(kuò)大,并使步進(jìn)電機(jī)驅(qū)動系統(tǒng)的成本降低。2步進(jìn)電機(jī)的結(jié)構(gòu)和細(xì)分驅(qū)動原理步進(jìn)電機(jī)的結(jié)構(gòu)本課題使用的是四相步進(jìn)電機(jī),它采用單極性直流電源供電。只要按合適的時序通電給步進(jìn)電機(jī)的各相繞組,就可以使步進(jìn)電機(jī)步進(jìn)轉(zhuǎn)動。如圖 2-1 所示,該四相反應(yīng)式步進(jìn)電機(jī)工作原理示意圖。圖 2-1四相步進(jìn)電機(jī)步進(jìn)示意圖開始
17、時,開關(guān) SB 接通電源,斷開 SA、SC、SD,對齊 B 相磁極和轉(zhuǎn)子 0、3 號齒,于此同時,C、D 相繞組磁極就和轉(zhuǎn)子的 1、4 號齒產(chǎn)生錯齒,D、A 相繞組磁極就和 2、5 號齒產(chǎn)生錯齒。當(dāng)接通開關(guān) SC,SB、SA、SD 斷開時,因為 C 相繞組的磁力線和 1、4 號齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動,C 相繞組的磁極和 1、4 號齒對齊。而 A、B 相繞組和 0、3 號齒產(chǎn)生錯齒,A、D 相繞組磁極就和 2、5 號齒產(chǎn)生錯齒。依次類推,A、B、C、D 四相繞組輪流供電,則轉(zhuǎn)子會沿著 A、B、C、D 方向轉(zhuǎn)動。反之,轉(zhuǎn)子就會沿著 D、C、B、A 轉(zhuǎn)動。四相步進(jìn)電機(jī)按照通電順序的不同,可分
18、為雙四拍、單四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動力矩較小。八拍工作方式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以提高控制精度又可以保持較高的轉(zhuǎn)動力矩。本課題研究的是八拍的工作方式。步進(jìn)電機(jī)細(xì)分驅(qū)動原理步進(jìn)電機(jī)的驅(qū)動是靠通電流給步進(jìn)電機(jī)的各相勵磁繞組輪流, 實現(xiàn)步進(jìn)電機(jī)內(nèi)部磁場合成方向的變化,從而使步進(jìn)電機(jī)轉(zhuǎn)動的。即轉(zhuǎn)子就會轉(zhuǎn)過一個步距角,每伴隨著一次通電狀態(tài)的改變。該步距角的計算公式為: (2-xbamZQ3601)其中: 為接入繞組的線路狀態(tài)數(shù), m 為電動機(jī)的相數(shù), Zr 為轉(zhuǎn)子齒數(shù)。由此可見, 一旦步進(jìn)電機(jī)制造出來, 其轉(zhuǎn)子齒數(shù)與相數(shù)將為定值,
19、 要想減小其步距角, 以達(dá)到細(xì)分的目的,只能通過改變 實現(xiàn)。而在無細(xì)分的步進(jìn)電機(jī)驅(qū)動系統(tǒng)中, 通過各相繞組的電流幅值是不發(fā)生變化的, 只有在變化各相通電狀態(tài)的時候, 值才相應(yīng)地進(jìn)行變化。針對四相步進(jìn)電機(jī)來說, 單四拍或雙四拍運行時, = l ; 單雙八拍運行時, =2。如果要想增大 , 必須使繞組中的電流按階梯上升和下降, 即在零與最大相電流之間有多個穩(wěn)定的中間電流狀態(tài)。如圖 2-2 所示為四相八拍四細(xì)分時各相電流波形, 各相電流均以最大電流值的 1/4 上升和下降。與單雙八拍方式相比, 值從 2 增加到 8, 步距角 b 為四相八拍運行方式時的 1/4。所以步進(jìn)電機(jī)細(xì)分驅(qū)動的關(guān)鍵在于控制電機(jī)
20、各相勵磁繞組中的電流大小及其穩(wěn)定性。而如圖 2-2 所示我們可以分析得各相電流是以 1/4 的步距上升或者下降的,而在兩相Ta、Tb 中間再次插入了七個穩(wěn)定的中間狀態(tài),原來每一步所轉(zhuǎn)過的角度將經(jīng)由八部完成,實現(xiàn)了步距角的八細(xì)分。圖 2-2四相步進(jìn)電機(jī)八細(xì)分電流波形改變步進(jìn)電機(jī)相電流通常采用電流矢量恒幅均勻旋轉(zhuǎn)的細(xì)分方法來實現(xiàn), 即同時改變兩相電流 iA 和 iB 的大小, 使電流合成矢量等幅均勻旋轉(zhuǎn)。iA 和 iB 的變化曲線可描述為:iA= imcosxiB= imsinx四相步進(jìn)電機(jī)八細(xì)分時的各相電流是以 1/4 的步距上升或下降的, 在兩相穩(wěn)定的中間狀態(tài), 原來一步所轉(zhuǎn)過的角度將由八步完
21、成, 實現(xiàn)了步距角的八細(xì)分。步進(jìn)電機(jī)的驅(qū)動是靠著給步進(jìn)電機(jī)的各相勵磁繞組輪流通過電流,實現(xiàn)步進(jìn)電機(jī)內(nèi)部磁場合成方向的變化來轉(zhuǎn)動步進(jìn)電機(jī)。設(shè)置矢量 Ta、Tb、Tc、Td 為四相步進(jìn)電機(jī)的勵磁繞組分別通電的時候產(chǎn)生的磁場矢量:Tab、Tbc、Tcd、Tda 是步進(jìn)電機(jī)種AB、BC、CD、DA 兩相同時通電而產(chǎn)生的合成磁場矢量。每當(dāng)步進(jìn)電機(jī)內(nèi)部磁場產(chǎn)生這樣的變化:TATBTCTD,即磁場產(chǎn)生了旋轉(zhuǎn),步進(jìn)電機(jī)的步距角計數(shù)公式可以表示為:;公式中參數(shù)為步進(jìn)電機(jī)的轉(zhuǎn)子齒數(shù);而參數(shù):為步進(jìn)電機(jī)運行時相鄰穩(wěn)定磁場之間的夾角。以上分析可知,步進(jìn)電機(jī)細(xì)分控制實際上是通過對步進(jìn)電機(jī)定子繞組電流的控制,來達(dá)到使步進(jìn)
22、電機(jī)每步的合成磁場按某種要求變化,從而完成對步進(jìn)電機(jī)步距角細(xì)分的目的。在普遍情況下,不僅地阿基旋轉(zhuǎn)力矩的大小和步距角的大小是由合成磁場矢量決定的。均勻細(xì)分是最佳的細(xì)分方式,卻要想完成對步進(jìn)電機(jī)的恒力矩均勻的細(xì)分控制的實現(xiàn),必須合理的對電機(jī)繞組中的電流控制使步進(jìn)電機(jī)內(nèi)部合成的磁場幅值恒定,且每個進(jìn)給買成引發(fā)的合成磁場的角度變化也要均勻。步進(jìn)電機(jī)細(xì)分驅(qū)動的研究現(xiàn)狀步進(jìn)電機(jī)的細(xì)分驅(qū)動技術(shù)在實踐中得到了廣泛的應(yīng)用,且技術(shù)上獲得了很大的發(fā)展。實踐證明,步進(jìn)電機(jī)細(xì)分驅(qū)動技術(shù)可以提高步進(jìn)運行的平穩(wěn)性,增加控制的靈活性等等。國內(nèi)外研究步進(jìn)電機(jī)細(xì)分驅(qū)動的文獻(xiàn)非常豐富,分別對細(xì)分?jǐn)?shù)、均勻步距、低噪音、低震動、抗干
23、擾等方面進(jìn)行研究,總結(jié)這些研究,可得到一下特點:(1)必須產(chǎn)生真實的給定細(xì)分的電壓波形,并且一般性采用可逆循環(huán)計數(shù)器對 EPROM 存儲器進(jìn)行尋址,再經(jīng) D/A 轉(zhuǎn)換器之后輸出,理應(yīng)模擬期間進(jìn)行輸出的調(diào)節(jié)。反饋電流的測量全部采用霍爾傳感器。離線計算出步進(jìn)電機(jī)勵磁狀態(tài)轉(zhuǎn)換表,得到所需的喚醒分配器輸出狀態(tài)表后存入 EPROM 中。該模式實際上是一種軟硬結(jié)合的技術(shù),通過編輯 EPROM存儲器的軟件即可實現(xiàn)不同細(xì)分波形的輸出。(2)因為步進(jìn)電機(jī)的電子轉(zhuǎn)子轉(zhuǎn)角與電機(jī)繞組電流之間的非線性關(guān)系,是很難精確的進(jìn)行計算的,所以一般采用相似的方法。想要得到近似均勻步距的細(xì)分波形,一般采用以下三種方法:數(shù)值插值法,
24、近似波形法,曲線擬合法。之后在進(jìn)一步的實驗修正下達(dá)到近似均勻的步距。(3)步進(jìn)電機(jī)細(xì)分驅(qū)動電路的下一個特點是通用性較弱,各個研究單位基于機(jī)型開發(fā)不同和不同的目標(biāo)和機(jī)型開發(fā)不同的細(xì)分驅(qū)動電路,他們普遍具有較強(qiáng)的專用性,基于功率、微步距、噪音的指標(biāo)等參數(shù)的不用,要求驅(qū)動電路也不能“兼容” 。且一點電機(jī)的型號、應(yīng)用指標(biāo)發(fā)生了改變,驅(qū)動系統(tǒng)必須重新設(shè)計。接口標(biāo)準(zhǔn)不統(tǒng)一,通用性也進(jìn)一步的降低。通過以上的分析,步進(jìn)電機(jī)細(xì)分驅(qū)動電路已經(jīng)日漸趨于成熟,但是目前細(xì)分驅(qū)動器的設(shè)計仍然有不少缺陷:(1)使用的期間很多,使調(diào)試復(fù)雜化,占用很大的系統(tǒng)空間,且抗干擾能力不足。(2)勵磁狀態(tài)轉(zhuǎn)換表的修正相當(dāng)繁瑣,使得在線調(diào)
25、節(jié)很難實現(xiàn)。(3)控制單元通常采用單片機(jī),可靠性和相應(yīng)速度低。(4)在體積重量方面沒有優(yōu)勢,能源利用率低。(5)超過負(fù)載時會破壞同步,高速工作會發(fā)出振動和噪聲。3步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)的軟件設(shè)計3.1FPGA3現(xiàn)場可編程門陣列 FPGA 結(jié)構(gòu)現(xiàn)場可編程門陣列 FPGA 器件于 1985 年由 Xilinx 公司推出,它是一種新型的高密度PLD。它的結(jié)構(gòu)一般分為三個部分,可編程邏輯模塊、可編程 110 模塊和可編程內(nèi)部互聯(lián)區(qū) IRO,F(xiàn)PGA 的結(jié)構(gòu)與門陣列 PLD 是不相同的,其內(nèi)部由許多獨立的可編程邏輯單元組成,可編程邏輯單元是 FPGA 芯片實現(xiàn)邏輯的最基本結(jié)構(gòu),其之間能夠靈活的相互連接???/p>
26、編程邏輯單元的功能非常強(qiáng)大,步進(jìn)可以完成邏輯函數(shù)的實現(xiàn),還可以實現(xiàn) RAM 等復(fù)雜形式的配置。配飾數(shù)據(jù)是存放在熔絲圖或者片內(nèi)的 SRAM 上的,基于 SRAM 的 FPGA 期間工作前需要從芯片的外部對配置數(shù)據(jù)進(jìn)行加載。配置數(shù)據(jù)可以存儲在計算機(jī)或者片外的EPROM 上,設(shè)計人員可以對加載過程進(jìn)行控制,并對期間的邏輯功能進(jìn)行控制,在現(xiàn)場對期間的邏輯功能進(jìn)行修改,即為所謂的現(xiàn)場可編程。FPGA 的基本結(jié)構(gòu)形式,由一個用于存放編程數(shù)據(jù)的靜態(tài)存儲器和三種可編程單元組成。上述三種可編程單元分別是: I/O Block(輸入/輸出模塊),LE(邏輯單元)和互連資源,它們的工作狀態(tài)全都設(shè)定于數(shù)據(jù)存儲器中。而
27、對于 FPGA 為迎合未來的發(fā)展,它即將迎接的挑戰(zhàn)為:(1) 系統(tǒng)芯片時代的來臨,要求 FPGA 向著密度更高,速度更快,頻帶更寬的數(shù)百門超大規(guī)模發(fā)展。(2) 為了方便用戶設(shè)計和對于特殊功能的應(yīng)用,就要向標(biāo)準(zhǔn)功能模塊或嵌入功能發(fā)展。(3) 低壓,低功耗的綠色原件以迎合全球環(huán)保潮流。同時,涌現(xiàn)出數(shù)?;旌峡删幊剃嚵校M可編程陣列,動態(tài)可重構(gòu)陣列期間等新概念。3現(xiàn)場集成的編程方式應(yīng)用設(shè)計現(xiàn)場可編程集成電路,針對具體目標(biāo),需要不同的編程方式來完成目標(biāo)數(shù)字系統(tǒng)下載的實現(xiàn)。根據(jù)器件結(jié)構(gòu)的不同,目前有三種下載方式。1、在線系統(tǒng)可編程技術(shù)。具有 ISP 功能的期間,沒有下載時專門的編程器,芯片可直接在已制成
28、的系統(tǒng)中進(jìn)行編成數(shù)據(jù)下載。ISP 技術(shù)使系統(tǒng)設(shè)計和制造更加靈活。目前大多數(shù)芯片均采用編程技術(shù)。2、在線系統(tǒng)可重配置技術(shù) ISR。具備 ISR 功能的器件可直接在印制電路板上通過數(shù)據(jù)或者在目標(biāo)系統(tǒng)種下載電纜配置和重新配置,不需要專門的編程器。因為 ISR 期間是基于 SRAM 的編程技術(shù),所以系統(tǒng)掉電后,會丟失芯片的編程信息。3、一次性編程技術(shù)。一旦編程就不能發(fā)生改變,這種編程技術(shù)的 FPGA 應(yīng)用的工藝為反熔絲制造,比較適合高可靠低功耗的使用場合。3FPGA 設(shè)計總體流程開始電路設(shè)計與輸入綜合優(yōu)化綜合仿真是否正確實現(xiàn)過程布局布線后時序仿真與驗證加載配置在線調(diào)節(jié)是否為實現(xiàn)問題YYYNNN圖 3-
29、1FPGA 設(shè)計總體流程圖現(xiàn)場可編程門陣列的總體流程圖如圖 3-1 所示,在電路設(shè)計并輸入后,進(jìn)行仿真,如果仿真成功則對其編程進(jìn)行綜合性的優(yōu)化和判斷,并對其原理和優(yōu)化過程進(jìn)行探究,之后對程序進(jìn)行實現(xiàn)與布線,而后實現(xiàn)最終的配置加載和在線的調(diào)節(jié)。VHDLVHDL 語言是告訴集成電路的硬件描述語言,可以抽象的對電路行為和結(jié)構(gòu)進(jìn)行描述,支持邏輯設(shè)計中范圍和層次的描述,能夠借用高級語言精巧的結(jié)構(gòu)對電路的行為描述進(jìn)行簡化,并具有對電路仿真與驗證機(jī)制保證正確性的能力。VHDL 語言的編寫在用 VHDL 進(jìn)行電路設(shè)計前,首先要由邏輯電路基礎(chǔ),VHDL 編程語言與其他軟件語言是不同的,雖然語法看上去也是一種編寫
30、語言的軟件,但是 VHDL 語言和編寫軟件語言有著本質(zhì)的區(qū)別。VHDL 語言根本就對電路的描述,通常軟件是順序執(zhí)行的,而 VHDL 語言大部分是并發(fā)執(zhí)行的。所以,在編程時,應(yīng)該時刻記住自己是在描述電路,應(yīng)對要綜合的電路有概念才能正確寫出功能且能綜合實現(xiàn)的程序。3.2.2VHDL 程序的結(jié)構(gòu)一個完整的 VHDL 設(shè)計是由構(gòu)造體和實體說明組成的。并且一個 VHDL 語言程序按需要調(diào)用程序包和庫文件。1 VHDL 庫和程序包庫文件是存放可編程設(shè)計單元的地方,通過其目錄查詢和調(diào)用。不同的設(shè)計單元存放在不同的庫當(dāng)中,不同的編譯軟件相同的庫名稱也不同。在程序開頭要按需調(diào)用不同的庫,這些庫的調(diào)用有 libr
31、ary 語句實現(xiàn)。程序包是其中一種類型、原件、函數(shù)、和其他說明對設(shè)計單元可見的類型,原件和子程序,而包體則是用來存放說明中的函數(shù)和程序。2 實體實體是能表達(dá)完整系統(tǒng)、芯片小函數(shù)、電路板和邏輯功能的設(shè)計概述。實體說明主要描述實體輸入和輸出,也可以描述參數(shù)化的數(shù)值。實體說明可以理解為電路的符號,其設(shè)計其余部分的連接關(guān)系和描述一個原件。3 構(gòu)造體構(gòu)造體主要說明實體存在,也就是描述實體的功能。VHDL 允許采用不同格式對構(gòu)造設(shè)計。4 VHDL 主要語法結(jié)構(gòu)(1) 組合邏輯設(shè)計(2) 順序語句(3) 同步邏輯設(shè)計(4) 進(jìn)程設(shè)計所以在編程時,程序的執(zhí)行一般根據(jù)語句的先后,此時程序的順序顯得尤為重要,但是
32、在寫 VHDL 的時候就不同了,因為 VHDL 描述的是一張電路圖,你只要清楚的描述各個模塊就可以了,至于先后順序的描述則較為自由。3.3PWM 細(xì)分驅(qū)動電路3.3.1系統(tǒng)軟件總體設(shè)計遵照上述電路圖的設(shè)計和流程圖,且為了更好、更清楚的表達(dá),下面將要使用 VHDL對每個模塊進(jìn)行描述。首先對脈沖部分進(jìn)行描述:脈沖序列的生成:步進(jìn)電機(jī)控制軟件中必須首要解決產(chǎn)生一個周期性脈沖序列的問題。脈沖是用周期、接通與斷開電源時間、脈沖高度來表示的。對于一個數(shù)據(jù)線來說,脈沖高度決定于使用的數(shù)字電平。例如一般的 TTL 電平為 0-5V,使用的借口電路多為 0-5V 等。再如當(dāng)傳送高電平到步進(jìn)電機(jī)相應(yīng)的數(shù)據(jù)線時,步
33、進(jìn)電機(jī)開始步進(jìn),因為步進(jìn)是需要一定的時間的,故在高電平后進(jìn)行一段時間的延長,便可使步進(jìn)電機(jī)達(dá)到指定的位置。利用軟件生成脈沖序列的方法是先輸出高電平,接著利用軟件延長一段時而后輸出低電平,延時時間的長短決定于步進(jìn)電機(jī)的工作頻率。3.3.2PWM 細(xì)分步進(jìn)電機(jī)的細(xì)分控制方法是通過控制各相繞組中的電流分配,使其按一定的規(guī)律階梯上升或下降,從而獲得從 0 到最大相電流之間的多個穩(wěn)定的中間電流狀態(tài)。相應(yīng)地,定子磁場也就存在多個中間狀態(tài),這樣各相的合成磁場也將有多個穩(wěn)定的中間狀態(tài),相鄰兩個合成磁場矢量的夾角決定了微步距的大小,轉(zhuǎn)子沿著這些中間狀態(tài)以微步距轉(zhuǎn)動。3-2步進(jìn)電機(jī) PWM 細(xì)分驅(qū)動電路圖如圖 3
34、-2 所示,描述了步進(jìn)電機(jī) PWM 細(xì)分驅(qū)動電路,PWM 計數(shù)器產(chǎn)生周期性向上的階梯波形,地址計數(shù)器控制方向和給定輸入信號,并且以控制頻率的方法對速度進(jìn)行控制,PWM 波形 ROM 控制器對給定信號中每拍進(jìn)行細(xì)分,并將其輸入到四個數(shù)字比較器中,實現(xiàn)步進(jìn)電機(jī) PWM 電路的細(xì)分。接下來是對每個模塊兒的說明。3.4控制部分要想實現(xiàn)步進(jìn)電機(jī)的細(xì)分功能,必須用 VHDL 進(jìn)行編譯和實現(xiàn)。如圖 3-2 所示的各個元件的功能和 VHDL 源代碼如下。3.4.1PWM 計數(shù)器(cnt8):利用微處理器的數(shù)字輸出來對模擬電路進(jìn)行控制,產(chǎn)生周期性向上的鋸齒波,用 VHDL 語言描述如下:BEGIN PROCES
35、S(CLK) BEGIN IF CLKEVENT AND CLK = 1 THEN CQI = CQI + 1; END IF; END PROCESS; CQ = CQI (4 DOWNTO 1); END BEHAV;3.4.2地址計數(shù)器:為 PWM 波形 ROM 提供地址,為 A、B、C、D 輸出提供參考;方向信號控制計數(shù)器的增減方向從而控制 PWM 波形輸出順序來控制電機(jī)正反轉(zhuǎn),使能信號程序中已接地,速度信號來自 CLK0,通過控制 CLK0 的頻率來控制 PWM 波形的頻率。用 VHDL 語言描述如下:BEGIN PROCESS(CLK,EN,U_D) BEGIN IF EN = 1
36、 THEN CQI = CQI; ELSIF CLKEVENT AND CLK =1 THEN IF U_D = 1 THEN CQI = CQI + 1; ELSE CQI = CQI-1; END IF; END IF; END PROCESS; CQ(4 DOWNTO 0) = CQI;END BEHAV;3.4.3PWM 波形 ROM(rom3):存儲 PWM 細(xì)分波形參數(shù),ROM 中的數(shù)據(jù)和標(biāo)準(zhǔn)為:WIDTH=16;DEPTH=32;ADDRESS_RADIX=HEX;DATA_RADIX=HEX;CONTENT BEGIN0:F000; 1:F600; 2:F900 3:FC00;
37、 4:FF00; 5:CF00; 6:9F00; 7:6F00; 8:0F00; 9:0F60; a:0F90; b:0FC0; c:0FF0; d:0CF0; e0AF0; f:06F0; 10:00F0; 11:00F6; 12:00F9; 13:00FC; 14:00FF; 15:00CF; 16:009F; 17:006F; 18:000F; 19:600F; 1a:900F; 1b:C00F; 1c:F00F; 1d:F00C; 1e:F009; 1f:F006;END;對以上十六進(jìn)制代碼進(jìn)行描述,將其轉(zhuǎn)化為二進(jìn)制代碼可知0:F000=1111 0000 0000 0000;1:F6
38、00=1111 0110 0000 0000;2:F900=1111 1001 0000 0000;3:FC00=1111 1100 0000 0000;4:FF00=1111 1111 0000 0000;5:CF00=1100 1111 0000 0000;6:9F00=1001 1111 0000 0000;7:6F00=0110 1111 0000 0000;8:0F00=0000 1111 0000 0000;以上 2 進(jìn)制代碼的描述可以清楚的表述出每拍電流在進(jìn)行八細(xì)分后每次細(xì)分的電流走向呈階梯形,而具體到 ROM 存儲器的編寫,則要實現(xiàn)以下過程。要成功設(shè)計出 ROM 模塊首先要填充
39、 ROM 中的十六進(jìn)制代碼,由于 Quartus 中的內(nèi)存初始化文件(memory initialization file)不能進(jìn)行十六進(jìn)制代碼的填充,所以必須轉(zhuǎn)化為十進(jìn)制。圖 3-3 就是對上 32 個十六進(jìn)制代碼的十進(jìn)制轉(zhuǎn)化的填充。圖 3-3內(nèi)存初始化文件的十進(jìn)制填充將上述文件生成 mif 文件,之后對 ROM 存儲器進(jìn)行宏單元模塊兒調(diào)用,按照上面要求的帶寬和位數(shù)進(jìn)行設(shè)置,之后將 mif 文件調(diào)用,填充并封裝,ROM 模塊的設(shè)計就完成了。3.4.4數(shù)字比較器:通過細(xì)分波形與 PWM 計數(shù)器輸出的階梯波型比較,產(chǎn)生周期性PWM 波,改變信號的占空比??梢院陠卧K調(diào)用或者用 VHDL 編程,
40、在此 VHDL 源代碼省略。3.4.5電路復(fù)位器(BUSMUX)細(xì)分信號決定電路是否進(jìn)行電機(jī)驅(qū)動細(xì)分,輸出信號經(jīng)過電機(jī)驅(qū)動芯片驅(qū)動,電路實現(xiàn)電機(jī)的驅(qū)動。宏單元模塊調(diào)用即可。3.4.6各個模塊生成的頂層文件圖 3-4基于 FPGA 的四相步進(jìn)電機(jī) PWM 細(xì)分控制控制電路如圖 3-4 所示連接電路,在 CNT8 前加以一個輸入 clk5,給予輸入信號,CNT8 對電流信號實行了四相八拍分后,將輸出信號加以 BUSMUX 電路復(fù)位器上,電路復(fù)位器控制是否對輸出信號進(jìn)行細(xì)分,若不進(jìn)行細(xì)分,則直接輸出至數(shù)字比較器中,通過功能放大器,將信號放大,加到各相繞組之上,實現(xiàn)步進(jìn)電機(jī)轉(zhuǎn)子轉(zhuǎn)動。若進(jìn)行細(xì)分,則 D
41、EC2(PWM 計數(shù)器)實現(xiàn)其功能,將輸入電流信號轉(zhuǎn)化為每拍八細(xì)分的階梯波電流,之后將其傳達(dá)到 PWM 波形 ROM(存儲器)中,對應(yīng)著封裝 ROM 中的八進(jìn)制代碼輸出加至數(shù)字比較器之上,之后將信號放大,加到各相繞組上,實現(xiàn)步進(jìn)電機(jī)轉(zhuǎn)子轉(zhuǎn)動。3.5模塊仿真 本設(shè)計共分為兩個階段,即步進(jìn)電機(jī)細(xì)分時和非細(xì)分時的波形仿真。3.5.1基于 FPGA 的四相步進(jìn)電機(jī)非細(xì)分電路仿真仿真波形如圖 3-5 所示,當(dāng)給予 S 高電平時輸出波形為非細(xì)分電路波形。圖 3-5基于 FPGA 的四相步進(jìn)電機(jī)非細(xì)分電路仿真3.5.2 基于 FPGA 的四相步進(jìn)電機(jī)細(xì)分電路仿真仿真波形如圖 3-6 所示,當(dāng)給予 S 低電平
42、是輸出波形為細(xì)分電路波形。圖 3-6基于 FPGA 的四相步進(jìn)電機(jī)細(xì)分電路仿真4 步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)的硬件設(shè)計4.1 驅(qū)動系統(tǒng)的組成步進(jìn)電機(jī)驅(qū)動系統(tǒng)組成如圖 4-2 所示,一般由信號處理器、PWM 細(xì)分電路、輸入電路、驅(qū)動級、保護(hù)級等部分組成。輸入電路保護(hù)推動級信號放大與處理PWM 細(xì)分電路驅(qū)動器圖 4-2PWM 驅(qū)動器的組成PWM 細(xì)分電路的作用為:步進(jìn)電機(jī) PWM 細(xì)分驅(qū)動電路,PWM 計數(shù)器產(chǎn)生周期性向上的階梯波形,地址計數(shù)器控制方向和給定輸入信號,并且以控制頻率的方法對速度進(jìn)行控制,PWM 波形 ROM 控制器對給定信號中每拍進(jìn)行細(xì)分,并將其輸入到四個數(shù)字比較器中,實現(xiàn)步進(jìn)電機(jī) PW
43、M 電路的細(xì)分。信號處理級的作用為:一方面按照來自環(huán)形分配器的信號放大到驅(qū)動推動級,一方面對如斬波、抑制等特殊功能信號進(jìn)行處理。推動級的作用是放大較小的信號。保護(hù)級的作用是保護(hù)驅(qū)動級的安全。4.2 L298N本課題中步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)采用電機(jī)驅(qū)動 L298N。L298N 是專用驅(qū)動集成電路,屬于 H 橋電路,它的輸出電流大,功率強(qiáng)。輸出電流為 2A,最高電流為 4A,最高工作電壓達(dá) 50V,可以驅(qū)動感性負(fù)載,例如步進(jìn)電機(jī),電磁閥等,特別是其輸入端可以與單片機(jī)直接相聯(lián)。當(dāng)驅(qū)動直流電機(jī)時,可以直接控制兩路電機(jī),并可以實現(xiàn)電機(jī)正反轉(zhuǎn),實現(xiàn)此功能只需要對輸入端的邏輯電平改變。4.3 L298N 對功
44、能放大的實現(xiàn)L298 具有體積小,控制方便的特點,并可以與光耦隔離驅(qū)動模塊連接隔離開以達(dá)到避免 FPGA 微小信號與其大電流的沖突的效果,圖 4-3 是 L298N 的驅(qū)動電路圖。圖 4-3L298N 驅(qū)動電路圖當(dāng)步進(jìn)電機(jī)驅(qū)動軟件實現(xiàn)仿真并下載后,由于 FPGA 的信號較弱,所以需要 L298N 對其實現(xiàn)放大功能,從而使步進(jìn)電機(jī)接收到足夠強(qiáng)大的信號實現(xiàn)轉(zhuǎn)子轉(zhuǎn)動,如圖 4-3 所示,左邊步進(jìn)電機(jī)給予弱信號,中間光電耦合器的功能為避免弱信號和 L298 強(qiáng)電流沖突產(chǎn)生電路干擾,L298 在接受到信號放大后輸入至右側(cè)的步進(jìn)電機(jī) A、B、C、D 四相中,實現(xiàn)步進(jìn)電機(jī)的轉(zhuǎn)動。5 結(jié)論本設(shè)計主要開發(fā)一套基于 FPGA 芯片集成的步進(jìn)電機(jī)脈沖細(xì)分驅(qū)動系統(tǒng)。通過對理想化四相步進(jìn)電機(jī)模型的分析和討論,將其視為一種
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 校本研究課題案例
- 員工體驗式培訓(xùn)
- 科學(xué)救援培訓(xùn)課件
- 《數(shù)據(jù)庫原理及MySQL應(yīng)用(微課版)》課件 第16章MySQL數(shù)據(jù)庫的應(yīng)用編程
- 腎內(nèi)科常見傷口診療要點
- 腫瘤患者營養(yǎng)治療與管理
- 超市服務(wù)禮儀培訓(xùn)課件
- 專業(yè)乳牙護(hù)理培訓(xùn)課件
- 建材工程考試題及答案
- 駕??荚囶}及答案下載-
- PICC尖端心腔內(nèi)心電圖定位技術(shù)
- 2024東莞農(nóng)商銀行社會招聘筆試歷年典型考題及考點剖析附帶答案詳解
- 肺性腦病的護(hù)理
- 混凝土銷售技能培訓(xùn)課件
- 老年外科患者圍手術(shù)期營養(yǎng)支持中國專家共識(2024)解讀課件
- 貴州大學(xué)語文試題及答案
- 《基于價值鏈的企業(yè)分拆上市動因及效果研究的國內(nèi)外文獻(xiàn)綜述》6700字
- 質(zhì)量月建筑工程質(zhì)量知識競賽考試題庫500題(含答案)
- 汽車快修連鎖加盟商業(yè)計劃書
- 自動化工程師面試真題及答案
- 吉林省2025年初三中考測試(一)生物試題含解析
評論
0/150
提交評論