MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
目前 MATLAB 产品族可以用来进行:
数值分析
数值和符号计算
工程与科学绘图
控制系统的设计与方针
数字图像处理
数字信号处理
通讯系统设计与仿真
财务与金融工程
MATLAB 是 MATLAB 产品家族的基础,它提供了基本的数学算法,例如矩阵运算、数值分析算法, MATLAB 集成了 2D 和 3D 图形功能,以完成相应数值可视化的工作,并且提供了一种交互式的高级编程语言—— M 语言,利用 M 语言可以通过编写脚本或者函数文件实现用户自己的算法。
MATLAB Compiler 是一种编译工具,它能够将那些利用 MATLAB 提供的编程语言—— M 语言编写的函数文件编译生成为函数库、可执行文件 COM 组件等等。这样就可以扩展 MATLAB 功能,使 MATLAB 能够同其他高级编程语言例如 C/C++ 语言进行混合应用,取长补短,以提高程序的运行效率,丰富程序开发的手段。
利用 M 语言还开发了相应的 MATLAB 专业工具箱函数供用户直接使用。这些工具箱应用的算法是开放的可扩展的,用户不仅可以查看其中的算法,还可以针对一些算法进行修改,甚至允许开发自己的算法扩充工具箱的功能。目前 MATLAB 产品的工具箱有四十多个,分别涵盖了数据获取、科学计算、控制系统设计与分析、数字信号处理、数字图像处理、金融财务分析以及生物遗传工程等专业领域。
Simulink 是基于 MATLAB 的框图设计环境,可以用来对各种动态系统进行建模、分析和仿真,它的建模范围广泛,可以针对任何能够用数学来描述的系统进行建模,例如航空航天动力学系统、卫星控制制导系统、通讯系统、船舶及汽车等等,其中了包括连续、离散,条件执行,事件驱动,单速率、多速率和混杂系统等等。
Simulink 提供了利用鼠标拖放的方法建立系统框图模型的图形界面,而且 Simulink 还提供了丰富的功能块以及不同的专业模块集合,利用 Simulink 几乎可以做到不书写一行代码完成整个动态系统的建模工作。
Stateflow 是一个交互式的设计工具,它基于有限状态机的理论,可以用来对复杂的事件驱动系统进行建模和仿真。
Stateflow 与 Simulink 和 MATLAB 紧密集成,可以将 Stateflow 创建的复杂控制逻辑有效地结合到 Simulink 的模型中。
在 MATLAB 产品族中,自动化的代码生成工具主要有 Real-Time Workshop ( RTW )和 Stateflow Coder ,这两种代码生成工具可以直接将 Simulink 的模型框图和 Stateflow 的状态图转换成高效优化的程序代码。
利用 RTW 生成的代码简洁、可靠、易读。目前 RTW 支持生成标准的 C 语言代码,并且具备了生成其他语言代码的能力。整个代码的生成、编译以及相应的目标下载过程都是自动完成的,用户需要做得仅仅使用鼠标点击几个按钮即可。 MathWorks 公司针对不同的实时或非实时操作系统平台,开发了相应的目标选项,配合不同的软硬件系统,可以完成快速控制原型( Rapid Control Prototype )开发、硬件在回路的实时仿真( Hardware-in-Loop )、产品代码生成等工作。
另外, MATLAB 开放性的可扩充体系允许用户开发自定义的系统目标,利用 Real-Time Workshop Embedded Coder 能够直接将 Simulink 的模型转变成效率优化的产品级代码。代码不仅可以是浮点的,还可以是定点的。
MATLAB 开放的产品体系使 MATLAB 成为了诸多领域的开发首选软件,并且, MATLAB 还具有 300 余家第三方合作伙伴,分布在科学计算、机械动力、化工、计算机通讯、汽车、金融等领域。接口方式包括了联合建模、数据共享、开发流程衔接等等。
MATLAB 结合第三方软硬件产品组成了在不同领域内的完整解决方案,实现了从算法开发到实时仿真再到代码生成与最终产品实现的完整过程。
主要的典型应用包括:
控制系统的应用与开发——快速控制原型与硬件在回路仿真的统一平台 dSPACE
信号处理系统的设计与开发——全系统仿真与快速原型验证, TI DSP 、 Lyrtech 等信号处理产品软硬件平台
通信系统设计与开发——结合 RadioLab 3G 和 Candence 等产品
机电一体化设计与开发——全系统的联合仿真,结合 Easy 5 、 Adams 等 。