PS16 制造系统仿真实战 ← 返回学习门户

PLANT SIMULATION 16 · LEARNING NOTE

Lab 03:加入设备故障,比较缓冲与可靠性

本页目录

场景说明

Lab 02 的自动线在理论模型里每班约能完成 410 件,但现场实际只有约 360–385 件。维修记录显示 OP20 和 OP30 会随机停机。客户提出两个方案:扩大缓冲,或者改善 OP20 维修响应。你要用 Plant Simulation 判断哪一个更有效。

本课重点是把“名义节拍”升级为“随机可靠性系统”,并学会用多次运行而不是一次动画下结论。

研究问题

在 8 小时班次、来料间隔 55 秒的条件下:

  • 基线随机故障会使产量下降多少?
  • B10_20 从 5 增至 10 是否值得?
  • OP20 MTTR 从 18 分钟降到 10 分钟是否更有效?
  • 哪个状态变化解释产量改善?

参数表

设备 Processing time MTBF MTTR 口径
OP10_Load 55 秒 暂无故障 练习简化
OP20_Machine 70 秒 6 运行小时 18 分钟 故障仅作练习
OP30_Wash 50 秒 10 运行小时 12 分钟 故障仅作练习

真实项目必须确认 MTBF 是运行时间还是日历时间,计划维护是否剔除,以及维修等待是否包含在 MTTR 中。

步骤 1:复制已验证基线

  1. 打开 Lab02_ThreeStationLine_v01.spp
  2. 确认 Buffer 容量为 5/5、OP20 为 70 秒、OP30 为 50 秒。
  3. 运行一次无故障基线,记录 Throughput。
  4. Save As Lab03_Failures_v01.spp

如果无法复现 Lab 02 的结果,先回去修复,不要在错误基线上加故障。

步骤 2:给 OP20 添加故障

  1. Reset 模型。
  2. 双击 OP20_Machine
  3. 找到 Failures 页签或故障设置。
  4. 新建一个故障配置,命名为 F_Mechanical
  5. 激活该故障。
  6. 选择以间隔/可用性参数定义的模式;Plant Simulation 16 的字段名称会随故障模式变化。
  7. 设置 MTBF 或等价的故障间隔为 6 小时。
  8. 设置 MTTR 或等价的修复时间为 18 分钟。
  9. 如果界面要求分布,第一遍使用固定时间;确认逻辑后再换成指数/经验分布。
  10. 确认故障统计以设备运行时间或你明确选择的口径计算。
  11. 关闭后重新打开,检查小时与分钟单位。

找不到 MTBF/MTTR 字样时,按 F1 搜索 Failuresavailability。不要凭猜测把 Availability、Interval、Duration 三类字段混用。

步骤 3:故障隔离测试

在开启其他故障前验证 OP20:

  1. 将仿真结束时间临时改为 24 小时,保证能看到多次故障。
  2. 固定随机种子,便于复现。
  3. Start,观察 OP20 进入 Failed 状态。
  4. 故障时检查 B10_20 是否累积、OP10 是否最终 Blocked、OP30 是否消耗完 B20_30 后 Waiting。
  5. 检查修复后物流是否自动恢复。
  6. 在 OP20 Statistics 中确认 Failed 时间大于 0,其他设备 Failed 为 0。

如果出现故障后永不恢复,优先检查 Duration/MTTR 是否被输入成 18 小时。

步骤 4:给 OP30 添加故障

按相同方法:

  1. OP30_Wash → Failures
  2. 新建 F_Mechanical
  3. MTBF = 10 运行小时。
  4. MTTR = 12 分钟。
  5. 重新运行 24 小时隔离测试。
  6. 确认 OP30 故障会使 B20_30 填满,并可能向上游传播 Blocked。

步骤 5:恢复正式运行条件

  1. 结束时间恢复为 8 小时。
  2. Buffer 恢复 5/5。
  3. 确认两个故障配置都已启用。
  4. Save。

步骤 6:建立结果记录表

在模型中可先使用 TableFile,或先手工记录到 templates/experiment_results.csv

Scenario Replication Seed Throughput OP20 Failed OP20 Blocked OP30 Waiting Avg/End WIP
S0 1 1001

至少使用 10 个不同种子。调试阶段固定一个种子,实验阶段才变化。

步骤 7:运行基线 S0

  1. 场景 S0:Buffer 5/5,OP20 MTTR 18 分钟。
  2. 设置 Seed 1001,Reset,Start 到结束。
  3. 记录结果。
  4. 依次使用 1002–1010。
  5. 计算 Throughput 均值、最小、最大和标准差。

不要把 10 次结果加起来当成一个 80 小时班次;它们是 10 个独立的 8 小时样本。

步骤 8:运行缓冲方案 S1

  1. Save As Lab03_S1_Buffer10.spp,或通过集中参数表改变。
  2. 只把 B10_20 Capacity 从 5 改成 10。
  3. 其他参数和种子列表保持一致。
  4. 完成 10 次运行。
  5. 记录产量变化、OP10 Blocked 和期末 WIP。

步骤 9:运行维修改善方案 S2

  1. 恢复 B10_20 = 5。
  2. 把 OP20 MTTR 从 18 分钟改为 10 分钟。
  3. 其他条件不变。
  4. 使用相同的 10 个种子运行。
  5. 记录产量和状态。

步骤 10:解释结果机制

结果不能只写“S2 比 S1 好”。按下面链条解释:

OP20 MTTR 降低
→ OP20 Failed 时间下降
→ OP20 可加工时间增加
→ B10_20 长时间满载和 OP10 Blocked 缓解
→ B20_30 对 OP30 的供给改善
→ 良品产量和达标概率变化

若 Buffer 方案提高产量,应能看到它吸收了哪一类停机波动;若只增加期末 WIP 而产量不变,应明确写出。

增加 Chart(可选但推荐)

  1. 从 User Interface/Information Flow 中放置 Chart
  2. 打开 Chart,选择资源状态或按对象统计的数据源。
  3. 添加 OP10、OP20、OP30。
  4. 选择堆叠柱状或适合状态占比的显示。
  5. 运行后确认每个设备状态合计约 100%。

Plant Simulation 16 官方示例中的 Resource Statistics 使用颜色展示 Working、Setting-up、Waiting、Blocked、Failed 等状态:

Plant Simulation 16 的 Resource Statistics 与 HTML Report

来源:Siemens Plant Simulation 16 发布说明

故障结果检查清单

本课应提交

  • Lab03_Failures_v01.spp
  • L03-results.csv
  • L03-01-failure-propagation.png
  • L03-02-resource-statistics.png
  • 一页结论:S0/S1/S2 的产量、WIP、状态变化和推荐