董衍旭 周 軍 李競(jìng)攀 尚秋峰
(華北電力大學(xué)電氣與電子工程學(xué)院1,河北 保定 071003;四川省電力公司自貢電業(yè)局2,四川 自貢 643000)
近年來,隨著電力系統(tǒng)中沖擊性負(fù)荷的增加,電能質(zhì)量擾動(dòng)信號(hào)的檢測(cè)成為國(guó)內(nèi)外研究的熱點(diǎn),其中尤以電網(wǎng)諧波失真、電壓波動(dòng)和閃變備受人們的關(guān)注。閃變已成為電能質(zhì)量擾動(dòng)的一種重要類型[1]。電壓閃變會(huì)影響和危害敏感的電力電子和控制設(shè)備,從而影響電網(wǎng)的運(yùn)行及人們的正常工作,所以對(duì)其進(jìn)行準(zhǔn)確測(cè)量和有效抑制已勢(shì)在必行。
由于虛擬儀器本身并不提供相關(guān)算法分析工具,傳統(tǒng)的基于虛擬儀器的閃變測(cè)量?jī)x需用C語(yǔ)言進(jìn)行算法的編程,編程復(fù)雜度高、工作量大。本文設(shè)計(jì)的電壓閃變分析軟件不需安裝龐大的Matlab軟件,僅將Matlab小波算法部分編譯成動(dòng)態(tài)鏈接庫(kù),便可以供LabWindows調(diào)用,既避免了復(fù)雜的算法編程,又節(jié)省了硬件資源。本設(shè)計(jì)使虛擬儀器和復(fù)雜的分析算法可以在資源有限的硬件平臺(tái)上實(shí)現(xiàn)(如PC104+),因此,拓展了虛擬儀器的工業(yè)應(yīng)用范圍。
由電壓波動(dòng)造成燈光照度不穩(wěn)定(燈光閃爍)的人眼視感反應(yīng)稱為閃變,換而言之,閃變反映了燈光閃爍對(duì)人視感產(chǎn)生的影響。電壓閃變是電壓波動(dòng)引起的有害結(jié)果,它不屬于電磁現(xiàn)象。
人們對(duì)閃變的感受與電壓波動(dòng)的幅值、頻率有關(guān)。閃變程度是對(duì)觀察者進(jìn)行視感調(diào)查、統(tǒng)計(jì)的結(jié)果。下面分別對(duì)電壓閃變的三個(gè)主要特征參量進(jìn)行介紹。
為了反映人們的瞬時(shí)閃變視覺水平,用閃變強(qiáng)弱的瞬時(shí)值隨時(shí)間的變化來描述,即瞬時(shí)閃變視感度S(t)。它是電壓波動(dòng)的頻度、波形、大小等綜合作用的結(jié)果。通常規(guī)定閃變覺察率F=50%作為瞬時(shí)閃變視感度的衡量單位,對(duì)應(yīng)的即為S(t)=1覺察單位。若S(t)>1覺察單位,表明實(shí)驗(yàn)觀察者中有半數(shù)以上的人對(duì)燈光閃爍有明顯視覺反應(yīng),則規(guī)定為閃變不允許值。
視覺反應(yīng)與照度波動(dòng)的頻率有關(guān)。閃變的最大覺察頻率范圍為 0.05 ~35 Hz,其中,8.8 Hz是閃變的最大敏感頻率。
電弧爐等隨機(jī)變化負(fù)荷的電壓波動(dòng),不僅要測(cè)量它的最大電壓波動(dòng),還要在足夠長(zhǎng)的時(shí)間(至少取10 min)內(nèi)觀察電壓波動(dòng)的統(tǒng)計(jì)特征。在電弧爐等負(fù)荷的電壓波動(dòng)10 min的累計(jì)概率函數(shù)(cumulative probability function,CPF)曲線中,常用五個(gè)規(guī)定值或稱百分值計(jì)算短時(shí)間閃變的統(tǒng)計(jì)值Pst,UIE專家組擬定Pst的表達(dá)式為:
式中:P0.1、P1、P3、P10、P50分別為10 min 內(nèi)瞬時(shí)閃變視感度超過0.1%、1%、3%、10%、50%的覺察單位時(shí)間值[2]。
小波分析是一種時(shí)頻分析法[3],具有多分辨率的特點(diǎn),在時(shí)頻兩域都具有表征信號(hào)局部特征的能力。本文采用具有多分辨率分析特性的小波變換作為處理電壓閃變包絡(luò)信號(hào)的方法。小波變換可分為連續(xù)小波變換和離散小波變換兩種。由于連續(xù)小波變換存在信息冗余,使得小波逆變換的重構(gòu)過程不唯一;而離散小波變換的信息冗余度小且算法速度快,同樣可以重構(gòu)原始信號(hào)。本文采用離散小波變換。
1987年,法國(guó)科學(xué)家Stephan Mallat將計(jì)算機(jī)視覺領(lǐng)域內(nèi)的多分辨率分析引入小波分析中,從空間的角度形象地說明了小波的多分辨率特征,并推導(dǎo)出相應(yīng)的快速算法(即Mallat算法)。在Mallat算法中,將不再出現(xiàn)尺度函數(shù)和小波函數(shù),而是采用數(shù)字濾波器完成函數(shù)相對(duì)應(yīng)的功能。
信號(hào)通過理想低通和高通濾波器后可以分解為高頻和低頻兩部分,高低頻兩路信號(hào)分別對(duì)應(yīng)著原始信號(hào)的概貌逼近與細(xì)節(jié)部分,小波多分辨分析是對(duì)信號(hào)低頻部分作進(jìn)一步分解,而對(duì)高頻部分則不作處理。依次對(duì)分解后的低頻部分進(jìn)行再次分解,而且每一級(jí)的輸出采樣率都可以減半,這就需要將原始信號(hào)進(jìn)行多分辨率分解[4]。小波多分辨率分解如圖1所示。
圖1 小波多分辨率分解Fig.1 Wavelet multi-resolution decomposition
虛擬儀器內(nèi)部提供了較為豐富的內(nèi)置函數(shù)和面板工具,為開發(fā)人員提供了理想的開發(fā)環(huán)境。然而要實(shí)現(xiàn)測(cè)控領(lǐng)域的一些先進(jìn)理論和算法,如模糊理論、遺傳算法、神經(jīng)網(wǎng)絡(luò)等,則需要官方提供額外的工具箱。Matlab擁有豐富的內(nèi)置函數(shù)、各種工具箱(包括魯棒控制工具箱、信號(hào)處理工具箱、神經(jīng)網(wǎng)絡(luò)工具箱、圖像處理工具箱、小波工具箱等)、強(qiáng)大的科學(xué)計(jì)算能力以及靈活的接口技術(shù),能與外部程序?qū)崿F(xiàn)“無(wú)縫”結(jié)合。LabWindows/CVI與Matlab的有機(jī)結(jié)合,可以彌補(bǔ)各自的不足,并能設(shè)計(jì)出功能強(qiáng)大的虛擬儀器軟件。
動(dòng)態(tài)鏈接庫(kù)(dynamic link library,DLL)是一個(gè)包含由多個(gè)程序同時(shí)使用的代碼和數(shù)據(jù)的庫(kù)。本文利用動(dòng)態(tài)鏈接庫(kù)的方法實(shí)現(xiàn)數(shù)據(jù)通信。先將m文件編譯成動(dòng)態(tài)鏈接庫(kù)(DLL),再通過C語(yǔ)言便可以簡(jiǎn)單地調(diào)用Matlab函數(shù)編譯成的動(dòng)態(tài)鏈接庫(kù)文件,具有數(shù)據(jù)通信穩(wěn)定、可擴(kuò)展等優(yōu)點(diǎn)。
在編寫m函數(shù)文件的過程中,由于Matlab編譯器不支持m腳本文件,因此需將其轉(zhuǎn)換為函數(shù)文件。
在Matlab命令行窗口中輸入命令:mbuild-setup,根據(jù)提示選擇需要的編譯器選項(xiàng),本文選擇VC++的選項(xiàng)編譯m文件。編譯C語(yǔ)言動(dòng)態(tài)鏈接庫(kù)命令為mcc-B csharedlib:[lib文件名][m文件名]。
將編譯之后的文件加載到LabWindows/CVI項(xiàng)目工程中,除DLL文件外,還有LIB、h頭文件。如果采用動(dòng)態(tài)方式加載,只需在工程中包含DLL文件即可。
要使其編譯之后的動(dòng)態(tài)鏈接庫(kù)文件能發(fā)布到?jīng)]有安裝Matlab的計(jì)算機(jī)上使用,需要在目標(biāo)機(jī)上安裝Matlab Compiler Runtime,利用 Matlab命令 buildmcr來創(chuàng)建可以發(fā)布給最終用戶的MCR安裝文件。在目標(biāo)機(jī)上,首先將MCRInstaller.zip解壓,并把MCR中可執(zhí)行文件所在目錄加到系統(tǒng)路徑上,然后就可以調(diào)用編譯后的程序了。
通過動(dòng)態(tài)鏈接庫(kù)調(diào)用方式實(shí)現(xiàn)的LabWindows/CVI與Matlab混合編程,不需安裝Matlab龐大的運(yùn)行環(huán)境,既實(shí)現(xiàn)了算法的調(diào)用,又節(jié)省了硬件資源。
嵌入式數(shù)據(jù)庫(kù)一般指與嵌入式系統(tǒng)及具體的應(yīng)用程序緊密集成在一起[5],無(wú)需獨(dú)立運(yùn)行數(shù)據(jù)庫(kù)服務(wù)引擎,由程序直接調(diào)用相應(yīng)的接口函數(shù)(API),實(shí)現(xiàn)對(duì)數(shù)據(jù)的存取操作。目前,嵌入式數(shù)據(jù)庫(kù)市場(chǎng)主要由三個(gè)產(chǎn)品分割:SQLite3、Birkeley DB、Firebird嵌入服務(wù)器版??紤]到性能、內(nèi)存消耗、SQL支持以及文件體積等特性,本設(shè)計(jì)采用SQLite3作為數(shù)據(jù)存儲(chǔ)。SQLite3是一個(gè)開源、輕量級(jí)、跨平臺(tái)的關(guān)系型數(shù)據(jù)庫(kù)[6],它廣泛應(yīng)用于嵌入式設(shè)備、應(yīng)用軟件、并發(fā)量少的中小型網(wǎng)絡(luò)等領(lǐng)域,雖然其最大存儲(chǔ)容量?jī)H為2 TB,但已滿足本設(shè)計(jì)的需求。
系統(tǒng)前面板由虛擬儀器(LabWindows/CVI)軟件的各控件組成,通過調(diào)用不同控件的回調(diào)函數(shù),可以實(shí)現(xiàn)不同的功能,如截屏、打印等。相對(duì)于傳統(tǒng)儀器,其具有界面設(shè)計(jì)美觀、操作人性化、便于二次開發(fā)等特點(diǎn)。
在系統(tǒng)前面板中點(diǎn)擊“確認(rèn)”按鈕,系統(tǒng)便會(huì)根據(jù)“參數(shù)設(shè)置單元”輸入的參數(shù),如閃變頻率、閃變幅度、采樣頻率、是否加噪等生成電壓閃變仿真信號(hào),并在系統(tǒng)面板右邊“GRAPH”圖形控件分別顯示調(diào)幅波(閃變包絡(luò)信號(hào))波形、電壓波動(dòng)與閃變波形。在“閃變分析”單元,選擇小波基、小波包以及濾波器長(zhǎng)度后,點(diǎn)擊“執(zhí)行”按鈕,便會(huì)執(zhí)行其回調(diào)函數(shù)?;卣{(diào)函數(shù)實(shí)現(xiàn)了LabWindows/CVI與Matlab動(dòng)態(tài)鏈接庫(kù)的混合編程。依次將各參數(shù)傳入函數(shù)中,最后通過后臺(tái)數(shù)據(jù)運(yùn)算將函數(shù)返回值顯示在前面板的數(shù)值控件中。本系統(tǒng)主要具備用戶登錄、用戶資料修改、數(shù)據(jù)顯示、打印面板、記錄存取及刪除、遠(yuǎn)程傳輸、關(guān)閉計(jì)算機(jī)等功能模塊。系統(tǒng)功能框圖如圖2所示。
圖2 系統(tǒng)功能框圖Fig.2 Functional block diagram of the system
3.5.1 用戶登錄
系統(tǒng)運(yùn)行時(shí),首先啟動(dòng)用戶登錄模塊。只有在輸入正確的用戶名與密碼后才可使用系統(tǒng)。每次登錄時(shí),系統(tǒng)都會(huì)記錄用戶登錄的時(shí)間與次數(shù)。
3.5.2 用戶資料修改
為保障用戶的帳號(hào)安全,需要經(jīng)常修改用戶資料。登錄系統(tǒng)后,通過下拉菜單(管理員操作→修改資料)或工具欄按鈕可以調(diào)出用戶資料修改界面,輸入修改后的用戶名和密碼,點(diǎn)擊“提交”按鈕便可修改。
3.5.3 其他功能
點(diǎn)擊下拉菜單或工具欄按鈕便可以調(diào)出數(shù)據(jù)顯示界面,其顯示參數(shù)包含:閃變頻率、閃變幅值、測(cè)量S(t)值、理想S(t)值、測(cè)量瞬時(shí)視感度Pst與理想瞬時(shí)視感度、記錄時(shí)間。通過調(diào)用不同系統(tǒng)函數(shù),可以實(shí)現(xiàn)軟件的打印、截圖、數(shù)據(jù)保存與刪除以及關(guān)閉電源等功能。另外,本系統(tǒng)可以采用UDP協(xié)議進(jìn)行文件遠(yuǎn)程傳輸與接收,默認(rèn)設(shè)置端口號(hào)為8888,在聯(lián)機(jī)的狀態(tài)下只需要輸入對(duì)方的IP地址,就可以遠(yuǎn)程連接并傳輸文件。
為驗(yàn)證閃變測(cè)量模塊的測(cè)量精度,根據(jù)電壓閃變模型對(duì)電網(wǎng)信號(hào)進(jìn)行建模,確定仿真信號(hào),閃變幅度、頻率,采樣點(diǎn)數(shù)、采樣頻率等參數(shù)。這些參數(shù)均可在系統(tǒng)面板中“參數(shù)設(shè)置”確定,并根據(jù)“閃變分析”單元選擇合適的小波基、小波包及其濾波器長(zhǎng)度對(duì)信號(hào)進(jìn)行分析。此處統(tǒng)一設(shè)定采樣頻率為3200 Hz,采樣點(diǎn)數(shù)為3200點(diǎn),將測(cè)試結(jié)果與 IEC給定的在視感度S(t)=1覺察單位的電壓波動(dòng)值下的Pst標(biāo)準(zhǔn)值進(jìn)行對(duì)比,Pst試驗(yàn)結(jié)果分析如表1所示。從測(cè)試結(jié)果可以看出,短時(shí)閃變值的誤差范圍小于5%,滿足IEC關(guān)于閃變測(cè)量模塊的精度要求。
表1 Pst試驗(yàn)結(jié)果分析Tab.1 Analysis of the experimental results of Pst
本系統(tǒng)采用動(dòng)態(tài)鏈接庫(kù)(DLL)調(diào)用方法,實(shí)現(xiàn)了LabWindows/CVI與Matlat的混合編程,具有數(shù)據(jù)通信穩(wěn)定和擴(kuò)展性強(qiáng)的優(yōu)點(diǎn)。此外,系統(tǒng)還可以直接調(diào)用Matlab的小波工具箱函數(shù),彌補(bǔ)了虛擬儀器在一些高級(jí)數(shù)據(jù)分析算法上的不足,提高了虛擬儀器軟件的開發(fā)效率。采用數(shù)據(jù)庫(kù)SQLite3存儲(chǔ)數(shù)據(jù)記錄,既減少了內(nèi)存開銷,又降低了經(jīng)濟(jì)開支。本文設(shè)計(jì)的電壓閃變分析平臺(tái)采用小波多分辨率分析提取電壓閃變包絡(luò)信號(hào),試驗(yàn)結(jié)果表明,小波變換具有良好的時(shí)頻局部化能力,滿足IEC閃變標(biāo)準(zhǔn)。
[1]李天云,趙妍,韓永強(qiáng),等.Hilbert-Huang變換方法在諧波和電壓閃變檢測(cè)中的應(yīng)用[J].電網(wǎng)技術(shù),2005,29(2):73 -77.
[2]劉大貴,王維慶,王海云.基于IEC閃變儀測(cè)試系統(tǒng)的仿真研究[J].自動(dòng)化儀表,2011(4):59 -61,65.
[3]劉會(huì)金,吳玉蓉,熊玲玲.基于Daubechies小波的多分辨分解在電壓閃變信號(hào)分析中的應(yīng)用[J].繼電器,2004,32(13):6 -10.
[4]謝小磊.電壓波動(dòng)與閃變的小波分析[D].南京:河海大學(xué),2006.
[5]Michael A.Selecting and implementing an embedded database sys-tem[J].Computer,2000,33(9):27 - 34.
[6]堯有平,薜小波.基于ARM-Linux的SQLite嵌入式數(shù)據(jù)庫(kù)的研究[J].微計(jì)算機(jī)信息,2008,24(5):63 -66.
[7]IEC 6100-4-15 Testing and measure ment techniques:flicker meter functional and design specifications[S].1997.
[8]劉偉,申焱華,黃夏旭.基于虛擬儀器的熱電偶溫度測(cè)試與分析系統(tǒng)[J].自動(dòng)化儀表,2007,28(3):65 -69.
[9]柳明洙,劉永強(qiáng),劉博,等.一種基于虛擬儀器建立的電壓閃變監(jiān)測(cè)方法[J].中國(guó)測(cè)試,2009,35(3):118 -120.
[10]李啟斌,陳建業(yè).基于虛擬儀器的電壓閃變測(cè)量模塊設(shè)計(jì)[J].大功率變流技術(shù),2008(6):55-58.