• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      Matlab與Excel接口技術(shù)在電力系統(tǒng)數(shù)據(jù)分析中的應(yīng)用

      2012-02-28 05:10:42董世君董愛芹
      關(guān)鍵詞:接口技術(shù)文本框插件

      董世君 , 薛 瑋 , 董愛芹 , 陳 眾

      (1.南平電業(yè)局,福建 南平 350003;2.長沙理工大學(xué) 電氣與信息工程學(xué)院,湖南 長沙 410076;3.湖南省電力公司試驗(yàn)研究院,湖南 長沙 410007;4.安陽優(yōu)創(chuàng)電力設(shè)計(jì)院有限責(zé)任公司,河南 安陽 455000)

      Excel是微軟辦公套裝軟件的一個(gè)重要組成部分,它可以進(jìn)行各種數(shù)據(jù)處理、統(tǒng)計(jì)分析和輔助決策操作,廣泛地應(yīng)用于管理、統(tǒng)計(jì)財(cái)經(jīng)、金融等眾多領(lǐng)域。電力系統(tǒng)研究中需要或者獲得的數(shù)據(jù)常常保存在Excel中,大多數(shù)情況下這些數(shù)據(jù)僅能進(jìn)行簡單的處理,而無法做到深層次的分析,限制了其更進(jìn)一步的應(yīng)用。

      Matlab自問世以來,由于其卓越的計(jì)算分析能力已經(jīng)成為電力系統(tǒng)研究不可或缺的工具,但是Matlab作為一種解釋型語言導(dǎo)致其運(yùn)行速度相對較慢,同時(shí)Matlab自身無法為海量數(shù)據(jù)提供直接載體且界面不便捷。通過接口技術(shù)實(shí)現(xiàn)Matlab與Excel混合編程,可以充分利用各自的優(yōu)勢,彌補(bǔ)兩者的不足,提高實(shí)用性。

      1 Matlab與Excel接口技術(shù)

      Matlab與Excel是目前Matlab與外部各種程序接口中手段最多、也最完備的接口技術(shù)[1],主要有:(1)利用DDE(Dynamic Data Exchange)和自動化技術(shù)可以實(shí)現(xiàn)它們之間的鏈接;(2)Matlab提供了一個(gè)Excel Link插件,利用它可以直接在Excel環(huán)境下完成與Matlab的數(shù)據(jù)傳輸并運(yùn)行 Matlab命令;(3)通過 Excel生成器可實(shí)現(xiàn)他們之間的連接。

      前兩種方式比較適合Client/Server模式,而Excel生成器這種方法則可以視應(yīng)用系統(tǒng)的具體要求來做選擇。

      (1)DDE(Dynamic Data Exchange)允 許 Microsoft Windows應(yīng)用程序通過交換數(shù)據(jù)實(shí)現(xiàn)彼此間的通信。應(yīng)用程序間彼此通信要先建立一個(gè)DDE會話,對會話進(jìn)行初始化的應(yīng)用程序稱為客戶端(Client),對Client端作出響應(yīng)的應(yīng)用程序稱為服務(wù)器(Server);自動化技術(shù)可使解釋性的宏語言能夠在不了解應(yīng)用程序?qū)崿F(xiàn)細(xì)節(jié)的情況下控制自動化對象。

      (2)Excel Link是一個(gè)軟件插件,它將 Excel和 Matlab在微軟視窗環(huán)境下進(jìn)行集成。通過鏈接Excel和Matlab,可以從Excel工作表和宏編程工具中獲得Matlab的數(shù)值計(jì)算和圖形繪制功能,能夠在兩個(gè)環(huán)境之間交換數(shù)據(jù)。Excel Link在Excel工作空間和Matlab工作空間之間進(jìn)行通信時(shí),它把Excel作為Matlab的前端,在Excel的工作表和宏中使用Excel Link函數(shù),而不必離開Excel環(huán)境,Excel Link用少量的函數(shù)實(shí)現(xiàn)鏈接管理和數(shù)據(jù)操作,以簡便取勝。Excel Link的運(yùn)行機(jī)制如圖1所示。

      (3)Matlab提供了一種Excel生成器,利用該工具可以將Matlab的M文件中的算法程序集成到其生成的一種DLL組件中,同時(shí)生成相應(yīng)組件的VBA代碼。利用DLL組件,VBA代碼可以在 Excel的Visual Basic編輯器中直接使用,可以保存為插件(Add-Ins)。其中,Excel生成器創(chuàng)建的COM對象暴露給VB程序環(huán)境一個(gè)類,該類包含一系列稱為方法的函數(shù),對應(yīng)于包含的組件工程中的原始Matlab函數(shù)。

      綜上所述,利用Excel生成器可以使開發(fā)者擁有更自由的開發(fā)空間,而在利用Excel生成器開發(fā)Excel插件的過程中有兩種方式。一種是通過將組件集成到VBA中,創(chuàng)建用戶界面后保存為插件[2];另一種是直接修改組件中的BAS文件,然后保存為插件[3]。兩者在生成組件的過程中相同,前者雖然在應(yīng)用時(shí)比較靈活,但是其工作量較大,對編程人員的編程水平要求較高,而后者只需要修改組件中的BAS文件,工作量明顯減少。本文結(jié)合實(shí)例介紹通過修改BAS文件實(shí)現(xiàn)Matlab與Excel之間的無縫連接在電力系統(tǒng)數(shù)據(jù)分析中的應(yīng)用。

      2 應(yīng)用舉例

      勵磁系統(tǒng)相頻、幅頻特性反應(yīng)了對象在工作點(diǎn)線性化的特性[4],因此,PSS相頻、幅頻特性分析試驗(yàn)是勵磁系統(tǒng)參數(shù)整定不可缺少的一環(huán)。本實(shí)驗(yàn)具體過程為:試驗(yàn)機(jī)組在有功 P=252.6 MW、無功 Q=4.2 MV、勵磁調(diào)節(jié)器恒電壓方式運(yùn)行,AGC功能退出的工況下進(jìn)行測試;發(fā)電機(jī)并網(wǎng)運(yùn)行,勵磁調(diào)節(jié)器自動方式運(yùn)行,PSS退出,無功調(diào)差單元退出,用頻譜儀測量輸出的偽隨機(jī)信號與發(fā)電機(jī)電壓信號之間的相頻特性即為勵磁系統(tǒng)無補(bǔ)償相頻特性。勵磁系統(tǒng)無補(bǔ)償相頻特性測試接線如圖2所示。

      將試驗(yàn)測量得的數(shù)據(jù)保存在Excel文檔中,通過調(diào)用由Excel生成器將Matlab程序集成到COM組件,進(jìn)而修改組件中的BAS文件獲得所需要的插件進(jìn)行數(shù)據(jù)處理。生成所需插件的具體步驟如下。

      2.1 創(chuàng)建工程

      在配置好編譯器的Matlab 6.5環(huán)境中,在命令行中輸入Matlab命令mxltool,顯示 Matlab的Excel生成器主窗口。具體步驟為:

      在窗口中依次選擇 File→New Project,打開“New Project Settings”對話框。

      (1) “Component name”文本框和“Class name”文本框

      在 “Component name”文本框中輸入組件的名稱“Test”,在 “Class name” 文本框輸入類的名稱“Pssmodule”。組件是后面創(chuàng)建的名稱。輸入組件以后,生成器會自動輸入一個(gè)與組件名相同的類名,可以將類名改為其他描述性更強(qiáng)的名稱。

      (2)“Project Version”文本框

      在“Project Version”文本框中輸入組件的版本號。默認(rèn)版本號為1.0,這里選擇默認(rèn)版本號。

      (3)“Project Direction”文本框

      在“Project Direction”文本框中輸入工程目錄。工程目錄指定編譯和打包模型時(shí),將工程和生成的文件放在那里,工程目錄根據(jù)當(dāng)前目錄名和組件名自動創(chuàng)建為D:MatlabworkTest。

      (4)“Compile code in”方框

      在該方框中選擇生成C++代碼,因?yàn)镃++組件可讀性更強(qiáng),更便于修改。

      2.2 管理M文件

      創(chuàng)建工程以后, 主窗口中的 “Project”、“Build”和“Component”等菜單選項(xiàng)變?yōu)榭捎?,單擊“Add File”按鈕或依次選擇Project→Add File,在工程中添加測試好的M文件。

      2.3 生成組件

      定義工程設(shè)置和添加M函數(shù)后,可以生成一個(gè)可配置的DLL文件和必要的VBA代碼。依次選擇菜單選項(xiàng)Build→Excel/COM Files或單擊“Build”按鈕,激活 Matlab編譯器,將中間的源文件寫到Testsrc,將進(jìn)行配置的輸出文件寫到Testdistrb目錄。

      2.4 生成插件

      前面生成的組件中有由Excel Builder直接生成的.BAS文件,不需經(jīng)過修改就可以直接將組件集成到VBA中、創(chuàng)建圖形用戶界面然后保存為插件,生成的插件可以直接使用。這種方法中,函數(shù)根據(jù)輸入的參數(shù),調(diào)用編譯得到的組件后將答案繪制出來,而且計(jì)算的數(shù)據(jù)不返回Excel環(huán)境中。這里的宏由公式函數(shù)實(shí)現(xiàn),它能夠?qū)?biāo)量形式的返回值返回到Excel環(huán)境。然而在使用Excel進(jìn)行數(shù)據(jù)處理時(shí),需要將所有的計(jì)算結(jié)果都顯示在電子表格中。在用Excel Builder創(chuàng)建Excel插件時(shí),為了能夠克服這些不足,就必須修改.BAS文件。通過修改由Excel生成器生成的.BAS文件函數(shù)能夠返回矩陣并且填充Excel單元格。這種方法相對前一種方法來說工作量很少。

      對修改好的.BAS文件進(jìn)行保存生成Excel的插件,然后通過調(diào)用宏指令mytest就可以得到分析的數(shù)據(jù)和勵磁系統(tǒng)幅頻、相頻特性圖。Excel界面如圖3所示。發(fā)電機(jī)勵磁系統(tǒng)無補(bǔ)償和有補(bǔ)償相頻特性曲線比較圖如圖4所示。從圖4可看出在投入PSS后勵磁系統(tǒng)的相頻特性得到了有效的改善。

      利用接口技術(shù)將Matlab程序集成到Excel插件中實(shí)現(xiàn)兩者之間的無縫連接,充分利用Excel數(shù)據(jù)載體和Matlab數(shù)據(jù)處理能力的優(yōu)勢,將生成的插件打包和發(fā)布供Excel調(diào)用,使得工程數(shù)據(jù)分析處理更加方便快捷。

      [1]蘇金明,黃國明,劉波.Matlab與外部程序接口[M].北京:電子工業(yè)出版社,2004.

      [2]The Math Works,Inc.Matlab Excel Builder User’s Guide[M].Natick:The MathWorks,Inc,2002.

      [3]張威.Matlab應(yīng)用程序集成與發(fā)布[M].西安:西安電子科技大學(xué)出版社,2005.

      [4]竺士章.發(fā)電機(jī)勵磁系統(tǒng)實(shí)驗(yàn)[M].北京:中國電力出版社,2005.

      猜你喜歡
      接口技術(shù)文本框插件
      巧用文本框?qū)崿F(xiàn)PPT多圖片排版
      自編插件完善App Inventor與樂高機(jī)器人通信
      電子制作(2019年22期)2020-01-14 03:16:34
      PPT文本框的另類應(yīng)用
      電力系統(tǒng)全網(wǎng)一體化暫態(tài)仿真接口技術(shù)
      電子制作(2018年14期)2018-08-21 01:38:28
      中文GIS自然語言接口技術(shù)研究
      天地一體化網(wǎng)絡(luò)和空中接口技術(shù)研究
      MapWindowGIS插件機(jī)制及應(yīng)用
      文本框酷變3D效果
      基于Revit MEP的插件制作探討
      結(jié)構(gòu)動力彈塑性與倒塌分析(Ⅱ)——SAP2ABAQUS接口技術(shù)、開發(fā)與驗(yàn)證
      地震研究(2014年1期)2014-02-27 09:29:55
      航空| 乌兰县| 苏尼特左旗| 牟定县| 泸水县| 苏尼特右旗| 滨海县| 朝阳市| 育儿| 阿勒泰市| 秀山| 宽城| 班戈县| 桂平市| 泗洪县| 南通市| 泰州市| 都兰县| 萍乡市| 永吉县| 通州区| 永德县| 陆河县| 潜山县| 故城县| 边坝县| 安图县| 宜兰市| 乐业县| 林甸县| 民丰县| 马山县| 阿巴嘎旗| 江达县| 公主岭市| 乃东县| 新和县| 南平市| 正安县| 东乌珠穆沁旗| 疏勒县|