动态系统建模8:层次化建模

概览
子系统
总线信号
封装

子系统介绍
使用子系统具有如下优点:
有助于减少您模型窗口中模块的数量
能让您将功能相关的模块封装在一起
它可以让您建立一个分层框图

新建子系统
选定模块,在编辑菜单里选择Create subsystem 就可把选定的模块组成一个子系统。

打开子系统的内容
双击子系统模块,即可查看子系统内容

子系统通道处理
输入\输出模块是子系统到母系统的信号通道

使用子系统创建一个可视化的层次结构图

减少信号拥堵
总线信号允许包装为一根总线集成多个信号

 

虚子系统和非虚子系统

排序和模块优先级
排序
Simulink决定执行次序,该次序不唯一
每一模块必须在它驱动的直接馈通块之前进行更新
快速率的模块优先级高
相同速率的模块任意次序排列

通过模块属性对话框中的 General 属性页
修改模块的执行次序

通过Simulation→Configuration
Parameters→Diagnostics 对话框配置
Simulink的模块优先级

模块属性
模块的优先级是相对的
需要为两至多个模块设置优先级
数字越小优先级越高

触发子系统
一旦控制信号(触发信号)在所设置的方向上过零,触发子系统就执行
在两个连续的触发之间,触发子系统的输出总是保持为上一个更新值.
触发子系统中不能包含连续模块
触发子系统中可以包含采样时间设为继承的离散模块

 

使能子系统
只要控制信号(使能信号)为正,使能子系统就可以执行
当使能子系统不活动时,其输出可以为上一更新值或复位为初值
从子系统级输出端口的参数对话框中进行选项的设置输出端口的属性
当使能子系统恢复活动时,其状态值可以恢复为上一个更
新值或重初始化为初始条件,可以从使能模块的参数对话框中进行选项的设置

 

模块封装
你可以封装子系统、模型模块和S-Function 模块,封装让你:
创建模块的自定义图标
创建模块的一个参数对话框
创建模块帮助栏
通过参数化,建立一个独立的模块工作空间以保证其可重用性
用户可以避免看到一些不必要的复杂的结构
保护模块内的内容不被篡改

创建一个封装
选择子系统subsystem ,然后选择Edit  Mask Subsystem.

使用封装编辑器
Icon图标为封装的子系统创建一个自定义标签
Parameters参数设计封装参数对话框的输入提示和对应的变量名称
Documentation文字说明为模块提供相应的描述和说明文字

选定子系统,然后选择Edit --Look Under Mask,可以查看封装子系统的内容

封装后的工作空间
子系统好比脚本文件
没有输入参数
使用的参数来自MATLAB工作空间
封装后的子系统好比函数文件
由对话框输入参数
不能使用MATLAB工作空间
其它子系统不能看见其变量
在独立的工作空间中,用户可以在同一个模型中使用数个
相同的子系统,并为相同的变量赋予不同的值。

初始化命令
初始化命令是普通的MATLAB命令
当模块对话框发生改变或仿真正在运行时,该命令被执行

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值