基於PIC單片機的SPWM控制技術

admin @ 2014-03-25 , reply:0

    在UPS等電力電子設備中,控制方法是核心技術。早期的控制方法使得輸出為矩形波,諧波含量較高,濾波困難。SPWM技術較好地克服了這些缺點。目前SPWM的產生方法很多,匯總如下。
1)利用分立元件,採用模擬、數字混和電路生成SPWM波。此方法電路複雜,實現困難且不易改進;
2)由SPWM專用晶元SA828系列與微處理器直接連接生成SPWM波,SA828是由規則採樣法產生SPWM波的,相對諧波較大且無法實現閉環控制;
3)利用CPLD(複雜可編程邏輯器件)設計,實現數字式SPWM發生器;
4)基於單片機實現SPWM,此方法控制電路簡單可靠,利用軟體產生SPWM波,減輕了對硬體的要求,且成本低,受外界干擾小。
    而當今單片機的應用已經從單純依賴於51系列單片機向其它多種單片機發展,尤其以嵌入式PIC單片機的發展應用更為廣泛。PIC單片機含具有PWM功能的外圍功能模塊(CCP),利用此模塊更容易通過軟體實現SPWM,且具有更快的執行速度。本文採用軟硬體結合設計的方法,利用面積等效法,並且基於PIC單片機實現對試驗逆變系統的SPWM控制。

1 面積等效的SPWM控制演算法
    目前生成SPWM波的控制演算法主要有4種。
1)自然採樣法;
2)對稱規則採樣法;
3)不對稱規則採樣法;
4)面積等效法。
    理論分析後知自然採樣法和面積等效法相對於規則採樣法諧波較小,對諧波的抑制能力較強。又因為PIC單片機片內無較大空間實現在線運算,所以自然採樣法不利於軟體實現。本文的試驗系統採用面積等效法實現SPWM控制,其原理如圖1所示。
 
圖1 SPWM面積等效演算法
    利用正弦波小塊面積S1與脈衝面積S2相等原則,將正弦波的正半周分為N等分,則每一等分的寬度為π/N弧度,利用面積等效法計算出半個周期內N個不同的脈寬值,將產生的脈寬數列以列表形式存於PIC單片機的ROM中,以供程序調用。
脈寬產生的基本公式為
  (1)
    SPWM開關點時刻公式為
 
式中M為調製度;
N為載波比,即半個周期內的脈衝個數,實驗中N取64;
k取值為0—63。
    由式(1)計算出的實際脈寬轉換成計時步階後生成64個值的正弦表存入PIC的ROM中以供調用。產生的SPWM脈寬表是一個由窄到寬,再由寬到窄的64個值的表。

2 軟硬體結合試驗系統
    以PIC單片機內部的兩個外圍功能模塊(CCP)為基礎,利用該模塊具有的PWM功能,軟體控制兩路SPWM波形的輸出。再將這兩路SPWM波利用互補導通原則變換成4路,經隔離放大后驅動IGBT逆變器,實現對輸出的控制。
2.1 硬體設計
    試驗硬體系統如圖2所示。選擇PIC單片機的中檔系列。該系列單片機的主要特點有:
1)具有高性能的RISC CPU;
2)除程序分支指令為兩個周期外,其餘均為單周期指令,且僅有35條單字指令;
3)8K×14個FLASH程序存儲器,368×8個數據存儲器(RAM)位元組;
4)中斷能力強,達到14個中斷源;
5)外圍功能模塊豐富,含2個16位寄存器的CCP模塊,具有PWM功能;
6)含3個定時器,其中與PWM功能相關的定時器2(即TMR2)帶有8位周期寄存器,且帶有8位預分頻器和後分頻器。
 
圖2 硬體試驗系統
    逆變部分採用自關斷器件IGBT實現單相全橋逆變。IGBT是全控型電力電子器件,它的控制級為絕緣柵場效應晶體管,輸出級為雙級功率晶體管,因而它具有兩者的優點而克服了兩者的缺點。它開關頻率相對高,驅動功率小,構成的功率交換器輸出電壓紋波小,線路簡單,是當今最具有應用前景的功率器件。
2.2 軟體設計
2.2.1 PIC單片機的設置
    試驗中設置SPWM的頻率為20 kHz,並外接20 MHz晶振信號,計算得指令周期即計時步階為0.2uS。PIC單片機CCP外圍功能模塊的PWM功能實現主要依靠相關寄存器值的設定,且以定時器2(TMR2)作為PWM的時基。相關寄存器的設置如下。
