首页 vb与matlab接口

vb与matlab接口

举报
开通vip

vb与matlab接口VB和Matlab/Simulink的接口方法:Attribute VB_Name = "Form1" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Dim result As String Dim Matlab As Object Set Matlab = CreateObject("...

vb与matlab接口
VB和Matlab/Simulink的接口 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 :Attribute VB_Name = "Form1" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Dim result As String Dim Matlab As Object Set Matlab = CreateObject("Matlab.Application") Private Sub Command1_Click() Matlab.execute (save "Text1") End Sub Private Sub Command2_Click() Text2.Text = Matlab.execute("Test1") result = Matlab.execute("print-dbitmap") Imagel.Picture = Clipboard.GetData End Sub 基于COM组件的VB与MA TLAB接口编程 摘要:针对VB和MA TLAB接口编程问题,本文提出一种基于COM组件的VB与MA TLAB接口编程方法。并以具体的例子给出了这种方法的应用过程,实现了VB可视化界面和MATLAB信号分析及图形显示。 关键词:COM组件,VB,MA TLAB,接口编程 1引言 MA TLAB是Mathworks公司开发的科学计算环境,具有强大的计算绘图能力,并提供了大量的函数库,几乎涵盖了所有的工程计算领域,被誉为“演算纸”式的工程计算工具。但它的缺点是界面开发能力差,代码运行效率低。V isual Basic是Microsoft公司推出的一款面向对象的应用程序开发工具。它界面友好,易学易用,执行代码效率相对较快,很适合快速原型开发。 结合MATLAB和VB的特点可以开发一些中小型的专业软件。比如在工业生产线上的监视系统,实现对传感器信号的实时采集和分析。为了解决这样的问题,就可以以VB作为主体程序,以MA TLAB作为运算模块和绘图模块进行应用程序开发。现在的问题是如何解决VB和MA TLAB的接口编程。 2 VB与MATLAB接口编程方法 VB和MATLAB接口编程的方法已有很多。(1)ActiveX技术即Automation Server技术。在VB下通过ActiveX 自动化接口可将Matlab作为V isual Basic语言的一个ActiveX部件调用。但这种方法最大的缺点是不能脱离MA TLAB工作环境。(2)动态数据交换(DDE)技术。DDE(Dynamic Data Exchange)允许Microsoft Windows 应用程序通过交换数据实现彼此间的通信。因此将MA TLAB作为服务器端,VB作为客户端进行数据交换实现接口编程。同样这种方法也不能脱离MA TLAB工作环境。(3)可执行文件技术。也就是将MA TLAB 运算模块做成可执行文件形式,然后在VB中进行调用。但这种方法需要单独开发可执行文件。(4)利用MatrixVB。MatrixVB是MathWorks针对VB提供的一个Matlab库,它提供了许多函数,包括基本的数学运算和功能强大的信号处理、线性代数、串运算及图形图像处理功能等.。MatrixVB虽然能很容易实现VB 和MA TLAB接口编程,但需要额外安装MatrixVB,而且函数有限。5)COM组件技术。它是利用MA TLAB 的一个工具MA TLAB COM Builder将M函数文件转换成COM组件,然后在VB集成开发环境中直接调用该组件。生成的COM组件是进程内组件,是以DLL的形式存在的。 3基于COM组件的VB与MA TLAB接口编程的实现 3.1 系统要求 使用这种方法对系统的要求:(1)MA TLAB 6.5;(2)MA TLAB Compiler 3.0;(3)MATLAB COM Builder 1.0 ; (4)Microsoft V isual Basic 6.0;(5) Microsoft V isual C++ 6.0。 3.2接口编程实现步骤 (1)以函数的形式编写M文件。 (2)MA TALB工作环境中执行comtool,进入MA TLAB COM Builder界面。 (3)新建一个工程,填写各项文本框。 (4)载入M文件,编译即生成M文件所对应的COM组件。 (5)在VB编程环境中载入COM组件,并调用接口函数即可实现功能。 3.3 接口函数 (1)接口函数以M文件名为函数名。 (2)接口函数的第一个参数 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示用于输出的参数的个数。 (3)在接口函数的参数中,作为输入的参数必须是doulbe类型。而作为输出的参数必须是variant类型。 3.4 COM组件注册 由于COM组件和客户程序之间的作用是建立在客户/服务器模型之上,在使用COM组件时客户程序必须通过系统注册表信息才能找到COM组件的位置,以及COM组件的相关信息,所以在使用COM组件之前必须将COM组件在系统进行注册。其实在MATLAB COM Builder生成COM组件时已经在系统的注册表中进行了注册,但是如果将客户程序放到其他的系统中进行运行的话,就必须对COM组件在该系统中进行注册了。 利用Windows操作系统自带的regsrv32.exe就能很方便的对COM组件进行注册。只要在“开始-〉运行”的文本框中输入regsrv32 [Path]\dllName即可注册成功,例如F:\Seting.dll。注册成功后,客户程序就能使用了。否则将出现Active 控件不能创建对象的错误。 4应用举例 从磁盘中读取传感器采集到的数据。设计MA TLAB程序,从数据中提取特征值,并对数据作功率谱图。然后设计VB程序,将特征值和功率谱图在界面中显示。 4.1设计MA TLAB程序 function [piantai,qiaodu]=ComBld(data) N=length(data); piantai=skewness(data); %计算偏态指标 qiaodu=kurtosis(data); %计算峭度指标 m = fft(data); %对数据作FFT变换 Pxx = abs(m).^2/N; %对数据作功率谱 figure(1); set(gcf,'V isible','off'); %设figure(1)对象为不可见 plot(Pxx); %画功率谱图 print -dmeta; %对图形硬拷贝 close(gcf); %关闭figure(1)对象 4.2设计COM组件 在MA TLAB提示行中输入comtool,出现MA TLAB COM Builder界面,如图1所示。新建一个工程,出现New Project Settings对话框如图2所示。输入组件名Setting,同样加入类 Setting,并在编译选项中选择使用图形库句柄(Use Handler Graphics Library)。这样设置完成后,单击OK返回主界面。然后激活左栏的M-files文件夹,单击Add File载入ComBld.m文件。最后单击Build,编译ComBld.m生成COM组件。 4.3设计VB主程序 1)载入COM组件。在VB集成开发环境中选择Project->References菜单项。弹出References对话框后选择Setting组件如图3所示。 2)在通用声明栏中声明一个Setting组件:Private theMatlab As Seting.Seting。 3)在Form_Load()模块中为theMatlab指定一个Seting组件:Set theMatlab = New Seting.Seting,并读取文件数据。 4)在cmdTest_Click()模块中调用接口函数:Call theMatlab.combld(2, vntPt, vntQd, dblData),并从剪切板中获取图形:imgPxx.Picture = Clipboard.GetData()。 5)编译,执行。程序主界面如图4所示。 5结束语 本文讨论了基于COM组件的VB与MA TLAB接口编程的方法。通过应用实践证明,借助VB和MA TLAB 的接口编程,实现了信号的正确、快速分析和图形显示,而且比起M文件来代码的执行效率大大提高。该方法的主要特点有: (1) 应用程序完全脱离了MA TLAB工作环境。 (2) MA TLAB数学库和工具箱中包含的各种各样的函数,所以降低了编写算法的难度。 (3) 由于将算法程序做成了COM组件的形式,所以实现了算法的保密。
本文档为【vb与matlab接口】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_833902
暂无简介~
格式:doc
大小:20KB
软件:Word
页数:0
分类:互联网
上传时间:2019-08-30
浏览量:8