VB與Matlab的混合編程|加工中心刀庫(kù)
5.2 VB與Matlab的混合編程5.2.1 VB與Matlab混合編程的優(yōu)點(diǎn)Matlab是集數(shù)值分析、矩陣分析,、信號(hào)處理以及圖形處理的高性能的編程軟 件,,其計(jì)算以及圖形生成能力較強(qiáng),但是Matlab的可視化界面功能比較弱,,不 能及時(shí)的觀察由于數(shù)據(jù)的變化而導(dǎo)致的參數(shù)以及模型的變化,,只能根據(jù)數(shù)據(jù)的變 化被動(dòng)從新運(yùn)行程序求取參數(shù),然后根據(jù)參數(shù)求取模型,。VB具有良好的可視化界面,,且編程語(yǔ)言簡(jiǎn)單,程序集中化程度高,,易于初 學(xué)者學(xué)習(xí)使用,。VB雖然能夠時(shí)時(shí)的觀察由于數(shù)據(jù)的變化導(dǎo)致參數(shù)以及圖形的改 變,但是其計(jì)算能力以及圖形處理能力較弱,,對(duì)于某些復(fù)雜參數(shù)以及圖形,,VB處理起來(lái)比較費(fèi)事,甚至不能夠處理,。VB與Matlab的混合編程是將VB良好的可視化界面與Matlab強(qiáng)大的計(jì)算 能力以及圖形能力結(jié)合起來(lái),,利用兩者的優(yōu)勢(shì)來(lái)處理相關(guān)數(shù)據(jù)。這樣既避免了 Matlab界面能力弱的問(wèn)題,,又同時(shí)避免了 VB計(jì)算能力以及圖形處理能力弱的問(wèn) 題,。兩者的結(jié)合不僅適用于處理靜態(tài)數(shù)據(jù),顯示靜態(tài)模型,,還且適用于處理動(dòng)態(tài) 數(shù)據(jù),,時(shí)時(shí)更新動(dòng)態(tài)模型。5.2.2 VB與Matlab混合編程的方法VB調(diào)用Matlab的方法是通過(guò)ActiveX自動(dòng)化服務(wù)技術(shù)[64][65],。ActiveX是一 種開(kāi)放式的標(biāo)準(zhǔn),,是Microsoft以COM為基礎(chǔ)的技術(shù),它允許某個(gè)應(yīng)用程序或 著部件控制其他應(yīng)用程序或者部件的運(yùn)作,。Matlab支持ActiveX自動(dòng)化服務(wù)器終 端協(xié)議,,可通過(guò)ActiveX自動(dòng)化接口,,作為VB語(yǔ)言中的一個(gè)ActiveX部件調(diào)用。 ActiveX部件保留了 VB中的一些普通控件的屬性,、方法和事件,,使程序員在設(shè) 計(jì)程序時(shí)更加靈活。在Windows環(huán)境下,,通過(guò)以下源代碼可實(shí)現(xiàn)VB與Matlab的無(wú)縫連接:Dim Matlab As Object '定義 Matlab 對(duì)象Set matlab = CreateObject("Matlab.Application”)'設(shè)置 Matlab 為自動(dòng)化服務(wù)器 Matlab ActiveX對(duì)象創(chuàng)建完成后,,就可以在VB中對(duì)對(duì)象進(jìn)行操作了。5.2.1 VB與Matlab混合編程的流程 首先將樣本保存到text文本中,,并且命名為kkx_t,,在VB中通過(guò)控件以及 相應(yīng)的程序可以直接調(diào)用kkx_t.text中的樣本,并將樣本顯示在用戶界面中,;其 次同時(shí)用戶通過(guò)用戶界面中的控件將數(shù)據(jù)樣本以及函調(diào)命令通過(guò)ActiveX自動(dòng) 化接口直接傳送給Matlab,,Matlab根據(jù)傳遞過(guò)來(lái)的樣本以及函調(diào)命令直接調(diào)用 相應(yīng)的.M文件,執(zhí)行相應(yīng)的命令,;最后Matlab將運(yùn)行結(jié)果通過(guò)ActiveX傳遞給 VB,并在用戶界面中顯示,。本文采摘自“加工中心盤式刀庫(kù)可靠性試驗(yàn)方法研究”,因?yàn)榫庉嬂щy導(dǎo)致有些函數(shù),、表格,、圖片、內(nèi)容無(wú)法顯示,,有需要者可以在網(wǎng)絡(luò)中查找相關(guān)文章,!本文由海天精工整理發(fā)表文章均來(lái)自網(wǎng)絡(luò)僅供學(xué)習(xí)參考,轉(zhuǎn)載請(qǐng)注明,!