matlab层次分析法代码_C代码生成分析法MATLABSimulinkStateflow区分相近函数

   在 MATLAB中 存在一部分 函数, 解释 和用法很类似,使用时不容易 区分 。 给 不熟悉该函数的 使用 者带来了困扰。 一 、问题分析过程 例如 ,after(n,Event) 和 at(n,Event) 两个函数用法,均 为在事件Event调用n次后 触发 后续动作; MATLAB 论坛中也有 人提出 了 这两个 函数差别的疑问。 7eb16d2aa7df8f94daeb432dfd70cba9.png 网友 答复: 767a2dd496cf97e5257e8417fca21ffa.png 我认为这个网友回答的很专业,但是我 看到网友 说这是 “ 个人观点 ” ,显然没有 相关资料 的 支撑。 我的 心里也对这个 两个 函数 本质区别 有了疑问。我认为 技术 的 学习 和处理需要 一个严谨 的态度 。随后 我 就开始 了查找答案 的过程, 方法1: 网络搜索法 。在网上 没有找 到 一个具体的满意答复。 9ed18b69a77b43f20f62a1ad293d1d24.png   方法2: MATLAB 帮助文档 法 。 没有找到 相关 函数注释 。 9e3bd8becc9f42da15515425c9313476.png   6cd7ed830ae62bbb5b2f89a885bec324.png 二 、C代码分析法 经过 一番折腾 , 仍旧没有找到结果。 基于对 问题的好奇,我决定使用MATLAB\Simulink \ Stateflow 生成 C代码 法 ,通过C代码分析模型 中 的函数 差异 性 。 例 , 建立事件触发 模型 示例 , (1) 进入 模型后,默认进入 状态 A,y=5 ; (2) 经过事件Event1 触发5次 后,进入状态B, y =3 ; (3) 再经过 事件 Event 2 触发3次后 ,进入状态A,y=5; 1.建立模型Stateflow,如下所示( 模型可在文章附件中下载 ),事件触发Stateflow建模过程 详见文章: 《 MATLABSimulinkStateflow事件event和节点history的使用-实例分析》 。 ddea74d74236ea07880d53bc435d3645.png 2.配置模型C代码生成,如下图模型所示。配置过程 详见文章:《 如何将Matlab/Simulink/Stateflow模型码编译生成C代码》 。 fdc967553551b8dbd2014229191df1f1.png 3.追溯 模型生成的C 代码。选中 想追溯 C代码 的 模型 部分- 右键 对应模型-C/C++ Code–Navigate To C/C++ , 即可直接追溯到 该 出模型 生成 的对应C代码。 28e393edf65bf0751a1196b2476d0960.png 4. 分析 C代码。 生成 的C代码 如下 所示 6a59c57d338bfed683d35615e057f76f.png 5. 结论 。 查看上述生成的 C 代码 , 易见after(n,Event1) 和 at(n,Event2) 二者区别。 after(n,Event1) :事件 Event1 触发次 数>=n, 执行 对应的after函数 ; at(n,Event2) 事件 Event2 触发次 数==n, 执行 对应的at函数 。 模型 开发设计时 建议 使用 after 函数计 数 事件次数。 如果 在生成C代码过程中,选择了 at事件 触发n次时, ECU发送 数据丢帧,将会导致 事件 触发无法实现。 当然 设计 师需要结合 具体 情 况进行建模 , 每格函数都有 其 设计特点。

大家可以通过本教程动手尝试,以便更好的掌握本文细节。

如果大家在使用或者学习过程中有什么问题,可以在公众号界面内评论留言,我们可以一起探讨思路!

如果你喜欢凌志,请关注和转发此文给你的小伙伴吧,你的关注和转发是对我最大支持和鼓励!我定会竭力向大家分享更好的文章!

7f7e92ef74672a08dd1d55352ee1f857.png

如果有什么疑问,请留言,可以随时沟通交流哦! ———————————————————————————— 下期文章,敬请期待啦!!! 模型程序源代码,如下所示:

推荐文章:

  1. 一文学会-使用MATLAB将仿真、试验数据可视化-附带源程序

  2. MATLABSimulinkStateflow事件event和节点history的使用-实例分析

  3. 英雄联盟手游LOL-安卓-安装教程!!!

  4. 如何将Matlab/Simulink/Stateflow模型码编译生成C代码

  5. 一文学会使用示波器!简单易操作!20201018

  6. 仿真数据曲线图像模糊么?MATLAB通过6个漂亮的数学函数曲线展示解决成果

  7. MATLAB设计自己的应用软件?人人可以用的办公软件-应用程序和文件打开软件及其源代码

  8. 设计自己的应用程序?MATLAB应用程序设计-电脑桌面小助手WorkODA10

  9. 身份证号码合法性算法及其MATLAB程序设计-程序篇

  10. 身份证号码合法性算法及其MATLAB程序设计-理论篇

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值