2. PLC基础回顾
在进入故障诊断与维护之前,必须先把西门子PLC的家族谱系、硬件组成、工作原理和扫描周期这四件事重新梳理清楚。很多现场“疑难杂症”并不是模块坏了,而是对扫描机制、过程映像区、模块寻址方式理解不到位造成的误判。本节把这几块基础重新串成一条线,为后续的诊断方法打底。
一、西门子PLC家族:从LOGO!到S7-1500
西门子的控制器产品线跨度很大,按应用规模大致可分为微型、小型、中型、大型和高端几档。理解家族定位,有助于在现场快速判断“这台设备该用什么诊断手段、备件怎么选、编程软件是哪一套”。
| 系列 | 典型型号 | 适用规模 | 编程软件 | 典型场景 |
|---|---|---|---|---|
| LOGO! | LOGO! 0BA8/0BA9 | 微型逻辑控制 | LOGO!Soft Comfort | 照明、泵控、简单联锁 |
| S7-200 SMART | CPU SR/ST 系列 | 小型单机 | STEP 7-Micro/WIN SMART | 包装机、小型专机 |
| S7-1200 | CPU 1211C~1217C | 中小型 | TIA Portal(博途) | 产线工位、过程控制 |
| S7-1500 | CPU 1511~1518 | 中大型 | TIA Portal(博途) | 整线、运动控制、冗余 |
| S7-300/400 | CPU 31x/41x | 传统中大型 | STEP 7 V5.x | 老产线、存量设备 |
现场维护时,第一步往往是“认机”:看CPU型号、看机架结构、看编程软件版本。S7-300/400属于存量设备,备件逐渐停产,诊断时更依赖STEP 7 V5.x和硬件组态信息;S7-1200/1500则统一在博途平台下,诊断缓冲区、在线状态、系统诊断功能更完善。
二、硬件结构:一台PLC由哪些部分组成
无论哪个系列,PLC的硬件骨架基本一致,可以概括为“电源—CPU—信号模块—通信—背板/总线”五大部分。
- 电源模块(PS):把AC 220V或DC 24V转换为内部所需的DC 5V/24V,为CPU和模块供电。电源不稳是很多“随机停机”的根源。
- CPU模块:内含处理器、存储器(装载存储器、工作存储器、保持存储器)、集成I/O和通信接口,是逻辑运算和诊断的核心。
- 信号模块(SM):数字量输入/输出(DI/DO)、模拟量输入/输出(AI/AO),负责把现场信号转换成PLC内部可处理的数据。
- 通信模块(CP/CM):如CM 1241(RS-232/485)、CP 1543(以太网)、PROFIBUS/PROFINET接口,用于连接HMI、变频器、远程I/O。
- 背板总线/机架:S7-300/400通过U型总线连接模块,S7-1200/1500通过背板总线或系统电源总线连接,决定模块的物理地址分配。
三、工作原理:循环扫描与过程映像
PLC不是“实时并行”执行所有逻辑,而是采用循环扫描方式:CPU按固定顺序反复执行用户程序,每一轮称为一个扫描周期。理解这一点,是理解“为什么输入变了输出没立刻变”“为什么按钮按一下没反应”的关键。
扫描周期的典型阶段如下:
- 读取输入:把所有物理输入点的状态一次性复制到“过程映像输入区(PII)”。
- 执行用户程序:CPU逐条执行梯形图/语句表/功能块,读写的是过程映像区,而不是直接读写物理点。
- 写入输出:把“过程映像输出区(PIQ)”的结果一次性送到物理输出模块。
- 系统任务:处理通信、诊断、中断、看门狗等,然后进入下一轮扫描。
因此,在一个扫描周期内,即使物理输入发生了变化,程序看到的仍是本轮开始时的映像值;输出也要等到本轮结束才真正刷新。这就是“输入滤波”“扫描周期抖动”等问题的根源。
四、扫描周期对诊断的实际影响
扫描周期不是固定值,它随程序长度、指令类型、通信负载、中断数量而变化。诊断时必须把“周期时间”当成一个可观测参数来看。
- 周期过长:可能导致高速脉冲丢失、按钮“按了没反应”、看门狗超时停机。常见原因是程序中有大量循环、浮点运算或通信阻塞。
- 周期抖动:同一程序在不同负载下周期忽长忽短,会造成时序逻辑不稳定。可通过CPU属性中的“最小循环时间”或“周期监视时间”来约束。
- 中断优先:硬件中断、时间中断、循环中断可以打断主程序,但中断程序过长同样会拖慢整体响应。
五、一个典型诊断场景
某包装线S7-1200 CPU 1214C,操作员反映“急停按下后设备有时不立即停”。排查步骤:
- 在线查看CPU属性中的“循环时间”,发现最大扫描周期达到38 ms,远高于正常值。
- 检查程序,发现主循环中调用了一个带WHILE循环的数据处理块,且未加限制条件。
- 同时发现急停信号接入的是普通DI点,未配置为硬件中断。
- 优化:把数据处理改为循环中断OB30中执行,急停信号配置硬件中断OB40,直接触发安全逻辑。
- 复测:最大扫描周期降至6 ms,急停响应恢复正常。
诊断关键参数(TIA Portal 在线与诊断):
- 循环时间:最小值 / 最大值 / 当前值
- 周期监视时间:默认 150 ms(可调)
- 最小循环时间:可设置,用于稳定周期
- 中断OB:OB40 硬件中断 / OB30 循环中断
- 诊断缓冲区:记录停机、模块故障、超时事件
这个案例说明:扫描周期、过程映像、中断机制三者是联动的。维护人员如果只盯着“模块灯亮不亮”,很容易漏掉程序结构和周期参数层面的问题。把家族定位、硬件结构、工作原理、扫描周期这四块基础打牢,后续的故障树分析、诊断缓冲区解读、模块替换判断才有可靠的依据。