基于FPGA的步進(jìn)電機(jī)的PWM控制__細(xì)分驅(qū)動(dòng)的實(shí)現(xiàn)解讀_第1頁
基于FPGA的步進(jìn)電機(jī)的PWM控制__細(xì)分驅(qū)動(dòng)的實(shí)現(xiàn)解讀_第2頁
基于FPGA的步進(jìn)電機(jī)的PWM控制__細(xì)分驅(qū)動(dòng)的實(shí)現(xiàn)解讀_第3頁
基于FPGA的步進(jìn)電機(jī)的PWM控制__細(xì)分驅(qū)動(dòng)的實(shí)現(xiàn)解讀_第4頁
基于FPGA的步進(jìn)電機(jī)的PWM控制__細(xì)分驅(qū)動(dòng)的實(shí)現(xiàn)解讀_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余15頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、山東大學(xué)威海分校課程設(shè)計(jì)報(bào)告設(shè)計(jì)題目:基于FPGA的步進(jìn)電機(jī)的PWM控制姓名.秦正運(yùn)_學(xué)號20059002029院系信息工程學(xué)院專業(yè)電子信息科學(xué)與技術(shù)年級_052009年5月3日目錄2摘要3關(guān)鍵詞3Abstract3Keywords3一、引言4二、步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)的基本原理4三、QuartusII概述5四、課題設(shè)計(jì)6(一)總體設(shè)計(jì)6(二)細(xì)分電流的實(shí)現(xiàn)6(三)細(xì)分驅(qū)動(dòng)性能的改善6(四)程序設(shè)計(jì)7六、仿真與測試結(jié)果分析10七、結(jié)論12參考文獻(xiàn)13注釋14附錄15謝辭21在對步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)原理進(jìn)行分析研究的基礎(chǔ)上,提出一種基于FPGA控制的步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)器。利用FPGAH勺嵌入式EA討勾成LP

2、M-RO幃放步進(jìn)電機(jī)各相細(xì)分電流所需的PW臟制波形數(shù)據(jù)表,并通過FPG破計(jì)的數(shù)字比較器,同時(shí)產(chǎn)生多路PWMt流波形,實(shí)現(xiàn)對步進(jìn)電機(jī)轉(zhuǎn)角進(jìn)行均勻細(xì)分控制。實(shí)驗(yàn)證明,所研制的步進(jìn)電機(jī)驅(qū)動(dòng)器不僅體積小,簡化了系統(tǒng)的設(shè)計(jì),減少了延遲,改善了低頻特性,有良好的適應(yīng)性和自保護(hù)能力,提高了驅(qū)動(dòng)器的穩(wěn)定性和可靠性。關(guān)鍵詞步進(jìn)電機(jī);細(xì)分驅(qū)動(dòng);脈寬調(diào)制;FPGAAbstractInthispaper,adivideddrivingcircuitforsteppingmotorcontrolledbyFPGAisputforward,basedontheanalysisoftheprincipleofsteppin

3、gmotordivideddriving.UsingembeddedEABinFPGAtocomposeLPM-ROM,storePWMcontrolwaveformdatawhichsteppingmotoreachphasesubdivideddrivingcurrentisneeded.ThemagnitudecomparatordesignedwithFPGAgeneratesseveralPWMcurrentwaveformsynchronously,torealizethestepanglesevendivisioncontrolforthree-phasesteppingmoto

4、r.Experimmentshaveprovedthatthedevelopedsubdivisiondriverisnotonlysmaller,samplerinsystem,canshortenthedelaytime,improvethestabilityinlowfrequency,buthasgoodself-adaptationandself-protectionability,anditsstabilityandrelibilityarehigher.Keywordssteppingmotor;divideddriving;PWM;FPGA一、引言步進(jìn)電機(jī)是把脈沖信號轉(zhuǎn)換成角位

5、移或直線位移的執(zhí)行元件,是一種輸出與輸入數(shù)字脈沖相對應(yīng)的增量驅(qū)動(dòng)元件。具有定位精度高、慣性小、無積累誤差、啟動(dòng)性能好、易于控制、價(jià)格低廉及與計(jì)算機(jī)接口方便等優(yōu)點(diǎn),被廣泛應(yīng)用于數(shù)控系統(tǒng)中。但由于脈沖的不連續(xù)性又使步進(jìn)電機(jī)的運(yùn)行存在許多的不足之處,如低頻震蕩,噪聲大,分辨率不高及驅(qū)動(dòng)系統(tǒng)的可靠性差等,嚴(yán)重制約了其應(yīng)用范圍。步進(jìn)電機(jī)的細(xì)分控制有效的解決了這一問題,步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)技術(shù)可以減小步進(jìn)電機(jī)的步距角,提高電機(jī)運(yùn)行的平穩(wěn)性,增加控制的靈活性等。但是傳統(tǒng)的步進(jìn)電機(jī)驅(qū)動(dòng)大多數(shù)采用的是用單片機(jī)作為控制芯片,外加分立的數(shù)字邏輯電路和模擬電路構(gòu)成。受單片機(jī)工作頻率的限制,細(xì)分?jǐn)?shù)不是很高,因此控制器的精度

