《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > Matlab與Excel接口技術在電力系統數據分析中的應用
Matlab與Excel接口技術在電力系統數據分析中的應用
來源:微型機與應用2012年第18期
董世君1,2, 薛 瑋3, 董愛芹4, 陳 眾2
(1. 南平電業局,福建 南平350003; 2.長沙理工大學 電氣與信息工程學院,湖南 長沙410
摘要: 為了充分發揮Excel和Matlab各自的優勢,實現兩者之間的無縫連接并將其應用于電力系統數據分析中,簡要分析了DDE(Dynamic Data Exchange)和自動化技術、Excel Link插件以及通過Excel生成器等3種接口技術。而Excel生成器生成插件又有兩種方法,通過一個實例重點介紹了其中一種工作量少、簡單方便的方法。通過對保存在Excel中的數據進行處理分析,結果顯示這種以Excel為載體、Matlab程序集成到Excel插件處理數據的思想能夠很好地彌補Excel沒有專門函數處理電力系統數據等功能的缺陷。
Abstract:
Key words :

摘  要: 為了充分發揮ExcelMatlab各自的優勢,實現兩者之間的無縫連接并將其應用于電力系統數據分析中,簡要分析了DDE(Dynamic Data Exchange)和自動化技術、Excel Link插件以及通過Excel生成器等3種接口技術。而Excel生成器生成插件又有兩種方法,通過一個實例重點介紹了其中一種工作量少、簡單方便的方法。通過對保存在Excel中的數據進行處理分析,結果顯示這種以Excel為載體、Matlab程序集成到Excel插件處理數據的思想能夠很好地彌補Excel沒有專門函數處理電力系統數據等功能的缺陷。
關鍵詞: Excel; Matlab; Excel生成器; 無縫連接

    Excel 是微軟辦公套裝軟件的一個重要組成部分,它可以進行各種數據處理、統計分析和輔助決策操作,廣泛地應用于管理、統計財經、金融等眾多領域。電力系統研究中需要或者獲得的數據常常保存在Excel中,大多數情況下這些數據僅能進行簡單的處理,而無法做到深層次的分析,限制了其更進一步的應用。
    Matlab自問世以來,由于其卓越的計算分析能力已經成為電力系統研究不可或缺的工具,但是Matlab作為一種解釋型語言導致其運行速度相對較慢,同時Matlab自身無法為海量數據提供直接載體且界面不便捷。通過接口技術實現Matlab與Excel混合編程,可以充分利用各自的優勢,彌補兩者的不足,提高實用性。
1 Matlab與Excel接口技術
    Matlab與Excel是目前Matlab與外部各種程序接口中手段最多、也最完備的接口技術[1],主要有:(1)利用DDE(Dynamic Data Exchange)和自動化技術可以實現它們之間的鏈接;(2)Matlab提供了一個Excel Link插件,利用它可以直接在Excel環境下完成與Matlab的數據傳輸并運行Matlab命令;(3)通過Excel生成器可實現他們之間的連接。
    前兩種方式比較適合Client/Server模式,而Excel生成器這種方法則可以視應用系統的具體要求來做選擇。

  (1)DDE(Dynamic Data Exchange)允許Microsoft Windows應用程序通過交換數據實現彼此間的通信。應用程序間彼此通信要先建立一個DDE會話,對會話進行初始化的應用程序稱為客戶端(Client),對Client端作出響應的應用程序稱為服務器(Server);自動化技術可使解釋性的宏語言能夠在不了解應用程序實現細節的情況下控制自動化對象。
   (2)Excel Link是一個軟件插件,它將Excel和Matlab在微軟視窗環境下進行集成。通過鏈接Excel和Matlab,可以從Excel工作表和宏編程工具中獲得Matlab的數值計算和圖形繪制功能,能夠在兩個環境之間交換數據。Excel Link在Excel工作空間和Matlab工作空間之間進行通信時,它把Excel作為Matlab的前端,在Excel的工作表和宏中使用Excel Link函數,而不必離開Excel環境,Excel Link用少量的函數實現鏈接管理和數據操作,以簡便取勝。Excel Link的運行機制如圖1所示。

   (3)Matlab提供了一種Excel生成器,利用該工具可以將Matlab的M文件中的算法程序集成到其生成的一種DLL組件中,同時生成相應組件的VBA代碼。利用DLL組件,VBA代碼可以在Excel的Visual Basic編輯器中直接使用,可以保存為插件(Add-Ins)。其中,Excel生成器創建的COM對象暴露給VB程序環境一個類,該類包含一系列稱為方法的函數,對應于包含的組件工程中的原始Matlab函數。
    綜上所述,利用Excel生成器可以使開發者擁有更自由的開發空間,而在利用Excel生成器開發Excel插件的過程中有兩種方式。一種是通過將組件集成到VBA中,創建用戶界面后保存為插件[2];另一種是直接修改組件中的BAS文件,然后保存為插件[3]。兩者在生成組件的過程中相同,前者雖然在應用時比較靈活,但是其工作量較大,對編程人員的編程水平要求較高,而后者只需要修改組件中的BAS文件,工作量明顯減少。本文結合實例介紹通過修改BAS文件實現Matlab與Excel之間的無縫連接在電力系統數據分析中的應用。
2 應用舉例
    勵磁系統相頻、幅頻特性反應了對象在工作點線性化的特性[4],因此,PSS相頻、幅頻特性分析試驗是勵磁系統參數整定不可缺少的一環。本實驗具體過程為:試驗機組在有功P=252.6 MW、無功Q=4.2 MV、勵磁調節器恒電壓方式運行, AGC功能退出的工況下進行測試;發電機并網運行,勵磁調節器自動方式運行,PSS退出,無功調差單元退出,用頻譜儀測量輸出的偽隨機信號與發電機電壓信號之間的相頻特性即為勵磁系統無補償相頻特性。勵磁系統無補償相頻特性測試接線如圖2所示。    將試驗測量得的數據保存在Excel文檔中,通過調用由Excel生成器將Matlab程序集成到COM組件,進而修改組件中的BAS文件獲得所需要的插件進行數據處理。生成所需插件的具體步驟如下。

2.1創建工程
    在配置好編譯器的Matlab 6.5環境中,在命令行中輸入Matlab命令mxltool,顯示Matlab的Excel生成器主窗口。具體步驟為:
    在窗口中依次選擇File→New Project,打開“New Project Settings”對話框。
    (1) “Component name”文本框和“Class name”文本框
    在“Component name”文本框中輸入組件的名稱“Test”,在“Class name”文本框輸入類的名稱“Pssmodule”。組件是后面創建的名稱。輸入組件以后,生成器會自動輸入一個與組件名相同的類名,可以將類名改為其他描述性更強的名稱。
    (2) “Project Version”文本框
    在“Project Version”文本框中輸入組件的版本號。默認版本號為1.0,這里選擇默認版本號。
    (3) “Project Direction”文本框
    在“Project Direction”文本框中輸入工程目錄。工程目錄指定編譯和打包模型時,將工程和生成的文件放在那里,工程目錄根據當前目錄名和組件名自動創建為D:\Matlab\work\Test。
    (4) “Compile code in”方框
    在該方框中選擇生成C++代碼,因為C++組件可讀性更強,更便于修改。
2.2 管理M文件
    創建工程以后,主窗口中的“Project”、“Build”和“Component”等菜單選項變為可用,單擊“Add File”按鈕或依次選擇Project →Add File,在工程中添加測試好的M文件。
2.3 生成組件
    定義工程設置和添加M函數后,可以生成一個可配置的DLL文件和必要的VBA代碼。依次選擇菜單選項Build→Excel/COM Files或單擊“Build”按鈕,激活Matlab編譯器,將中間的源文件寫到Test \src,將進行配置的輸出文件寫到Test \distrb目錄。
2.4 生成插件
    前面生成的組件中有由Excel Builder直接生成的.BAS文件,不需經過修改就可以直接將組件集成到VBA中、創建圖形用戶界面然后保存為插件,生成的插件可以直接使用。這種方法中,函數根據輸入的參數,調用編譯得到的組件后將答案繪制出來,而且計算的數據不返回Excel環境中。這里的宏由公式函數實現,它能夠將標量形式的返回值返回到Excel環境。然而在使用Excel進行數據處理時,需要將所有的計算結果都顯示在電子表格中。在用Excel Builder創建Excel插件時,為了能夠克服這些不足,就必須修改.BAS文件。通過修改由Excel生成器生成的.BAS文件函數能夠返回矩陣并且填充Excel單元格。這種方法相對前一種方法來說工作量很少。
    對修改好的.BAS文件進行保存生成Excel的插件,然后通過調用宏指令mytest就可以得到分析的數據和勵磁系統幅頻、相頻特性圖。Excel界面如圖3所示。發電機勵磁系統無補償和有補償相頻特性曲線比較圖如圖4所示。從圖4可看出在投入PSS后勵磁系統的相頻特性得到了有效的改善。

 

 

    利用接口技術將Matlab程序集成到Excel插件中實現兩者之間的無縫連接,充分利用Excel數據載體和Matlab數據處理能力的優勢,將生成的插件打包和發布供Excel調用,使得工程數據分析處理更加方便快捷。
參考文獻
[1] 蘇金明,黃國明,劉波. Matlab與外部程序接口[M]. 北京:電子工業出版社,2004.
[2] The Math Works, Inc.Matlab Excel Builder User’s Guide[M]. Natick: The MathWorks, Inc,2002.
[3] 張威.Matlab應用程序集成與發布[M].西安:西安電子科技大學出版社,2005.
[4] 竺士章.發電機勵磁系統實驗[M].北京:中國電力出版社,2005. 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲风情亚aⅴ在线发布| 中国女人久久久| 欧美日韩久久不卡| 你懂的国产精品永久在线| 久久黄色网页| 午夜亚洲视频| 亚洲在线免费观看| 亚洲午夜在线| 亚洲一级影院| 亚洲视频欧美在线| 国产精品99久久久久久久久| 日韩一级欧洲| 亚洲美女少妇无套啪啪呻吟| 亚洲黑丝在线| 91久久精品国产91久久| 亚洲第一网站| 亚洲国产综合91精品麻豆| 久久99在线观看| 久久成人综合网| 欧美专区第一页| 久久福利影视| 久久精品一区| 亚洲激情午夜| 日韩视频免费在线| av成人免费在线观看| 一区二区欧美在线| 一本色道久久综合亚洲精品按摩| 亚洲精品少妇| 在线一区二区视频| 亚洲一区二区免费| 亚洲欧美另类在线观看| 午夜精品理论片| 欧美一区二区三区视频在线观看| 性做久久久久久| 久久精品72免费观看| 久久激情婷婷| 久久综合给合久久狠狠色 | 久久精品欧美日韩精品| 亚洲电影免费在线观看| 亚洲精品中文字幕在线观看| 一区二区冒白浆视频| 亚洲午夜电影| 欧美一级淫片播放口| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲欧美精品伊人久久| 久久国产精品黑丝| 麻豆精品在线播放| 欧美精品一区二区视频| 国产精品久久久久aaaa樱花 | 亚洲国产精品久久久久久女王| 亚洲人成精品久久久久| 在线亚洲欧美视频| 欧美在线观看视频在线| 亚洲国产综合91精品麻豆| 99在线精品观看| 欧美一区二区免费视频| 免费不卡中文字幕视频| 牛牛国产精品| 国产精品美女久久久久aⅴ国产馆| 国产亚洲欧美中文| 亚洲日本中文字幕| 亚洲在线电影| 亚洲精品在线免费| 欧美一级一区| 欧美黄色免费| 国产精品日韩一区二区| 在线成人国产| 中文国产成人精品久久一| 久久国产精品久久久久久电车| 一本色道久久综合狠狠躁的推荐| 欧美一区亚洲一区| 欧美激情片在线观看| 国产精品午夜春色av| 亚洲电影免费观看高清| 亚洲午夜精品17c| 91久久极品少妇xxxxⅹ软件| 午夜精品久久久久久| 欧美丰满高潮xxxx喷水动漫| 国产精品视频1区| 91久久久久久久久久久久久| 亚洲免费影视| 9人人澡人人爽人人精品| 久久成人国产精品| 欧美少妇一区| 亚洲成色999久久网站| 亚洲欧美三级伦理| 99视频精品免费观看| 久久亚洲精品一区二区| 欧美体内谢she精2性欧美| 尤物九九久久国产精品的特点| 日韩午夜在线观看视频| 亚洲国产福利在线| 欧美伊人久久久久久久久影院| 欧美区在线播放| 在线观看欧美亚洲| 欧美一级午夜免费电影| 亚洲欧美国产不卡| 欧美日韩色婷婷| 在线播放中文一区| 性色一区二区三区| 亚洲自拍啪啪| 欧美三级日本三级少妇99| 亚洲第一精品福利| 欧美在线一二三四区| 欧美一级欧美一级在线播放| 欧美日韩专区| 亚洲精品乱码| 亚洲另类在线一区| 麻豆9191精品国产| 国模叶桐国产精品一区| 西瓜成人精品人成网站| 午夜精品福利一区二区三区av| 欧美日韩在线不卡| 最新中文字幕亚洲| 亚洲人成在线播放网站岛国| 久久亚洲综合色一区二区三区| 国产麻豆成人精品| 在线亚洲伦理| 亚洲欧美国产日韩天堂区| 国产精品电影观看| 亚洲视频一区在线观看| 亚洲小视频在线观看| 欧美日韩精品伦理作品在线免费观看| 亚洲国产一区二区a毛片| 最新国产の精品合集bt伙计| 麻豆成人综合网| 亚洲国产精品国自产拍av秋霞| 亚洲第一色在线| 男人的天堂亚洲| 亚洲国产小视频在线观看| 亚洲精品少妇30p| 欧美激情一区二区三区在线视频| 亚洲第一区在线| 亚洲精品国产精品国自产在线 | 欧美精品网站| 亚洲免费av观看| 中文久久精品| 国产精品国产a级| 国产精品99久久久久久久久久久久| 一区二区三区四区蜜桃| 欧美体内谢she精2性欧美| 在线中文字幕一区| 亚洲欧美在线另类| 国产婷婷精品| 亚洲国产精品一区二区www在线| 蜜桃久久av一区| 亚洲福利一区| av不卡在线看| 国产精品毛片va一区二区三区| 午夜伦欧美伦电影理论片| 久久成人精品一区二区三区| 黄色成人av网站| 亚洲黄一区二区| 欧美日韩无遮挡| 午夜精品福利视频| 久久综合给合久久狠狠色| 91久久亚洲| 亚洲一区国产精品| 国产精品一区二区久久精品| 欧美制服丝袜第一页| 欧美成人精品福利| 99国产精品久久| 欧美怡红院视频一区二区三区| 好看的亚洲午夜视频在线| 一本久久知道综合久久| 国产欧美日韩亚洲| 亚洲人成网站在线观看播放| 欧美体内she精视频在线观看| 欧美综合77777色婷婷| 欧美日本不卡高清| 欧美一区二区三区四区在线观看地址 | 国产精品九九| 亚洲国产aⅴ天堂久久| 欧美视频观看一区| 亚洲高清中文字幕| 国产精品高潮粉嫩av| 亚洲国产激情| 国产精品毛片大码女人| 最新亚洲激情| 国产精品专区第二| 亚洲毛片视频| 国产自产精品| 亚洲女性裸体视频| 亚洲国产高清自拍| 香蕉久久一区二区不卡无毒影院 | 99国产精品久久久久久久成人热| 久久精品视频va| 一区二区三区www| 开心色5月久久精品| 亚洲一区在线免费观看| 欧美成人免费观看| 亚洲欧美日韩高清| 欧美成人精品不卡视频在线观看| 亚洲免费在线| 欧美福利视频网站| 久久狠狠亚洲综合| 欧美午夜影院| 亚洲激情网址| 狠狠色2019综合网| 亚洲小说春色综合另类电影|