Matlab simulink建模与仿真 第十章(模型扩展功能库)

2024-09-08 05:28

本文主要是介绍Matlab simulink建模与仿真 第十章(模型扩展功能库),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

参考视频:simulink1.1simulink简介_哔哩哔哩_bilibili

一、模型扩展功能库中的模块概览

        注:下面不会对Block Support Table模块进行介绍。

二、基于触发的和基于时间的线性化模块

1、Trigger-Based Linearization基于触发的线性化模块

(1)每次当模块受到触发时,都会调用linmod或者dlinmod函数,求出当前控制系统的线性状态空间模型(A、B、C、D四个矩阵以及其它的一些相关信息),相关信息会以结构体数组的形式存储在基本工作空间中(每触发一次,生成一个工作点,也就是求一次线性状态空间模型,这个工作点以结构体表示,若干个工作点便构成了结构体数组)。

(2)模块的触发方式有上升沿(rising)、下降沿(falling)、跳变(either)、函数调用(function-call)四种,下面以上升沿为例继续介绍。

(3)控制系统的线性状态空间模型与输入、输出无关,在构建控制系统时,输入和输出要分别用In模块和Out模块代替,Trigger-Based Linearization模块也是根据In模块和Out模块对模型中的控制系统进行识别的。

(4)上图示例中的方波发生器每10秒产生一个上升沿,仿真时长设置为25秒,那么仿真过程中Trigger-Based Linearization模块会受到两次触发,受到触发时它会求出当前时刻控制系统的线性状态空间模型,并输出到基本工作空间中,存储其的结构体数组名为“<模型文件名>_Trigger_Based_Linearization”,如下图所示(Ts并不是触发时刻,触发时刻记录在变量Operpoint中)。

2、Timed-Based Linearization基于时间的线性化模块

(1)每当达到设定的时间时,模块都会调用linmod或者dlinmod函数,求出当前控制系统的线性状态空间模型(A、B、C、D四个矩阵以及其它的一些相关信息),相关信息会以结构体数组的形式存储在基本工作空间中。

(2)双击模块可对时间进行设定,若设定是一个矩阵,则每个元素都为设定时间,每次达到设定时间都会生成一个工作点,工作点记录当前控制系统的线性状态空间模型,若干个工作点会存储在基本工作空间的结构体数组中。

(3)控制系统的线性状态空间模型与输入、输出无关,在构建控制系统时,输入和输出要分别用In模块和Out模块代替,Timed-Based Linearization模块也是根据In模块和Out模块对模型中的控制系统进行识别的。

(4)上图示例中,仿真时长设置为25秒,仿真过程中Timed-Based Linearization模块会在t=10s和t=20s时分别求出当前时刻控制系统的线性状态空间模型,并输出到基本工作空间中,存储其的结构体数组名为“<模型文件名>_Timed_Based_Linearization”,如下图所示(Ts并不是时刻值,时刻值记录在变量Operpoint中)。

(3)需要注意的是,该模块的仿真求解器需要是离散的,且仿真步长也是固定的。

三、其余几种模块

1、Model Info模型信息模块

(1)在建立模型时,有时需要给模型添加一些属性,比如创建者、创建日期、修改者、修改日期、版本号等,这时可以在模型文件中添加模型信息模块,将需要添加的属性配置进该模块即可。

(2)在下图所示的右侧输入窗口中可以编辑显示信息,除了“%<属性名>”会被替换为相应的文件属性以外,其它内容都会原封不动地显示到模型信息模块上,另外还可配置文本对齐方式(Horizontal text alignment)。

2、DocBlock文本模块

(1)文本模块的作用是在模型文件中添加注释,这和在C代码等代码中添加注释异曲同工。

(2)双击该模块,打开文本编辑器,在这里可以编辑注释。

这篇关于Matlab simulink建模与仿真 第十章(模型扩展功能库)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1147239

相关文章

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

SpringBoot整合DeepSeek实现AI对话功能

《SpringBoot整合DeepSeek实现AI对话功能》本文介绍了如何在SpringBoot项目中整合DeepSeekAPI和本地私有化部署DeepSeekR1模型,通过SpringAI框架简化了... 目录Spring AI版本依赖整合DeepSeek API key整合本地化部署的DeepSeek

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus

Python实现多路视频多窗口播放功能

《Python实现多路视频多窗口播放功能》这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下... 目录一、python实现多路视频播放功能二、代码实现三、打包代码实现总结一、python实现多路视频播放功能服务端开

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee

css实现图片旋转功能

《css实现图片旋转功能》:本文主要介绍了四种CSS变换效果:图片旋转90度、水平翻转、垂直翻转,并附带了相应的代码示例,详细内容请阅读本文,希望能对你有所帮助... 一 css实现图片旋转90度.icon{ -moz-transform:rotate(-90deg); -webkit-transfo

DeepSeek模型本地部署的详细教程

《DeepSeek模型本地部署的详细教程》DeepSeek作为一款开源且性能强大的大语言模型,提供了灵活的本地部署方案,让用户能够在本地环境中高效运行模型,同时保护数据隐私,在本地成功部署DeepSe... 目录一、环境准备(一)硬件需求(二)软件依赖二、安装Ollama三、下载并部署DeepSeek模型选

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下