6、較低,控制性能不是很理想。近年來隨著可編程邏輯器件的飛速發(fā)展,似的可編程邏輯器件功能越來越強(qiáng)大從而促使高集成化高精度的驅(qū)動(dòng)器的出現(xiàn)。本系統(tǒng)是以FPGM核心的控制器件,將驅(qū)動(dòng)邏輯功能模塊和控制器成功地集成在FPGAt。利用FPG9的嵌入式EAB可以構(gòu)成存放電機(jī)各相電流所需的控制波形表,再利用數(shù)字比較器同步產(chǎn)生多路FPGAt流波形,對多相步進(jìn)電機(jī)進(jìn)行控制。若改變控制波形表的數(shù)據(jù)、增加計(jì)數(shù)器和比較器的位數(shù),提高計(jì)數(shù)精度,就可以提高PW極形的細(xì)分精度,進(jìn)而對步進(jìn)電機(jī)的步進(jìn)轉(zhuǎn)角進(jìn)行任意級細(xì)分,實(shí)現(xiàn)轉(zhuǎn)角的精確控制。二、步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)的基本原理步進(jìn)電機(jī)的驅(qū)動(dòng)是靠給步進(jìn)電機(jī)的各相勵(lì)磁繞組輪流通以電流,實(shí)現(xiàn)步

7、進(jìn)電機(jī)內(nèi)部磁場合成方向的變化來使步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的。設(shè)矢量Ta、Tb、Tc、Td為步進(jìn)電機(jī)AB、C、D四項(xiàng)勵(lì)磁繞組分別通電時(shí)產(chǎn)生的磁場矢量;Tab、Tbc、Tcd、Tda為步進(jìn)電機(jī)中AB,BC,CD,DAW相同時(shí)通電產(chǎn)生的合成磁場矢量。當(dāng)步進(jìn)電機(jī)的ABCD四相輪流通電時(shí),步進(jìn)電機(jī)內(nèi)部磁場從TZTATCTD,即磁場產(chǎn)生了旋轉(zhuǎn)。一般的,當(dāng)步進(jìn)電機(jī)的內(nèi)部磁場變化一周時(shí),電機(jī)的轉(zhuǎn)子轉(zhuǎn)過一個(gè)齒距,即改變一次通電狀態(tài),轉(zhuǎn)子轉(zhuǎn)過一個(gè)步距角。該步距角的計(jì)算公式為:3604二二mZX其中:a代表接入繞組的線路狀態(tài)數(shù),m代表電動(dòng)機(jī)的相數(shù),Zx代表轉(zhuǎn)子齒數(shù)。由此可見,步進(jìn)電機(jī)一旦制造出來,其相數(shù)與轉(zhuǎn)子齒數(shù)將為定值,要想

8、減小步距角,以達(dá)到細(xì)分的目的,用戶能改變的只有a。在無細(xì)分的步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)中,通過各相繞組的電流幅值是不變化的,僅在各相通電狀態(tài)變化時(shí),a值才相應(yīng)地變化。如對于四相步進(jìn)電機(jī)來說,單四拍或雙四拍運(yùn)行時(shí),a=l;當(dāng)電機(jī)以四相八拍運(yùn)行時(shí),a=2,實(shí)現(xiàn)了步距角的二細(xì)分。由于各相繞組的電流是個(gè)開關(guān)量,即繞組中的電流只有零和某一額定值兩種狀態(tài),相應(yīng)的各相繞組產(chǎn)生的磁場也是個(gè)開關(guān)量,只能通過各相電流的通電組合來改變步距角。所以要想增大a,必須使繞組中的電流按階梯上升和下降,即在零與最大相電流之間有多個(gè)穩(wěn)定的中間電流狀態(tài),相應(yīng)的磁場矢量幅值也存在多個(gè)中間狀態(tài),這樣,相鄰兩相或多相的合成磁場的方向也將有多個(gè)穩(wěn)

