【Simulink系列】——Simulink子系统子系统封装模块库技术

声明:本系列博客参考有关专业书籍,截图均为自己实操,仅供交流学习!

引入

前面对于简单的动态系统仿真,可以直接建立模型,然后仿真。但是对于复杂的系统,直接建立系统会显得杂乱无章,下面介绍子系统的建立,为复杂系统的建立打下基础。

一、简单子系统

①直接使用Subsystem

②选择已有模块生成

二、高级子系统

高级子系统也叫条件执行子系统,其是否执行受控制信号的控制,分为以下几种类型:

①使能子系统(Enabled):控制信号为正时,子系统执行。

②触发子系统(Triggered):控制信号符号变化时,子系统执行。分上升沿触发、下降沿触发、双边沿触发三种。

③函数子系统(Function):用户自定义的S-function中发出函数调用时,子系统执行。

注:Simulink系统的最高层不允许使用Enabled和Triggered信号,而允许在子系统中使用。

1、使能子系统

Unary Minus模块用于将信号反相,用在这里即控制方波信号为负时,第二个使能子系统执行。下面分别为两个使能子系统的相关设置:

状态重置reset表示在使能子系统开始执行时,系统中的状态将被重新设置为初始参数值;转台保持held表示在子系统开始执行时,状态保持不变。

还是和之前博客同样的问题,信号频率与设置的预期不一致??

2、触发子系统

三个触发子系统分别设置为上升沿触发、下降沿触发、双边沿触发(任一沿):

注:这里可以发现触发器类型中有一项“函数调用”,用于函数调回,即当输入信号满足某一函数条件时,模块开始执行(也就是说函数子系统包含在触发子系统中)。

3、其他子系统

①触发使能子系统

触发与使能条件均满足时,子系统才开始执行!

注:所有的条件执行子系统(高级子系统)不允许出现多个触发或使能信号,若必须使用多个控制信号,必须先使用逻辑操作符将控制信号组合,产生单一的触发信号!

②原子子系统

  • 子系统为一实际的模块,需要按顺序连续执行
  • 子系统作为一个整体进行仿真,功能类似于一个单独的系统模块
  • 子系统中的模块在子系统中被排序执行

 三、子系统封装

之前介绍的系统仿真前,需要对子系统中各模块参数进行逐一设置,带来诸多不便。子系统封装可以实现只对子系统参数进行设置,而无需关心子系统内部模块的实现情况!

左键点击子系统上部会出现“子系统模块”选项,点击创建封装即可弹出“封装编辑器”

红框四个窗口代表不同功能:

①参数与对话框(Parameters & Dialog)

最重要,增加或删除子系统参数对话框中的变量及属性。变量类型有3类:Edit(可编辑型)、Check box(复选框型)、Popup(下拉菜单型)。

  • 用户可以从左侧添加功能进入Dialog box中,然后通过右击对该模块进行删除、复制和剪切等操作。
  • Variable(变量):输入变量的名称。
  • Type(类型)栏主要用于设置模块显示的封装类型。
  • Description(名称)栏主要用于输入描述文本。
  • Help(提示)栏主要用于输入帮助文本。

②代码(Code)

初始化回调在这里,可通过命令函数可设置子系统参数初始值设定,可对图标绘制函数的初始值进行设置等。

  • 这部分通常用于定义或修改模块的内部逻辑和功能。
  • 在封装编辑器中,代码可能涉及自定义函数、算法或其他实现模块特定行为的脚本。
  • 通过编写或修改代码,用户可以精确地控制模块的行为和性能。

③约束(Constraints)

  • 约束用于定义模块输入和输出之间的关系或限制。
  • 这些约束可以确保模块在特定条件下正常工作,或者在满足特定条件时触发特定的行为。
  • 例如,约束可以限制输入值的范围,或要求输入和输出之间满足特定的数学关系。

④图标(Icon)

如plot代表图标是显示出曲线,dpoly代表图标是显示传递函数。

  • 图标用于自定义模块在Simulink界面中的显示方式。
  • 通过Icon选项卡,用户可以创建具有特定形状、颜色和文本的图标,以便更轻松地识别和管理模块。
  • Drawing commands栏允许用户输入绘制模块图标的命令,Simulink提供了一组显示文本、一个或多个图表或显示传递函数的命令,用户可以使用这些命令来绘制图标。

