欢迎来到天天文库
浏览记录
ID:40160747
大小:371.85 KB
页数:5页
时间:2019-07-24
《基于COM技术的MATLAB与AsPen+Plus接口及高级应用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、万方数据计算机技术蹴量兰i200in6,c‰33(i3。d):3。nd0。u。3帆4基于COM技术的MATLAB与AspenPlus接口及高级应用耿大钊,陈曦,邵之江,钱积新(浙江大学控制系,杭州310027)摘要:基于COM技术研制开发了MATLAB和AspenPlus的接口工具箱MAP,实现了在MATLAB环境下对AspenPlus中数据进行读写操作,并控制模拟的运行。MAP接口将MA7ILAB计算能力和AspenPlus的模拟能力结合在一起,扩展了AspenPlus的高级应用。通过精馏塔进料
2、软测量的示例,阐述了如何通过MAP接口来调用自主开发的禁忌搜索优化算法,解决由于AspenPlus中的优化算法的局限性所无法实现的模拟与优化问题。关键词:MAⅡAB;AspenPlus;COM技术;接口;禁忌搜索中图分类号:TQ021文献标识码:A文章编号:1000-3932(2006)03-0030-051引言AspenPlus作为美国AspenTech公司开发的大型通用流程模拟系统,已在全世界许多大型化工、石化企业及著名工程公司得到广泛应用。该软件通过准确地模拟流程工业工艺过程、快速的循环计算
3、、设计新工艺以及全系统的优化,可为用户解决工程设计和运行过程中的问题。同时,AspenPlus使用了最新的软件工程技术,具有MicrosoftWindows图形界面和交互式客户.服务器模拟结构。除了提供MicrosoftWindows图形操作界面,AspenPlus中的某些信息有时又需要与其它程序进行交互,如AspenPlus模拟的输入和结果需要被传递到其它设计程序或数据库中;一些高级用户还希望通过其它应用程序调用AspenPlus以扩展其功能,如AspenPlus的序贯模拟中其内置算法不能求解某
4、些问题时,需要使用其它环境下(如MATLAB)编写的先进优化算法。基于COM技术开发了MAT-LAB和AspenPlus接口工具箱(MAP)H。,在MAT—LAB平台环境下实现对AspenPlus数据的读写,对AspenPlus模拟程序的运行控制,可解决某些AspenPlus序贯模拟方法所不能求解的问题,将MATLAB的计算能力和AspenPlus的仿真能力充分结合到一起。2COM及AspenPlusActiveX自动化服务器COM,即微软组件对象模型,是所有ActiveX组件的基础,提供了使多个
5、应用程序或组件对象协同工作并相互通信的能力。组件对象就是完成特定功能的一个可执行的软件单位(EXE或DLL)。COM技术促进了软件重用和Windows应用程序间的基本接口。它是独立于平台的,分布式的,面向对象的系统,用于创建可交互的二进制软件组件。COM的一个重要特性就是它支持多接口,其中一些为标准接口,它们被定义为ActiveX的组成部分,而另一些为用户自定义的接口,由各个开发商定义。ActiveX是一种基于MicrosoftWindows操作系统的组件集成协议,通过ActiveX,开发者和终端
6、用户可以选择由不同的开发商发布的面向应用程序的ActiveX组件,并将它们无缝地集成到自己的应用程序中,从而完成特定的目的。ActiveX组件,可以分为以下六种类型:自动化服务器、自动化控制器、Ac—tiveX控件、COM对象、ActiveX文档、ActiveX容器。MAP接口工具箱的开发涉及了自动化服务器和自动化控制器这两种类型AetiveX组件。自动化服务器是一种可以由其它应用程序编程驱动的组件。自动化服务器至少包含一个或多个可由其它应用程序创建或连接的基于IDispatch的接口。一个自动化
7、服务器可以没有用户界面,也可以拥有,这取决于服务器的特性和功能。自动化服务器的运行方式分为三种:①进程内(in-process),即在控制器的运行空间内运行;②本地(10cal),即在服务器自身的进程空间内运行;③远地(remote),即在另一台机器的进程空间内运行。自动化控制器是那些使用和操纵自动化服务器的应用程序,它们不但可以在进程内访问自动化服收稿日期:2006..04—17(修改稿)基金项目:国家“973”计划项目(2002CB312200);浙江省自然科学基金资助项目(Y1041040)
8、万方数据第3期耿大钊等.基于COM技术的MATLAB与AspenPlus接口及高级应用·31.务器,而且可以以本地或远程方式访问自动化服务器。以COM技术为基础的AetiveX中的自动化技术在Windows应用程序中,如MicrosoftWord,Excel以及MATLAB等,使用尤为广泛。这些应用程序以自动化服务器对象的方式暴露出内部的数据和功能,其它的应用程序作为客户应用程序(或自动化控制器)来访问这些自动化对象。MATLAB中的COM支持,使MATLAB可与内含的控件或服务器
此文档下载收益归作者所有