9、定的中間狀態(tài)。圖1所示為四相步進(jìn)電機(jī)八細(xì)分時(shí)各相電流波形,各相電流均以最大電流值的1/4上升和下降。與單四拍方式相比,a值從2增加到8,步距角8b為單四拍運(yùn)行方式時(shí)的1/8。所以步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)的關(guān)鍵在于控制電機(jī)各相勵(lì)磁繞組中的電流大小及其穩(wěn)定性。B相C相D相圖1三相步進(jìn)電機(jī)八細(xì)分各相電流狀態(tài)圖改變步進(jìn)電機(jī)相電流通常采用電流矢量恒幅均勻旋轉(zhuǎn)的細(xì)分方法來實(shí)現(xiàn),即同時(shí)改變兩相電流iA和iB的大小,使電流合成矢量等幅均勻旋轉(zhuǎn)。iA和iB的變化曲線可描述為:iA=ImcosxiB=Imsinx三相步進(jìn)電機(jī)八細(xì)分時(shí)的各相電流是以1/4的步距上升或下降的,在兩相穩(wěn)定的中間狀態(tài),原來一步所轉(zhuǎn)過的角度將由八步

10、完成,實(shí)現(xiàn)了步距角的八細(xì)分。三、QuartusII概述QuartusII是Altera公司的綜合性PLD開發(fā)軟件,支持原理圖、VHDLVerilogHDL以及AHDL(AlteraHardwareDescriptionLanguage)等多種設(shè)計(jì)輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計(jì)輸入到硬件配置的完整PLD設(shè)計(jì)流程。QuartusII可以在XRLinux以及Unix上使用,除了可以使用Tcl腳本完成設(shè)計(jì)流程外,提供了完善的用戶圖形界面設(shè)計(jì)方式。具有運(yùn)行速度快,界面統(tǒng)一,功能集中,易學(xué)易用等特點(diǎn)。QuartusII支持Altera的IP核,包含了LPM/MegaFunction宏

11、功能模塊庫,使用戶可以充分利用成熟的模塊,簡化了設(shè)計(jì)的復(fù)雜性、加快了設(shè)計(jì)速度。對第三方EDAX具的良好支持也使用戶可以在設(shè)計(jì)流程的各個(gè)階段使用熟悉的第三放EDA工具。此外,QuartusII通過和DSPBuilder工具與Matlab/Simulink相結(jié)合,可以方便地實(shí)現(xiàn)各種DSP應(yīng)用系統(tǒng);支持Altera的片上可編程系統(tǒng)(SOPC開發(fā),集系統(tǒng)級設(shè)計(jì)、嵌入式軟件開發(fā)、可編程邏輯設(shè)計(jì)于一體,是一種綜合性的開發(fā)平臺(tái)。MaxplusII作為Altera的上一代PLD設(shè)計(jì)軟件,由于其出色的易用性而得到了廣泛的應(yīng)用。目前Altera已經(jīng)停止了對MaxplusII的更新支持,QuartusII與之相比不

12、僅僅是支持器件類型的豐富和圖形界面的改變。Altera在QuartusII中包含了許多諸如SignalTapII、ChipEditor和RTLViewer的設(shè)計(jì)輔助工具,集成了SOPG口HardCopy設(shè)計(jì)流程,并且繼承了MaxplusII友好的圖形界面及簡便的使用方法。四、課題設(shè)計(jì)(一)總體設(shè)計(jì)從圖1中可以看出,一般情況下總有二相繞組同時(shí)通電。一相電流逐漸增大,另一相逐漸減小。對應(yīng)于一個(gè)步距角,電流可以變化N個(gè)臺(tái)階,也就是電機(jī)位置可以細(xì)分為N個(gè)小角度,這就是電機(jī)的一個(gè)步距角被N細(xì)分的工作原理。也可以說,步距角的細(xì)分就是電機(jī)繞組電流的細(xì)分,從而可驅(qū)動(dòng)步進(jìn)電機(jī)平滑運(yùn)行。圖2為步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)系統(tǒng)

