摘 要:本文介紹了一種以ADC與DSP處理器相結合為基礎的高可靠性配電網(wǎng)監(jiān)測系統(tǒng),該系統(tǒng)不僅硬件設計簡潔,而且可靠性高、測量速度快。
關鍵詞:電能質量;FFT;頻譜泄漏;柵欄效應;諧波
引言
電能質量是衡量電網(wǎng)質量的標準,電能質量問題包含電壓凹陷(sag)、電壓隆起(swell)、尖峰脈沖(spikes)、諧波畸變(harmonic aberration)和電氣噪聲(electric yawp)等,其中對電能質量影響最大的就是諧波畸變。因此,本系統(tǒng)的設計就是以對諧波畸變分析為主要目的。這方面的研究比較多,而且也開發(fā)出了相應的設備。以往的配電網(wǎng)監(jiān)測設備多以51、96系列單片機為處理器,在精度和速度方面都不能滿足電力系統(tǒng)的要求,還有就是用TI公司的DSP作為處理器,并配合ADC來完成系統(tǒng)設計。
ADI公司先后上市了ADE7753、ADE7758等電力測量專用芯片,并成功地將它們應用到電網(wǎng)當中。最近,ADI公司又推出了高性能的強強組合,即DSP+ADC的電力測量方案。此監(jiān)控系統(tǒng)就是采用這一組合實現(xiàn)的。
圖1 系統(tǒng)硬件設計框圖
圖2 軟件框圖
ADC簡介
AD73360是ADI公司推出的一款專門應用于電能質量監(jiān)測的IC,與一般ADC相比,AD73360有如下優(yōu)勢:6路獨立的A/D轉換通道,不僅互不干擾,而且嚴格保證采樣同步;高精度,6個16位轉換精度轉換通道非常適合電能質量監(jiān)測的需要。采樣速率可在8KHz、16KHz、32KHz范圍內(nèi)編程設置,適應范圍廣。AD73360為適應不同的場合提供了直流/交流、單端/差動4種不同的輸入方式;采用串行接口,與DSP芯片的連接非常簡單。
無論從精度、速度、采樣路數(shù)或者同步采樣的實現(xiàn)來考慮,在電力監(jiān)測系統(tǒng)中使用AD73360都是比較理想的選擇。
DSP簡介
系統(tǒng)采用的DSP處理芯片ADSP2191M是ADI公司的16位定點DSP。ADSP2191M處理器具有的資源概括如下:可訪問的存儲空間大小為16M words,分為256頁,每頁的大小為64K words,其中第0頁是內(nèi)部RAM,第255頁是內(nèi)部ROM,其它空間被分為4個部分,并由ms0~ms3進行選擇。有256頁I/O存儲區(qū)間,每頁的大小為1K words,其中前8頁為內(nèi)部I/O存儲區(qū)間,其它為外部I/O存儲區(qū)間。處理器有一個主機接口、3個同步串行接口、兩個SPI接口、16個可編程標志引腳、1個異步串行接口和3個32位定時器。
與AD73360連接必須采用串行總線方式,ADSP2191M就有3個這樣的同步串口。
硬件電路設計
整個系統(tǒng)的硬件設計以ADSP2191M和AD73360為核心,再配以周邊電路完成。硬件設計的框圖如圖1所示。
由圖1可以看出,系統(tǒng)的硬件設計非常簡單,而且沒有最麻煩的同步保持電路和系統(tǒng)存儲空間的擴展。這是因為AD73360能夠實現(xiàn)多通道的同步轉換,免除了同步保持電路的設計、ADSP2191M內(nèi)部具有64K RAM,能夠滿足系統(tǒng)設計的要求。在系統(tǒng)硬件設計中,傳感器用來將配電網(wǎng)參數(shù)的電能信號轉化為ADC的輸入信號,然后送到AD73360進行同步采樣,轉換后的采樣數(shù)據(jù)通過同步串口傳入DSP處理器,進行數(shù)據(jù)處理、諧波分析和其它操作。最后,處理器將分析結果送到LCD進行顯示,并通過串口送到PC進行相應的處理。Flash用來存放系統(tǒng)代碼。
整個系統(tǒng)設計中,F(xiàn)lash和LCD為基本的系統(tǒng)擴展,異步串口為基本的開發(fā),這里只介紹一下DSP處理器與ADC的連接。它們必須通過串行接口,其中ADSP2191M為6線串行方式,而AD73360為5線的串行方式,它們的區(qū)別在于前者的串行時鐘分為串口發(fā)送時鐘和串口接收時鐘,是彼此獨立的,而后者合二為一。比較時序圖會發(fā)現(xiàn),二者時序基本相同,但要控制AD73360,處理器還必須能夠滿足下面的要求:串口工作方式可設置為外部時鐘模式,串口字長可達到16bit,發(fā)送和接收的每個字都有同步幀信號,對處理器而言,接收同步幀信號為輸入信號,發(fā)送同步幀信號為輸入信號,幀同步信號產(chǎn)生在串口字高位出現(xiàn)的前一個時鐘周期,幀同步信號為高有效。
作為AD73360的同類處理器,ADSP2191M可以通過設置輕易地達到上述要求。
圖3 硬件系統(tǒng)分析與理論分析對比
系統(tǒng)軟件設計
系統(tǒng)的軟件設計比較復雜,分為A/D采樣控制、LCD控制、串口傳輸、數(shù)據(jù)處理和諧波分析算法等幾個部分。整個軟件框圖如圖2所示。
其中,諧波分析算法代碼量最大,也最重要,系統(tǒng)對配電網(wǎng)電能質量的分析就由它來完成;Flash驅動代碼用于對Stm29w040進行驅動,它不在系統(tǒng)監(jiān)測中使用,而是用來實現(xiàn)程序代碼的下載。在系統(tǒng)開發(fā)代碼的語言選擇上,采用DSP匯編語言和C語言相結合的方式,以C語言為主,匯編語言為輔。
219x_int_tab.asm文件的處理:在介紹整個系統(tǒng)流程之前,先介紹一下219x_int_tab.asm文件。當軟件主函數(shù)存在于C文件的時候,219x_int_tab.asm 文件被系統(tǒng)默認為項目的一部分,并對項目進行中斷向量初始化。當中斷發(fā)生后,程序指針跳轉到該文件的相應位置,通過___lib_int_determiner函數(shù)來尋找中斷服務程序的入口,一旦找不到服務程序入口,就會造成程序死鎖,無法正常運行,而采用C語言實現(xiàn)中斷函數(shù)比較復雜。為了提高系統(tǒng)開發(fā)速度,減少系統(tǒng)程序代碼,系統(tǒng)開發(fā)時要先對219x_int_tab.asm中的中斷向量表進行修改,將中斷服務程序入口直接給中斷向量表就可以完成該函數(shù)的功能。系統(tǒng)軟件的開發(fā)工具為ViusalDSP++3.0。
在軟件設計中,最重要的是諧波分析算法的設計。因為它是軟件設計的核心,不僅代碼量比較大,而且也是系統(tǒng)測量精度的決定性因素之一。本方案采用成熟的FFT(快速傅立葉算法)作為系統(tǒng)的諧波分析算法,同時,為了抑制FFT算法自身的柵欄效應和頻譜泄露問題,加入了漢寧窗和插值算法。由于代碼量較大,這里就不給出源代碼了。
在系統(tǒng)的軟件設計中,用到了兩個中斷:同步串口發(fā)送中斷和同步串口接收中斷。前者用來實現(xiàn)對AD73360的配置,后者用來實現(xiàn)從AD73360讀取轉換后的采樣數(shù)據(jù)。它們的代碼也不在此詳述了。
除此之外,系統(tǒng)還開發(fā)了異步串口、可編程標志引腳和LCD控制等待,使整個系統(tǒng)更加智能化、人性化。這里就不一一介紹了。
系統(tǒng)分析與軟件分析的比較
系統(tǒng)開發(fā)完畢后,為了對系統(tǒng)分析的結果進行檢測,使用與軟件分析進行比較的方法。將時域原始數(shù)據(jù)導入Matlab軟件,通過該軟件內(nèi)的FFT算法對數(shù)據(jù)進行分析,可以得到一組相應的時域波形、幅值譜和相位譜圖形。將這些圖形與系統(tǒng)硬件分析在DSP系統(tǒng)中所得到的對應圖型進行比較,就可以看出本設計的硬件系統(tǒng)分析與理論分析的差異。圖3就是這些圖形的對比情況。
DSP硬件系統(tǒng)與Matlab軟件所分析的原始數(shù)據(jù)是相同的,但是它們所采用的分析方法是不同的:一個是系統(tǒng)開發(fā)的算法、一個是軟件自帶的工具,所以,可以通過對比來審核開發(fā)系統(tǒng)算法的可靠性。可以看出,在對比圖中,開發(fā)系統(tǒng)得到的時域信號的波形和幅值、相位譜與Matlab軟件的分析結果具有相當?shù)囊恢滦浴O抻谄?,最終的分析數(shù)據(jù)不再詳述了。
為了比較系統(tǒng)的可信度,可采用多次分析的方法,分析比較數(shù)據(jù)可以看出,雖然采用不同的分析系統(tǒng),但是二者結果誤差很小,基本相同,這就說明系統(tǒng)的硬件監(jiān)測結果有相當?shù)目煽啃浴?
結語
以AD73360和ADSP2191M處理器為系統(tǒng)硬件核心,系統(tǒng)具有如下特點:
•系統(tǒng)硬件設計簡潔,不僅容易實現(xiàn)而且成本較低。
•系統(tǒng)沒有外部擴展SRAM,對硬件要求比較低。
•使用DSP處理器未用接口資源,系統(tǒng)軟件方便升級。
•系統(tǒng)的軟件設計采用匯編和C語言相結合的方法和加窗插值FFT算法,可以提高代碼的開發(fā)速度和系統(tǒng)整體的測量精度。由比較結果來看,該方案符合電力系統(tǒng)的要求,可靠性高,而且至少可以滿足每周期160點的實時采樣