2 国内外研究现状
MATLAB于70年代在美国被开发调用,在以后的数年里,MATLAB在多所大学里被作为教学软件使用。在国外,尤其是在美国,各著名大学在80年代末就已把MATLAB列为电气工程类专业的必修课,它是理论分析和实验研究中必须掌握的技术工具.MATLAB 之所以如此广为流传使用,因为MATLAB已逐渐发展成为适合多学科,多种工作平台的功能强大的大型软件。在欧美等高校,MATLAB已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种具体问题。
在我国,MATLAB也已被广泛应用于各种工程领域和教学领域.书市上已有越来越多关于MATLAB与各门学科相结合的参考书,如MATLAB与数学相结合,MATLAB应用于化学实验数据处理,MATLAB电子仿真与应用等等.各个学科都在充分运用这个强大的软件实现各领域问题的仿真实验。由于MATLAB提供了FORTRAN与C语言的接口,很多学者通过研究实现了MATLAB与各种软硬件的通信。尤其是与VB,VC,DSP,EDA等软硬件的使用,光是与VB的结合就有以下6种方式:[6]
Matlab引擎采用C/S方式,通过Windows的ActiveX通道和Matlab相结合。
Mideva是Mathtools公司推出的一种Matlab集成编译开发平台,提供对.m文件的解释执行和开发环境支持。经过简单设置,可以把.m文件转换成C/C++代码,添加到MSVC,C++ Builder等的工程中。
利用Mideva直接生成EXE文件,在VB中通过Shell调用。
借用C++编译器把.m文件转换成DLL,CB可以直接调用。
在Matlab6.0以后,可通过Add-in实现混合编程。
MatrixVB是一个包含Matlab函数功能的COM库,可以在VB中直接调用。
但是各个学者只是研究了它与软件实现通信的各种方式,没有将其运用于具体的实验系统中去.而本文的正是基于这些通信方式,将VB与MATLAB有机结合,设计和开发了通信原理课程仿真实验系统。
3 VB和MATLAB的特点和在软件开发中的优势
Microsoft Visual Basic是微软公司推出的一个可视化的面向对象的应用程序开发工具,他具备当代编程语言所必须的“可视化”,“面向对象”,“事件驱动”三个特征。“可视化”使得操作界面的设计变的如同搭积木般的简单,省去了编写大量代码来完成界面的实现;“面向对象”则是把数据和处理数据的代码封装到一个类中,不仅易于程序的阅读和修改,也使得对象可以重复使用;“事件驱动”使得程序员只需对用户可能进行的操作进程序块的编写,至于其他的误操作都可置之不理。
Visual Basic是基于窗体的可视化程序开发环境,简单、易用,而且可以像C/C++一样开发高级的应用程序,它避开了C++编程过分繁琐和抽象的缺点,同时又能实现大多数Windows编程目的,自微软推出以来,成为广大程序开发人员的首选语言。
VB相对其他高级语言有很高的编程效率,尤其是图形界面与数据库应用方面,编程速度比其他编程语言快几倍甚至几十倍。因此,用VB开发数值计算比较复杂的应用程序时,如将MATLAB代码嵌入程序中,就可以充分利用MATLAB大量的源代码,简化运算并高效地完成编程任务。另外,由于MATLAB所提供的数学函数都针对运算过程和结果进行了专门的优化,这将提高应用系统的精确度。
MATLAB是由美国的Math Works公司推出的一个为科学和工程计算而专门设计的高级交互式软件。它是一种高性能的用于工程计算的编程软件,它把科学计算、编程和结果的可视化都集中在一个使用非常方便的环境中。与其他软件相比,MATLAB的强项在于矩阵计算和图形处理。其程序组要由主程序和各种工具包组成,其中主程序包含数百个内部核心函数,工具包则包含复杂系统仿真、信号处理工具包、系统识别工具包等,本文主要通过的在MATLAB软件平台下,通过运行.m文件实现对相关通信原理的仿真。
MATLAB具备强大的数值计算能力,许多复杂的计算问题只需短短几行代码就可以在MATLAB中实现。MATLAB提供的许多函数如果用C语言来实现,均需几十甚至几百条语句以上,而且MATLAB语句简单,易学易用。因此,用MATLAB进行数值分析、图象处理等工作,可以大大节省编写底层算法的时间,避免重复劳动,提供工作效率。
基于VB开发界面友好简单和MATLAB强大的系统仿真功能,故决定采用利用VB编写用户操作界和MATLAB实现后台运算即图形处理的两者混合编程的方法来完成对软件仿真系统的开发。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>