在simulink仿真中仿真时长想设置为某一递减的输出结果减到零时的时间,请问有没有办法实现?感激不尽
1条回答 默认 最新
- CSDN专家-Matlab_Fans 2021-10-05 20:07关注
两种方式可以实现:
- 如果只需要离线分析,可以将信号输出到matlab,然后用m文件编程实现,如下即可
t1 = t(y<=0); % t为时间,y为这个递减信号,t与y一一对应 t0 = t1(1);
2 如果需要Simulink在线分析,可以使用Matlab Function模块编程实现,如下即可
function t0 = fcn(t,y) persistent f if isempty(f) f = 0; end if y<0 & f == 0 t0 = t; f = 1; else t0 = -1; % 默认值,-1表示没有小于0 end
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报