创建一个离散事件系统对象
的MATLAB离散事件系统block允许您创建自定义离散事件系统对象™,并在SimEvents中使用它®模型。为了创建事件驱动的实体流系统,该块使用离散事件System对象matlab。DiscreteEventSystem
类的继承和扩展matlab。系统
类。
方法
的matlab。DiscreteEventSystem
类提供了让您使用离散事件系统的这些元素的方法:
定义对象实体类型、端口和存储的属性
getEntityPortsImpl
-定义离散事件系统的输入和输出端口getEntityStorageImpl
-定义离散事件系统的实体存储元素getEntityTypesImpl
-定义离散事件系统的实体类型
初始化事件
setupEvents
-初始化实体生成事件
对象的运行时行为
在实现这些方法时,定义实体类型、实体存储、创建、调度和取消事件。使用这些函数:
定义实体类型
entityType
-定义实体类型
定义实体存储
queueFIFO
—定义先进先出(FIFO)队列存储queueLIFO
—定义LIFO (last-in last-out)队列存储queuePriority
—定义优先级队列存储queueSysPriority
—定义系统优先级队列存储
创建事件
eventGenerate
-创建实体生成事件eventIterate
-创建实体迭代事件eventTimer
-创建实体定时器事件eventForward
-创建实体转发事件eventDestroy
-创建实体销毁事件eventTestEntry
—创建一个事件,以指示存储的接受策略已更改,并且存储将重新测试到达的实体eventAcquireResource
—创建资源获取事件eventReleaseResource
-创建一个事件来释放之前获得的资源(此方法允许部分资源释放)eventReleaseAllResources
—创建事件,释放实体获取的所有资源
取消事件
cancelDestroy
-取消先前计划的实体销毁事件cancelForward
-取消实体转发事件cancelGenerate
-取消先前计划的实体生成事件cancelIterate
-取消先前计划的迭代事件cancelTimer
-取消预先安排的定时器事件cancelAcquireResource
—取消预先安排的资源获取事件
资源管理
getResourceNamesImpl
—定义离散事件系统获取资源的资源池resourceType
—指定实体类型和实体获取的资源名称eventAcquireResource
—创建资源获取事件eventReleaseResource
-创建一个事件来释放之前获得的资源(此方法允许部分资源释放)eventReleaseAllResources
—创建事件,释放实体获取的所有资源cancelAcquireResource
—取消预先安排的资源获取事件resourceSpecification
—资源类型和数量eventAcquireResource
或eventReleaseResource
请求initResourceArray
-初始化resourceSpecification
数组,用于代码生成resourceAcquired
—指定资源获取成功后的事件动作resourceReleased
—指定成功释放资源时的事件动作
继承的方法matlab。系统
类
继承matlab。DiscreteEventSystem
类的子集matlab。系统
类方法。
系统对象显示头 |
|
系统对象显示的属性组 |
|
非活动财产状态 |
|
验证属性值 |
|
可调属性更改时的操作 |
|
步骤方法的输入数量 |
|
系统块输入接口名称 |
|
step方法的输出数 |
|
系统块输出接口名称 |
|
离散状态属性值 |
|
初始化系统对象 |
|
重置系统对象状态 |
|
释放资源 |
|
从MAT文件加载系统对象 |
|
在MAT文件中保存系统对象 |
|
系统对象信息 |
|
输出端口尺寸 |
|
输出端口的数据类型 |
|
输出端口复杂度 |
|
离散状态大小、数据类型和复杂性 |
|
要显示为块图标的名称 |
|
查询采样时间 |
有关这些方法的详细信息,请参见自定义Simulink系统对象金宝app.
引用和提取实体
在离散事件系统对象中引用实体属性或系统属性时,使用以下格式:
属性或属性 格式 访问 属性
entity.data。attribute_name
读/写
优先级属性
entity.sys.priority
读/写
ID属性
entity.sys.id
只读
如果一个实体是MATLAB离散事件系统块被请求进行提取,则
退出
方法被触发。当退出
方法调用时,其目的地参数设置为提取
.看到修改
用于实体修改。
另请参阅
matlab。DiscreteEventSystem
|matlab。系统