3. PLC 与 Logix 平台基础

学习 Studio 5000 之前,必须先理解它所面对的“被编程对象”——可编程逻辑控制器(PLC)本身。PLC 不是一台普通计算机,它被设计成在工业现场长期、稳定、确定性地执行控制逻辑。本节从 PLC 工作原理出发,逐步过渡到罗克韦尔 Logix 平台、控制器系列、内存结构和扫描周期,为后续的标签编程、任务组织和指令使用打下基础。

一、PLC 工作原理:输入—程序—输出的循环

PLC 的核心工作方式可以概括为“采样输入、执行程序、刷新输出”的循环。它并不像 PC 那样随时响应事件,而是按固定节奏反复执行同一套逻辑。一个典型循环包含以下阶段:

  • 输入采样:读取所有输入模块的当前状态,写入输入映像区。
  • 程序执行:CPU 按用户程序顺序逐条执行指令,读取输入映像、内部变量和输出映像。
  • 输出刷新:把输出映像区的结果一次性写到输出模块,驱动现场执行器。
  • 系统任务:通信、诊断、背板扫描等由操作系统在后台或分时完成。

这种“集中采样、集中输出”的机制,使 PLC 具有确定性和抗干扰能力。即使现场信号在程序执行中途发生变化,也要等到下一个扫描周期才会被程序看到,从而避免逻辑抖动。

二、Logix 平台与控制器系列

罗克韦尔的 Logix 平台是一个统一架构,把 PLC、运动控制、过程控制、安全控制整合在同一套编程模型和通信框架中。其核心是 Logix 控制器,常见系列包括:

系列 典型型号 定位与特点
CompactLogix L1x、L2x、L3x、L4x、L5x 中小型机器控制,集成度高,性价比好
ControlLogix L6x、L7x、L8x 大型过程与工厂自动化,模块化、可冗余
GuardLogix L6xS、L7xS、L8xS 安全控制,支持 SIL 等级安全逻辑
SoftLogix 基于 PC 的软控制器 在标准计算机上运行 Logix 内核

不同系列在指令集、标签模型和 Studio 5000 工程结构上高度一致,差异主要体现在性能、内存容量、I/O 扩展能力和通信接口上。因此,掌握一套 Logix 编程方法,可以较平滑地迁移到其他型号。

三、内存结构与标签模型

传统 PLC 常用数据表(如 N7、F8、B3)按地址访问数据,而 Logix 平台采用标签化(Tag-based)内存模型。每个数据对象都有名称、数据类型和作用域,程序通过标签名访问,而不是通过物理地址。

  • 控制器作用域标签:在整个控制器内可见,可被多个程序访问。
  • 程序作用域标签:仅在所属程序内可见,适合局部变量。
  • 预定义数据类型:BOOL、SINT、INT、DINT、REAL、STRING 等。
  • 结构化数据类型:用户自定义 UDT,把相关数据组织成一个整体。
  • 数组:同一类型元素的集合,适合批量数据处理。

Logix 内存还分为数据区和逻辑区。数据区保存标签值,逻辑区保存梯形图、功能块、结构化文本等程序代码。控制器通过标签数据库把两者关联起来,使程序可读性和可维护性大幅提升。

四、扫描周期与任务模型

扫描周期是 PLC 运行的时间节拍。在 Logix 中,扫描周期由任务(Task)组织,任务下再分程序(Program),程序内包含例程(Routine)。任务类型主要有三种:

  • 连续任务:循环执行,优先级最低,适合一般逻辑。
  • 周期任务:按设定周期触发,适合需要稳定节拍的控制。
  • 事件任务:由事件触发,如输入变化、通信事件,适合快速响应。

扫描周期时间由输入采样、程序执行、输出刷新和系统开销共同决定。程序越长、指令越复杂、通信负载越大,扫描周期越长。对于高速设备,需要合理划分任务优先级,把关键逻辑放入周期任务或事件任务,避免被连续任务拖慢。

关键理解:扫描周期不是越短越好,而是要与被控对象的响应要求匹配。周期过短会增加 CPU 负担,周期过长则可能漏掉快速信号。合理做法是先估算工艺允许的最大响应时间,再反推任务周期和程序规模。

五、案例:一条包装线的扫描周期分析

假设一条包装线使用 CompactLogix 控制器,包含输送带控制、光电检测、气缸动作和 HMI 通信。工程师最初把所有逻辑放在一个连续任务中,发现高速计数信号偶尔丢失。分析后发现:连续任务扫描周期约 12 ms,而光电信号脉宽只有 5 ms,导致部分脉冲未被采样。

调整方案如下:

  1. 把高速计数和急停逻辑放入 2 ms 周期任务。
  2. 把 HMI 通信和报表逻辑放入 20 ms 周期任务。
  3. 把一般输送带逻辑保留在连续任务中。
  4. 使用 Produced/Consumed 标签减少跨控制器通信对扫描的影响。

调整后,高速信号不再丢失,CPU 负载也保持在合理范围。这说明扫描周期和任务划分是 Logix 项目设计中的关键环节,而不是编程完成后的附属工作。

六、常见误区与复盘

  • 误区一:把 PLC 当成 PC 程序。PLC 是循环扫描,不是事件驱动,不能假设代码随时被调用。
  • 误区二:所有逻辑都放连续任务。关键逻辑可能被长扫描周期延迟,应使用周期或事件任务。
  • 误区三:忽视标签作用域。控制器标签和程序标签混用,容易造成命名冲突或访问失败。
  • 误区四:只看程序大小,不看通信负载。通信和 I/O 刷新同样占用扫描时间。

在 Studio 5000 中,可以通过控制器属性查看任务的实际扫描时间、CPU 利用率和内存使用情况。建议在调试阶段就建立扫描周期基线,后续增加逻辑时对比变化,及时发现性能退化。

Logix 控制器扫描周期与任务结构 输入采样 读取 I/O 映像区 程序执行 按任务优先级运行 输出刷新 写入输出模块 系统任务 通信 / 诊断 / 背板 循环扫描:一个周期结束后立即进入下一个周期 任务 / 程序 / 例程 层级结构 连续任务 优先级最低,循环执行 周期任务 固定周期触发,节拍稳定 事件任务 事件触发,快速响应 程序 Program 主例程 + 子例程 程序 Program 主例程 + 子例程 程序 Program 主例程 + 子例程

理解 PLC 工作原理、Logix 控制器系列、内存结构和扫描周期,是使用 Studio 5000 进行项目开发的前提。只有把程序逻辑放到合适的任务层级,并让扫描周期与工艺响应要求匹配,才能构建出稳定、可维护的控制系统。