13、結(jié)構(gòu)圖。步距細(xì)分電路是由PW就數(shù)器、ROM6址發(fā)生器、PW隴形存儲(chǔ)器、比較器、功放電路所組成。其中,PWM數(shù)器在時(shí)鐘脈沖作用下遞增計(jì)數(shù),產(chǎn)生階梯形上升的周期性鋸齒波,同時(shí)加載到四相步進(jìn)電機(jī)各相數(shù)字比較器的一端;波形RO瞬出的數(shù)據(jù)q15.12,q11.8、q7.4、q3.0分別加載到比較器的另一端。當(dāng)PWMfr數(shù)器的計(jì)數(shù)值小于波形ROM俞出數(shù)值時(shí),比較器輸出高電平;而當(dāng)大于波形ROM俞出值時(shí),比較器輸出低電平。由此可輸出周期性的PW極形。1g據(jù)圖1步進(jìn)電機(jī)八細(xì)分電流波形的要求,將各個(gè)時(shí)刻細(xì)分電流波形所對應(yīng)的數(shù)值存放于波形ROM中,波形ROM勺地址由地址計(jì)數(shù)器產(chǎn)生,地址計(jì)數(shù)器有3個(gè)控制端,可用于改

14、變步進(jìn)電機(jī)的旋轉(zhuǎn)方向、轉(zhuǎn)動(dòng)速度、工作/停止?fàn)顟B(tài)。FPGAZ產(chǎn)生的PWM1號控制驅(qū)動(dòng)電路的導(dǎo)通和關(guān)斷。PWM1號隨ROMS據(jù)而變化,改變ROMH勺數(shù)據(jù)就可以改變輸出信號的占空比,實(shí)現(xiàn)限流及細(xì)分控制,最終使電機(jī)繞組電流呈現(xiàn)階梯形變化,從而達(dá)到步距細(xì)分的目的。圖2步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)系統(tǒng)結(jié)構(gòu)圖(二)細(xì)分電流的實(shí)現(xiàn)從LPM_ROM出的數(shù)據(jù)加在比較器的A端,PW漱數(shù)器的計(jì)數(shù)值加在比較器的B端,當(dāng)計(jì)數(shù)值小不ROM5:據(jù)時(shí),比較器輸出低電平;當(dāng)計(jì)數(shù)值大于RO酸據(jù)時(shí),比較器輸出高電平。如果改變ROW的數(shù)據(jù),就可以改變一個(gè)技術(shù)周期中高低電平的比例。(三)細(xì)分驅(qū)動(dòng)性能的改善在線性電流的驅(qū)動(dòng)下,步進(jìn)電機(jī)的微步進(jìn)是不均勻

15、的,呈現(xiàn)出明顯的周期性波動(dòng)。磁場的邊界條件按齒槽情況呈周期性重復(fù)是導(dǎo)致微步距周期性變化的原因。同時(shí),不可避免的摩擦負(fù)載(摩擦力矩是不恒定的,或者說在一定范圍內(nèi)也是不確定的)以及其他負(fù)載力矩的波動(dòng)導(dǎo)致失調(diào)角出現(xiàn)不規(guī)則的小變動(dòng)或小跳躍,也使微步距角曲線在周期性波動(dòng)上出現(xiàn)不光滑的小鋸齒形。步進(jìn)電機(jī)的電流矩角特性并非線性函數(shù),而是近似于正弦函數(shù)。若電流呈線性上升或者下降,必然會(huì)造成每一細(xì)分步的步距角不均勻,從而影響步距精度。為此,要在設(shè)計(jì)中提高LPM_ROM數(shù)據(jù)精度,將數(shù)據(jù)提高到16位,使輸出的步進(jìn)細(xì)分電流近似為正弦電流,這樣不項(xiàng)I高了步距精度,而且可以改善低頻震蕩。(四)程序設(shè)計(jì)圖3為步進(jìn)電機(jī)PWM

16、6制電路。CNT配十六進(jìn)制計(jì)數(shù)器,構(gòu)成PWMK器,將整個(gè)PWMB期分成4等份,產(chǎn)生階梯形上升的周期性鋸齒波,同時(shí)加載到四相步進(jìn)電機(jī)各相數(shù)字比較器的一端;CNT3怨三十二進(jìn)制計(jì)數(shù)器構(gòu)成ROMfi址發(fā)生器,計(jì)數(shù)器的u_d為方向控制,EN為使能控制,clk_d為速度控制,可以通過u_d、EN和clk_d控制步進(jìn)電機(jī)的旋轉(zhuǎn)方向、工作/停止和旋轉(zhuǎn)速度;s為模式選擇控制,可以選擇正常運(yùn)轉(zhuǎn)模式或者是細(xì)分驅(qū)動(dòng)模式。ROM1寬度為16位,深度為32位的存儲(chǔ)器,存放了各個(gè)時(shí)刻細(xì)分電流波形所對應(yīng)的數(shù)值;CM次數(shù)字比較器,用于RO喻出的數(shù)據(jù)和PW漱數(shù)器計(jì)數(shù)值的比較。輸出細(xì)分電流信號采用FPG9ROMS表法,它是通過在

