五种VB与MATLAB混合编程接口的方法
基于VB与Matlab混合编程永磁同步电动机电磁设计方法
第l5卷第6期 2010年12月 哈尔滨理工大学学报 JOURNAL OF HARBIN UNIVERSITY OF SCIENCE AND TECHNOLOGY VoI_15 No.6 Dec.2010
基于VB与Matlab混合编程永磁同步电动机
电磁设计方法
梁艳萍, 刘超
(哈尔滨理工大学电气与电子工程学院,黑龙江哈尔滨150080)
摘要:为了缩短永磁同步电动机的研制周期,本文开发了基于VB与Matlab混合编程的永磁 同步电动机电磁设计软件.提出了VB与Maflab混合编程的实现方法及其接口技术,实现了输入数 据可视化,电机电磁计算快速化,输出数据表格化,工作性能图形化,软件维护便捷化,并以一台
15 kW异步起动永磁同步电动机为例,验证了所开发软件的可靠性及实用性. 关键词:永磁同步电动机;电磁设计;软件 中图分类号:TM35l 文献标志码:A 文章编号:1007—2683(2010)06—0025—05
Electromagnetic Design Method for Permanent Magnet Synchronous
Motor Based on Matlab and VB Mixed PrOgramming
LIANG Yah-ping,LIU Chao (School of Electrical and Electronic Engineering,Harbin University of Science and Technology,Harbin 150080,China)
Abstract:In order to shorten the development cycle of permanent magnet synchronous motor,the electromag- netic design software based on VB and Matlab mixed programming is developed in this paper.The interface and the
VC与Matlab混合编程
VC与Matlab混合编程
本⽂主要介绍VC与Matlab混合编程的两种⽅法,并详细介绍了VC向Matlab传递复杂数据:结构体的⽅法,有详细代码说明。
Matlab 主要⾯对科学计算、可视化以及交互式程序设计的⾼科技计算环境,但由于Matlab开发平台上开发的程序不能脱离Matlab运⾏环境,
因⽽在处理⼀些实际应⽤问题时显得灵活性不⾜,⽽VC++则在⼀定程度上能够弥补这⼀漏洞,因此,将⼆者结合共⽤,各献其长,可以为
科研⼯作和⼯程开发提供更为强⼤的技术⽀持。
Matlab作为控制系统设计的⼀种通⽤⼯具,它可以很⽅便的和VC进⾏连接。⼀般⽽⾔,Matlab与VC混合编程的实现⽅法有很多种,这⾥主
要介绍以下两种:
1. VC调⽤Matlab Engine的⽅式:
Matlab Engine是⼀组Matlab提供的接⼝函数,⽀持C/C++语⾔,Matlab Engine采⽤C/S(客户机/服务器)模式,Matlab作为后台服务器,
⽽C/C++程序作为前台客户机,向Matlab Engine传递执⾏命令和数据信息,从Matlab Engine接收执⾏结果。⽤户可以在前台应⽤程序中调
⽤这些接⼝函数,实现对Matlab Engine的控制。采⽤这种⽅法⼏乎能利⽤Matlab全部功能,但是需要在机器上安装Matlab软件,缺点是执
⾏效率较低。下⾯简单介绍下这种⽅式的实现步骤:
1.1 API接⼝介绍
先来介绍⼀组Matlab提供的引擎API接⼝:(仅作简单功能介绍,详细参数说明请参考Matlab帮助)
Engine* engOpen(const char* startcmd)启动Matlab引擎
int engClose(Engine* ep) 关闭Matlab引擎
int engEvalString(Engine* ep, const char* string)执⾏Matlab表达式
mxArray* engGetArray(Engine* ep, const char* name)获取⼀个变量数组的值
Matlab与程序设计语言VB接口的方法研究与实现
《自动化技术与应用》2006年第2 5卷第8期 i-I-算机应用 Computer applications
M at l a b与程序设计语言V B 接口的方法研究与实现
刘清,邢展。何苗
(武汉理工大学自动化学院,湖北武汉430070)
摘 要:Matlab是F1前应用最广泛的科学计算语言,同时也是运算和仿真的强大数学T具,但用它设计人机界面时有灵活性不够的局
限。Visual Basic(VB)是目前使用最广泛的可视化编程工具之一,程序设计灵活方便。基于此本文提出一种利片j Microsoft
Access数据咋实现VB与Matlab数据交换的方法,在程序设计中可充分利用两种软件的优势,可以火大缩短软件开发周期,为
含复杂数学计算的可祧化软件设计提供了一种可选的方案。
关键词:Matlab;Visual Basic{Access数据库
中图分类 ‘:TP3l2MA 文献标识码:B 义章编号:l003—7241(2006)08 0032 03
The l nterface between Matlab and VB
LIU Qing,XING Chen,HE Miao
(School ofAutomation,Wuhan Univemity ofTechnology,Wuhan 430070,China)
Abstract:A new method is proposed in this paper to realize data communication between VB and Matlab based on Microsoft
Access.It provides a good solution to develop the Visual numerical computing software.
Key words:Matlab;Visual Basic;Access
1引言
VB环境下调用nnToolKit神经网络工具包实现混合编程_光环大数据培训
光环大数据--大数据培训&人工智能培训
光环大数据 VB环境下调用nnToolKit神经网络工具包实现混合编程_光环大数据培训 光环大数据作为国内知名的人工智能培训的机构,帮助无数学员稳健、扎实的提升人工智能技术,来光环大数据学人工智能,高薪就业不是梦! 1. nnToolKit简介 nnToolKit 神经网络工具包是基于 MATLAB 神经网络工具箱自行开发的一组神经网络算法函数库,其中的函数在MATLAB环境下均可独立运行,并可打包成DLL组件,这些组件作为独立的COM对象,可以直接被Visual Basic、Visual C++ 、C++ Builder或其它支持COM的高级语言所引用。本工具包中包含的算法包括BP算法中的一些改进算法、模糊神经网络、小波神经网络、遗传算法优化神经网络权值改进算法等,根据需要,读者还可以对该工具包进行扩展,即扩充一些新的函数,以实现特殊的算法需求。 2. 编程实现 在VB环境下调用nnToolKit神经网络工具包,开发神经网络应用系统,主要分为以下几个步骤: (1)创建神经网络应用工程 打开Visual Basic开发环境,并创建一个新的工程,取名为NetProj。在NetProj工程中,创建两个模板文件CBpnFile.bas,CNetPara.bas和三个窗体表单文件frmAbout.frm,frmLmNet.frm,frmUnitary.frm,其中frmLmNet.frm为系统主界面,在空白的窗体中添加控件,如下图所示,并按表中的内容设置控件属性。 (2)在工程中引用nnToolKit库 光环大数据--大数据培训&人工智能培训
光环大数据 点击菜单"Project/References",弹出如下图所示的对话框: 如果完成了nnToolKit组件的安装,nnToolKit 1.0 Type Library将自动加到有效引用列表中,选中nnToolKit 1.0 Type Library,然后单击OK按钮,至此,该库就已加入到当前工程中。读者可以尝试在Visual Basic环境下,点击"View/Object Browser”,出现如下图所示的对话框。 在栏中选中nnToolKit,在右边的列表框中显示nnToolKit类的所有成员函数,选中某个成员函数,从下面的备注框可以发现类中成员函数的参数形式与.M文件里的参数形式是不同的,这个请读者注意。 为什么大家选择光环大数据! 大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 【报名方式、详情咨询】 光环大数据官方网站报名: 光环大数据--大数据培训&人工智能培训
基于VB与MATLAB接口的PID控制器实现
基于VB与MATLAB接口的PID控制器实现 ・45・
基于VB与MATLAB接口的PID控制器实现
周慕逊 ,王正初
(1.台州学院物理与电子工程学院,浙江台州317000;2.台州学院机械工程学院,浙江台州317000)
摘要:采用衰减曲线法对被控对象进行PID参数整定,以达到最佳的控制状态。进行增量式PID控制算
法的设计,并由MATLAB语言编程实现。采用VB进行人机界面的设计,以实现与MATLAB的接口编
程,该人机界面可以灵活调整参数。采用COM(component object mode1)技术来实现VB与MATLAB之
间的数据交换,将PID整定参数及被控对象参数通过COM接口传递到MATLAB,由MATLAB完成控制
算法的计算,并将计算结果返回至VB,由VB完成曲线的显示。
关键词:接口编程;PID算法;COM组件;人机界面 中图分类号:TP273 文献标识码:A 文章编号:1000—8829(2010)03—0045—03
Realization of PID Controller Based on VB and MATLAB Interfacing
ZHOU Mu—xun ,WANG Zheng—chu
(1.College of Physics&Electronic Engineering,Taizhou University,Taizhou 317000,China; 2.College of Mechanical Engineering,Taizhou University,Taizhou 317000,China)
Abstract:PID parameter tuning is performed based on attenuation curve to achieve the best eontrol state.The
increasing PID controlling algorithm is designed and implemented by MATLAB programming.The man—ma-
基于VB与MATLAB混合编程在钻井泵故障诊断中的应用
基于VB与MATLAB混合编程在钻井泵故障诊断中的应用
摘要:结合matlab强大的运算能力和vb的友好界面,详细介绍vb调用matlab生成的com组件在钻井泵故障诊断中的应用过程,提高编程的工作效率。其中钻井泵故障诊断数据处理使用小波分析方法,得出小波分析的能量比和波形分析图形,对钻井泵故障诊断数据处理提供了简便途径。
abstract: combined with the powerful operation ability
of matlab and friendly interface of vb, the paper introduces
in detail the application of com components generated by vb
call matlab, improves the efficiency of programming. the
drilling pump fault diagnosis data processing uses wavelet
analysis method, and draws the energy of wavelet analysis
and waveform analysis graph, providing a simple way to the
drilling pump fault diagnosis data processing.
关键词: matlab;vb;com组件;钻井泵故障诊断
key words: matlab;vb;com components;drilling pump fault
diagnosis
中图分类号:tp39 文献标识码:a 文章编号:1006-4311(2013)03-0192-02
0 引言
钻井泵是石油钻井循环系统中关键的设备,因结构复杂和工况恶劣,生产中常因异常故障导致施工停止,从而造成极大的经济损
浅谈VB程序中MATLAB方法的应用
◇高教论述◇ 科技嚣向导 2013年第06期
浅谈VB程序中MATLAB方法的应用
李元磊
(绥化学院信息工程学院黑龙江绥化 1 52061)
【摘 ]MATLAB方法具备客户/服务器功能,可以在VB程序中调用MATLAB函数,提升VB数值计算机可视化性能,实现VB可视化
及MATLAB数据显示。本文主要从MATLAB动态数据交换服务功能以及MATLAB的ActiveX自动化服务功能两方面阐述MATLAB方法 在VB程序中的应用。
【关键词】VB程序;MATLAB方法;动态数据交换;Ac ex自动化服务
0.前言
分析MATLAB应用程序接口之后可以得知其客户/服务器功能
在VB程序中调用MATLAB函数需要借助其动态数据交换服务功能 以及ActiveX自动化服务功能才能实现 m rrays与MATLAB工作空
间进行数据交换可以达到提升VB数值计算性能以及数据可视化的
目的。
1.MATLAB方法在VB程序中的应用
1.1 MATLAB动态数据交换服务功能
在Windows环境之中客户朋艮务器计算模式需要借助动态数据交
换方可实现,通过数据交换可以实现连接两个WindoWs应用程序的目 的 MATLAB具备动态数据交换服务功能,而VB可以向该功能提供
支持,所以.借助VB程序以及MATLAB的动态数据交换性能.可以完
成MATLAB在VB中的调用。 Visual Basic是由Micr0soft公司开发的在Windows95/98平台上
的一种十分强大和有生命Windows编程语言之一,具有易学易用、编
程简单、程序集成化程度高及界面可视化又能实现大多数Windows 编程目的.因而一经推出就风靡全球然而,VB提供的数学函数及其有
限.因而使之在数值计算和图形显得力不人心 Matlab是Math Work
公司开发的一种工程计算语言。用这个交互系统可以解决很多工程计 算问题,特别当涉及到矩阵和矢量形式的问题时,Matlab提供了强大的
基于MATLAB与VB混合编程的哈密大枣品质检测研究
201 1年8月 农机化研究 第8期
基于MATLAB与VB混合编程的哈密大枣品质检测研究
祁想想,马本学,屈年巍,肖文东
(石河子大学机械电气工程学院,新疆石河子832000)
摘要:基于Visual Basic 6.0设计了应用软件的用户界面,用SOLIOS图像采集卡与CCD摄像头连接采集数据, 构建了基于机器视觉的哈密大枣自动检测系统,并利用Matlab7.6图像处理工具箱,通过各种算法的比较和验 证,确定了最佳背景分割方法,找到有利于哈密大枣的特征提取、品质(缺陷、大小、颜色等)自动识别的方法,为 哈密大枣自动化检测生产奠定了基础。在图像采集中,调用图像采集卡驱动程序,实现图像的储存。图像处理 中,应用颜色空间转换、小波消噪、阈值分割和数学形态学处理等方法,快速准确识别其品质,利用VB的ActiveX 组件,在Visual Basic中直接调用Matlab图像处理程序,实现对哈密大枣品质的自动检测。 关键词:哈密大枣品质;自动检测;VB;Matlab;图像处理 中图分类号:TP391.41;S126 文献标识码:A 文章编号:1003—188X(2011)08一O156一O5
0 引言
哈密大枣作为我国新疆地区特色水果,目前国际
和国内研究的人不多。哈密大枣要走绿色食品和品
牌战略的路,必须加强其品质的检测。由于现在红枣
的检测仍采用原始的人工分级方法,容易受到检测人
员身体素质和精神状态影响,主观因素较大,效率低,
漏检率高,劳动强度大,因而影响红枣品质指标的评
价。例如,对于红枣果形、颜色、缺陷,仅仅依靠传统
人工方法很难做到精确评价。现代图像处理技术和
软件工程的快速发展,使哈密大枣品质自动检测成为
可能。同时,红枣品质分级是进行红枣自动化分级的
关键环节。随着计算机技术的迅速发展,计算机以及
视觉设备价格大幅度下降,速度成倍提高,为计算机 视觉技术的广泛应用创造了条件 J。
Matlab全称是Matrix Laboratory(矩阵实验室),它 是一种专门用于矩阵数值计算的软件,在矩阵运算上
MatrixVB控件在Matlab与VB交互式编程中的应用
第9卷第8期 2010年8月 软件导刊 SoftwareGuide Vo1.9 NO.8 Aug.2010
MatrixVB控件在Matlab与VB交互式编程中的应用
王智超,童金,艾杰 (华中师范大学信息技术系,湖北武汉430079) 摘要:通过运用Matlab和VB,讨论了Matlab与VB交互编程的几种方法,并着重讨论MatrixVB控件在Visual Basic中的调用及其在相关运算中的使用,提出这种编程方式的可行性和优点,并给出实例。 关键词:VB;MatrixVB;交互编程;Matlab 中图分类号:TP312 文献标识码:A 文章编号:1672—7800(2010)08—0055—03
0引言 Microsoft Visual Basic是由美国微软公司于1991年开发 的一种可视化的、面向对象和采用事件驱动方式的结构化高级 程序设计语言,可用于开发Windows环境下的各类应用程序 MatrixVB是MathWorks公司开发的方便而功能强大的 COM(The Component Object Mode1)库。它提供600多个函 数。其中包括基本的数学运算和信号处理、线性代数、串运算 及图形图像处理功能等,为VB提供了功能扩展。 本文分析了Matlab与VB混合编程的几种方法,并详细介 绍了VB引用MMtrix调用控件MatrixVB的方法。并给出相应 的程序实例。 1 Matlab与Ⅶ交互的几种方法 1.1借助ActiveX部件 Microsoft把所有的以COM为基础的技术统称为ActiveX 技术。.自动化是大多数ActiveX技术的基础,它可使解释性的 宏语言(比如VB)能够在不了解应用程序实现细节的情况下控 制自动化对象。Matlab实现了ActiveX自动化服务支持。在VB 下通过ActiveX自动化接口可将Matlab作为Visual Basic语言 的一个ActiveX部件调用。 Matlab ActiveX自动化服务的功能主要包括在Matlab工 作空间执行Matlab命令,以及直接从工作空间存取矩阵等。 ActiveX的特点就是使不同的软件对象可以跨进程、跨平台并 能在网络上进行交互 Microsoft的ActiveX技术使VB在不了解应用程序实现的 情况下控制自动化对象。Matlab实现了ActiveX服务支持.在 VB中通过调用Matlab引擎(Engine)利用ActiveX通道与0b. ject.Execute可直接使用Matlab的函数库和图形库。 1.2借助DDE技术 DDE(Dynamic Data Exchange)允许Microsoft Windows应用 程序通过交换数据实现彼此间的通信。应用程序间彼此通信要 先建立一个DDE会话,对会话进行初始化的应用程序称为客 户端(Client),对Client端作出响应的应用程序称为服务器 Server)。 其中,DDE功能函数既可以由应用程序提供,也可以由 Matlab引擎库提供。初始化会话时,客户端应用程序必须指定 两个参数service name(服务器应用程序的名称)和topic(会话 主题)。 1.3通过M文件 Matlab产生的M文件不能直接在VB中调用,可利用mec 将M文件直接编译成.EXE文件,然后在VB中声明下面3个 API函数,最后使用Shell命令即可实现VB与Matlab的无缝 集成。 (1)用mcc生成独立的外部应用程序。可使用如下两种命 令: mcc—Pfile.m或mee—mfile.m (2)在VB中声明调用的3个API函数: @Declare Function WaitForSingleObject Lib”kernel32”fBy— Val hHandle As Long,ByVal dwMilliseconds As Long)As Long  ̄Declare Function CloseHandle Lib”kernel32”rByVal hOb. ject As Long)As Long )Declare Function OpenProcess Lib”keme132”(ByVal dwDe siredAccess As Long,ByVal bInheritHandle As Long,ByVal dw- ProcessId As Long)As Long 作者简介:王智超(1989-),男,湖北天门人,华中师范大学信息技术系学生,研究方向为计算机应用;童金(1988一),男,湖北黄冈人,华中师范大学 信息技术系学生,研究方向为计算机应用;艾杰(1990一),男,湖北荆州人,华中师范大学信息技术系学生,研究方向为计算机应用。
基于VB与MATLAB混合编程在钻井泵故障诊断中的应用 2
价值工程
0引言
钻井泵是石油钻井循环系统中关键的设备,因结构复杂和工况恶劣,生产中常因异常故障导致施工停止,从而
造成极大的经济损失。钻井泵故障诊断一般分为状态信号
采集、故障特征提取、故障识别和状态预测,其中故障特征
提取一般掺杂其它因素的影响,因此,需要对采集的信号
进行必要的处理,以突出故障特征。———————————————————————收稿日期:2012年11月27日。作者简介:钟功祥(1962-),男,四川成都人,硕士学位,教授,主要从事石油机械工程科研和教学工作。基于VB与MATLAB混合编程在钻井泵故障
诊断中的应用
ApplicationofHybridProgrammingBasedonVBandMATLABinDrillingPumpFaultDiagnosis
钟功祥①ZHONGGong-xiang;王仕强①WANGShi-qiang;吕治忠①LVZhi-zhong;
周耀胜①ZHOUYao-sheng;邓勇刚②DENGYong-gang
(①西南石油大学机电工程学院,成都610500;②川庆钻探安全环保质量监督检测研究院,广汉618300)(①SchoolofMechatronicEngineering,SWPU,Chengdu610500,China;②ChuanqingDrillingEngineeringCo.SecurityEnvironmentalProtectionQualitySupervisionandInspectionInstitute,Guanghan618300,China)
摘要:结合MATLAB强大的运算能力和VB的友好界面,详细介绍VB调用MATLAB生成的COM组件在钻井泵故障诊断中的应用过程,提高编程的工作效率。其中钻井泵故障诊断数据处理使用小波分析方法,得出小波分析的能量比和波形分析图形,对钻井泵故障诊断数据处理提供了简便途径。Abstract:CombinedwiththepowerfuloperationabilityofMATLABandfriendlyinterfaceofVB,thepaperintroducesindetailtheapplicationofCOMcomponentsgeneratedbyVBcallMATLAB,improvestheefficiencyofprogramming.Thedrillingpumpfaultdiagnosisdataprocessinguseswaveletanalysismethod,anddrawstheenergyofwaveletanalysisandwaveformanalysisgraph,providingasimplewaytothedrillingpumpfaultdiagnosisdataprocessing.关键词:MATLAB;VB;COM组件;钻井泵故障诊断Keywords:MATLAB;VB;COMcomponents;drillingpumpfaultdiagnosis中图分类号:TP39文献标识码:A文章编号:1006-4311(2013)03-0192-02
