新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DSP的軟件鎖相環(huán)的實現(xiàn)

基于DSP的軟件鎖相環(huán)的實現(xiàn)

作者: 時間:2017-02-06 來源:網(wǎng)絡(luò) 收藏

  0 引言

本文引用地址:http://butianyuan.cn/article/201702/343617.htm

  準(zhǔn)確獲取電網(wǎng)基波及諧波電壓的相位角,在變頻器、有源濾波器等電力電子裝置中具有重要的意義,通常需要采用得以實現(xiàn)。傳統(tǒng)電路一般由鑒相器、環(huán)路濾波器、壓控振蕩器及分頻器組成,其工作原理是通過鑒相器將電網(wǎng)電壓和控制系統(tǒng)內(nèi)部同步信號的相位差轉(zhuǎn)變成電壓信號,經(jīng)環(huán)路濾波器濾波后控制壓控振蕩器,從而改變系統(tǒng)內(nèi)部同步信號的頻率和相位,使之與電網(wǎng)電壓一致。傳統(tǒng)存在硬件電路復(fù)雜、易受環(huán)境干擾及鎖相精度不高等問題,隨著大規(guī)模集成電路及數(shù)字信號處理器的發(fā)展,通過采用高速 等可編程器件,將的主要功能通過軟件編程來實現(xiàn)。本文設(shè)計的控制系統(tǒng)采用數(shù)字處理器TMS320F2812 芯片實現(xiàn)對電網(wǎng)基波及特定次諧波電壓相位的跟蹤和鎖定。

  1 軟件鎖相環(huán)的設(shè)計方案

  1.1 工作流程

  基于的軟件鎖相環(huán)設(shè)計此方案的基本思路是通過采樣電壓過零點獲取同步信號,采用 內(nèi)部定時器的循環(huán)計數(shù)產(chǎn)生同步信號來實現(xiàn)壓控振蕩器和分頻器的功能,即通過改變定時器的周期或最大循環(huán)計數(shù)值的方法來改變同步信號的頻率和相位,同時對電壓進(jìn)行A/D 轉(zhuǎn)換及數(shù)據(jù)處理,得出基波及諧波電壓的相位與頻率,調(diào)整SPWM 正弦表格指針地址完成對基波及諧波電壓的鎖相功能,其工作流程如圖1 所示。

    

 

  通常,過零信號可以通過檢測電網(wǎng)三相電壓中任一相的過零點獲取。在圖1 中,以檢測A相電壓過零點作為過零信號,將通過上升沿捕捉及軟件濾波后產(chǎn)生的中斷作為采樣周期同步信號,當(dāng)DSP內(nèi)部時鐘倍頻后產(chǎn)生的中斷在捕獲到輸入電壓信號在過零點時,將發(fā)正弦信號的指針歸零,以保證輸入電壓信號過零時DSP發(fā)出的基準(zhǔn)正弦信號也同步過零,從而實現(xiàn)相位同步。本文采用SPWM 觸發(fā)模式,基準(zhǔn)正弦信號是一個正弦數(shù)據(jù)表格,控制逆變器輸出的基準(zhǔn)點;同時采樣電壓信號,經(jīng)DSP進(jìn)行FFT計算分析其相位和頻率、基波及諧波與A相電壓過零點相位差,通過修改定時器周期寄存器來改變SPWM 輸出時正弦波的頻率;以修改比較寄存器來改變SPWM 輸出時正弦波的相位,這樣完成了對基波及諧波電壓的相位鎖定。

  1.2 過零檢測電路的設(shè)計

  過零信號對系統(tǒng)相位捕捉的精準(zhǔn)性影響較大,系統(tǒng)設(shè)計時采用軟硬件結(jié)合的辦法實現(xiàn)對過零信號的捕捉。獲取過零信號實質(zhì)上是為了給系統(tǒng)提供一個同步信號,即每次信號過零時啟動A/D轉(zhuǎn)換。在本設(shè)計中,過零檢測電路采集A相電壓每個周期的過零點作為系統(tǒng)產(chǎn)生的中斷信號CAP1,使中斷服務(wù)程序開始執(zhí)行,圖2 為電壓信號過零檢測電路。

    

 

  圖2 中,在比較器芯片LM339 的輸出端選擇加裝了上拉電阻,主要是考慮到整個電路對驅(qū)動、功耗和速度的要求。電阻R7和R8構(gòu)成一個滯回比較器,輸出信號通過反饋電阻R7 改變同相端的參考電壓,以消除輸入信號正反過零產(chǎn)生的抖動。

  1.3 過零捕捉的軟件實現(xiàn)

  過零檢測主要解決的是采樣同步問題,當(dāng)檢測到的電壓信號由負(fù)到正過零時,比較器芯片LM339 輸出端產(chǎn)生上升沿,將此信號輸入到DSP2812 事件管理器EVA 的引腳CAP1。引腳CAP1 在系統(tǒng)初始化程序中預(yù)設(shè)置為上升沿觸發(fā)中斷,因此當(dāng)過零信號到來時,CAP1中斷子程序開始執(zhí)行,開啟事件管理器EVA 的TIMER 周期中斷,周期設(shè)置為駐T/128 s(每周期采樣128 個點),觸發(fā)A/D 模塊采樣。其中,駐T 為CAP1 捕捉到的兩個過零檢測信號上升沿的間隔時間,等于電網(wǎng)待測信號的周期T,圖3 為過零中斷程序的流程。

    

 

  DSP 的捕獲單元CAP隸屬于事件管理器,它能夠捕捉到CAP 外部引腳的跳變,當(dāng)捕捉到對應(yīng)引腳發(fā)生特定的跳變時,觸發(fā)相應(yīng)的中斷,并將定時器的值存入一個兩級深的FIFO堆棧中。本方案設(shè)計每16 點啟動一次數(shù)據(jù)分析,同時投出一次控制量,這個過程為一個更新周期,判斷標(biāo)志ctrl 用來檢測是否進(jìn)入新的更新周期,以判斷是否需要啟動新一輪數(shù)據(jù)分析和投出控制量。標(biāo)志位dft用來判斷當(dāng)前數(shù)據(jù)分析狀態(tài),為0 時表示重新初始化數(shù)據(jù)分析操作,為1 時表示數(shù)據(jù)分析操作完畢,為2 時表示允許啟動新一輪數(shù)據(jù)分析,為3 時表示當(dāng)前正在進(jìn)行數(shù)據(jù)分析。圖4 給出了捕獲單元的軟件流程。

  1.4 過零信號的軟件濾波

  CAP1 捕捉到的兩個過零信號上升沿的間隔時間,即兩個CAP1中斷事件的間隔時間,等于電網(wǎng)待測信號的周期T。TIMER 在系統(tǒng)初始化后不斷計數(shù),然后在CAP1 的中斷服務(wù)程序中記錄兩個CAP1 中斷事件之間的TIMER 計數(shù)值N,可計算出T。同時,采用軟件濾波來判斷CAP1信號是否為毛刺干擾,其過程如下:電網(wǎng)基波頻率波動一般不超過依0.2 Hz,當(dāng)產(chǎn)生CAP1中斷時,可以計算本次與前次的計數(shù)差值,如果遠(yuǎn)小于工頻周期計數(shù)差值,則認(rèn)為捕獲的中斷為干擾產(chǎn)生,如該中斷非連續(xù)兩次以上出現(xiàn),則中斷返回。同時對產(chǎn)生的中斷次數(shù)進(jìn)行累加,達(dá)到設(shè)定范圍時對電壓過零時刻正弦表格的指針位置進(jìn)行判斷,調(diào)整正弦表格指針地址,實現(xiàn)過零指針的校準(zhǔn)。

    

 

  1.5 A/D轉(zhuǎn)換及相頻計算

  過零信號經(jīng)過軟件濾波及校準(zhǔn)后,在捕獲到輸入電壓信號過零點時,直接將發(fā)正弦信號的指針歸零,保證輸入電壓信號過零時DSP發(fā)出的基準(zhǔn)同步過零,從而實現(xiàn)相位同步。A相電壓過零信號送入管腳CAP1,作為一個采樣周期的基準(zhǔn),該周期的128 倍頻信號作為每次ADC 啟動基準(zhǔn)。在系統(tǒng)初始化后開啟CAP1,并設(shè)置啟動ADC、相應(yīng)的模數(shù)轉(zhuǎn)換、數(shù)據(jù)分析、控制量投出等操作,直到關(guān)機(jī)或者發(fā)生故障。由于F2812 的系統(tǒng)時鐘頻率非常高,為150 MHz,即中斷服務(wù)程序的響應(yīng)延遲時間非常小,可以忽略。在CAP1 的中斷服務(wù)程序中,根據(jù)待測信號周期T來設(shè)置F2812 事件管理器的通用定時器TIMER,每隔駐T/128 s自動啟動一次A/D轉(zhuǎn)換進(jìn)行數(shù)據(jù)采集。

  A/D 轉(zhuǎn)換后的信號使用滑動窗口的FFT 算法,以滑動窗口的DFT和Pruning-FFT為基礎(chǔ),利用DFT對特定次諧波進(jìn)行選擇計算,根據(jù)滑動窗口快速響應(yīng)以及Pruning-FFT 快速計算的特點,使DSP的處理速度達(dá)到理想值。使用FFT進(jìn)行相位和頻率分析的原理如下。

  對某一單一頻率信號

    

 

  通過上述分析得出初相角、頻率,將數(shù)據(jù)存入對應(yīng)寄存器中,完成基波及諧波的相頻計算功能。

  1.6 SPWM輸出的相頻調(diào)整

  軟件鎖相輸出是由捕獲中斷和定時器中斷共同完成,捕捉中斷可以完成電壓周期和相位的計算,定時器中斷用來輸出SPWM波形。在本方案中,三角載波是利用通用定時器的連續(xù)增減計數(shù)模式產(chǎn)生的,當(dāng)通用定時器有效后,開始遞增計數(shù),直到等于周期寄存器的值,定時器開始遞減計數(shù),遞減到零時,重新開始遞增計數(shù),并重復(fù)以上過程,從而形成三角載波信號。得到三角波后,通過比較單元來控制輸出波的極性,產(chǎn)生PWM 波。

  TMS320F2812 系列DSP 片內(nèi)帶有比較單元,可提供6對可編程的PWM信號,這為實現(xiàn)上述算法提供了極大的便利。當(dāng)定時器發(fā)生周期中斷時,就需要重新裝載比較器的值,即此刻的正弦值。設(shè)定載波比為21(載波比應(yīng)為奇數(shù)且能被3 整除),即1個正弦波的周期等于21 個載波的周期,則相鄰的兩個三角波峰值對應(yīng)的正弦波相位差為360毅/21= 17.143毅,假定上一周期中斷裝載的正弦值為sin茲,則本周期中斷所需裝載的正弦值為sin(茲+17.143毅)。

  例如:輸出正弦信號的頻率為250 Hz(5 次諧波)時,其三角波的頻率則為5.25 kHz。三角波信號由定時器模擬產(chǎn)生,則定時器的定時周期為

    

 

  5 次諧波的初相角茲是電壓經(jīng)FFT 計算得到與A相電壓過零點的相位差值。根據(jù)x和茲值,產(chǎn)生相應(yīng)的PWM 波。因正弦值實時計算時用得較多,在確定相位分辨率后,例如1毅,會導(dǎo)致大量重復(fù)計算。因此,采用查表法,按順序預(yù)存一個周期為420 點的正弦值,相位的分辨率為360毅/420=0.857毅,因每次比較器的裝載值是上一次移相17.143毅后的正弦值,所以只需將上一次裝載值的地址加上一定的偏移量,即為本次所需的裝載值地址,該偏移量為420/21=20??梢?,將正弦計算簡化為讀相應(yīng)地址的存儲器值,會大大提高程序的效率。

  通過讀取寄存器中基波及諧波電壓的初相角頻率以及與過零點相位差的值,調(diào)整對應(yīng)的正弦表格初相角指針地址,通過修改定時器周期寄存器來改變正弦波的頻率,修改比較寄存器來改變正弦波的幅值和相位,在下一個過零信號過零點投出相位和頻率控制量,即可完成對基波及諧波電壓及SPWM 輸出時的相位鎖定。

  2 實驗結(jié)果與分析

  在一臺低壓有源電力濾波裝置中,采用基于TMS320F2812芯片為核心控制器的軟件鎖相環(huán)的設(shè)計方案。實驗結(jié)果驗證,該方案能夠很好地實現(xiàn)對基波及特定次諧波電壓相位的跟蹤和鎖定。

  圖5(a)給出同步過零信號波形,電壓信號(正弦波)為A相電壓,過零信號為方波。電路設(shè)計時將電壓采樣信號幅值轉(zhuǎn)化為3.3 V,滿足過零信號能被管腳CAP1 識別的條件。如圖5(a)所示,過零信號與電壓采樣信號同步。

  圖5(b)給出功率模塊鎖相輸出實驗波形,圖中波形1 為A相電壓采樣信號,波形2 為功率模塊輸出電流波形,控制器設(shè)定跟隨電壓采樣信號的過零點觸發(fā)功率模塊同步輸出。從實驗結(jié)果可以看出,功率模塊逆變輸出電流相位能夠與采樣信號過零點保持同步,相位偏移極小,達(dá)到對電網(wǎng)基波電壓鎖相及跟蹤輸出的目的。

  圖5(c)給出功率模塊鎖相倍頻輸出實驗波形。為方便觀察諧波鎖相輸出的效果,設(shè)定5 次諧波初相角與基波過零點同相,控制器設(shè)定跟隨電壓采樣信號過零點,反相輸出5 次諧波電流,電流幅值不變。圖中波形3 為采樣點電壓信號,波形4為控制器觸發(fā)功率模塊輸出電流波形。如圖所示,功率模塊輸出的5 次諧波電流初相角與采樣信號保持過零同步。

  實驗結(jié)果表明:通過軟件鎖相環(huán)可以實現(xiàn)功率模塊逆變輸出電流與電壓采樣信號的同步,調(diào)整控制器程序,可以實現(xiàn)對諧波相位及頻率跟蹤,達(dá)到對電網(wǎng)電壓及特定次諧波電壓鎖相及跟蹤輸出的目的。

    

 

    

 

  3 結(jié)語

  本文提出了一種基于DSP2812實現(xiàn)對電網(wǎng)電壓軟件鎖相的技術(shù)方案。實驗結(jié)果表明,該方案能很好地實現(xiàn)對電壓信號周期及頻率的實時跟蹤。

  采用軟件鎖相環(huán)技術(shù),只需設(shè)計過零檢測及信號調(diào)整電路,其它功能均由DSP芯片完成,減少了外界環(huán)境干擾的問題,提高了鎖相精度。同時,DSP可以實時進(jìn)行軟件修改,能實現(xiàn)復(fù)雜控制,提高了其可操作和可擴(kuò)展性。隨著DSP性能的不斷改進(jìn),其運(yùn)算速度越來越快,將為軟件鎖相技術(shù)提供更多的發(fā)展空間。



關(guān)鍵詞: DSP 鎖相環(huán)

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