1)SPWM周期的設定由寄存器PR2設定(PWM)周期=(PR2+1)×4×Tosc×(TMR2)預分頻
(4)
試驗中Tosc 為20 MHz,為提高解析度,TMR2預分頻設為1:1,由此計算得PR2=0XF9;
2)定時器TMR2的控制寄存器T2CON設定
    因為SPWM頻率高,周期短,在每個周期內完成脈寬的調整比較困難,故在此寄存器中設置後分頻為1:3,這樣每輸出3個相同脈寬的SPWM波后改變一次脈寬值;
3)2個CCP模塊的控制寄存器CCP1CON及CCP2CON的設定兩個CCP模塊控制寄存器的設置類似,選擇CCP模塊作用於PWM功能模式,即bit3:0=11 XX。
4)CCPR1L脈寬寫入寄存器寫入的脈寬值在下個TMR2周期開始時轉至CCPR1H,通過讀CCPR1H的脈寬值來改變PWM脈寬。
5)寄存器TRISC 對應於CCP1和CCP2的輸入輸出設置,應設置為輸出形式,即TRISC的bit2:1=00。
2.2.2 SPWM波形產生的實現過程
    軟體控制PIC單片機使之產生SPWM波形。首先將之前設置的寄存器值寫入相關寄存器,當PIC的PWM功能開啟后TMR2從0開始計數,同時CCP模塊引腳輸出高電平。
— 當TMR2≥CCPR1L時,PWM功能引腳開始輸出低電平。
— 當TMR2≥PR2時,則TMR2=0,重新開始另一個周期計數,PWM功能引腳開始輸出高電平。同時TMR2的中斷標誌位被系統置高,即TMR2IF=1,轉去執行中斷服務程序。
    因實驗中設置TMR2後分頻為1:3,故在3個PR2周期后程序才轉去執行中斷服務程序。在中斷服務程序中查找脈寬表,將下一個脈寬值寫入寄存器CCPR1L中。下個周期輸出的PWM的脈寬即為剛寫入CCPR1L中的脈寬值,也就是說脈寬的變化在中斷程序中實現,中斷程序流程如圖3所示。
 
圖3 中斷服務程序流程圖
    程序中利用標誌位F實現SPWM輸出在CCP1和CCP2中的轉換。在F=1時,CCP1輸出PWM波形,CCP2設置輸出為0電平;在F=0時,CCP2輸出PWM波形,CCP1設置輸出為0電平。

3 試驗結果與分析
    由PIC單片機產生的SPWM波可由示波器測出。由於SPWM頻率為20kHz,程序中又設置每3個脈寬相等,故在示波器中不能清楚地看到脈寬從最小到最大的完整的變化過程。由PIC單片機的CCP1引腳輸出SPWM波形的一段如圖4所示。這段波形中的脈寬由窄逐漸變寬,符合SPWM的變化規律。
 
圖4 SPWM 波形的一段
    試驗中由PIC單片機的兩個CCP模塊產生兩路SPWM波,將這兩路SPWM波變換成4路后經隔離驅動逆變系統的IGBT。產生的兩路SPWM波形分別對應正弦波的正負半波,完整周期的兩路SPWM互補波形如圖5所示。
 
圖5 兩路互補的SPWM波
    試驗系統在直流電壓為30V時負載運行所得正弦波如圖6所示,可知周期為19.9ms,滿足工頻要求。
 
圖6 負載正弦波
    試驗系統為單相全橋逆變系統,這種工作模式有明顯的倍頻效應。倍頻效應有利濾波,也可以降低器件的開關頻率,減小開關損耗。又因為本試驗系統採用面積等效法,相對於規則採樣法諧波抑制能力較強。諧波分析后可在低電壓時基本無偶次諧波,且所含奇次諧波幅值較小,能滿足UPS逆變系統對諧波的要求。

4 結語
    本文介紹的基於PIC單片機的SPWM控制技術很好地把軟硬體技術結合在一起,針對規則採樣法諧波大的缺點,利用面積等效法較好地抑制了諧波。本文給出了具體的硬體試驗系統及軟體設計,分析試驗結果波形后表明此方法輸出諧波較小,在對輸出波形質量要求較高的UPS逆變系統中有較強的實用價值。如今PIC單片機應用越來越廣泛,電力電子技術發展越來越快速的階段,這種軟硬體結合的控制技術在其它很多應用領域也有較大的發展空間。




[admin via 研發互助社區 ] 基於PIC單片機的SPWM控制技術已經有2904次圍觀

http://cocdig.com/docs/show-post-42060.html