四、模块库技术

自定义模块太多时不好组织管理,模块库技术可组织和管理具有某种属性的同一类模块。模块库即具有某种属性的一类模块的集合,库浏览器的树形分支菜单就是分好不同领域的模块库,用户也可建立自己的模块库。

 往期精彩

STM32专栏(付费9.9)icon-default.png?t=N7T8http://t.csdnimg.cn/E2F88

OpenCV-Python专栏(付费9.9)icon-default.png?t=N7T8http://t.csdnimg.cn/zK1jV

AI底层逻辑专栏(付费9.9)icon-default.png?t=N7T8http://t.csdnimg.cn/zic0f

机器学习专栏(免费)icon-default.png?t=N7T8http://t.csdnimg.cn/FaXzAFreeRTOS专栏(免费)icon-default.png?t=N7T8http://t.csdnimg.cn/SjIqU电机控制专栏(免费)icon-default.png?t=N7T8http://t.csdnimg.cn/FNWM7 

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

C语言 int和unsigned int逻辑比较

文章目录 测试1、测试 CMP (int,int)2、测试 CMP (int ,unsigned int)3、测试 CMP (unsigned int ,unsigned int)4、测试 CMP(int ,常量) 总结 测试 在IAR(8.40.2)平台下测试单片机为STM32F103ZET6 1、测试 CMP (int,int) //a -2,b 3 int test_fun(int a, int…

二次供水物联网:HiWoo Cloud助力城市水务管理升级

随着城市化的快速推进,二次供水系统作为城市基础设施的重要组成部分,其稳定运行和高效管理显得至关重要。然而,传统的二次供水管理方式在应对复杂多变的城市供水需求时,显得力不从心。为了破解这一难题,HiWoo Cloud平台…

StarRocks实战——携程酒店实时数仓

目录 一、实时数仓 二、实时数仓架构介绍 2.1 Lambda架构 2.2 Kappa架构 三、携程酒店实时数仓架构 3.1 架构选型 3.2 实时计算引擎选型 3.3 OLAP选型 四、携程酒店实时订单 4.1 数据源 4.2 ETL数据处理 4.3 应用效果 4.4 总结 原文大佬的这篇实时数仓建设案例有借…

龙蜥OS 尝试

> 尝试一下龙蜥OS,和Centos8应该没什么区别。 阿里云版本龙蜥 https://alinux3.oss-cn-hangzhou.aliyuncs.com/aliyun_3_x64_20G_nocloud_alibase_20230727.vhd Index of /anolis/8.8/isos/GA/x86_64/ (openanolis.cn) 网卡 我在虚拟机上安装完后,…

Spring常见面试题知识点总结(二)

4. 面向切面编程(AOP): AOP的基本概念。 AOP(Aspect-Oriented Programming,面向切面编程)是一种编程范式,旨在通过切面(Aspect)将横切关注点与核心业务逻辑分离&#x…

Chondrex--Mouse Anti-OVA IgG1 Antibody Assay Kit

卵清蛋白(ovalbumin, OVA)是鸡蛋清中的主要蛋白成分,是一种大而复杂的糖蛋白,能够引起机体适度的免疫性,常用作各种免疫学研究的抗原。OVA已被用于诱导IgE介导的疾病,评估疫苗递送方法,以及通过…

动态规划|【斐波那契数列模型 】|面试题08.01三步问题

目录 题目 思路 普通思路 动态规划思路 1.状态表示 2.状态转移方程 3.初始化 4.填表顺序 5.返回值 代码 空间优化 题目 题目链接 面试题 08.01. 三步问题https://leetcode.cn/problems/three-steps-problem-lcci/ 三步问题。有个小孩正在上楼梯,楼梯有n…

springboot-基础-添加model和controller的简单例子+常用注解含义

备份笔记。所有代码都是2019年测试通过的,如有问题请自行搜索解决! 上一篇:springboot-基础-eclipse配置helloword示例 目录 添加model和controller的例子注解开发使用RestController 大坑 Model ModelMap和ModelAndView的区别 添加model和c…

ubuntu常见配置

ubuntu各个版本的安装过程大差小不差,可以参考,ubuntu20.04 其它版本换一下镜像版本即可 安装之后需要配置基本的环境,我的话大概就以下内容,后续可能有所删改 sudo apt-get update sudo apt-get install gcc sudo apt-get inst…

