关于vc和matlab接口的资料matlab大观园有不少文字介绍,大家可以方便地获得参考。为加深大家的理解,我给大家提供一个简单的例子作为感性认识本文只介绍用引擎接口方式,这对于Simulink与vc接口尤为重要。
win2000 vc6.0 matlab6.5
准备:要掌握simulink通过引擎方式与vc接口,首先需要命令行的仿真与设置。
请大家自行查阅sim,simset,simget的帮助。
实现:
1.建立vc工程和仿真mdl
2.在vc-->工具->选择-->目录下添加路径
所在matlab目录\extern\include
所在matlab目录\extern\include\cpp
3.注意所在matlab目录\extern\lib\win32\microsoft\msvc60中的*.lib文件
它们与你调用的函数有关,如engOpen与libeng.lib有关mx***与libmx.lib有关,将用到的库文件拷贝到你的vc工程目录下并添加进工程
4.#include "engine.h",添加实现你功能的代码,具体可以参照范例程序完成。
本例的实现中通过工作区给正弦波传递参数,需要说明的是Solver,我们通过本程序设置只是本次仿真改变了Solver,默认设定为Simulink中的仿真参数设定。举个例子,若为一刚性系统,即便我的程序选用了ode15s而默认为ode45,本次仿真确实用了ode15s解,仍然会报警说应该用刚性解法。不过对于刚性系统,ode45可不好使,因此从仿真效果上可以认定我们设定的刚性解法奏效了。大家不要被表面现象迷惑。
注意,要将仿真模块放到matlab访问的目录下
希望能给大家带来帮助。