作为输入模拟链接的采样时间
Sampling time as an input-simulink
我正在尝试创建一个函数库,以允许我对过滤器和其他函数进行参数化。在 simulink 标准块中,我只能事先设置一个采样时间,而不能接受输入。关于如何创建它有什么想法吗?我的第一个方法是使用条件语句和一个时钟来允许这个参数存在,但是时钟也不能被参数化。
提前致谢。
执行此操作的唯一方法是将每个块编写为 S-Function。
如果您使用 m 代码,那么在 setup
方法中您需要将块采样时间定义为
block.SampleTimes = [-2 0];
然后在 output
方法中,您需要通过将新值分配给 block.NextTimeHit
来设置下一个采样时间(基于输入信号的值)。
可以在此处找到执行此操作的示例:A Square Wave with Jitter
可以使用 mdlGetTimeOfNextVarHit 方法在 c-mex S-Function 中完成类似的事情。
我正在尝试创建一个函数库,以允许我对过滤器和其他函数进行参数化。在 simulink 标准块中,我只能事先设置一个采样时间,而不能接受输入。关于如何创建它有什么想法吗?我的第一个方法是使用条件语句和一个时钟来允许这个参数存在,但是时钟也不能被参数化。
提前致谢。
执行此操作的唯一方法是将每个块编写为 S-Function。
如果您使用 m 代码,那么在 setup
方法中您需要将块采样时间定义为
block.SampleTimes = [-2 0];
然后在 output
方法中,您需要通过将新值分配给 block.NextTimeHit
来设置下一个采样时间(基于输入信号的值)。
可以在此处找到执行此操作的示例:A Square Wave with Jitter
可以使用 mdlGetTimeOfNextVarHit 方法在 c-mex S-Function 中完成类似的事情。