基于DSP的無刷直流電機調速系統
2.2驅動部分
驅動部分的控制核心是MC33035,驅動器件是IR2183和IRGP50B60PD1。MC33035作為驅動部分的控制核心,根據電機霍爾反饋的位置信號,分辨出電機轉子的位置,以控制IGBT的開關。
雖然IGBT具有優越的通態特性,但要將IGBT瞬間完全關斷仍不容易。調試時發現,IGBT關斷時的一點點毛刺,就會導致電機發熱甚至燒壞。這就要求在電路設計上采取相應的措施,如在IR2183輸出端與IGBT連接的地方串接一電阻等;在PCB布板走線時更要嚴格注意,布局要對稱。
電機轉速的調節是MC33035的11腳(誤差信號放大器同向輸入端)接受控制部分給出的控制電壓,根據此電壓的不同,內部產生脈寬調制(PWM)信號,控制3個下側驅動輸出,通過改變輸出脈沖寬度來改變IGBT導通時間的長短,從而調節電機的轉速。
2.3顯示部分
顯示部分的主控元件是AT89C51,顯示部分與驅動部分之間通過AT89C51和2812的串行口(即用通信方式)傳遞指令。同時顯示部分所需的5V電源由控制部分提供。
這里轉速的采集是用AT89C51的計數端去采集霍爾輸出的脈沖信號,將此信號換算成頻率后送七段數碼管顯示,在此AT89C51擔當了一個頻率計的功能。
系統讓用戶通過鍵盤輸入轉速,而不是通過電位器調節。因為電位器輸出的是一個模擬量,通過2812內部集成的A/D來采集這個電壓量時并不穩定,會略微地漂移,這種略微的漂移會導致轉速較大的波動。為了避免這種波動,本系統使用了全數字量的鍵盤,AT89C51從鍵盤讀入數字量,然后將此量通過通信口傳給2812,以實現全數字無級調速控制。
3 系統軟件設計
系統軟件設計思想是通過不斷采集電機轉速,與給出的速度指令相比較后,利用PID算法,同時綜合濾波算法,不斷修正速度誤差,直到采集到的電機轉速與系統給定的轉速相同,程序就認為系統已經入鎖了。系統控制時始終監視電機電流和位置反饋,一旦出現異常,就啟動相應的報警機制,并讓電機停止轉動。
實際速度的測量是程序每隔20ms從霍爾元件反饋處讀脈沖,讀到一個脈沖就記一轉,共采樣10次記一個周期,即程序統計200ms內的脈沖數來計算電機的實際轉速。
按照這種計算方法,系統產生的誤差是75轉/分,已完全滿足高速電機的誤差要求。
為了電機工作安全,系統除了設置過流保護外,還為用戶設置了電機最大速度越限報警,系統程序在工作時,會不斷與這個最大速度比較,一旦檢測到電機實際轉速超過用戶給定的最大轉速,立刻會超速報警,同時讓電機停止轉動。
控制部分與PC以及顯示部分的通信都采用以下的通信協議:
19200bps,8bit,1start,1stop,無奇偶校驗
此外,對于電機的冷卻裝置,系統預留了相應的信號接口,可根據實際需要,外接相應冷卻裝置,用以提高電機的安全性能。
4 系統操作界面
操作界面根據實際的操作需要,進行了人性化設計,并設計了速度監測曲線,方便用戶觀察電機轉速的穩定度。此外,用戶通過操作界面可以方便地進行參數設置和更改。
5 結論
本電機調速系統經實際測試,控制精度高、運行穩定可靠,帶載時的控制精度也在75轉偏差內,與理論值接近,實際調試時進行過載及超速等實驗,系統反應靈敏,控制過程安全可靠。本系統使用了功能強大的DSP(TMS320F2812)芯片,系統擴展空間大,可根據實際應用需要進行擴展。
本文作者創新點:①本調速系統綜合了TMS32F812和MC33035;②電機轉速的人工輸入使用了全數字量的鍵盤;③控制系統用485總線與PC進行通信;④所有信號線的連接處用光耦完全隔離,使各部分之間不相互影響,保證工作的絕對安全。
評論