当前位置: 首页 > news >正文

MBD_入门篇_21_SimulinkSignalAttributes

21.SignalAttributes

21.1 概述

Signal Attributes,信号属性,信号特性。

21.2 回顾常用模块

21.2.1 DataTypeConversion

数据类型转换模块,可以对信号的数据类型进行强制转换。无符号数据与有符号数据相加,我们可以将无符号数据转换为有符号数据,再进行加法运算。

21.3 SignalConversion

信号转换模块,可以对信号进行一个转换的处理,包括普通信号的复制,总线信号的复制。总结下来,功能就是隔离原来的信号,产生一个新的复制的信号。

Output的三个选项,Signal copy信号复制,Virtual bus虚拟总线(生成代码还是单个信号,只是在模型的视觉上进行编组),Nonvirtual bus非虚拟总线(对应生成代码结构体)。

选择Signal copy,数据类型不可设置,单纯的拷贝。

选择非虚拟Bus后,图标改变,数据类型可选,可以根据实际需求来进行选择。

初学的时候不太用的到这个模块。在标定的观测量设置,AUTOSAR接口的信号转换等地方会用的到,隔离原来的信号,产生一个一样的新的信号。

21.4 DataTypeDuplicate

信号数据类型约束模块,可以强制输入数据类型一致,否则报错。

仿真数据类型不一致,直接报错。需要强制转换或者是修改前端输入的类型,保持一致。

21.5 RateTransition

21.5.1 RateTransition实例

速率转换模块,可以转换不同的信号速率。

模型的配置为定步长,离散解算器,0.01的步长。

搭建仿真模型,上面的加法使用继承的Sample Time为0.01s,下面的模块我们强制设置为0.02s。

可以打开仿真的Sample Time区分颜色。

运行模型,采样时间被区分开。

将两部分模型进行加法,模型自动转换是按照低采样率转换为高采样率的方式。最后按照0.01s进行加法。

我们可以使用速率转换模块进行强制转换。设置速率转换模块的输出速率。

进行仿真,可以看出来速率转换后是按照0.02s的采样率进行加法。

速率转换模块的参数设置,指定采样时间,设置初始值。

拖2个计数模块,将上面的设置Sample Time为0.01s,下面的设置0.02s。对数据进行Log,运行模型,分析数据。

不同的采样周期转换后的加法,得出的结果不一样,需要根据实际项目情况做选择。

21.5.2 RateTransition选项配置说明

速率转换模块的配置项说明,确保数据传输过程中的数据完整性和确保确定性数据传输选项,不同配置的选择。

转移处理选项

模块参数设置

  • 数据完整性
  • 确定性数据传输
  • 最大延迟

选择:

  • Ensure data integrity during data transfer
  • Ensure deterministic data transfer
  • 数据完整性
  • 不确定的数据传输
  • 最小延迟
  • 更高的内存要求

选择:

  • Ensure data integrity during data transfer

清除:

  • Ensure deterministic data transfer
  • 可能丢失数据完整性
  • 不确定的数据传输
  • 最小延迟
  • 更低的内存要求

清除:

  • Ensure data integrity during data transfer
  • Ensure deterministic data transfer

标签与模块的行为对应

标签

模块行为

ZOH

充当零阶保持器

1/z

充当单位延迟器

Buf

在信号灯控制下将输入复制到输出

Db_buf

使用双缓冲区将输入复制到输出

3buf

使用三缓冲区将输入复制到输出

Copy

在不保护的情况下将输入复制到输出

NoOp

不执行任何操作

Mixed

扩展为具有不同行为的多个模块

RT

指示使用调度编辑器时分区之间的数据传输。

同样是D1采样的时候,显示NoOp。

从D1 0.01s到D2 0.02s,显示ZOH。

从D2 0.02s到D1 0.01s,显示1/z。

转换速率不是整数倍数的情况。

清除确保确定性数据传输选项。

下表总结了当输入和输出端口(inTs 和 outTs)的采样时间为周期性或同步时每个标签的显示方式。

模块设置

模块标签

Rate Transition

Rate Transition 模块的条件

保证数据完整性与确定性

仅保证数据完整性

不保证数据完整性或确定性

inTs = outTs

(相等)

inTsOffset < outTsOffset

无(错误)

Buf

Copy 或者 NoOp(请参阅表后面的注释)

inTsOffset = outTsOffset

Copy 或者 NoOp(请参阅表后面的注释)

Copy 或者 NoOp(请参阅表后面的注释)

inTsOffset > outTsOffset

无(错误)

Db_buf

inTs < outTs

(快速到慢速)

inTs = outTs / N

inTsOffset、outTsOffset = 0

ZOH

Buf

inTs = outTs / N

inTsOffset ≤ outTsOffset

无(错误)

inTs = outTs / N

inTsOffset > outTsOffset

无(错误)

