分类: C/C++
2008-04-15 21:32:43
来源:Blog 作者:simonjp |
第三步,设置项目连接选项。选择菜单Project中的子菜单Settings,选择其中的属性页Link,在其中的Catogery下拉式选项框中选择Input.在下部的Object Library modules编辑框中填写:libeng.lib、libmx.1ib和libmat.1ib。(具体用到什么库由你的应用决定)
第四步,加入引擎头文件。在准备使用MATLAB引擎的类的cpp文件中,加入“#include “engine.h””语句,并且在以后建立的要使用MATLAB引擎的类中也注意加入上述语句。
当完成以上述四步工作后,用户就可以在VC++中对MATLAB引擎程序进行编译和调试了。
Simulink的命令行仿真方式
一般情况下,Simulink是类似框图图形化的仿真方法;而在通过引擎方式将Simulink同VC相结合时,仿真的每个操作是通过调用engEvalString执行一个用字符串表示的MATLAB表达式(Simulink仿真命令)来实现的。因此,要掌握Simulink&VC混合编程,首先需要掌握Simulink的命令行仿真方式:
[t,x,y]=sim('modelname')
利用对话框参数进行仿真,返回输出矩阵;
[t,x,y]=sim('modelname', timespan, options, ut)
利用输入参数进行仿真,返回输出矩阵;
[t,x,y1,y2,...yn]=sim('modelname', timespan, options, ut)
利用输入参数进行仿真,返回逐个输出;
参数说明:
'modelname' 运行的模型名(不包含扩展名),必须在MATLAB的搜索路径上。
timespan 指定仿真的时间区间,可以采取以下几种格式:
(1)[] 空,利用模型对话框设置时间;
(2)T_final 标量,制定终止仿真时间;
(3)[T_start T_final] 二元向量,指定仿真时间区间;
(4)outputTimes 任何指定输出时间记录点的向量。
options MATLAB特定的一种数据结构,具有最高优先权,可以覆盖模型参数对话框中的设置。
ut 赋给仿真对象数入口模块的量,具有最高优先设置,它是形为[t,u1,u2...]的数值矩阵,每个为时间序列或输入序列。 |