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