本文介绍如何在matlab的simulink中嵌入C语言进行多输入多输出的仿真;matlab版本位2015b;
创作不易,如果本文帮到了您;
如果本文帮到了您,请帮忙点个赞 👍👍👍;
如果本文帮到了您,请帮忙点个赞 👍👍👍;
如果本文帮到了您,请帮忙点个赞 👍👍👍;
1 s-function
S-function模块,位于Simulink/User-Defined Functions模块库中,它可以很方便的调用matlab脚本,即.m为后缀的文件,也可以调用c文件,但是这里是LEVEL-1的s-function,也就是只能进行单输入和单输出,对于LEVEL-1的单输入单输出参考《matlab 调用C程序进行simulink仿真》这篇文章,具体不再赘述,相关信息如下所示;
但是有的时候需要进行多输入多输出,即MIMO的系统,那么就需要LEVEL-2的s-function,因此这里需要使用S-Function Builder来自定义需要输入的参数和输出的参数;
2 具体设置
首先拖拽S-Function Builder到仿真文件中,并双击打开,可以看到具体的属性如下图所示;
一般初级的使用,这里有四个地方需要注意,已经在上图中标注出来;
S-Function文件名,最终构建成功会生成相应名称的C文件;
输入输出的设置,根据需求设置S-Function的入口参数,和返回参数,后面会详细解释;
完成设置之后需要进行构建,生成C文件;
对相应文件进行修改,最终进行编译;
如果编译成功的话,C程序就已经成功嵌入了,下面