传感器与执行器是PLC系统感知和控制物理世界的“神经末梢”与“手脚”。它们与PLC之间的接口是故障高发区域,主要问题集中在物理连接、信号匹配和电气环境干扰。本章节将系统性地讲解如何诊断和排除此类接口故障,确保系统稳定运行。
PLC与现场设备接口示意图
物理连接是基础,也是最常见的故障点。建议遵循以下系统化流程进行检查。
PLC与现场设备之间的信号必须匹配,否则将导致读数错误或设备损坏。主要分为数字量(开关量)和模拟量两大类。
| 信号类型 | 常见标准 | PLC侧典型配置 | 常见不匹配故障现象 | 解决方案 |
|---|---|---|---|---|
| 数字量输入 (DI) | PNP (源型)、NPN (漏型)、干接点 | 需选择对应PNP/NPN输入的模块或配置公共端 | 信号常高/常低、PLC无法检测到变化 | 检查并更正接线方式,或使用信号转换器 |
| 数字量输出 (DO) | 晶体管(源/漏)、继电器 | 继电器输出可接交直流,晶体管需匹配直流极性 | 执行器不动作、烧毁输出点、继电器触点粘连 | 确认负载类型(感性/阻性)和电流,增加保护电路 |
| 模拟量输入 (AI) | 0-10V, 0-20mA, 4-20mA, ±10V | 模块需设置为对应的电压或电流输入模式 | 读数漂移、超量程、信号值固定不变 | 检查跳线/拨码开关设置,并校准零点和满量程 |
| 模拟量输出 (AO) | 0-10V, 0-20mA, 4-20mA | 模块需设置为对应的电压或电流输出模式 | 执行机构不动作或动作异常、反馈值不对 | 确认执行器输入阻抗匹配,线路压降是否过大 |
模拟量信号隔离传输流程图
在复杂的工业环境中,隔离器和中继器是解决干扰、电平转换和信号分配的关键器件。
作用: 切断地环路,抑制共模干扰,保护PLC侧电路免受现场高压冲击,实现信号转换。
作用: 增强信号驱动能力,延长传输距离,进行信号分配或转换(如将1路信号分成多路)。
在PLC程序中加入诊断逻辑,可以快速定位接口故障。以下是一个模拟量输入通道的诊断功能块示例。
FUNCTION_BLOCK AnalogInputDiagnosis
VAR_INPUT
RawValue : INT; // 从模块读取的原始值 (例如 0-27648)
ScaleMin : REAL := 4.0; // 工程单位下限 (对应4mA)
ScaleMax : REAL := 20.0; // 工程单位上限 (对应20mA)
HealthyMin : INT := 5529; // 4mA对应的理论原始值 (27648/20*4)
HealthyMax : INT := 27648; // 20mA对应的理论原始值
Enable : BOOL;
END_VAR
VAR_OUTPUT
ScaledValue : REAL; // 缩放后的工程值
Status : WORD; // 状态字
// 位定义: Bit0: 信号正常; Bit1: 信号超下限; Bit2: 信号超上限; Bit3: 信号断线
Alarm : BOOL;
END_VAR
VAR
Tolerance : INT := 100; // 允许的测量误差
END_VAR
// 主逻辑
IF Enable THEN
// 1. 缩放计算 (4-20mA 转 工程值)
ScaledValue := (REAL(RawValue - HealthyMin) / REAL(HealthyMax - HealthyMin)) * (ScaleMax - ScaleMin) + ScaleMin;
// 2. 诊断逻辑
Status := 0; // 清零状态字
IF (RawValue >= (HealthyMin - Tolerance)) AND (RawValue <= (HealthyMax + Tolerance)) THEN
Status.0 := TRUE; // 信号正常范围
Alarm := FALSE;
ELSIF RawValue < (HealthyMin - Tolerance * 5) THEN
Status.1 := TRUE; // 严重低于4mA,可能断线或传感器故障
Alarm := TRUE;
ELSIF RawValue > (HealthyMax + Tolerance * 5) THEN
Status.2 := TRUE; // 严重高于20mA,可能接线错误或电源串扰
Alarm := TRUE;
ELSE
Status.3 := TRUE; // 信号在异常范围内,可能漂移或轻微干扰
Alarm := TRUE;
END_IF;
ELSE
ScaledValue := 0.0;
Status := 0;
Alarm := FALSE;
END_IF;
END_FUNCTION_BLOCK
在程序中调用此功能块,可以实时监控每个模拟量通道的健康状态,并将故障信息上报HMI或SCADA系统,极大缩短维护人员的排查时间。
通过系统性的检查、正确的匹配和辅助器件的合理应用,可以显著降低传感器/执行器接口的故障率,提升整个自动化系统的可用性和平均无故障时间(MTBF)。