17、不同地址單元內(nèi)寫入不同的PWMK據(jù),用地址選擇來實(shí)現(xiàn)不同通電方式下的可變步距細(xì)分。從RO麻出的數(shù)據(jù)加在比較器的“a”端,PW就數(shù)器的計(jì)數(shù)值加在比較器的“b”端,當(dāng)計(jì)數(shù)值小于RO酸據(jù)時(shí),比較器輸出高電平;當(dāng)計(jì)數(shù)值大于RO酸據(jù)時(shí),比較器則輸出低電平。如果改變ROW的數(shù)據(jù),就可以改變一個(gè)計(jì)數(shù)周期中高低電平的比例。圖3步進(jìn)電機(jī)PWM控制電路下面具體來闡述一下各個(gè)元件的設(shè)計(jì):圖5為十六進(jìn)制計(jì)數(shù)器的RTL圖,通過不斷輸出十六進(jìn)制數(shù)與ROW的數(shù)據(jù)作比較計(jì)數(shù)器的VHDL®言程序見附錄2.add'd圖4十六進(jìn)制計(jì)數(shù)器圖6為三十二進(jìn)制計(jì)數(shù)器RTL圖,可以輸出五位二進(jìn)制的地址,以便可以查詢ROMg

18、程序見附錄3。圖5三十二進(jìn)制計(jì)數(shù)器圖六為四個(gè)比較器的RTL圖,當(dāng)計(jì)數(shù)值小于RO臧據(jù)時(shí),比較器輸出高電平;當(dāng)計(jì)數(shù)值大于RO酸據(jù)時(shí),比較器則輸出低電平。比較器的輸出為步進(jìn)的四相輸入端提供PWM形,從而達(dá)到PWMI制。程序見附錄4LessThanO圖6比較器圖7為多路選擇器,利用s端可以選擇控制步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)方式,s=0時(shí),步進(jìn)電機(jī)為PW肺制,s=1是步進(jìn)電機(jī)的普通運(yùn)轉(zhuǎn)方式。程序見附錄5.>b3.Oa3.0圖7多路選擇器圖9的功能是從三十二進(jìn)制計(jì)數(shù)器的輸出端引入數(shù)據(jù)并把它轉(zhuǎn)化成步進(jìn)電機(jī)的普通四相驅(qū)動(dòng)方式。程序見附錄6cq1.0lPJUX'1圖8計(jì)數(shù)轉(zhuǎn)換器PW班形ROMS是通過Quart

19、usII中的宏功能模塊定制而成,利用FPGA中的嵌入式EAB構(gòu)成LPM-ROM,存放步進(jìn)電機(jī)各相細(xì)分電流所需的PWM控制波形數(shù)據(jù)表。ROM數(shù)據(jù)和程序見附錄7和附錄8.六、仿真與測試結(jié)果分析圖9是四相步進(jìn)電機(jī)PWM&真波形圖,圖中展示了FPGA空制步進(jìn)電機(jī)的情況。ROM輸出的16位數(shù)據(jù)q15.0,作為步進(jìn)電機(jī)各相電流的參考值,每4位二進(jìn)制(l位八進(jìn)制)數(shù)值控制一個(gè)相,分別用于控制步進(jìn)電機(jī)AB、C,D四相的工作電流。對于每一相來說,當(dāng)輸出數(shù)據(jù)為0時(shí),該相電流為0;輸出數(shù)據(jù)為1時(shí),脈寬高電平占一個(gè)PW曬期的1/4;當(dāng)輸出數(shù)據(jù)為2時(shí),脈寬高電平占一個(gè)PW闡期的2/4;當(dāng)輸出數(shù)據(jù)為4時(shí),整個(gè)PW

20、MB期均輸出高電平。PW喻出電流的平均值與旋轉(zhuǎn)角度成正比。圖9中也給出了步進(jìn)電機(jī)從A->AB->B->BC->C->CD->D->DAI相八拍工作過程的仿真波形。首先,步進(jìn)電機(jī)A相導(dǎo)通,BC、D相截止,q15.0輸出數(shù)據(jù)為F000;A相的數(shù)據(jù)為F,其他相的數(shù)據(jù)為00然后逐漸過度到AB相導(dǎo)通,q16.0輸出數(shù)據(jù)為F600->F900->FC00->FF00,B相的數(shù)據(jù)逐漸增大,從1增大到4。電機(jī)中的磁場經(jīng)過4拍,從A相轉(zhuǎn)到了AB相。再經(jīng)過4拍,從AB相轉(zhuǎn)到B相;q15.0輸出數(shù)據(jù)為CF00->9F00->6F00->0

