预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第25卷第4期计算技术与自动化Vol125,No14 2006年12月ComputingTechnologyandAutomationDec.2006 文章编号:1003-6199(2006)04-0241-04 VB与MATLAB集成技术在网络 控制系统仿真软件设计中的应用 李想1,张栾英1,谷俊杰1,朱宏立2,施燕美1 (1.华北电力大学控制科学与工程学院,河北保定071003;2.江苏省电信有限公司宿迁分公司,江苏宿迁223800) 摘要:介绍一种ActiveX部件为基础的Matlab与VB接口编程技术.分析了ActiveX部件的基本原 理以及在VB中如何调用Matlab的ActiveX部件。在VB环境下通过Winsock控件实现通信,结合VB的可 视化友好界面,实现了相关软件的开发和设计。 关键词:ActiveX;VB;Winsock控件;MATLAB;Client/Server 中图分类号:TP31文献标识码:A TheProgrammingTechniqueBasedonVBandMATLAB WorkedintheNCSEmulationalSoftwareDesigning LIXiang1,ZHANGLuan2ying1,GUJun2jie1,ZHUhong2li2,SHIYan2mei1 (1.SchoolofControlScienceandEngineering.NorthChinaElectricPowerUniversity,Baoding071003,China; 2.JiangSuTelecomCorporationSuQianBranch,SuQian223800,China) Abstract:IntroducedtheprogrammingtechniquebasedonVBandMatlab.ThebasicActiveXprinciplewasanalyzedandthe VBtotransfertheMatlabwassuccessfullyrealizedbytheActiveX.UsingWinsockcontrolsunderVBtorealizethecommunica2 tion,andwiththeVB’Sfriendlyvisualinterface,wecanexploitanddesigntherelatedsoftware. Keywords:activex;VB;winsockcontrols;matlab;client/server 2ActiveX自动化技术 1引言 ActiveX是Microsoft公司提供的一种用于模 在网络控制系统(NCS)中,对于网络中出现的块集成的协议,与DDE相似,允许一种控制程序和 各种问题都作了很多假设,如延时有上界或固定部件控制另一种服务器程序和部件。但它在运行 等,这种研究只是理论上的探讨,大多数的控制算时,不需要首先启动Matlab,功能更为强大。因此 法都是缺乏很好的试验平台,为了研究真实的网络VB程序可以作为控制程序来启动和控制Matlab。 对控制系统的影响,本文介绍了基于以太网的网络当前的新软件一般都支持AetiveX部件的嵌入, 控制系统软件平台的设计,利用VB强大的面向对Matlab语言也不例外,它可以通过AetiveX技术与 象的可视化图形界面和MATLAB的仿真功能,实其他任何应用程序作接口。由于VB支持AetiveX 现了这一软件设计。并通过VB中的Winsock应自动化控制端协议,Matlab支持ActiveX自动化服 用,把其中的一台计算机作为客户端(控制器),另务器端协议。因此,如果已经建立了一个VB应用 一台计算机作为服务器(被控对象),实现通信功程序和Matlab之间的ActiveX自动化连接,那么 能。在一个应用程序中就可以调用Matlab的命令了。 VB能通过不同的方式实现对自动化对象的使用 收稿日期:2006-06-06 作者简介:李想(1981—),男,江苏宿迁人,硕士生,研究方向:控制理论与计算机控制技术(E-mail:xiangli-121@163.com)。 242计算技术与自动化2006年12月 和操作。要创建一个ActiveX对象,只需将Cre2TCP方式的网络通信,并可实现双向数据交换。 ateObject函数返回的对象赋给一个对象变量,代311试验平台客户端(控制器计算机)的程序 码如下:DimMatlabAsObject设计 SetMatlab=CreateObject“(Matlab.Applica2(1)由于本程序把控制器计算机作为网络控制 tion”)系统中的一个节点,因此这部分的程序既作为控制 在VB应用程序中创建了Matlab的Act