网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 设计下载 > 电气工程与自动化类别 > 正文

VB和MATLAB混合编程技术研究

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

【编者按】:网学网电气工程与自动化类别为您提供VB和MATLAB混合编程技术研究参考,解决您在VB和MATLAB混合编程技术研究学习中工作中的难题,参考学习。

QQ交谈客服咨询,网学网竭诚为您服务,本站永久域名:myeducs.cn

 

4.1.2 OLE方法举例
下面的例子在服务器中执行MATLAB的version函数,并将输出返回到MATLAB客户程序中。
MATLAB作为客户程序时,使用下面的命令行。
h=actxserver(''MATLAB.application'');
server_version =h.Execute(‘version’)
server_version =
ans =
7.0.1.24704 (R14) Service Pack 1
   下面的例子用Visual Basic调用MATLAB进行多项式拟合计算和绘图。(多项式的拟合(Polynomial  Fitting)又称为曲线拟合(Curve  Fitting),其目的就是在众多的样本点中进行拟合,找出满足样本点分布的多项式。所用指令为polyfit,指令格式为:p=polyfit (x,y,n),其中x与y为样本点向量,n为所求多项式的阶数,p为求出的多项式。)首先在Visual Basic环境中设计窗体,如图3.1所示,窗体中各控件的属性设置如表4.1中所示:
图4.1 设计对话框
 
表4.1 各控件的属性设置

对象类型
Name属性
Caption属性或Text属性
其他属性
Form
frmVBOLE
Caption=”VB调用MATLAB-多项式拟合”
 
 
 
 
TextBox
Text1
Text=”8”
 
Text2
Text=”1”
 
Text3
Text=”1 2 3 4 5 6 7 8”
Mutiline=True
ScrolBars=2
Text4
Text=”12 24 43 57 70 91 110 200”
Mutiline=True
ScrolBars=2
Text5
Text=””
Mutiline=True
ScrolBars=2
 
 
 
Label
Label 1
数据组数
 
Label 2
X
 
Label 3
Y
 
Label 4
多项式系数和常数项
 
Label 5
多项式的阶数
 
 
CommandButton
Command
计算
 
Command
绘图
 
Command
退出
 

在窗体中输入下面的代码,利用VB前端界面中输入的数据参数,调用MATLAB进行计算和绘图。
Option Explicit
 
''将MATLAB实例对象定义为公共变量
Public objMATLAB As Object
''定义一个实现计算或绘图的过程
Private Sub ComputeorPlot(CorP As Boolean)
Dim intNum As Integer
Dim intLevel As Integer
Dim x(1 To 100) As Double
Dim y(1 To 100) As Double
Dim strModel As String
Dim i As Integer
Dim strCommand As String
 
intNum = Val(Text1.Text)
intLevel = Val(Text2.Text)
Open App.Path + "/datX" For Output As 1
 Print #1, Text3
Close 1
Open App.Path + "/datY" For Output As 1
Print #1, Text4
Close 1
 
Open App.Path + "/datX" For Input As 1
For i = 1 To intNum
   Input #1, x(i)
 Next i
Close 1
Open App.Path + "/datY" For Input As 1
For i = 1 To intNum
   Input #1, y(i)
 Next i
Close 1
''定义在MATLAB中要执行的命令
strCommand = "n=" & Str(intLevel) & ";x=["
For i = 1 To intNum
 strCommand = strCommand & Str(x(i)) & ""
Next i
 strCommand = strCommand & "];y=["
For i = 1 To intNum
strCommand = strCommand & Str(y(i)) & ""
Next i
strCommand = strCommand & "];"
If CorP Then
 strCommand = strCommand & "polyfit(x,y,n)"
Text5 = objMATLAB.execute(strCommand)
Else
 strCommand = strCommand & "plot(x,y)"
 objMATLAB.execute (strCommand)
End If
End Sub
本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT

本文选自计算机毕业设计http://myeducs.cn
论文文章部分只是部分简介,如需了解更多详情请咨询本站客服!QQ交谈QQ3710167

  • 下一篇资讯: PID控制器的设计和研究
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师