作者简介
柚籽,MATLAB中文论坛(http://www.ilovematlab.cn) 超级版主,MATLAB/Simulink高级应用工程师,同济大学机械电子工程专业硕士学位,专注于物理系统的建模仿真,在论坛回答问题超过1700个,分享大量Simulink应用学习资源。
条件控制在C代码中常用的诸如if-else, Switch-Case来表达,那么:
在Simulink模型中是如何实现的呢?
又如何配置生成代码呢?
点击末尾的 “阅读原文” 下载本文的案例模型条件控制逻辑要得到:if (u1 > u2)
{
y1 = u1;
}
else
{
y1 = u2;
}
或者switch (u1)
{
case 2:
y1 = u2;
break;
case 3:
u3;
break;
default:
y1 = u4;
break;
}怎么做:在Simulink框图模型里使用Signal Routing以及Ports&Subsystem库里对应的模块,如Switch;在Chart里则根据逻辑来构造流程图;而在MATLAB Function模块里则直接写m脚本。if-else实例
1. 新建一个简单的Simulink模型如图使用三种方式来实现条件判断的算法: