关于在simulink中开发一些硬件环境模型,有时候会碰到一些模块的执行先后顺序问题。比如说在一个通过UDP发送指令命令给客户端,要求发送的指令有先后的时间顺序,只有在前一条命令发送完以后,才可以进行下一条的命令发送。这时候会有一个问题,simulink是一个图形化的开发平台,他不像C、C++、JAVA那样是代码开发,它的模型开发过程中,没有一个执行的先后过程。在同一个模型下,所有在同一级的模块都默认是同时执行的(当然,执行过程中,由于运算的快慢,有的模块会抢先执行)。在代码开发程序执行过程中,总是按照源文件文本的先后顺序,从上到下执行代码,即代码源程序是默认时间执行顺序的。

那么,为了能够在simulink中顺序执行模块,我有两种思路:

第一种:根据模块的优先级顺序执行

在simulink中,每个模块都可以为其分配一个优先级,该优先级是一个从0开始的整数,优先级越低,其会先执行。这样可以保证执行顺序。

做法:在要分配执行优先级的模块上,右键单击,选择block property,在priority(优先级)中填写定义的优先级值。

注意:该优先级只在存在优先级值的模块之间发挥作用,对于没有优先级值的模块,不能保证有优先级值的模块运行一定比没有优先级值的模块快。

第二种:为每一个模块设置一个使能开关,只有当达到预定的值的时候,才让指定模块使能

可以利用变量分配模块,分配一个变量,专门用来指定哪一个模块执行。当一个模块执行完后,让该变量加1,达到下一个使能预定值,以进行下一个的指定模块运行,并同时禁用其他模块。

matlab/simulink中的执行顺序问题的更多相关文章

  1. Unity脚本在层级面板中的执行顺序测试3

    断断续续的写了3篇,以后有时间可以做成一个系列了 前面2篇测试了GameObject的顺序,以及Awake和OnEnable的时机: Unity脚本在层级面板中的执行顺序测试1 http://www. ...

  2. Unity脚本在层级面板中的执行顺序测试4-附加整理

    测试4为一些附加内容,后续的各种tips都加在此. 前几篇测试的链接: Unity脚本在层级面板中的执行顺序测试1 http://www.cnblogs.com/hont/p/4298110.html ...

  3. 【分析】浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang)

    [分析]浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang) 今天无意中看到有关Invoke和BeginInvoke的一些资料,不太清楚它们之间 ...

  4. Promise对象及它在js中的执行顺序

    关于Promise对象的学习及它的执行顺序 学习阮一峰老师的ES6入门后的记录 1.promise的定义 promise是一个对象,通常包裹着一个异步操作,promise对象提供一些接口的方法,返回一 ...

  5. JavaScript在页面中的执行顺序(理解声明式函数与赋值式函数) 转载

    JavaScript在页面中的执行顺序 https://blog.csdn.net/superhoy/article/details/52946277 2016年10月27日 15:38:52 阅读数 ...

  6. Unity脚本在层级面板中的执行顺序测试1

    第二篇测试循环时和动态创建时的调用顺序:LINK 测试版本Unity4.6.因为新版本对Transform的排序做了改变,所以不排除旧版本的测试结果不一样.测试时,使用Awake中添加Debug.lo ...

  7. Unity脚本在层级面板中的执行顺序测试2

    上一篇测试了生成顺序对执行顺序的影响,链接:LINK 执行顺序测试3: LINK 这篇主要测试一下Awake,OnEnable,Start三个常用消息的循环顺序 1.测试消息循环顺序 先上一个最简单的 ...

  8. Mysql中关键词执行顺序

    MySQL的语句执行顺序 MySQL的语句一共分为11步,最先执行的总是FROM操作,最后执行的是LIMIT操作.其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对 ...

  9. java中代码执行顺序

    静态代码块 -- >构造代码块 --> 构造方法静态代码块:只执行一次构造代码块:每次调用构造方法都执行 http://blog.csdn.net/wuhaiwei002/article/ ...

  10. Java 基础:继承中的执行顺序

    1.单独的父类测试 Java中,new一个类的对象,类里面的静态代码块.非静态代码.无参构造方法.有参构造方法.类的一般方法等部分, 它们的执行顺序相对来说比较简单,用程序也很容易验证. 比如新建一个 ...

随机推荐

  1. Anaconda配置环境变量

    环境变量里写自己的Anaconda下载目录,找到对应的文件位置,然后把这三个上移到最上面,点击确定即可配置完成 出现这个环境变量就成功啦 在输入conda 出现这个就表明你的Anaconda已经好了

  2. SQL Server【提高】分区表

    分区表 分区视图 分区表可以从物理上将一个大表分成几个小表,但是从逻辑上来看,还是一个大表. 什么时候需要分区表 数据库中某个表中的数据很多. 数据是分段的 分区的方式 水平分区 水平表分区就是将一个 ...

  3. WPF 轨迹动画

    1.后台 public MainWindow() { InitializeComponent(); /// <summary> /// Window2.xaml 的交互逻辑 /// < ...

  4. No.1.7

    网页制作流程 创建根目录(网站的第一级文件夹) 1.图片文件夹:images 2.样式文件夹:CSS 3.首页:index.html <!-- 网站的首页 所有网站的首页都叫index.html ...

  5. VAE变分自编码器公式推导

    VAE变分推导依赖数学公式 (1)贝叶斯公式:\(p(z|x) = \frac{p(x|z)p(z)}{p(x)}\) (2)边缘概率公式:\(p(x) =\int{p(x,z)}dz\) (3)KL ...

  6. jenkins +docker+python接口自动化之jenkins容器下安装python项目所需要的库(三)

    1.场景 1.centos系统,在docker的jenkins容器下安装python项目所需要的包 2.我们目前是搞接口自动化,代码放到码云上,运行环境是jenkins容器下,所以需要在jenkins ...

  7. 关于新版的MySQL安装教程

    主要参考大大的博客,连接如下:https://www.cnblogs.com/xiaohanlin/p/10345501.html 在装MySQL时,突然发现最新版的居然是.zip格式的,我原来的还是 ...

  8. 5G智慧灯杆系统在智慧街区的应用

    智慧化的路灯作为一个高度集成的项目,是智慧城市在城市公共空间的落地载体,是一个自上而下的体系,有外延.可扩展.能适配智慧城市的建设要求.在商业街开展智慧灯杆建设,同期开展5G应用技术试点,有利于商业街 ...

  9. EF存储过程

    select * from Goods --创建存储过程create proc sp_Show( @index int, --当前页 @size int, --每页大小 @totalcount int ...

  10. Python openpyxl【包】

    介绍 Excel是我们日常工作中经常用到的办公软件,在处理数据和表格方面有着优异的性能,那么能不能用python来操作Excel呢? 答案是肯定的,openpyxl是一个第三方库,可以处理xlsx格式 ...