状态分解定义互斥和并行模式练习

互斥 (OR) 状态分解

带有实线边框的子状态表示互斥 (OR) 状态分解。此分解可用于描述互斥工作模式。当状态拥有互斥 (OR) 分解时,一次只能有一个子状态激活。

并行 (AND) 状态分解

带有虚线边框的子状态表示并行 (AND) 状态分解。使用此分解可以描述并行工作模式。当状态拥有并行 (AND) 分解时,所有子状态同时激活。

首先我使用互斥状态来搭建一个模型,默认先执行FAN1的程序,当温度大于120度时,开启风扇1,当温度小于等120度时,关闭风扇1。当温度大于150度时开启风扇2,小于150度时,关闭风扇2.
然后生成一下代码看下是否如我们预期

在这里插入图片描述

可以看到代码是if else将每个条件一层层嵌套,最终只能执行到一个条件。这样的模型是错误的,不符合需求。即FAN1和FAN2互斥,不能同时执行到。
在这里插入图片描述
我们应该使用并行状态来搭建模型,将FAN1和FAN2改为并行模式,图表方框就变为虚线了,然后生成下代码看看

在这里插入图片描述
可以看到FAN1和FAN2已经是并行的状态了,都可以执行到,执行顺序是按照图表右上角的数字标号来执行的,即FAN1先执行,然后FAN2执行。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值