Db_buf

inTs ≠ outTs / N

无(错误)

inTs > outTs

(慢速到快速)

inTs = outTs * N

inTsOffset、outTsOffset = 0

1/z

Db_buf

inTs = outTs * N

inTsOffset ≤ outTsOffset

无(错误)

inTs = outTs * N

inTsOffset > outTsOffset

无(错误)

inTs ≠ outTs * N

无(错误)

关键注释

  • inTs, outTs:分别指输入和输出端口的采样时间
  • inTsOffset, outTsOffset:分别指输入和输出端口的采样时间偏移量
  • N:大于 1 的整数值

21.6 BusToVector

从这小节开始,剩下的模块在模型生成代码过程中都不是很常用。

Bus To Vector模块,将bus信号转换为数组/向量信号。转换的必须是Virtual Bus虚拟总线信号。

Bus转换成的数组。

数据类型不一致的时候,报错。

21.7 DataTypeConversionInherited

强制类型转换,使用其他输入信号的类型。不需要明确地在模块里指定数据类型,而是通过连接另一个信号来指定。

如图是使用constant的数据类型uint8,强制转换输入inport的uint32类型为uint8类型

uint16的258转换成uint8,超出uint8的范围,最后输出为2。

相关文章:

MBD_入门篇_21_SimulinkSignalAttributes

21.SignalAttributes 21.1 概述 Signal Attributes&#xff0c;信号属性&#xff0c;信号特性。 21.2 回顾常用模块 21.2.1 DataTypeConversion 数据类型转换模块&#xff0c;可以对信号的数据类型进行强制转换。无符号数据与有符号数据相加&#xff0c;我们可以将无符号数据转…...

Web前端高级课程:深入探索与技能飞跃

Web前端高级课程&#xff1a;深入探索与技能飞跃 在数字化时代的浪潮中&#xff0c;Web前端技术日新月异&#xff0c;对前端开发者的技能要求也日益提高。为了满足这一需求&#xff0c;我们精心打造了一款Web前端高级课程&#xff0c;旨在帮助学员掌握最前沿的前端技术&#x…...

螺丝工厂vtk ThreadFactory(1)

螺丝工厂vtkThreadFactory (1) 缘起 几年前的探索在Python里应用Openscad实现3D建模之3D螺纹建模初探3 新的参考: generating nice threads in openscadvtkRotationalExtrusionFilter 辅助AI: coze 笔记&#x1f4d2;: openscad 代码分析 // 半径缩放函数&#xff0c;用…...

Android13 蓝牙协议属性配置详解

Android13 蓝牙协议属性配置详解 文章目录 Android13 蓝牙协议属性配置详解一、前言二、Android13 蓝牙协议属性配置1、Profile 属性和暴露接口的定义2、蓝牙协议属性定义3、系统代码中判断蓝牙协议是否使能的代码 三、其他1、adb 窗口中查看蓝牙协议属性2、动态设置蓝牙prop协…...

南通国际高中有哪些?南通惠立学校高中部校长见面日重磅来袭

惠灵顿&#xff08;中国&#xff09;自2011年成立以来&#xff0c;一直坚持深耕国际与双语教育&#xff0c;拥有丰厚的办学经验。依托于集团化的深厚经验南通惠立学校于2024-2025学年开设9-11年级&#xff0c;这所南通国际高中为高中学生搭建一个集卓越升学成果、强大师资、纯正…...

Al智能图像处理APP,安卓手机专用一键优化工具资源合集下载

### 标题&#xff1a;Al智能图像处理APP&#xff0c;安卓手机专用一键优化工具资源合集下载 随着科技的进步&#xff0c;图像处理技术也在不断提升。为了满足用户对图像处理日益增长的需求&#xff0c;我们隆重推出了一款功能强大的图像处理工具——Al智能图像处理APP。这款安…...

Kettle根据分类实现Excel文件拆分——kettle开发31

将整理好的一份供应商付款明细Excel文件&#xff0c;按供应商拆分成多个Excel文件。 实现思路 本文我们首先将供应商付款明细表&#xff0c;按照“名称”拆分成多份Excel文件。拆分Excel文件打算用两个转换实现&#xff0c;一个用来将Excel数据读取到参数中&#xff0c;另外一…...

merkle tree中文

Merkle tree merkle tree中文文档英文文档 #include <cstdlib> #include <string> #include <bitcoin/bitcoin.hpp>BC_USE_LIBBITCOIN_MAINusing namespace bc;bc::hash_digest calculate_merkle_root(bc::hash_list &merkle);int bc::main(int argc, …...

制作自己的 @OnClick、@OnLongClick(告别 setOnClickListener,使用注解、反射和动态代理)

