基于FPGA的多通道直流電機控制器設(shè)計
2.2 分頻模塊
盡管可以設(shè)計中采用鎖相環(huán)來完成分頻器的設(shè)計,但為了節(jié)省邏輯資源,降低芯片功耗,在對于時鐘要求不太嚴格的設(shè)計中,可自主設(shè)計進行時鐘分頻。本設(shè)計中采用常用的計數(shù)分頻,只改變分頻系數(shù)就可實現(xiàn)隨意分頻。其設(shè)計過程簡單,且消耗系統(tǒng)資源少。在本設(shè)計中輸入時鐘CLK_25M為25 MHz,為了設(shè)計方便,選擇分頻系數(shù)設(shè)為16。通過對模塊輸出進行仿真,測量時鐘輸出頻率為1.562 5 MHz,周期為640 ns滿足設(shè)計要求。
2.3 計數(shù)模塊
本設(shè)計中采用霍爾傳感器對直流電機進行轉(zhuǎn)速測量,電機每轉(zhuǎn)一圈,霍爾傳感器就輸出一個高脈沖。測速模塊其功能主要是計數(shù),并且將所得到的數(shù)字應(yīng)予鎖存輸出。根據(jù)單位周期內(nèi)霍爾傳感器輸出的高脈沖數(shù)就可以估算出電機的轉(zhuǎn)速。在本設(shè)計中設(shè)定每500 ms的周期內(nèi)對計數(shù)結(jié)果進行一次輸出并清零。根據(jù)其具體邏輯功能將利用Verilog HDL語言實現(xiàn),其邏輯框圖如圖4所示。本文引用地址:http://butianyuan.cn/article/189758.htm
測速模塊的邏輯仿真結(jié)果如圖5所示,分頻后系統(tǒng)時鐘頻率為1.562 5 MHz,系統(tǒng)復(fù)位后,開始對被測霍爾傳感器輸入進行計數(shù)測量,其結(jié)果為20。已經(jīng)被測輸入信號周期為50 ms,則頻率為20,表明設(shè)計完全正確。
2.4 并行控制模塊
并行控制模塊部分是電機控制的核心部分,主要負責根據(jù)預(yù)定設(shè)置和計數(shù)模塊的計數(shù)結(jié)果,按照設(shè)計目的,完成對PWM占空比的控制。由于要實現(xiàn)各通道電機之間互不干擾,則要求各并行控制模塊與測速模塊和PWM生成模塊一一對應(yīng),以實現(xiàn)各通道并行獨立控制。
2.5 PWM生成模塊
產(chǎn)生PWM原理:FPGA中的基準計數(shù)器用來產(chǎn)生類似模擬電路的三角波基準,是一個最小計數(shù)值為0,最大計數(shù)值為周期寄存器中保存的數(shù)值。PWM的任務(wù)邏輯由輸入時鐘CLK,輸出信號pwm_out,使能位,32位計數(shù)器以及一個32位比較器組成。輸入時鐘作為32位計數(shù)器的時鐘信號,32位計數(shù)器的當前值與占空比設(shè)定寄存器中的值經(jīng)過比較器后來決定pwm_out的輸出為高或為低。當前計數(shù)器中的值小于或等于占空比寄存器中的值時,pwm_out輸出低電平,否則輸出高電平。PWM的周期設(shè)定寄存器來設(shè)置pwm_out的信號周期,當前計數(shù)器的值等于周期設(shè)定寄存器中設(shè)定的值時產(chǎn)生一個復(fù)位信號來清除計數(shù)器中的值。使能控制寄存器能使時鐘信號有效或無效,從而控制計數(shù)器是否工作,進而控制pwm_out是否保持當前狀態(tài)不變。PWM生成模塊邏輯圖如圖6所示。
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理
評論