matlab s函数中实时更新并保存输出值

matlab s函数中实时更新并保存输出值

matlab中文论坛里-S函数中实时读取workspace中的数据
如何在simulink中实现将s函数输出值传入到s函数中?

  1. 在s函数的S-function parameters中,将参数b送入到s函数中,运算后输出,用 To Workspace保存到工作区,然后再通过S-function parameters传送到s函数中。但是在运行过程中发现传入的b没有变化,一直是初始值。在s函数中对b进行运算,运算后断点调试发现b值有改变。显然对于时变的b,此方法行不通。
  2. 利用matlab中save 和 load命令,可以将数据保存为.mat文件,然后再读取.mat中的数据。于是利用 To File ,将数据以数组形式存储为.mat文件。
    matlab s函数中实时更新并保存输出值
    在s函数中使用 load bmat.mat语句后,就可以访问b向量中已存在的数据(注意:在输入到To File 中为一维数据时,b向量第一行为时间,第二行为输入的一维数据)。