使用in运算符检查状态活动

在具有并行状态分解的Stateflow®图表中,子状态可以同时处于活动状态。如果检查状态活动,则可以在两个平行状态下同步子状态。
例如,此图表有两个平行的状态:Place和Tracker。Tracker中的转换会在适当的位置检查状态活动,并保持子状态同步。原地活动子状态的更改会导致跟踪器中活动子状态相应的更改。

如果R变为“ in Place”中的活动子状态,则Moved_Right变为“in Tracker”中的激活子状态。
如果“L”成为“ in Place”中的活动子状态,则Moved_Left将成为“in Tracker”的激活子状态。
在这里插入图片描述in运算符
要在图表执行过程中检查某个状态在给定的时间步长内是否处于活动状态,请使用in运算符:
in(S)
in运算符采用限定的状态名S并返回布尔输出。如果状态S处于活动状态,in将返回值1。否则,中返回的值为0。
可以在状态操作和源自状态的转换中使用in运算符。

活动状态解析

检查状态活动是一个由两部分组成的过程。首先,Stateflow通过在图表层次结构中执行匹配状态的本地化搜索来解析限定状态名。然后,Stateflow确定匹配的状态是否处于活动状态。
搜索从出现合格状态名称的层次结构级别开始:
对于状态操作,起点是包含该操作的状态。
对于转换标签,起点是转换源的父级。
解析过程在图表层次结构的每个级别上搜索状态的路径。如果某个状态与路径匹配,则该过程会将该状态添加到可能匹配的列表中。然后,该过程继续搜索层次结构中更高一级的内容。解析过程在搜索层次结构的图表级别后停止。如果存在唯一匹配,in运算符将检查匹配状态是否处于活动状态。否则,解析过程将失败。模拟停止,您会看到一条错误消息。

检查状态活动的最佳实践
正在解析状态活动:
不会对图表中的所有状态执行详尽的搜索。
找到第一个匹配项后不会停止。
要提高在解析合格数据名称时找到唯一搜索结果的几率,请执行以下操作:
在限定的数据名称中使用特定路径。
为各状态提供唯一的名称。
使用状态和框作为外壳来限制路径分辨率搜索的范围。

状态活动解析示例

搜索查找Substate的本地副本
该图表包含具有相同子状态A1和A2的平行状态A和B。(A1.Y)中的条件监视了A.A2和B.A2中从P到Q的转换。Stateflow将每个限定的状态名称解析为子状态Y的本地副本:
在状态A中,in(A1.Y)检查状态A.A1.Y的活动。
在状态B中,in(A1.Y)检查状态B.A1.Y的活动。
在这里插入图片描述

此表列出了状态A.A2中转换条件的解析过程中的不同阶段。

阶段描述结果
1从状态A.A2开始,搜索状态A.A2.A1.Y。找不到匹配项
2向上移动到层次结构的下一个级别(状态A)。搜索状态A.A1.Y找到匹配项。
3向上移动到层次结构的下一个级别(图表级别)。搜索状态A1.Y找不到匹配项

搜索以找到一个匹配项结束。因为解析算法将搜索范围定位,所以监视A.A2中的转换的内部运算符只检测到状态A.A1.Y。监视B.A2中的过渡的内部运算符仅检测到状态B.A1.Y。
要检查Y的另一个副本的状态活动,请使用更具体的限定状态名称:

在状态 A中, 使用表达式 in(B.A1.Y).
在状态 B中, 使用表达式 in(A.A1.Y).

搜索产生未匹配项

在此图表中,状态A.B中的动作过程包含(Q.R)中的表达式。Stateflow无法解析合法的状态名称Q.R。
在这里插入图片描述此表列出了解析过程中的不同阶段。

阶段描述结果
1从状态A.B开始,搜索状态A.B.Q.R。没有匹配项
2向上移动到层次结构的下一个级别(状态A)。搜索状态A.Q.R。没有匹配项
3向上移动到层次结构的下一个级别(chart级别)。搜索状态Q.R。找到匹配项

搜索在图表级别结束,没有找到与Q.R匹配的项,从而导致错误。
若要避免此错误,请使用更具体的合法状态名。例如,使用(P.Q.R)中的表达式检查状态活动。

