国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的多通道直流電機(jī)控制器設(shè)計(jì)

2012-07-13 06:29:50易龍龍張復(fù)春王美玲郝雁中
電子設(shè)計(jì)工程 2012年16期
關(guān)鍵詞:直流電機(jī)計(jì)數(shù)器寄存器

易龍龍,張復(fù)春,王美玲,郝雁中

(中國(guó)人民解放軍空軍航空大學(xué) 航空理論系,吉林 長(zhǎng)春 130022)

機(jī)電一體化系統(tǒng)中常需要產(chǎn)生多通道PWM信號(hào)以完成對(duì)多臺(tái)電機(jī)進(jìn)行協(xié)調(diào)控制,而傳統(tǒng)控制系統(tǒng)仍然采用單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器來產(chǎn)生所需要的PWM信號(hào),但由于定時(shí)/計(jì)數(shù)器及IO端口數(shù)量的限制,單個(gè)單片機(jī)控制器常不能滿足多通道電機(jī)并行控制的要求[1-3]。而FPGA內(nèi)部程序并行運(yùn)行,不同邏輯任務(wù)可同時(shí)執(zhí)行,使其工作更有效率,且其具有豐富的邏輯資源和I/O引腳資源。文中采用Altera公司Cyclone II系列的EP2C8Q208芯片,采用模塊化的設(shè)計(jì)方法,以四臺(tái)無刷直流電機(jī)為控制對(duì)象,完成了多通道的直流電機(jī)控制器的設(shè)計(jì),有效地縮小了設(shè)計(jì)規(guī)模,節(jié)約了設(shè)計(jì)成本。

1 系統(tǒng)整體設(shè)計(jì)

本系統(tǒng)采用自頂向下的設(shè)計(jì)思路,將系統(tǒng)主要分為以下模塊:FPGA控制模塊、電機(jī)驅(qū)動(dòng)模塊,轉(zhuǎn)速檢測(cè)模塊[4]。如圖1所示。本系統(tǒng)以FPGA為控制核心,通過程序設(shè)定控制電機(jī)速度的PWM信號(hào)的占空比,由FPGA的I/O口輸出給直流電機(jī)驅(qū)動(dòng)電路以完成對(duì)直流電機(jī)的驅(qū)動(dòng)。電機(jī)轉(zhuǎn)速測(cè)量由霍爾傳感器完成,反饋給FPGA計(jì)數(shù)模塊,通過計(jì)數(shù)結(jié)果以決策電機(jī)控制狀態(tài)。文中將著重介紹FPGA控制模塊及各部分的功能設(shè)計(jì)與實(shí)現(xiàn)方法。

圖1 系統(tǒng)結(jié)構(gòu)框圖Fig.1 Structure of the system

設(shè)計(jì)中將FPGA控制模塊又分為分頻模塊,計(jì)數(shù)模塊,并行控制模塊,PWM生成模塊4部分。分頻模塊把外部高頻時(shí)鐘信號(hào)降低為系統(tǒng)所需的標(biāo)準(zhǔn)頻率。計(jì)數(shù)模塊對(duì)霍爾傳感器輸入脈沖進(jìn)行計(jì)數(shù)以完成對(duì)電機(jī)轉(zhuǎn)速的測(cè)量。并行控制模塊通過計(jì)數(shù)模塊的計(jì)數(shù)結(jié)果決策PWM信號(hào)的占空比。PWM生成模塊通過并行控制模塊輸出的占空比信號(hào)生成PWM波形。如圖2所示。

圖2 FPGA內(nèi)部模塊框圖Fig.2 Module chart in FPGA

2 各功能模塊設(shè)計(jì)

2.1 電機(jī)驅(qū)動(dòng)模塊

