# 通过 PLC 切换作业

您可以将当前加载的作业切换为视觉系统上存储的另一个作业，此时设备应联机。切换作业让您可以即时修改应用程序的各个方面（例如 HMI 或输入/输出设置），但会带来以下缺点：

- 切换速度慢（最少 3-5 秒，实际持续时间取决于作业的内容，例如电子表格中的 LatchImage 单元格的数量。
- 开始切换作业时，视觉系统必须处于暂停或脱机状态。
- 需要重新加载 WebHMI。
- I/O 系统更长时间断开。
- 如果适配器处于打开状态，它可能会丢失更改。
- 必须在作业之间复制 WebHMI 和 I/O 设置，即使它们保持相同也是如此。

您可以通过两种方式使用 PLC 切换作业：

- 按名称：您可以通过指定作业名称（不带 *.jobx 扩展名）来切换作业。在这种情况下，PLC 在 userdata 部分提供与您要切换到的作业名称相对应的 ASCII 字符串。

  例如，如果您在 userdata 部分提供字符串“myjob”，一旦 PLC 执行加载命令（十六进制的 0x4000，或十进制的 16384），视觉系统就会加载 myjob.jobx 作业。

- 按 ID：您还可以通过指定作业 ID（十六进制 0x0-0x3E7 或十进制 0-999 之间的整数）来更改作业。PLC 执行加载命令后，如果视觉系统找到名称中包含指定 ID 号的作业，即加载该作业。

  例如，如果您有一个名为 111_myjob 的作业存储在视觉系统上，指定命令 111 就会加载该作业。

有关可用作业切换命令和命令 ID 的总述，请参见下表：

操作 | 命令 ID（十六进制） | 命令 ID（十进制）
按名称加载作业 | 0x4000 | 16384
按 ID 加载作业 | 0x0-0x3E7 | 0-999

注意：

- 在通过 PLC 切换作业之前，应总是将视觉系统设置为暂停或脱机状态。否则，作业切换请求会生成一个错误并报告到 PLC，错误 ID 为 0x0401。
- 如果您指定的作业在视觉系统上不存在（也就是说，它没有存储具有指定名称或 ID 的作业），则向 PLC 所报告错误的 ID 为 0x0402。

有关如何执行作业切换的更多信息，请参阅适用的特定于协议的主题：

- 有关以太网/IP 信息，请参阅：通过以太网/IP PLC 加载作业
- 有关 PROFINET 信息，请参阅：通过 PROFINET PLC 加载作业