Matlab基本建模工作流程.docxVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

Matlab基本建模工作流程

建立系统算法模型

当系统要求不完整且系统设计尚在开发中时,您无法预先定义文件管理和模型架构,但您仍然可以对基本系统算法进行建模。通过将模型组织为输入、输出和系统,您可以随着模型的增长为模型组件创建通用框架。

为了展示从有限信息开始的建模工作流程的第一阶段,此示例使用了由质量、弹簧和阻尼器组成的简单机械系统。

这个二阶微分方程表征了该系统。

在这个等式中:

是质量。

为阻尼系数。

是弹簧常数。

是加速度。

是速度。

是位移。

是外力。

解决提供了该方程的一种形式,可以更清晰地映射到Simulink?模型。

名为的模型ex_modeling_simple_system代表了这个方程。

Sum模块计算施加到质量上的净力。标记为Gain的模块1/m通过将净力乘以。二阶积分器块求解质量的速度和位置。

该模型将区块分为三个区域:

该区域Sources包含系统输入。

该区域System包含代表系统或工厂的块。

该区域Sinks包含系统输出。

通过预先组织模型,您可以随着模型的增长为模型组件创建一个通用框架。

由于此示例显示的是开发初期的模型,因此实际输入力未知,可以用各种标准源块表示。该模型使用Step块作为系统输入。显示了一些替代源块,但已注释掉。例如,如果数据可用,您可以使用FromSpreadsheet块加载经验数据。

同样,各种接收器块都可以接受输出位移。为了检查模拟结果是否符合预期,该模型使用Scope块来可视化信号。

创建模型组件

在收集系统需求时,您可以识别模型组件。即使规范不完整,您也可以识别组件接口的位置。

为了定义模型组件而不影响模拟结果和指定可能改变的接口,您可以创建子系统并以可视化的方式组织模型。

某些组件(例如数字控制器)应作为模型中的单个单元执行。对于这些具有已知边界的独立组件,您可以使用原子子系统。预先定义原子组件可避免在您想要生成独立代码时进行代价高昂的重构。

模型ex_modeling_components包含四个常见的模型组件。

机械系统—通过弹簧和阻尼器将质量与表面隔开

控制器——控制机械系统运动的算法

操作员——定义发送到控制器的命令的逻辑

环境——影响机械系统的外部干扰

控制器块上较粗的线宽表示控制器是一个原子子系统。

每个子系统块上的端口与子系统内的输入和输出块相对应。块标签显示相应端口的名称。例如,标记为Inport的块disturbance与disturbance机械系统块的端口相对应。

四个模型组件相互作用来确定质量的位置。

控制器计算将机械系统移动到目标位置所需的力。

操作员确定质量的目标位置,并使用Stateflow?图表实现相关的程序逻辑。

环境会产生干扰力,影响机械系统。

在模拟过程中,操作员告诉控制器等待2秒,然后将质量块向上移动2米。当质量块超过目标位置时,操作员告诉控制器将质量块定位在原始位置上方1米处。5秒后,环境干扰对物理系统施加稳定的力,控制器做出反应,将质量块稳定在目标位置。

3.管理信号线

随着模型的发展,模型组件有助于在功能和视觉上组织模型中的模块。要以类似的方式组织模型中的信号线,您可以应用各种策略,例如将信号分组到总线中。

为了演示如何减少信号线杂乱,此示例实现了一个具有多个传感器和执行器的模型。该系统有两个弹簧、阻尼器和质量块。一根梁连接两个质量块。

传感器读取质量块的位移。控制器调节梁中心的高度并通过计算执行器必须施加到质量块上的力来调平梁。控制器利用梁端之间的高度差,,使梁调平。

该模型ex_modeling_signals代表系统及其环境、操作员和控制器。

为了显示模拟后的信号,该模型使用了两个Scope块。一个Scope块显示目标和实际光束水平度。另一个Scope块显示光束在其中心的目标和实际位置,以及光束在两端的实际位置。

标记要记录的信号

为了减少信号线的数量,您可以将查看器直接连接到信号线或启用信号线的数据记录。通过选择一种不使用接收器块来可视化模拟数据的方式,您可以避免额外的信号线。

该模型ex_modeling_simulation_data_inspector删除了范围块和相关信号线,然后启用这些信号的数据记录。

在子系统中,标有和Operator的信号被标记为需要记录,如每个信号上方的图标所示。x_goaldelta_goal

在子系统中,标有和的Controller信号被标记为需要记录。xdelta

在子系统中,标有和的MechanicalSystem信号被标记为需要记录。x1x2

模拟数据检查器可让您查看模拟后记录的信号数据。

总线中的组信号

为了进一步减少信号线的数量,您可以使用BusCreator或OutBus

文档评论(0)

AI智博信息 + 关注
实名认证
文档贡献者

Python数据挖掘

1亿VIP精品文档

相关文档