本設(shè)計(jì)中直流電機(jī)驅(qū)動(dòng)模中采用ST公司生產(chǎn)的一種高電壓、大電流電機(jī)驅(qū)動(dòng)芯片L298P,內(nèi)含兩個(gè)H橋的高電壓大電流全橋式驅(qū)動(dòng)器,采用標(biāo)準(zhǔn)TTL邏輯電平信號(hào)控制。由L298P構(gòu)成的脈寬調(diào)速電路如圖3所示。在圖中,L298P可驅(qū)動(dòng)兩個(gè)直流電機(jī),可以分別控制它們的轉(zhuǎn)速、轉(zhuǎn)向、運(yùn)轉(zhuǎn)與停止。圖中ENA、ENB分別控制兩個(gè)電機(jī)的運(yùn)轉(zhuǎn)與停止,當(dāng)端口為高電平時(shí)電機(jī)旋轉(zhuǎn),加低電平時(shí)電機(jī)停止旋轉(zhuǎn);由In1,In2端送入脈寬調(diào)制信號(hào),通過改變信號(hào)的脈寬達(dá)到調(diào)速和換向的目的。M1_+,M1_-和M2_+,M2_-分別是兩個(gè)直流電機(jī)的電壓輸入端[5]。

圖3 LMD18200電機(jī)驅(qū)動(dòng)電路Fig.3 Motor drive circuit based on LMD18200

2.2 分頻模塊

盡管可以設(shè)計(jì)中采用鎖相環(huán)來完成分頻器的設(shè)計(jì),但為了節(jié)省邏輯資源,降低芯片功耗,在對(duì)于時(shí)鐘要求不太嚴(yán)格的設(shè)計(jì)中,可自主設(shè)計(jì)進(jìn)行時(shí)鐘分頻。本設(shè)計(jì)中采用常用的計(jì)數(shù)分頻,只改變分頻系數(shù)就可實(shí)現(xiàn)隨意分頻。其設(shè)計(jì)過程簡(jiǎn)單,且消耗系統(tǒng)資源少。在本設(shè)計(jì)中輸入時(shí)鐘CLK_25M為25 MHz,為了設(shè)計(jì)方便,選擇分頻系數(shù)設(shè)為16。通過對(duì)模塊輸出進(jìn)行仿真,測(cè)量時(shí)鐘輸出頻率為1.562 5 MHz,周期為640 ns滿足設(shè)計(jì)要求。

2.3 計(jì)數(shù)模塊

本設(shè)計(jì)中采用霍爾傳感器對(duì)直流電機(jī)進(jìn)行轉(zhuǎn)速測(cè)量,電機(jī)每轉(zhuǎn)一圈,霍爾傳感器就輸出一個(gè)高脈沖。測(cè)速模塊其功能主要是計(jì)數(shù),并且將所得到的數(shù)字應(yīng)予鎖存輸出。根據(jù)單位周期內(nèi)霍爾傳感器輸出的高脈沖數(shù)就可以估算出電機(jī)的轉(zhuǎn)速。在本設(shè)計(jì)中設(shè)定每500 ms的周期內(nèi)對(duì)計(jì)數(shù)結(jié)果進(jìn)行一次輸出并清零。根據(jù)其具體邏輯功能將利用Verilog HDL語言實(shí)現(xiàn),其邏輯框圖如圖4所示[6]。

圖4 測(cè)速模塊邏輯圖Fig.4 Logic chart of speed measure module

測(cè)速模塊的邏輯仿真結(jié)果如圖5所示,分頻后系統(tǒng)時(shí)鐘頻率為1.562 5 MHz,系統(tǒng)復(fù)位后,開始對(duì)被測(cè)霍爾傳感器輸入進(jìn)行計(jì)數(shù)測(cè)量,其結(jié)果為20。已經(jīng)被測(cè)輸入信號(hào)周期為50 ms,則頻率為20,表明設(shè)計(jì)完全正確。

2.4 并行控制模塊

圖5 測(cè)速模塊仿真圖Fig.5 Simulation chart of speed measure module

并行控制模塊部分是電機(jī)控制的核心部分,主要負(fù)責(zé)根據(jù)預(yù)定設(shè)置和計(jì)數(shù)模塊的計(jì)數(shù)結(jié)果,按照設(shè)計(jì)目的,完成對(duì)PWM占空比的控制。由于要實(shí)現(xiàn)各通道電機(jī)之間互不干擾,則要求各并行控制模塊與測(cè)速模塊和PWM生成模塊一一對(duì)應(yīng),以實(shí)現(xiàn)各通道并行獨(dú)立控制。

