MATLAB Simulink中自定义函数和switch case的用法

文章目录

  • 1 Simulink自定义函数MATLAB Function
  • 2 Simulink中Switch Case模块的用法

1 Simulink自定义函数MATLAB Function

首先写一个函数,能根据两个输出,产生不同的输出值,在Simulink库中搜索MATLAB Function
MATLAB Simulink中自定义函数和switch case的用法_第1张图片

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

MATLAB Simulink中自定义函数和switch case的用法_第2张图片

双击自定义函数,输入:

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的标准用法是:
MATLAB Simulink中自定义函数和switch case的用法_第3张图片

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

MATLAB Simulink中自定义函数和switch case的用法_第4张图片

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

MATLAB Simulink中自定义函数和switch case的用法_第5张图片

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

MATLAB Simulink中自定义函数和switch case的用法_第6张图片


参考文章:

使用类似于 switch 语句的逻辑选择子系统执行 - Simulink - MathWorks 中国
https://ww2.mathworks.cn/help/simulink/slref/switchcase.html

你可能感兴趣的:(MATLAB)