21、F00,A相的數(shù)據(jù)逐漸減小,從4變?yōu)?。從A到AB到B共經(jīng)過了8拍,實(shí)現(xiàn)了步距角的8級細(xì)分。此外由于步進(jìn)電機(jī)是電感性負(fù)載,對輸出的PWMI流具有平滑濾波作用,對電機(jī)線圈起作用的是PWM1平均電流,因此在效果上將圖中的細(xì)小毛刺電流濾除。喇時(shí)Jilll喇卿聊1腳唧則剛iim皿唧哪皿"刪靦用unmiifM聊咖喇則嘀。肌岫喇皿聊iwmi皿nnn則1001VainWiooo/OOll01000U0DUOOCFOPCOOXFPOOYCFOOY9F00邀畫畫琬K期13yy0yl貝幻3r_|p55雙一于麗-XFOO丁X前面一2篦廣FOdF,葡-乂加,EOOFX加優(yōu)一X006F,%U國1f£

22、PMF乂間F,00汽圖10仿真波形2圖11和圖9對比,可以看出,當(dāng)u_d為高電平時(shí),ROMg中輸出的數(shù)據(jù)和圖9順序相反,輸出的PW極形也和圖9相反。因此,步進(jìn)電機(jī)的內(nèi)部磁場從ADG>C-BOB-AA一DA,電機(jī)反轉(zhuǎn)。ns3.84us4.4第u55.12nsus6.4ns704.n圖12是在s為高電平時(shí)的仿真圖,當(dāng)s=1時(shí),步進(jìn)電機(jī)為單四拍常規(guī)運(yùn)轉(zhuǎn)方式,內(nèi)部磁場從AB8CADA圖10是在clk_d的頻率比較高的情況下的仿真圖。和圖9比較可以看出,clk_d的頻率越大,PWMfc年比較密集,步進(jìn)電機(jī)的轉(zhuǎn)速越高,即clk_d是速度控制信號。41txl13E13.65Elialls.B股誨誨效效

23、殮苫&強(qiáng)注&X箔飾效彷啾飾謝愉舞X窈段彷殮澆澆及效於瓷澆澆窈混械效效彷圖11仿真波形33.23l.KUS?.5S»nto登格彷咫儂泌港圖9仿真波形13ps320.0ns640.0ns960.0nsL.28us-II-Iumnnnnwjnnmnnnnmuuumnnnmuumnnnmumnnnmuumwwxooiopx6400nxITSns3"4<?55.76口工6.4sjuurnnmumnnn.wuuinnmuuiHaneViln13.£據(jù)_1岡嶺_1岬弭小_3._3.31*_4.叫US_5.12u=_5,T6小一呂4,8_T.04,u13.6

24、5deelkclk.deiiw刷肌唧喇腳池皿.廁聊唧喇刪喇i喇Miwim岫刪iyj國1ylj網(wǎng)y(3jpwn_.BBiBBB兩廠U譏/值m(T時(shí)?imi乂00"丫"市TTYTiXFDqit"55TrP仃iFXT!Uirxn面X???fH5"飛:.:;:TL;ij:一LLLT-;,:;:一廠L;Hl一L:.-.,_-.-一,.rH一-*-_,畫KF0Q0X寞西)CTOKFoot)即班)fE5i5rXaoof工一旦QQEJT556rXnofiFQ皿EJCQOCFJ口口FFy?實(shí)測結(jié)果表明,要是步進(jìn)電機(jī)細(xì)分后獲得均勻的步進(jìn)轉(zhuǎn)角,其PWM8動(dòng)電流應(yīng)近似于正弦電流

