基于FPGA的SPWM變頻系統設計
2.5 死區時間延時模塊
比較模塊后,得到兩路SPWM序列信號(xl,xh),用于控制電路的上下橋臂的開關。理論上,這兩路信號是完全互補的。然而,由于功率器件開通和關斷時間不完全相等,器件的關斷時間實際上要長于導通時間。因此,為避免上下橋臂上功率器件瞬態短路必須提供一段時間的延時,使功率開關管導通之前確保相應的開關管已經截止。
脈沖延時是通過上升沿實現的,延時時間的實現主要通過一個10位的加減計數器來實現。設死區時間為max,延時計數器計數規則如下:
(1)當輸入為0時,若計數值等于0,則計數值保持不變;否則,作減1計數;
(2)當輸入為1時,若計數值等于max,則計數值保持不變;否則,作加1計數;
(3)當輸入為1且死區計數器數值為max時,xl=0,xh=1,上橋臂導通;
(4)當輸入為0且死區計數器數值為0時,xl=1,xh=0,下橋臂導通;
(5)當死區計數器數值在0~max之間時,xl=0,xh=0,上下橋臂均截止,形成死區。
2.6 系統仿真
最后可以根據需要,設置時鐘、分頻、死區時間等的值。對設計進行仿真,設定三角波頻率為正弦波頻率的5倍,得到的仿真結果如圖5所示。
觀察圖5的輸出信號xh,xl,可以看出其脈寬是按正弦規律變化的,因此設計滿足要求。
2.7濾波模塊
由于數據采集過程中不可避免地存在許多干擾,有效信息被它們所掩蓋,因此必須對資料進行提高信噪比的數字濾波處理。為了提高研發速度,濾波模塊直接采用Altera公司的IP核來生成。
設置參數,設計一個帶通頻率為7.5~12.5 kHz的數字濾波器,采用Hanning窗設計結構,利用Matlab軟件的數字濾波設計分析工具,可以得到頻率衰減圖如圖6所示。可以看出其帶通效果明顯,符合系統要求。
3系統的應用
把設計的SPWM系統應用于某公司設計的電磁法儀上,其主要原理就是利用專用設備向介質體發射一個電磁場,這種迅速衰減的磁場在其周圍的介質中感應出新的二次場。利用其原理,該儀器設計了一道發射道和三道接收道。圖7(a)是原儀器采用發射頻率為9.8 kHz的PWM波發射得到的結果,前四道是濾波前的波形圖,后四道是濾波后的波形圖。控制本系統發射頻率為9.8 kHz進行調試,把發射道和接收道的數據經過串口通訊上傳到上位機上顯示,波形如圖7(b)所示。發射道經濾波后產生較理想的正弦波,產生的三道二次場,比較圖7(a)可以看出其諧波畸變有明顯的減弱。
4 結 語
本文是設計了基于FPGA的SPWM可變頻系統,最后把系統成功應用到電法儀的發射模塊中。經驗證,該系統穩定可靠,比原有的PWM控制有較大的改善。另外,系統可以根據需要在線修改發射頻率、死區時間等的值,系統更人性化。系統稍加修改,還可應用到電機驅動或變頻電源中。
評論