基于FPGA的無刷直流電機調(diào)速系統(tǒng)設(shè)計與實現(xiàn)
掃描二維碼
隨時隨地手機看文章
摘要:以FPGA為控制器,使用霍爾傳感器進行電機電流及位置的檢測,用MOSFET搭接成的驅(qū)動電路進行控制電機的轉(zhuǎn)速和轉(zhuǎn)向,用VHDL語言設(shè)計了一種PWM調(diào)節(jié)電機速度的方法。通過對系統(tǒng)進行理論分析以及調(diào)試,實現(xiàn)了電機電流、位置的檢測并控制電機速度和轉(zhuǎn)向從而達到要求的速度和方向。
無刷直流電機具有結(jié)構(gòu)簡單、體積小、效率高、無級調(diào)速、調(diào)速范圍廣、過載能力強等優(yōu)點,在許多領(lǐng)域得到了廣泛的運用,特別是在高性能的伺服驅(qū)動領(lǐng)域,在這些領(lǐng)域要求控制器體積小,還要求對多臺電機并行控制,單芯片大容量現(xiàn)場可編程門陣列(FPGA)能夠?qū)崿F(xiàn)在系統(tǒng)芯片上實現(xiàn)多臺電機的復雜控制功能,大大減小了控制系統(tǒng)的體積。
本文提出了一種無刷直流電動機速度控制器的方案,利用現(xiàn)場可編程門陣列FPGA芯片對電機控制器的進行控制,設(shè)計了利用此控制器對無刷直流電機進行調(diào)速控制的PWM方法。采用VHDL硬件描述語言實現(xiàn)了轉(zhuǎn)子位置檢測電路、驅(qū)動電路和電流檢測電路,整個控制系統(tǒng)響應速度快、超調(diào)小、穩(wěn)態(tài)誤差小、可靠性高、靈活性強。
1 無刷直流電機調(diào)速系統(tǒng)總體設(shè)計
1.1 無刷直流電機調(diào)速系統(tǒng)的方案論證
所謂無刷直流電機調(diào)速系統(tǒng),其主要在于PWM調(diào)速方法的設(shè)計,目的是改變脈沖的占空比。其核心在于智能控制,需要選擇一個智能的控制器,而且系統(tǒng)需要的是簡單高效,對于開關(guān)控制以及信號處理的速度要求并不高,因此采用ALTERA公司的現(xiàn)場可編程門陣列CycloneIII FPGA芯片。
1.2 無刷直流電機調(diào)速系統(tǒng)設(shè)計思路
無刷直流電機調(diào)速系統(tǒng)以FPGA為中心,配有電流檢測模塊、位置檢測模塊、驅(qū)動模塊、PWM調(diào)節(jié)等模塊,利用霍爾傳感器來檢測電機電流和電機轉(zhuǎn)子位置,把采集的信號送給FPGA進行處理從而按照人為設(shè)定的電機初始速度來發(fā)出相應的加、減速和電機正、反轉(zhuǎn)命令并執(zhí)行。
從系統(tǒng)總體框架圖中可以看出,系統(tǒng)主要由驅(qū)動模塊、電流檢測模塊、位置檢測模塊以及PWM調(diào)節(jié)模塊。
無刷直流電機調(diào)速系統(tǒng)是這樣工作的:當打開電機驅(qū)動開關(guān)時,電機開始轉(zhuǎn)動,此時位置檢測和電流檢測電路開始工作以檢測電機速度,并將信號傳送給FPGA進行處理,如果電機速度大于所需要的電機轉(zhuǎn)速,此時控制電機減速,反之則控制電機加速。在此期間,可以通過按動按鍵來控制電機的正反轉(zhuǎn)。
2 無刷直流電機調(diào)速系統(tǒng)的硬件電路設(shè)計
2.1 無刷直流電機調(diào)速系統(tǒng)的電流檢測電路
采用基于霍爾效應的線性電流傳感器ACS712芯片進行電流檢測,該器件內(nèi)置有精確的低偏置的線性霍爾傳感器電路,能輸出與檢測的交流或直流電流成比例的電壓??梢跃?/p>
確的檢測電機電流,但由于霍爾元件檢測的信號非常小,所以要將采集的信號進行放大后送給FPGA,選用芯片LM321進行信號放大,具體電路如圖2所示。
2.2 無刷直流電機調(diào)速系統(tǒng)的位置檢測電路
位置信號檢測可以用于電機的換相,還能用來計算電機轉(zhuǎn)速,在無刷直流電機控制中起著十分重要的作用。本設(shè)計是采用三個霍爾位置傳感器來實現(xiàn)位置檢測的,每個霍爾位置傳感器輸出脈寬180°互差120°相位的霍爾位置信號,三個霍爾位置傳感器輸出三路位置信號,電機每旋轉(zhuǎn)360°電角度會出現(xiàn)六個上升沿和下降沿,正好把三路位置信號在一個周期分成6個區(qū)間,每個區(qū)間對應一個換相區(qū)間,而每個上升沿或下降沿都對應一個換相時刻,如圖4所示。
2.3 換相電路設(shè)計
根據(jù)無刷直流電機模塊中輸出的三相霍爾位置信號,以及無刷直流電機速度控制模塊輸出的PWM信號,邏輯換相模塊輸出6個電機換相及速度控制脈沖。輸入4個信號,分別是三相霍爾位置信號(HA、HB、HC)和由控制模塊輸出PWM信號。6個輸出信號VT1~VT6控制三相逆變器功率管的通斷,其中VT1、VT3、VT5用于控制上側(cè)功率管的通斷,VT2、VT4、VT6用于控制下側(cè)功率管的通斷。三相逆變橋采用上管調(diào)制的方式,邏輯關(guān)系構(gòu)造邏輯換相模型如圖5。
2.4 無刷直流電機調(diào)速系統(tǒng)的驅(qū)動電路
采用的是6個MOSFET搭建而成的三相橋式逆變器,MOSFET是開關(guān)速度快的理想電壓控制器件,其驅(qū)動電路較為簡單,特別適合于各類中小功率開關(guān)電路。同時采用IR2132專用集成驅(qū)動芯片,它是專為功率MOSFET驅(qū)動而設(shè)計的,方便于控制電路連接,其驅(qū)動信號延時為納秒級,開關(guān)頻率高,體積小,外圍走線簡單,適合中小型電機驅(qū)動電路的應用。6個MOSFET根據(jù)所接收到的信號從而改變管子的通斷來控制電機的轉(zhuǎn)動。
3 無刷直流電機調(diào)速系統(tǒng)的軟件設(shè)計
3.1 無刷直流電機PWM調(diào)速軟件設(shè)計
PWM調(diào)速產(chǎn)生電路是由加減計數(shù)器、5位二進制計數(shù)器、數(shù)字比較器三部分組成。加減計數(shù)器做細分計數(shù)器,確定脈沖寬度。當U_D=1時,輸入CLK1,使設(shè)定值計數(shù)器的輸出值增加,PWM的占空比增加,電機轉(zhuǎn)速加快;當U_D=0,輸入CLK1,使設(shè)定值計數(shù)器的輸出值減小,PWM的占空比減小,電機轉(zhuǎn)速變慢。5位二進制計數(shù)器在CLK0的作用下輸出周期性線性增加的鋸齒波。當計數(shù)值小于設(shè)定值時,數(shù)字比較器輸出高電平,當計數(shù)值大于設(shè)定值時,數(shù)字比較器輸出低電平,從而產(chǎn)生周期性的PWM波形。設(shè)定ZF為電機的方向按鍵,選擇PWM波形的進入方向,當其為1時,電機正轉(zhuǎn),否則反轉(zhuǎn)。設(shè)定START進行電機的控制時,START為1電機開始工作,為0電機停止工作。通過按鍵EN1的閉合與斷開可以改變初始值,從而改變直流電機的PWM占空比,改變直流電機速度。[!--empirenews.page--]
3.2 PWM調(diào)速仿真
如波形仿真圖8可知,當電機的速度小于設(shè)定值時,計數(shù)器數(shù)字比較器輸出高電平,從而使計數(shù)器計數(shù)增加,PWM輸出為高電平,改變占空比,使電機加速;當電機的速度大于設(shè)定值時,計數(shù)器數(shù)字比較器輸出低電平,從而使計數(shù)器計數(shù)減小,PWM輸出為低電平,改變占空比,使電機減速;Z_F是電機的方向按鍵,Z_F為1時電機正轉(zhuǎn),Z輸出為1;Z_F為0時電機反轉(zhuǎn),F(xiàn)輸出為1;START為電機控制端,START為1電機工作,為0電機停止,Z、F均為0。
在時鐘脈沖的作用下,計數(shù)器CNTA和CNTB都能按照事設(shè)定數(shù)值進行計數(shù)。CNTA是可控的加減計數(shù)器,U_D控制其計數(shù)的方向,EN1用于設(shè)定其初值,當EN1由高電平變?yōu)榈碗娖綍r,就完成了設(shè)定值。CNTB是5位二進制計數(shù)器,在時鐘脈沖CLK0的作用下一直加數(shù),當它加到32時就自動返回到0再重新加數(shù)。兩路計數(shù)器同時加到數(shù)字比較器COMPARE上,當CN TB的值小于設(shè)定值時,數(shù)字比較器輸出高電平,當CNTB的值大于設(shè)定值時,數(shù)字比較器輸出低電平。改變設(shè)定值的大小就可以改變PWM波形的大小,也就是完成了電機的調(diào)速。Z_ F是電機的方向控制按鍵,選擇PWM波形的進入方向,當其為1時,電機正轉(zhuǎn),為0電機反轉(zhuǎn)。至于電機的控制,是在它的輸入端加上兩個與門來控制電機的啟動與停止。當按下鍵Z_F鍵,電機正轉(zhuǎn),松開鍵時,電機反轉(zhuǎn)。當按下鍵START時,電機開始工作,松開時,電機停止工作。通過按鍵EN1的閉合與斷開可以改變H[4.0]的值,從而改變直流電機的PWM占空比,這樣就可以改變直流電機速度。
4 結(jié)論
通過在理論上對無刷直流電機調(diào)速系統(tǒng)電路設(shè)計、分析,以及軟件的編程,并對軟件和硬件進行調(diào)試后,實現(xiàn)了一個以FPGA為核心控制器的無刷直流電機的調(diào)速,這個系統(tǒng)能夠?qū)崿F(xiàn)檢測電機的電流和轉(zhuǎn)子位置和自動調(diào)節(jié)電機的轉(zhuǎn)速且可以實現(xiàn)控制電機正反轉(zhuǎn)。該系統(tǒng)整個系統(tǒng)運行時鐘頻率可達到100 MHz以上,控制器可以使控制周期達縮短到40 μs,并且具有良好的動態(tài)和靜態(tài)性能,整個系統(tǒng)具有控制簡單,操作方便的特點。