25、,而非線性遞增的電流,因此ROMC件中的數(shù)據(jù)進(jìn)行適當(dāng)選擇,使每一步的電流增加量近似正弦波,并根據(jù)實(shí)際轉(zhuǎn)角做了適當(dāng)調(diào)整。由于PWM勺輸入時(shí)鐘頻率較高,因此可以獲得均勻的平均電流,并且每一步的時(shí)間間隔相等,轉(zhuǎn)角近似均勻。七、結(jié)論通過利用FPG9嵌入式EAB勾成的LPM-ROIW放電機(jī)轉(zhuǎn)角細(xì)分電流所需的數(shù)據(jù)表,由數(shù)字比較器同步產(chǎn)生多路PWMfe流波形,對多相步進(jìn)電機(jī)的轉(zhuǎn)角進(jìn)行均勻細(xì)分,有效地控制步進(jìn)電機(jī)。若提高波形表數(shù)據(jù)的位數(shù),增加計(jì)數(shù)器和比較器的位數(shù),就可以提高PWM波形的細(xì)分精度,對步進(jìn)電機(jī)的步進(jìn)轉(zhuǎn)角進(jìn)行任意細(xì)分,實(shí)現(xiàn)步進(jìn)轉(zhuǎn)角的精確控制。此實(shí)現(xiàn)方法比目前單片機(jī)加D/A的控制方案更加高效。試驗(yàn)證明

26、,此系統(tǒng)功能滿足設(shè)計(jì)要求,控制靈活,集成度高。驅(qū)動(dòng)器在減少體積、降低開發(fā)成本的同時(shí),又增加了穩(wěn)定性和可靠性,具有較好的動(dòng)態(tài)和靜態(tài)驅(qū)動(dòng)特性,有效地提高步進(jìn)電機(jī)的運(yùn)行效果。參考文獻(xiàn)1李華德等,交流調(diào)速控制系統(tǒng).北京:電子工業(yè)出版社,2003.3:22-272潘松等,EDA技術(shù)實(shí)用教程M.北京:科學(xué)出版社20053雷凱等,步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)中繞組電流的修正J.蘇州大學(xué)學(xué)報(bào)2003.1:38-404楊忠寶,林海波,基于80C196MC的步進(jìn)電機(jī)斬波恒流均勻細(xì)分電路的實(shí)現(xiàn)J.微計(jì)算機(jī)信息2003.7:51-525袁麗肖,王健等,直接轉(zhuǎn)矩控制系統(tǒng)的自適應(yīng)模糊控制方法的研究J.微電機(jī)2006.33(9):26

27、-296翁良科,伊仕.基于VerilogHDL苗述的多用途步進(jìn)電機(jī)控制芯片的設(shè)計(jì)J.電子技術(shù)應(yīng)用,20027程浩.三相混合步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)的研制D.浙江:浙江大學(xué).20018李恩光.機(jī)電伺服控制技術(shù).東華大學(xué)出版社,2003PW極術(shù):脈寬調(diào)制(PWM:(PulseWidthModulation)是利用微處理器的數(shù)字輸出來對模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測量、通信到功率控制與變換的許多領(lǐng)域中。簡而言之,PWM1一種對模擬信號電平進(jìn)行數(shù)字編碼的方法。通過高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來對一個(gè)具體模擬信號的電平進(jìn)行編碼。PWM1號仍然是數(shù)字的,因?yàn)樵诮o定的任何時(shí)刻,滿

28、幅值的直流供電要么完全有(ON),要么完全無(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復(fù)脈沖序列被加到模擬負(fù)載上去的。通的時(shí)候即是直流供電被加到負(fù)載上的時(shí)候,斷的時(shí)候即是供電被斷開的時(shí)候。只要帶寬足夠,任何模擬值都可以使用PWM4行編碼。PWMJ一個(gè)優(yōu)點(diǎn)是從處理器到被控系統(tǒng)信號都是數(shù)字形式的,無需進(jìn)行數(shù)模轉(zhuǎn)換。讓信號保持為數(shù)字形式可將噪聲影響降到最小。噪聲只有在強(qiáng)到足以將邏輯1改變?yōu)檫壿?或?qū)⑦壿?改變?yōu)檫壿?時(shí),也才能對數(shù)字信號產(chǎn)生影響。對噪聲抵抗能力的增強(qiáng)是PWM目對于模擬控制的另外一個(gè)優(yōu)點(diǎn),而且這也是在某些時(shí)候?qū)WMB于通信的主要原因。從模擬信號轉(zhuǎn)向PWMT以極大地延