流模型 Flow 超详解,基于 Flow 的生成式模型,从思路到基础到公式推导到模型理解与应用(Flow-based Generative Model)

参考文献: [1] Dinh L, Krueger D, Bengio Y. Nice: Non-linear independent components estimation[J]. arXiv preprint arXiv:1410.8516, 2014. [2] Dinh L, Sohl-Dickstein J, Bengio S. Density estimation using real nvp[J]. arXiv preprint arXiv:1605.08803…

测试开发(6)软件测试教程——自动化测试selenium(自动化测试介绍、如何实施、Selenium介绍 、Selenium相关的API)

接上次博客:测试开发(5)测试分类标准 :按测试对像划分、按是否查看代码划分、按开发阶段划分、按测试实施组织、按是否运行划分、按是否手工划分、按测试地域划分-CSDN博客 目录​​​​​​​ 什么是自动化测试 自动化测试介绍…

echarts图表用key强制刷新后空白

我的需求是echarts图表全屏后退出全屏在edge浏览器上没有什么问题但是在Chrome浏览器上会出现表格的线不能变回原来的比例的问题 我就想在退出全屏的时候强制刷新一下echarts图表外面的这个div useEffect(() > {if (col) {col.addEventListener("webkitfullscreenchan…

水电表远程集中抄表管理系统

水电表远程集中抄表管理系统是当前水电行业智能化发展的关键技术之一,为水电企业和用户提供了便捷、高效的抄表管理解决方案。该系统结合了远程监控、自动抄表、数据分析等多种功能,实现了水电抄表的智能化和精准化,为用户节省了大量人力物力…

golang学习5,glang的web的restful接口

1. //返回json r.GET("/getJson", controller.GetUserInfo) package mainimport (/*"net/http"*/"gin/src/main/controller""github.com/gin-gonic/gin" )func main() {r : gin.Default()r.GET("/get", func(ctx *…

第五节:Vben Admin权限-前端控制方式

系列文章目录 第一节:Vben Admin介绍和初次运行 第二节:Vben Admin 登录逻辑梳理和对接后端准备 第三节:Vben Admin登录对接后端login接口 第四节:Vben Admin登录对接后端getUserInfo接口 第五节:Vben Admin权限-前端控制方式 文章目录 系列文章目录前言一、Vben Admin权…

【极客技术】前 Twitter 工程师正在构建 Particle,一款由人工智能驱动的新闻阅读器

Particle.news是一个由前Twitter工程师领导的团队创建的新型企业,它在周末进入了私人测试阶段。这家初创公司提供一种个性化的“多视角”新闻阅读体验,不仅利用AI技术来总结新闻,还旨在公平地补偿作者和出版商——至少这是它们的宣称。 尽管…

数据结构(C语言)代码实现(十)——链队列循环队列

目录 参考资料 链队列的实现 LinkQueue.h LinkQueue.cpp 测试函数test.cpp 测试结果 循环队列的实现&#xff08;最小操作子集&#xff09; 完整代码 测试结果 参考资料 数据结构严蔚敏版 链队列的实现 LinkQueue.h #pragma once #include <cstdio> #incl…

到底用不用取地址符,用了有啥区别嘛

一段代码解释&#xff1a; #include <iostream> using namespace std; void swap1(int &a,int &b){int t;ta;ab;bt; } void swap2(int a,int b){int t;ta;ab;bt;cout<<"Im the answer of swap2 : "<<a<<" "<<b<…

【软考-高级软件工程师-信息系统项目管理师】 第三章 信息系统治理知识点 【五分钟看懂】

IT治理用于描述组织在信息化建设和数字化转型过程中是否采用有效的机制使得信息技术开发利用能够完成组织赋予它的使命。IT治理的核心是关注IT定位和信息化建设与数字化转型的责权利划分。 1、IT 治理体系的具体构成包括 IT 定位&#xff1a; IT 应用的期望行为与业务目标一致…

SAP FICO 更改已有业务数据的成本中心公司代码/业务范围

如果对已经发生业务数据的成本中心进行公司代码/业务范围修改&#xff0c;系统会报错&#xff0c;如下图所示 可参考SAP note 62716 - KS020 for change of company code, business area进行解决 解决办法&#xff1a; KS02修改成本中心描述 如下图所示会有一个新的期间&…