要把电压表头输出的电压信号转换成 PLC 能识别的开关量信号(数字量),核心是通过 “电压检测 + 电平转换” 实现 —— 当电压达到设定阈值时,输出 PLC 可识别的开关信号(如 24V DC 或 0V),这是工业现场将模拟电压信号转为开关量的典型需求。
一、实现思路
电压表头输出的是模拟电压信号(如 0-5V、0-10V 或 4-20mA 对应的电压),PLC 的开关量输入(DI)仅识别 “有 / 无” 电平(如 24V DC 为 ON,0V 为 OFF)。核心步骤:
二、两种实用实现方案(按成本 / 精度选择)
方案 1:低成本继电器模块(适合阈值固定、精度要求低)
这是新手最易上手的方案,用 “电压检测继电器” 直接触发开关信号,无需编程。
1. 硬件选型
2. 接线步骤
| 电压检测继电器 | 连接对象 | 备注 |
|---|---|---|
| VIN+ | 电压表头输出 + | 接入需检测的电压信号正极 |
| VIN- | 电压表头输出 - | 接入电压信号负极 |
| VCC | 24V 电源 + | 继电器模块供电 |
| GND | 24V 电源 - | 模块与电源共地 |
| OUT | PLC DI 输入点 | 继电器输出的开关信号 |
| COM | 24V 电源 +(PNP) | PNP 输出:COM 接 24V+,OUT 接 DI;NPN 输出:COM 接 GND,OUT 接 DI |
| PLC DI GND | 24V 电源 - | PLC DI 口与电源共地 |
3. 调试步骤
4. PLC 程序示例(西门子 S7-200 SMART)
plc
// 梯形图逻辑:I0.0为电压检测继电器输出的开关信号 // Q0.0为报警/控制输出(电压达标时ON) NETWORK 1: 电压阈值检测 LD I0.0 // 电压≥设定阈值,I0.0=ON = Q0.0 // 触发输出(如报警灯、电机启动)
方案 2:高精度模拟量模块 + PLC 编程(适合阈值可调、精度要求高)
若需灵活调整阈值、或需多段电压判断,用 PLC 模拟量输入(AI)模块读取电压,再通过程序判断转为开关信号。
1. 硬件选型
2. 接线步骤
| 电压表头 | PLC AI 模块 | 备注 |
|---|---|---|
| 输出 + | AI 模块通道 +(如 AIW0) | 接入模拟量输入正极 |
| 输出 - | AI 模块通道 - | 接入模拟量输入负极 |
| AI 模块 GND | PLC 电源 GND | 模拟量模块与 PLC 共地 |
3. PLC 程序实现(以 S7-200 SMART 为例,STL 语言)
核心逻辑:读取模拟量电压值→转换为实际电压→与阈值比较→输出开关信号。
plc
// 定义变量 VAR AI_Value: INT; // 模拟量原始值(0-32000对应0-10V) Actual_Voltage: REAL;// 转换后的实际电压(V) Voltage_Threshold: REAL := 5.0; // 设定阈值5V DI_Signal: BOOL; // 转换后的开关信号 END_VAR // 步骤1:读取模拟量输入(AIW0对应0-10V通道) AI_Value := AIW0; // 步骤2:模拟量转换为实际电压(0-32000 → 0-10V) Actual_Voltage := AI_Value * 10.0 / 32000.0; // 步骤3:比较阈值,生成开关信号 IF Actual_Voltage >= Voltage_Threshold THEN DI_Signal := TRUE; // 电压达标,开关信号ON ELSE DI_Signal := FALSE; // 未达标,开关信号OFF END_IF; // 步骤4:将开关信号映射到PLC输出(可选) Q0.0 := DI_Signal;
4. 关键解释
三、关键注意事项
总结
如果你的电压表头输出是特殊量程(如 4-20mA),只需将电压检测模块替换为电流检测模块,或在 PLC 程序中调整模拟量转换公式(4-20mA 对应 AI 值 6400-32000),核心逻辑完全一致。