29、長通信距離。在接收端,通過適當(dāng)?shù)腞C或LC網(wǎng)絡(luò)可以濾除調(diào)制高頻方波并將信號還原為模擬形式。附錄1:頂層程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitydjxfisport(clk,clk_d,u_d,s,en:instd_logic;y:outstd_logic_vector(3downto0);endentitydjxf;architecturebehavofdjxfiscomponentcnt8port(clk:instd_logic;cq:outstd_logic_vector(3

30、downto0);endcomponent;componentdec2port(clk:instd_logic;a:instd_logic_vector(1downto0);d:outstd_logic_vector(3downto0);endcomponent;componentcnt32port(clk,en,u_d:instd_logic;cq:outstd_logic_vector(4downto0);endcomponent;componentpwm_romPORTaddressinclock(:INSTD_LOGIC_VECTOR(4DOWNTO0);:INSTD_LOGIC;:O

31、UTSTD_LOGIC_VECTOR(15DOWNTO0);endcomponent;componentcmpport(a,b:instd_logic_vector(3downto0);agb:outstd_logic);endcomponent;componentmuxport(a,b:instd_logic_vector(3downto0);5: instd_logic;y:outstd_logic_vector(3downto0);endcomponent;signalsgn1:std_logic_vector(3downto0);signalsgn2:std_logic_vector(

32、4downto0);signalsgn3:std_logic_vector(15downto0);signalsgn4,f:std_logic_vector(3downto0);beginu1:cnt8portmap(clk=>clk,cq=>sgn1);u2:cnt32portmap(clk=>clk_d,en=>en,u_d=>u_d,cq=>sgn2);u3:pwm_romportmap(inclock=>clk_d,address=>sgn2,q=>sgn3);cmp1:cmpportmap(a=>sgn3(15downto1

33、2),b=>sgn1,agb=>f(3);cmp2:cmpportmap(a=>sgn3(11downto8),b=>sgn1,agb=>f(2);cmp3:cmpportmap(a=>sgn3(7downto4),b=>sgn1,agb=>f(1);cmp4:cmpportmap(a=>sgn3(3downto0),b=>sgn1,agb=>f(0);u4:dec2portmap(clk=>clk,a=>sgn2(1downto0),d=>sgn4);m:muxportmap(a=>f,b=>sg

34、n4,s=>s,y=>y);endarchitecturebehav;附錄2:十六進(jìn)制計(jì)數(shù)器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycnt8isport(clk:instd_logic;cq:outstd_logic_vector(3downto0);endcnt8;architecturebehavofcnt8issignalcqi:std_logic_vector(4downto0);beginprocess(clk)beginifclk'eventandcl

35、k='1'thencqi<=cqi+1;endif;endprocess;cq<=cqi(4downto1);endbehav;附錄3:三十二進(jìn)制計(jì)數(shù)器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycnt32isport(clk,en,u_d:instd_logic;cq:outstd_logic_vector(4downto0);endcnt32;architecturebehavofcnt32issignalcqi:std_logic_vector(4dow

36、nto0);beginprocess(clk,en,u_d)beginifen='1'thencqi<=cqi;elsifclk'eventandclk='1'thenifu_d='1'thencqi<=cqi+1;elsecqi<=cqi-1;endif;endif;endprocess;cq(4downto0)<=cqi;endbehav;附錄4:比較器libraryieee;useieee.std_logic_1164.all;entitycmpisport(a,b:instd_logic_vector(3d

37、ownto0);agb:outstd_logic);end;architectureoneofcmpisbeginprocess(a,b)beginifa>bthenagb<='1'elseagb<='0'endif;endprocess;end;附錄5:多路選擇器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitymuxisport(a,b:instd_logic_vector(3downto0);5: instd_logic;y:outstd

38、_logic_vector(3downto0);endentitymux;architectureoneofmuxisbeginprocess(a,b,s)beginifs='0'theny<=a;elsey<=b;endif;endprocess;endarchitectureone;附錄6:轉(zhuǎn)換器libraryieee;useieee.std_logic_1164.all;entitydec2isport(clk:instd_logic;a:instd_logic_vector(1downto0);d:outstd_logic_vector(3downto0);

39、end;architectureoneofdec2issignalcq:std_logic_vector(1downto0);beginprocess(cq)begincasecqiswhen"00"=>d<="1001"when"01"=>d<="1100"when"10"=>d<="0110"when"11"=>d<="0011"whenothers=>null;endcase;

40、endprocess;process(clk)beginifclk'eventandclk='1'thencq<=a;endif;endprocess;end;附錄7:PWM_ROM致?lián)idth=16;depth=32;address_radix=hex;data_radix=hex;contentbegin0:f000;1:f600;2:f900;3:fc00;4:ff00;5:cf00;6:9f00;7:6f00;8:0f00;9:0f60;a:0f90;b:0fc0;c:0ff0;d:0cf0;e:09f0;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;附錄8:ROME制程序LIBRARYieee;USEieee.std_logic_1164.all;LIB

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論