搜索产生多个匹配项

在此图表中,状态A.B中的动作过程包含(P.Q.R)中的表达式。Stateflow无法解析合法的状态名称P.Q.R。
在这里插入图片描述此表列出了解析过程中的不同阶段。

阶段描述结果
1从状态A.B开始,搜索状态A.B.P.Q.R。找到匹配项
2向上移动到层次结构的下一个级别(状态A)。搜索州A.P.Q.R。没有找到匹配项
3向上移动到层次结构的下一个级别(图表级别)。搜索状态P.Q.R。找到匹配项

搜索在图表级别结束,找到两个与P.Q.R匹配的项,从而导致错误。
要避免此错误,请执行以下操作:
请使用更具体的合法状态名称。例如:
要检查B内部的子状态活动,请使用(B.P.Q.R)中的表达式。
要检查处于顶级状态P的子状态活动,请使用(\P.Q.R)中的表达式。
重命名其中一个匹配的状态。
将顶级状态P封装在一个框或其他状态中。添加enclosure 可防止搜索进程检测到处于顶级状态的子状态。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/615158.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

服务器远程桌面局域网连接不上的解决方法

在企业网络环境中,服务器远程桌面局域网连接不上是一个常见且棘手的问题。这种问题可能导致工作效率下降,甚至影响业务运营。因此,我们需要采取专业的方法来解决这一问题。 服务器远程桌面局域网连接不上的解决方法: 1、确保服务器…

弱监督语义分割-对CAM的生成过程进行改进1