2.5PWM生成模塊

產(chǎn)生PWM原理:FPGA中的基準(zhǔn)計(jì)數(shù)器用來產(chǎn)生類似模擬電路的三角波基準(zhǔn),是一個(gè)最小計(jì)數(shù)值為0,最大計(jì)數(shù)值為周期寄存器中保存的數(shù)值。PWM的任務(wù)邏輯由輸入時(shí)鐘CLK,輸出信號(hào)pwm_out,使能位,32位計(jì)數(shù)器以及一個(gè)32位比較器組成。輸入時(shí)鐘作為32位計(jì)數(shù)器的時(shí)鐘信號(hào),32位計(jì)數(shù)器的當(dāng)前值與占空比設(shè)定寄存器中的值經(jīng)過比較器后來決定pwm_out的輸出為高或?yàn)榈?。?dāng)前計(jì)數(shù)器中的值小于或等于占空比寄存器中的值時(shí),pwm_out輸出低電平,否則輸出高電平。PWM的周期設(shè)定寄存器來設(shè)置pwm_out的信號(hào)周期,當(dāng)前計(jì)數(shù)器的值等于周期設(shè)定寄存器中設(shè)定的值時(shí)產(chǎn)生一個(gè)復(fù)位信號(hào)來清除計(jì)數(shù)器中的值。使能控制寄存器能使時(shí)鐘信號(hào)有效或無效,從而控制計(jì)數(shù)器是否工作,進(jìn)而控制pwm_out是否保持當(dāng)前狀態(tài)不變。PWM生成模塊邏輯圖如圖6所示。

圖6 PWM生成邏輯圖Fig.6 Logic chart of generate PWM

本系統(tǒng)共設(shè)計(jì)了4條PWM信號(hào)輸出通道,每條通道的仿真波形如圖8所示。通過仿真發(fā)現(xiàn),當(dāng)改變占空比寄存器data中的數(shù)據(jù)時(shí),模塊輸出信號(hào)波形的占空比也隨之發(fā)現(xiàn)變化,符合脈寬調(diào)制的要求。在本設(shè)計(jì)中采用時(shí)鐘同步信號(hào),只有當(dāng)一個(gè)完整的PWM波輸出時(shí),才能接收data下一個(gè)數(shù)據(jù),有效避免輸出信號(hào)發(fā)生混亂,使輸出信號(hào)具有良好的可預(yù)見性。

3 實(shí)驗(yàn)結(jié)果與分析

本實(shí)驗(yàn)中設(shè)計(jì)了四通道PWM以完成對(duì)4個(gè)直流電機(jī)控制。利用Quartus II自帶的仿真工具對(duì)系統(tǒng)進(jìn)行時(shí)序仿真,如圖7所示。由圖可以看出各個(gè)通道的PWM波的占空比與每個(gè)通道的霍爾傳感器輸入信號(hào)有關(guān),各通道之間互不影響。

圖7 多通道PWM時(shí)序波形圖Fig.7 Timing wave of multi-channel PWM

對(duì)系統(tǒng)綜合之后,通過觀察RTL邏輯視圖,如圖8所示,可以看出,各個(gè)通道是并行的,互不影響,符合設(shè)計(jì)要求。同時(shí),也不難看出,系統(tǒng)結(jié)構(gòu)較為簡(jiǎn)單,具有較強(qiáng)的拓展能力,能夠方便地實(shí)現(xiàn)多通道電機(jī)的并行控制。

圖8 系統(tǒng)RTL邏輯視圖Fig.8 RTL logic view of the system

隨著PWM設(shè)計(jì)通道數(shù)量的增多,所需要的片內(nèi)邏輯資源也就越多,即設(shè)計(jì)PWM通道數(shù)目在一定程度上取決于FPGA片機(jī)邏輯資源的大小。

4 結(jié)束語

