1 Simulink自定义函数MATLAB Function
首先写一个函数,能根据两个输出,产生不同的输出值,在Simulink库中搜索MATLAB Function:

然后选择第3个,拖拽到工作区

双击自定义函数,输入:
function y = fcn(throttle_value,throttle_delta)
if throttle_value < 60
velocity_period = 1;
elseif (throttle_value>=60)&&(throttle_value<90)
velocity_period = 2;
else
velocity_period = 3;
end
if throttle_delta > 0
acc_dec_mode = 0;
else
acc_dec_mode = 3;
end
operation_period = velocity_period + acc_dec_mode;
y = operation_period;
保存退出即可。
2 Simulink中Switch Case模块的用法
switch case的标准用法是:

首先,在simulink库中搜索case:把两个模块拖拽到工作区中:

根据自己的模块逻辑连线,最终如图所示:

设计1个正弦信号输入,将运行时间设置为100秒,双击scope打开示波器,测试运行

参考文章:
使用类似于 switch 语句的逻辑选择子系统执行 - Simulink - MathWorks 中国
https://ww2.mathworks.cn/help/simulink/slref/switchcase.html
MATLAB Simulink:自定义函数与Switch Case实战
本文介绍了如何在MATLAB Simulink中创建自定义函数MATLAB Function,以及使用Switch Case模块进行逻辑选择。首先,通过编写函数并将其拖拽到Simulink工作区实现自定义功能。接着,详细讲解了Switch Case模块的基本用法,包括从库中选取模块,根据逻辑连线,并以正弦信号输入为例,设置100秒运行时间,通过示波器观察运行结果。
1万+

被折叠的 条评论
为什么被折叠?



