[導(dǎo)讀]VB調(diào)用Matlab在WEDM仿真系統(tǒng)中的應(yīng)用
基于BP神經(jīng)網(wǎng)絡(luò)的電火花線切割(WEDM)工藝仿真系統(tǒng)需要具有工藝數(shù)據(jù)庫管理、工藝效果預(yù)測(cè)、加工參數(shù)優(yōu)化等設(shè)計(jì)功能。借助Matlab的神經(jīng)網(wǎng)絡(luò)工具箱,可以建立良好的工藝效果預(yù)測(cè)模型和參數(shù)優(yōu)化模型,這正是工藝仿真軟件最主要的功能要求。VB是Windows操作系統(tǒng)下優(yōu)秀的可視化編程工具軟件,在用戶界面設(shè)計(jì)和快速開發(fā)等方面具有獨(dú)特的優(yōu)勢(shì)。同時(shí),Matlab仿真軟件以其強(qiáng)大的科學(xué)計(jì)算功能和開放式開發(fā)思想使其成為當(dāng)前最為流行的仿真計(jì)算工具。綜合兩種開發(fā)環(huán)境各自的優(yōu)勢(shì),可采用VB與Matlab混合編程的方法實(shí)現(xiàn)工藝仿真軟件的編程開發(fā)。
在VB開發(fā)環(huán)境下制定前臺(tái)用戶界面,利用Matlab強(qiáng)大的計(jì)算功能實(shí)現(xiàn)后臺(tái)模型的實(shí)時(shí)仿真。為了實(shí)現(xiàn)前臺(tái)界面與后臺(tái)仿真環(huán)境間的數(shù)據(jù)傳遞,應(yīng)用ActiveX自動(dòng)化技術(shù)進(jìn)行VB與Matlab之間的接口設(shè)計(jì),通過建立在VB應(yīng)用程序和Matlab仿真環(huán)境之間的ActiveX自動(dòng)化連接,實(shí)現(xiàn)了在VB環(huán)境下對(duì)Matlab仿真命令的調(diào)用,并在VB友好的用戶界面中實(shí)時(shí)顯示仿真結(jié)果。
1 VB與Matlab間的接口分析
1.1 VB與Matlab接口形式
為了能夠充分利用Matlab系統(tǒng)提供的豐富函數(shù)庫,Matlab本身提供了應(yīng)用程序接口API(Matlab application program interface)。因此,VB與Matlab接口設(shè)計(jì)有多種實(shí)現(xiàn)方式。
(1)借用C++與Matlab的接口,將Matlab的程序文件(*.M)編譯為動(dòng)態(tài)鏈接庫(*.DLL),VB在代碼中調(diào)用生成DLL中的函數(shù),以實(shí)現(xiàn)算法,便于用戶脫離Matlab環(huán)境使用。由于算法部分采用C++語句,運(yùn)行速度較快,可應(yīng)用于實(shí)時(shí)運(yùn)算。但是這種方法對(duì)開發(fā)者在設(shè)置和編程上都有較高的要求。
(2)通過使用嵌入VB中矩陣函數(shù)庫MatrixVB的方法實(shí)現(xiàn)接口。MatrixVB是第三方插件,利用與Matlab相似的函數(shù)、語法嵌入到VB中,可以像使用VB的函數(shù)、命令一樣使用Matlab函數(shù)。這種方法的語法和函數(shù)使用比較簡單,編程效率很高,幾乎完全可以融入VB語言,特別是對(duì)圖形的處理非常方便,彌補(bǔ)了其他方法在圖形處理上的弱點(diǎn)。但由于它仍然采用解釋執(zhí)行,執(zhí)行效率較低,因此實(shí)時(shí)運(yùn)算難以實(shí)現(xiàn),特別對(duì)于Matlab各類工具箱的調(diào)用尤為困難。
(3)在Visual Basic中通過調(diào)用Matlab的引擎接口,使用Windows的ActiveX技術(shù)與Matlab進(jìn)行數(shù)據(jù)交互。通過Object.Execute語句在程序中直接使用Matlab提供的函數(shù)庫和圖形庫。
1.2 ActiveX自動(dòng)化技術(shù)
ActiveX是一種支持組件集成MicroSoft Windows協(xié)議的自動(dòng)化技術(shù),通過ActiveX技術(shù)可以將不同環(huán)境下開發(fā)的組件集成到一個(gè)應(yīng)用程序中;ActiveX同時(shí)又是一種面向?qū)ο蠹夹g(shù),屬于組件對(duì)象模型(COM)的子類。COM為所有的ActiveX對(duì)象定義了對(duì)象模型,每個(gè)ActiveX對(duì)象支持一定的接口,即支持不同的方法、屬性和事件。利用這些方法執(zhí)行相應(yīng)的動(dòng)作,幫助客戶端實(shí)現(xiàn)一定的功能。Matlab支持兩種類型的ActiveX技術(shù):ActiveX控制容器和ActiveX Automation。ActiveX控制容器可以將不同的ActiveX控件集成在一個(gè)應(yīng)用中;而ActiveX Automation是一種允許一個(gè)應(yīng)用程序(客戶端)去控制另一個(gè)應(yīng)用程序(服務(wù)器端)的協(xié)議。在本文中,Matlab是服務(wù)器端,VB是客戶端,通過Automation,客戶端可以執(zhí)行Matlab命令,并與Matlab的工作空間進(jìn)行數(shù)據(jù)交換,以達(dá)到調(diào)用Matlab來訓(xùn)練神經(jīng)網(wǎng)絡(luò)的目的。
2 ActiveX技術(shù)在接口設(shè)計(jì)中的應(yīng)用
Matlab ActiveX自動(dòng)化服務(wù)的功能主要包括在Matlab工作空間執(zhí)行Matlab命令,直接對(duì)工作空間進(jìn)行存取矩陣操作等。
Matlab提供了一個(gè)自動(dòng)化對(duì)象,其外部名稱為Matlab.Application,支持COM技術(shù)。外部程序(如VB)通過COM技術(shù)提供的函數(shù),得到自動(dòng)化服務(wù)器對(duì)象支持的指針,并通過調(diào)用接口函數(shù)控制和使用自動(dòng)化對(duì)象。在VB應(yīng)用程序中,創(chuàng)建了Matlab的ActiveX對(duì)象后,就可以使用這個(gè)對(duì)象所包含的各種方法來實(shí)現(xiàn)對(duì)Matlab的調(diào)用。Matlab.Application對(duì)象含有3種方法,分別是Execute,GetFullatrix和PutFullMatrix。
(1)BSTR Execute([in]BSTR Command):BSTR表示寬字符串類型,它與VB存儲(chǔ)字符串所采用的數(shù)據(jù)格式相同。該方法接收字符串命令并在Matlab中執(zhí)行,將結(jié)果以字符串形式返回。
(2)void GetFullMatrix([in]BSTR Name[in]BSTR Workspace,[in,out]SAFEARRAY(douMe)*pr,[in,out]SAFEARRAY(double)*pi):GetFullMatrix方法從指定的工作空間檢索一個(gè)完整的實(shí)型或虛型mxArray,其實(shí)部和虛部被分別存放到2個(gè)單獨(dú)的Double型數(shù)組中??梢岳肎etFullMatrix方法將Matlab中的一個(gè)矩陣變量傳送到VB程序中的一個(gè)一維或二維數(shù)組中。其中,Name指定了Matlab中的矩陣變量名;Workspace指定了該矩陣所在的Matlab工作區(qū);pr指VB程序中的實(shí)部數(shù)組;pi指VB程序中的虛部數(shù)組。
(3)void PutFullMatrix([in]BSTR Name,[in]BSTRWorkspaee,[in,out]SAFEARRAY(double)*pr,[in,out]SAFEARRAY(double)*pi):PutFullMatrix方法將一個(gè)mxArray放入指定的工作空間。各參數(shù)的含義及調(diào)用方法與GetFullMatrix方法類似。[!--empirenews.page--]
3 VB調(diào)用Matlab在WEDM仿真軟件開發(fā)中的應(yīng)用
基于BP神經(jīng)網(wǎng)絡(luò)的電火花線切割(WEDM)工藝仿真系統(tǒng)主要用于實(shí)現(xiàn)工藝數(shù)據(jù)庫的管理、工藝效果的預(yù)測(cè)、加工參數(shù)的優(yōu)化等功能。在VB開發(fā)環(huán)境中調(diào)用Matlab的神經(jīng)網(wǎng)絡(luò)工具箱,是為了建立工藝效果的預(yù)測(cè)模型和加工參數(shù)優(yōu)化模型,這是仿真系統(tǒng)的主要功能。建模部分的核心代碼如下:
該部分程序的作用是VB把用戶輸入的參數(shù)傳到Matlab空間,在Matlab的空間中利用神經(jīng)網(wǎng)絡(luò)工具箱訓(xùn)練網(wǎng)絡(luò),將結(jié)果輸出。進(jìn)而實(shí)現(xiàn)仿真系統(tǒng)幾個(gè)模型的建模。array 1是訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí)的樣本輸入數(shù)據(jù),包括工件厚度T(單位:mm)、脈沖寬度tON(單位:s)、脈沖間隔tOFF(單位:s)、峰值電流IP(單位:A)、間隙電壓VS(單位:V);array 2是樣本輸出數(shù)據(jù),包括切割速度vw(單位:mm2/min)表面粗糙度Ra(單位:μm)。圖1為線切割工藝仿真系統(tǒng)主控界面,包括加工參數(shù)數(shù)據(jù)庫、系統(tǒng)建模、工藝效果的預(yù)測(cè)及參數(shù)優(yōu)化等部分。建立模型時(shí),首先利用數(shù)據(jù)庫中的參數(shù)訓(xùn)練模型,模型訓(xùn)練完成后,便可以對(duì)不同加工參數(shù)所對(duì)應(yīng)的加工效果進(jìn)行預(yù)測(cè),并對(duì)給定材料、厚度條件下的加工參數(shù)進(jìn)行優(yōu)化,給出優(yōu)化結(jié)果。
建模所需的樣本數(shù)據(jù)如表1所示,網(wǎng)絡(luò)訓(xùn)練的結(jié)果如圖2所示。
為驗(yàn)證模型的正確性,用沒有參與神經(jīng)網(wǎng)絡(luò)訓(xùn)練的驗(yàn)證數(shù)據(jù)檢驗(yàn)?zāi)P?,結(jié)果如表2所示。從仿真結(jié)果可以看出,利用VB調(diào)用Matlab混合編程建立的預(yù)測(cè)模型可以反映機(jī)床的工藝規(guī)律,建模是成功的。可以應(yīng)用于實(shí)際生產(chǎn)中。
4 結(jié) 語
VB與Matlab混合編程簡單方便,效率高,能夠應(yīng)用于WEDM仿真系統(tǒng)中,以實(shí)現(xiàn)系統(tǒng)功能。缺點(diǎn)是要依托于Matlab平臺(tái),執(zhí)行速度慢,靈活性較差。
欲知詳情,請(qǐng)下載word文檔
下載文檔
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
摘要:隨著社會(huì)不斷發(fā)展,傳統(tǒng)化石能源已經(jīng)無法滿足日益增長的能源需求,基于這一情況,光伏電源的使用逐漸變多。而高滲透率的光伏電源出力大于負(fù)荷的消耗時(shí),配電網(wǎng)的電壓波動(dòng)影響會(huì)變大,網(wǎng)絡(luò)發(fā)生故障而造成部分負(fù)荷失電停止運(yùn)行后也會(huì)...
關(guān)鍵字:
光伏電源
電壓分布
MATLAB
dMed|Clinipace正式宣布即日起更名為Caidya(康締亞)。dMed(締脈)與Clinipace于2021年4月合并,此次公司品牌變更宣告了dMed和Clinipace原有業(yè)務(wù)已成功整合。作為整合后統(tǒng)一的品牌...
關(guān)鍵字:
NI
IP
DM
CE
北京2022年9月27日 /美通社/ -- 近期,為助力中小企業(yè)創(chuàng)新發(fā)展,承接"828 B2B企業(yè)節(jié)"成就好生意,成為好企業(yè)的愿景。軟通動(dòng)力著力打造了"917轉(zhuǎn)型"企動(dòng)日主題峰會(huì),會(huì)上發(fā)布了一系列新品和解決方案,面向多個(gè)...
關(guān)鍵字:
DM
數(shù)字化
大數(shù)據(jù)
模型
(全球TMT2022年9月23日訊)近日,Altair與高級(jí)數(shù)據(jù)分析與機(jī)器學(xué)習(xí) (ML) 軟件領(lǐng)域的領(lǐng)跑企業(yè)之一 RapidMiner 簽署了最終收購協(xié)議。此次收購大大強(qiáng)化了 Altair 的端到端數(shù)據(jù)分析 (Data...
關(guān)鍵字:
數(shù)據(jù)分析
產(chǎn)品系列
RAPID
DM
關(guān)鍵技術(shù)擴(kuò)大了數(shù)據(jù)分析業(yè)務(wù)線的范圍和規(guī)模 上海2022年9月23日 /美通社/ -- 近日, Altair(納斯達(dá)克股票代碼:ALTR)與高級(jí)數(shù)據(jù)分析與機(jī)器學(xué)習(xí) (ML) 軟件領(lǐng)域的領(lǐng)跑企業(yè)之一 RapidMiner...
關(guān)鍵字:
數(shù)據(jù)分析
產(chǎn)品系列
RAPID
DM
42Gears客戶可以繼續(xù)使用MDM套件管理升級(jí)過的Android設(shè)備 印度班加羅爾, 2022年9月6日 /美通社/ -- 隨著谷歌Android 13的最新發(fā)布,42G...
關(guān)鍵字:
Android
RS
GE
DM
截至2022年6月30日止中期業(yè)績亮點(diǎn):收入達(dá)人民幣1,108.7百萬元,同比增幅約為8.0%毛利達(dá)人民幣345.0百萬元,同比增幅約為9.1% 香港2022年8月29日 /美通社/ -- 2022年8月29日,維亞生...
關(guān)鍵字:
CD
DM
AC
OTA
蘇州2022年8月22日 /美通社/ -- 2022年8月19日,第二屆中國基因與細(xì)胞治療青藜風(fēng)云論壇(CGCT 2022)在蘇州中茵皇冠假日酒店如火如荼舉行。會(huì)上,上海序禎達(dá)生物科技有限公司(以下簡稱"序禎達(dá)...
關(guān)鍵字:
DM
CD
創(chuàng)始人
CE
(全球TMT2022年8月18日訊)互聯(lián)網(wǎng)社區(qū)創(chuàng)建者 –網(wǎng)龍網(wǎng)絡(luò)控股有限公司(“網(wǎng)龍”或“本公司”)宣布,其子公司Edmodo已決定自2022年9月22日起關(guān)閉其免費(fèi)版B2C平臺(tái)(Edmodo.com),本公司將集中資...
關(guān)鍵字:
DM
COM
互聯(lián)網(wǎng)
網(wǎng)絡(luò)
加速小分子新藥的早期研發(fā)進(jìn)程 上海2022年8月8日 /美通社/ -- 保諾-桑迪亞,一家由安宏資本投資的、業(yè)內(nèi)領(lǐng)先的藥物發(fā)現(xiàn)、開發(fā)和商業(yè)服務(wù)CRDMO公司,和小分子藥物研發(fā)DEL技術(shù)先驅(qū)X-Chem公司共同...
關(guān)鍵字:
DNA
編碼
DM
BSP
摘要:首先研究了地鐵車輛牽引變頻器的電路結(jié)構(gòu)、控制策略、分段同步控制等技術(shù),隨后分析了SPEM分段同步控制的優(yōu)點(diǎn),并在MATLAB中建立模型,驗(yàn)證了分段同步控制的優(yōu)越性。最后利用軟件的仿真功能建立牽引變頻器的計(jì)算機(jī)仿真模...
關(guān)鍵字:
牽引變頻器
分段同步控制
MATLAB
荷蘭海牙2022年7月20日 /美通社/ -- 全球領(lǐng)先的支付基礎(chǔ)設(shè)施公司TerraPay在加強(qiáng)和統(tǒng)一全球支付生態(tài)系統(tǒng)的旅程中與SendMN NBFI進(jìn)行了合作。S...
關(guān)鍵字:
PAY
TE
SE
DM
MATLAB是“Matrix Laboratory”的縮寫,正如其命名所示,最初使命僅僅是一個(gè)交互式的矩陣計(jì)算器。1981年Dr. Cleve Moler基于興趣愛好和教學(xué)需求將其設(shè)計(jì)出來,最初包含的71個(gè)文字和函數(shù)可供...
關(guān)鍵字:
AI
電氣化
MATLAB
Mathworks
北京2022年7月8日 /美通社/ -- 近日, 國際領(lǐng)先標(biāo)準(zhǔn)、測(cè)試及認(rèn)證機(jī)構(gòu)BSI 正式授予北京市醫(yī)療機(jī)器人產(chǎn)業(yè)創(chuàng)新中心ISO/IEC 27001:2013信息安全管理體系和ISO 9001:201...
關(guān)鍵字:
ISO
醫(yī)療機(jī)器人
DM
CD
北京2022年6月28日 /美通社/ -- 6月28日,IDC公布數(shù)字供應(yīng)鏈領(lǐng)導(dǎo)者(IDC Supply Chain Technology Leaders)評(píng)選結(jié)果,浪潮信息的JDM模式下數(shù)字化供應(yīng)鏈項(xiàng)目獲得供...
關(guān)鍵字:
IDC
供應(yīng)鏈
DM
智能化
- 藥明生物新增1700萬支預(yù)充針灌裝年產(chǎn)能,為全球合作伙伴提供高效、高質(zhì)量的臨床和商業(yè)化生產(chǎn)服務(wù)- 藥明生物已經(jīng)建成全球領(lǐng)先的無菌生物制劑CDMO服務(wù)網(wǎng)絡(luò),包括九個(gè)位于中國和德國的西林瓶和預(yù)充針制劑生產(chǎn)廠- 該廠應(yīng)用先...
關(guān)鍵字:
DM
IO
LOGIC
COM
蘇州2022年6月2日 /美通社/ -- 2022年6月1日,東曜藥業(yè)(股票代碼:1875.HK)宣布公司與維梧蘇州基金及晟德大藥廠訂立股份認(rèn)購協(xié)議。根據(jù)協(xié)議,維梧蘇州基金與晟德大藥廠將分別認(rèn)購東曜藥業(yè)配售股份...
關(guān)鍵字:
ADC
DM
CD
BSP
摘要:首先研究了地鐵車輛牽引變頻器的電路結(jié)構(gòu)、控制策略、分段同步控制等技術(shù),隨后分析了SPWM分段同步控制的優(yōu)點(diǎn),并在MATLAB中建立模型,驗(yàn)證了分段同步控制的優(yōu)越性。最后利用軟件的仿真功能建立牽引變頻器的計(jì)算機(jī)仿真模...
關(guān)鍵字:
牽引變頻器
分段同步控制
MATLAB
摘要:高壓直流輸電(HighVoltageDirectCurrent,HVDC)是一種利用電力電子技術(shù)介入電能輸送的技術(shù)。隨著HVDC理論的快速發(fā)展,對(duì)其的仿真研究也成為學(xué)術(shù)熱點(diǎn)?,F(xiàn)分析了國際大電網(wǎng)會(huì)議(CIGRE)提出...
關(guān)鍵字:
高壓直流輸電
MATLAB
十二脈沖橋
非對(duì)稱數(shù)字用戶線路(ADSL,Asymmetric Digital Subscriber Line)是數(shù)字用戶線路(xDSL,Digital Subscriber Line)服務(wù)中最流行的一種。
關(guān)鍵字:
ADSL
DM
MT
LITE