前言 前面我们说过 ButterKnife 这个库&#xff0c;这个库实现不仅实现了 View 的绑定&#xff0c;而且还提供了大量的注解如 BindView、OnClick、OnLongClick 等来简化开发过程中事件绑定。而这些功能的实现是通过 APT 也就是注解处理器&#xff0c;在编译期间生成 Java 代码…...

Android基础-RecyclerView的优点

一、引言 在Android开发中&#xff0c;RecyclerView是一个强大而灵活的控件&#xff0c;用于展示大量数据集合的视图。相比于传统的ListView和GridView&#xff0c;RecyclerView提供了更高的性能、更多的布局选择和更丰富的交互体验。本文将详细阐述RecyclerView的功能作用以及…...

C# Winform 用户控件,扩展控件,自定义控件综合实例

Control类是Windows窗体控件的基类&#xff0c;它提供了在 Windows 窗体应用程序中进行可视显示所需的基础结构&#xff0c;可以通过继承来扩展熟悉的用户控件和现有控件的功能。本列介绍三种不同自定义控件以及怎么创建他们。 自定义控件分类 用户控件&#xff1a;基本控件的…...

经济学和金融学有什么区别?

中文版 金融学和经济学是两个密切相关但有所不同的学科&#xff0c;它们各自侧重于不同的研究领域和方法。 经济学 (Economics) 经济学是研究如何配置有限资源以满足人类无限需求的学科。它可以分为两个主要分支&#xff1a; 宏观经济学 (Macroeconomics): 研究经济整体的行…...

Java课程设计:基于swing的学生信息管理系统

文章目录 一、项目介绍二、项目展示三、源码展示四、源码获取 一、项目介绍 这款Java swing实现的学生信息管理系统和jsp版本的功能很相似&#xff0c;简单的实现了班级信息的增删改查&#xff0c;学生信息的增删改查&#xff0c;数据库采用的是mysql&#xff0c;jdk版本不限&…...

【代码】3d->video

mesh->video import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from matplotlib.animation import FuncAnimation import matplotlib.animation as animation from pywavefront import Wavefront import osnamedog # 读取OBJ文…...

算法01 递推算法及相关问题详解【C++实现】

目录 递推的概念 训练&#xff1a;斐波那契数列 解析 参考代码 训练&#xff1a;上台阶 参考代码 训练&#xff1a;信封 解析 参考代码 递推的概念 递推是一种处理问题的重要方法。 递推通过对问题的分析&#xff0c;找到问题相邻项之间的关系&#xff08;递推式&a…...

自动化测试火狐下载文件

本篇文章介绍selenium中火狐浏览器如何下载文件。比如我想把这个MP4的视频文件下载下来。 点击之后查看下载的类型是video/mp4 指定使用火狐浏览器 profile webdriver.FirefoxOptions() # 设置firefox默认的下载路径&#xff0c;0表示桌面&#xff0c;1表示我的下载&#xf…...

基于JSP技术的定西扶贫惠农推介系统

开头语&#xff1a;你好呀&#xff0c;我是计算机学长猫哥&#xff01;如果有相关需求&#xff0c;文末可以找到我的联系方式。 开发语言&#xff1a;JSP 数据库&#xff1a;MySQL 技术&#xff1a;B/S架构、JSP技术 工具&#xff1a;Eclipse、MySQL、Tomcat 系统展示 首…...

Linux 终端窗口设置为透明

Linux 终端窗口设置为透明 打开终端 右键鼠标 选择Profile Preferences 点击Background 选择 Transparent background 拖动滑条调整透明度 完成。...

MySQL 中 Varchar(50) 和 varchar(500) 区别是什么?

一. 问题描述 我们在设计表结构的时候&#xff0c;设计规范里面有一条如下规则: 对于可变长度的字段&#xff0c;在满足条件的前提下&#xff0c;尽可能使用较短的变长字段长度。 为什么这么规定&#xff1f;我在网上查了一下&#xff0c;主要基于两个方面 基于存储空间的考…...

强化RAG:微调Embedding还是LLM?

为什么我们需要微调&#xff1f; 微调有利于提高模型的效率和有效性。它可以减少训练时间和成本&#xff0c;因为它不需要从头开始。此外&#xff0c;微调可以通过利用预训练模型的功能和知识来提高性能和准确性。它还提供对原本无法访问的任务和领域的访问&#xff0c;因为它…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中&#xff0c;每个页面需要使用ref&#xff0c;onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入&#xff0c;需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章&#xff0c;二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑&#xff1a; &#x1f504; 一、起源与初创期&#xff1a;Swagger的诞生&#xff08;2010-2014&#xff09; 核心…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)

LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 题目描述解题思路Java代码 题目描述 题目链接&#xff1a;LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台

淘宝扭蛋机小程序系统的开发&#xff0c;旨在打造一个互动性强的购物平台&#xff0c;让用户在购物的同时&#xff0c;能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机&#xff0c;实现旋转、抽拉等动作&#xff0c;增…...