本設(shè)計(jì)充分利用了FPGA豐富的I/O引腳資源及程序并行運(yùn)行的特點(diǎn),代替了普通的單片機(jī)實(shí)現(xiàn)了多通道電機(jī)的控制,克服了傳統(tǒng)PWM控制器通道少的不足,同時(shí)有效地減少了電路規(guī)模。本系統(tǒng)采用Quartus II自帶的仿真工具進(jìn)行仿真,驗(yàn)證了設(shè)計(jì)的可行性。雖然本設(shè)計(jì)在功能上還比較單一,在由于其具有良好拓展性,可根據(jù)實(shí)現(xiàn)設(shè)計(jì)要求,能夠方便的對(duì)系統(tǒng)進(jìn)行升級(jí)和維護(hù)。

[1]劉小威,翟超,顏芳.基于FPGA的LAMOST多電機(jī)控制驅(qū)動(dòng)系統(tǒng)[J].機(jī)械與電子,2008(6):17-19.

LIU Xiao-wei,ZHAI Chao,YAN Fang.The controlling and driving system of multiple motors based on FPGA in LAMOST[J].Machinery&Electronics,2008(6):17-19.

[2]韋鯤,任軍軍,張仲超.應(yīng)用于無刷直流電機(jī)的新PWM調(diào)制方式[J].電氣傳動(dòng),2005,35(2):37-40.

WEI Kun,REN Jun-jun,ZHANG Zhong-chao.The research on novel PWM method in BLDC motor[J].Electric Drive,2005,35(2):37-40.

[3]孫偉,黃大慶,閆亞輝.基于FPGA的多通道PWM控制器設(shè)計(jì)[J].江蘇科技學(xué)院學(xué)報(bào),2009,22(4):72-76.

SUN Wei,HUANG Da-qing,YAN Ya-hui.Design of multichannel PWM controller based on FPGA[J].Journal of Suzhou University of Science and Technology,2009,22(4):72-76.

[4]劉衛(wèi)國(guó),李榕,楊浩東,等.基于單DSP的多電機(jī)控制系統(tǒng)[J].電氣傳動(dòng),2005,35(8):25-28.

LIU Wei-guo,LIRong,YANG Hao-dong,etal.Control system of multiple motors based on a single DSP controller[J].Electric Drive,2005,35(8):25-28.

[5]宋健.基于L298的直流電動(dòng)機(jī)PWM調(diào)速器[J].濰坊學(xué)院學(xué)報(bào),2004,2(2):87-89.

SONG Jian.PWM speed regulator for DC motor based on FPGA[J].Journal of Weifang University,2004,2(2):87-89.

[6]常曉明,李媛媛.Verilog-HDL工程實(shí)踐入門[M].北京:北京航空航天大學(xué)出版社,2005.

猜你喜歡
直流電機(jī)計(jì)數(shù)器寄存器
基于模糊PID的無刷直流電機(jī)速度控制系統(tǒng)的設(shè)計(jì)與仿真
煤氣與熱力(2022年2期)2022-03-09 06:29:30
Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
分簇結(jié)構(gòu)向量寄存器分配策略研究*
基于FPGA的雙繞組無刷直流電機(jī)軟件設(shè)計(jì)
電子制作(2017年1期)2017-05-17 03:54:12
計(jì)數(shù)器競(jìng)爭(zhēng)冒險(xiǎn)及其處理的仿真分析
基于模糊神經(jīng)網(wǎng)絡(luò)PID的無刷直流電機(jī)控制系統(tǒng)研究
一種改進(jìn)的無刷直流電機(jī)控制方法
任意N進(jìn)制計(jì)數(shù)器的設(shè)計(jì)方法
河南科技(2014年10期)2014-02-27 14:09:30
基于單片機(jī)的仰臥起坐計(jì)數(shù)器
龙门县| 漳平市| 庆安县| 正安县| 綦江县| 黄石市| 沙河市| 茂名市| 枣庄市| 晋中市| 云梦县| 万源市| 丹凤县| 武安市| 海林市| 宜都市| 毕节市| 新津县| 惠东县| 北流市| 岑溪市| 三明市| 义马市| 郑州市| 格尔木市| 景洪市| 濉溪县| 鄂州市| 原平市| 景谷| 西平县| 武安市| 宜阳县| 资阳市| 怀仁县| 舞阳县| 五指山市| 攀枝花市| 阿图什市| 依兰县| 互助|