SimEvents

SimEvents

建模和模拟消息通信和离散事件系统

开始:

Simulink中的离散事件仿真

使用SimEvents的离散事件模拟提供了使用混合系统模型、基于代理的模型、状态图和流程流分析和优化事件驱动通信的功能。

在这个集成建模和数据分析环境中,您可以:

  • 为航空航天、汽车和电子应用设计分布式控制系统、硬件架构、传感器和通信网络
  • 为流程建模,执行产能规划,优化制造和运营的供应链
  • 分析和优化通信网络的端到端延迟、吞吐量、丢包和其他性能特征
  • 自定义队列、路由算法、处理延迟和优先排序方案
  • 模拟包含基于时间、基于事件和基于代理组件的混合系统
  • 模拟事件驱动的过程,例如带有自主代理的任务计划或制造过程的各个阶段

实体、消息、事件和资源

SimEvents用于对模型中感兴趣的离散项(表单或实体、消息或资源)建模

实体和消息

使用SimEvents,您可以创建实体或消息来表示感兴趣的离散项,例如通信系统中的包或机场滑行道上的飞机。系统中消息或实体的生成、移动和处理会导致一些事件,例如包的到达或飞机的起飞。反过来,这些事件修改系统中的状态以影响系统行为。

用于运筹学的SimEvents。

使用SimEvents建模、分析和优化各种操作流程。

属性和资源

您可以使用属性来描述实体,例如目标地址、处理时间或服务器延迟。实体还可以获取和释放资源,这些资源可以表示实体用来完成任务或事件的供应品、机器甚至人员。

洛·马公司建立SimEvents模型来预测舰队性能。

洛克希德·马丁公司开发了F-35机队的离散事件模型,加速了模拟,并插值了结果。

事件动作和实体的程序化控制

您可以通过以下方式以编程方式控制事件操作和消息或实体:

  • 为发生在不同块中的实体事件编写MATLAB代码,例如Generator、Queue和Server块。这些事件操作使您能够操作实体属性和优先级。
  • 在事件操作中,调用可以修改实体并启动传统时间驱动执行的Simulink函数。
  • 使用状态流离散事件图块定义自定义队列、路由实体和创建自定义实体操作算法。
  • 使用MATLAB离散事件系统块,为您的离散事件模型编写新的离散事件组件和块。
基于模型设计的SimEvents。

使用SimEvents将系统仿真或环境建模添加到算法建模和图形化编程中®

SimEvents块和设计模式

SimEvents提供块,使您能够在系统中创建、处理、存储和移动消息或实体及其资源。

  • 您可以对简单和复杂的队列和服务器网络建模。
  • 通过连接门和开关块,可以建立实体响应事件的路径。这些路径可以包括延迟和选择性切换标准。
  • SimEvents中的许多参数可以通过编程方式确定,以模拟系统中的概率变化。
  • 您还可以使用状态流离散事件图或MATLAB离散事件系统块来构建您自己的特定于域的块。
  • 此外,您可以使用Simulink功能,例如屏蔽子系统和创建库,将SimEvents子系统构建为可以被其他人共享和重用的组件块。

SimEvents设计模式库包含了用于通用设计模式的预定义块,比如在生成实体时戳时间戳,或者在Simulink中提取实体的属性作为信号。

用离散事件仿真优化汽车制造过程

戴姆勒工程师使用Simulink和SimEvents进行模拟,以帮助运营决策,预测制造工艺变化的结果,并提高生产线效率。

结果的分析与可视化

通过制作动画、使用统计数据和作用域以及调试来深入了解模型的行为。

动画

您可以通过内置的实体动画观察模型中的实体移动。您还可以通过为模型中的实体和事件创建的自定义观察器来构建自己的MATLAB动画。

使用SimEvents建模和模拟诊断医疗设备。

利用SimEvents开发复杂的机电和流体器件模型。

统计和范围

大多数SimEvents块生成统计信息,使您能够监视聚合度量,例如平均服务时间、队列长度和服务器利用率。自定义作用域使您能够使用熟悉的阶梯和主干图可视化这些信号。

TriVector验证战神I火箭的时间延迟。

TriVector使用SimEvents来验证战神1号火箭的时间延迟。

SimEvents调试器

SimEvents调试器是一个独立的工具,您可以通过在每一步暂停模拟或设置断点来查询模拟行为来调试模型。调试器还创建一个模拟日志,其中包含关于模拟中将要发生的事情或刚刚发生的事情的详细信息。通过检查此日志,您可以调试离散事件模拟和混合模拟。

空中客车国防和空间模拟木星冰卫星探测器任务数据流。

空中客车国防航天公司使用Simulink和SimEvents对科学数据流进行建模,并对多日JUICE任务进行离散事件模拟。

Baidu
map