一、仿射变换图像结合正则项优化CAM生成 论文:Self-supervised Equivariant Attention Mechanism for Weakly Supervised Semantic Segmentation (CVPR,2020) 1.SEAM方法 孪生网络架构(Siamese Network Architecture&#xff09…

【CTF Web】XCTF GFSJ0478 cookie Writeup(HTTP协议+信息收集+Cookie)

cookie X老师告诉小宁他在cookie里放了些东西,小宁疑惑地想:‘这是夹心饼干的意思吗?’ 解法 按 F12,点击网络。 刷新页面。查看请求头中的 Cookie。 look-herecookie.php访问: http://61.147.171.105:53668/cookie.…

智慧互联,统信UOS V20桌面专业版(1070)解锁办公新模式丨年度更新

从小屏到大屏 突破,就在方寸之间 从人机到智脑 融合,旨在新质生产力 统信UOS一直致力于将先进科技与用户场景相结合,不断提升用户的工作效率和生产力。在最新发布的统信UOS V20桌面专业版(1070)版本中,我们…

MySQL指令

MySQL指令 1.数据库管理 查看已有的数据库(文件夹) show databases;创建数据库(文件夹) create database 数据库名字; #可能有汉字,编码方式可能不适用,产生乱码create database 数据库名字 DEFAULT CHARSET utf8 COLLATE utf8_general_ci ; #使用utf8…

Scala编程入门:从零开始的完整教程

目录 引言环境准备创建第一个Scala项目基本语法高阶概念进阶资源结语 引言 Scala是一种强大的、静态类型的、多范式编程语言,它结合了面向对象和函数式编程的特点。本教程将指导您如何从零开始学习Scala,并搭建一个简单的开发环境。让我们开始探索Scala…

2024数维杯数学建模B题完整论文讲解(含每一问python代码+结果+可视化图)

大家好呀,从发布赛题一直到现在,总算完成了2024数维杯数学建模挑战赛生物质和煤共热解问题的研究完整的成品论文。 本论文可以保证原创,保证高质量。绝不是随便引用一大堆模型和代码复制粘贴进来完全没有应用糊弄人的垃圾半成品论文。 B题论…

详解drop,delete,truncate区别

在SQL中,"DROP"、"DELETE"和"TRUNCATE"是用于删除数据的不同命令,它们之间有一些重要的区别: DROP: DROP用于删除数据库对象,例如删除表、视图、索引、触发器等。使用DROP删除的对象将…

C++相关概念和易错语法(11)(npos、string的基本使用)

本文主要是分享一些基础的用法和接口,不会涉及迭代器版本,也没有底层概念,主要是保证简单入门和使用。 1.npos string本质上是一个类,里面包含了上百个成员函数,在调用这个头文件后,我们要知道整个类都被…

unity制作app(5)--发送数据给数据库

这个之前做过,先不做照片的。下一节再做带照片的。 第一步 收集数据 1.先做一个AppModel结构体,这个结构体需要单做的。 using System; using System.Collections.Generic; using System.Linq; using System.Text; //using Assets.Model; public clas…

LangChain连接国内大模型测试|智谱ai、讯飞星火、通义千问

智谱AI 配置参考 https://python.langchain.com/v0.1/docs/integrations/chat/zhipuai/ZHIPUAI_API_KEY从https://open.bigmodel.cn/获取 from langchain_community.chat_models import ChatZhipuAI from langchain_core.messages import AIMessage, HumanMessage, SystemMes…

Lambda表达式Stream流-函数式编程入门教程

目录 函数式编程思想 Lambda 表达式 Stream流 常用的Stream中的API 创建Stream 第一种是直接使用.Stream()的方式来创建 第二种采用.of()方式创建 具体来看看每一个API是怎么用的 concat max min findFirst findAny count peek forEach forEachOrdered skip d…

oracle 9i 行头带有scn的表

oracle 9i 行头带有scn的表 conn scott/tiger drop table t1; drop table t2; create table t1(c varchar2(5)); create table t2(c varchar2(6)) ROWDEPENDENCIES; --t2表每行都有scn,会增加六个字节的开销 alter table t1 pctfree 0; alter table t2 pctfree 0; insert in…

Array.map解析

map方法会创建一个新数组。该方法会循环数组中的每个值,如果仅仅是想循环数组不需要返回值使用数组的forEach方法就可以。原数组中的每个元素都调用一次提供的函数后的返回值组成。Array.map 它接收一个函数 这个函数可以接收三个参数 数组的每个值item 这个值的索引…

2016-2021年全国范围的2.5m分辨率的建筑屋顶数据

一、论文介绍 摘要:大规模且多年的建筑屋顶面积(BRA)地图对于解决政策决策和可持续发展至关重要。此外,作为人类活动的细粒度指标,BRA可以为城市规划和能源模型提供帮助,为人类福祉带来好处。然而&#xf…

【html项目】教你制作地表最强王者辅助网站装逼神器

今天如何教你们写教你们如何写一个 仿王者荣耀修改器装逼神器 效果图 html: <body><header> <a href"//pvp.qq.com/" class"qqq" title"王者荣耀" onclick"PTTSendClick(link,logo,logo);">王者荣耀</a>&l…

信息系统架构模型_2.面向服务架构(SOA)模式

前面讲的客户机/服务器模式&#xff0c;无论多少层的C/S软件结构&#xff0c;对外来讲&#xff0c;都只是一个单结点应用&#xff08;无论它由多个不同层的“服务”相互配合来完成其功能&#xff09;&#xff0c;具体表现为一个门户网站、一个应用系统等。而多个单点应用相互通…

到东莞樟木头“中国作家第一村”来!这里大有文“樟”

樟木头&#xff0c;古称泰安&#xff0c;一直是康泰平安、物阜民丰之地。作为东莞唯一纯客家镇&#xff0c;传自中原先民的烂漫因子让这座城市崇文重礼&#xff0c;绿水青山更氤氲出古镇芳华。这个文章锦绣地&#xff0c;以其敢为人先、勇立潮头的姿态&#xff0c;成为了各种文…

Python专题:八、列表(1)

Python的内置数据类型 数据类型&#xff1a;列表 list类型 可以是字符串&#xff0c;浮点数&#xff0c;整数&#xff0c;列表 列表特性 ①集合性的数据类型 ②列表是有序的 ③列表是可更新的 访问列表元素的方式也是[索引]&#xff0c;也是从0开始的&#xff0c;不能超过…

【姿态解算与滤波算法】

姿态解算 一、主线 姿态表示方式&#xff1a;矩阵表示&#xff0c;轴角表示&#xff0c;欧拉角表示&#xff0c;四元数表示。 惯性测量单元IMU&#xff08;Inertial Measurement Unit&#xff09;&#xff1a;MPU6050芯片&#xff0c;包含陀螺仪和加速度计&#xff0c;分别测…