3. 开关量输入回路联调与状态一致性核对

联调对象与点位清单

开关量输入(DI)回路联调的核心不是“看灯亮不亮”,而是确认现场触点状态 → 端子接线 → PLC 输入端子 → 输入映像区位地址 → 上位机变量这条链路上,每一级的“0/1”含义完全一致。机舱泵组运行反馈、阀门开/关限位、液位高低开关这三类点位,最容易出问题的环节各不相同:泵组反馈常见于辅助触点串接与公共端接错,阀门限位常见于常开/常闭选型与取反配置,液位开关常见于浮球动作方向与“高报/低报”定义相反。

联调前先建立点位表,至少包含:位号、设备、触点类型(NO/NC)、PLC 模块与通道、输入映像区地址(如 I0.3)、上位机变量名、期望的“1”含义(如“运行反馈=1”)、模拟方式(短接/断开)。下表为本次示例机舱的 6 个 DI 点位,参数为教学示例值:

位号设备/对象触点类型PLC 通道映像区地址上位机变量“1”的含义
P01-RUN1# 舱底泵运行反馈NO(辅助触点)DI 模块1 CH0I0.0P01_Run_FB泵运行中
P02-RUN2# 舱底泵运行反馈NODI 模块1 CH1I0.1P02_Run_FB泵运行中
V01-OPEN海水阀开限位NODI 模块1 CH2I0.2V01_Open_LS阀已全开
V01-CLOSE海水阀关限位NCDI 模块1 CH3I0.3V01_Close_LS阀已全关
LSH-01舱底高液位开关NODI 模块1 CH4I0.4Bilge_High_LS液位高
LSL-01日用柜低液位开关NCDI 模块1 CH5I0.5Daily_Low_LS液位低
触点类型必须与“1 的含义”配套核对:NC 触点在正常(未动作)时闭合,PLC 读到 1;动作后断开,读到 0。若上位机变量按“动作=1”组态,则 NC 点位必须在 PLC 或上位机侧取反,否则状态永远相反。

逐点模拟与一致性核对方法

采用“单点激励、双端比对”的方式:每次只改变一个现场触点状态,同时观察 PLC 输入映像区对应位与上位机变量显示,避免多点同时变化导致误判。操作顺序建议从“断开”到“短接”,因为断开是安全侧,可先确认无源回路与公共端是否正确。

  1. 确认公共端与电源:DI 模块为漏型/源型输入时,公共端(COM)接法不同。用万用表直流电压档测量端子对 COM 的电压,未短接时应为模块内部电源电压(示例 24 V DC),短接后应接近 0 V。若短接后电压不变,说明端子未真正接入输入回路,可能是接线极性或端子排跨接错误。
  2. 断开模拟:拆下现场触点一侧接线(或断开端子),使输入回路开路。对 NO 点位,期望 PLC 位为 0;对 NC 点位,期望为 0(因为回路断开)。记录上位机显示。
  3. 短接模拟:用短接线将输入端子与 COM(或对应公共端)短接,使回路闭合。对 NO 点位,期望 PLC 位为 1;对 NC 点位,期望为 1。记录上位机显示。
  4. 比对与判定:PLC 位与上位机显示必须同步变化且方向一致。若 PLC 位正确而上位机相反,问题在上位机变量取反或数据映射;若 PLC 位本身与期望相反,问题在接线极性、触点类型选型或 PLC 侧取反指令。

下面给出一个可直接用于核对逻辑的 PLC 侧梯形图等价判断(以结构化文本表示,便于在联调记录中复现)。示例中 DI_Raw 为输入映像区原始位,Inv_Cfg 为该点位是否取反的配置位:

// 单点一致性核对:原始位、取反配置、上位机发布值
// 示例:V01-CLOSE 为 NC 触点,动作=1 语义,故 Inv_Cfg = TRUE
FUNCTION DI_Normalize : BOOL
VAR_INPUT
    DI_Raw  : BOOL;   // 输入映像区原始位,如 I0.3
    Inv_Cfg : BOOL;   // TRUE 表示该点位需要取反
END_VAR
    DI_Normalize := DI_Raw XOR Inv_Cfg;
END_FUNCTION

// 联调判定(示例调用)
// 断开模拟:DI_Raw = FALSE, Inv_Cfg = TRUE  -> 发布值 TRUE(阀未全关?需按语义核对)
// 短接模拟:DI_Raw = TRUE,  Inv_Cfg = TRUE  -> 发布值 FALSE
上面的 XOR 只是把“原始位”和“取反配置”分离,便于在联调记录中分别记录两个值。实际判定时,应以点位表中“1 的含义”为准:短接后发布值应等于该点位定义的“动作状态”,而不是机械地要求发布值为 1。

状态一致性判读图

下图把 6 个点位的“断开/短接”两种模拟状态与期望的 PLC 原始位、上位机发布值并列,用于现场逐点打勾核对。图中橙色表示需要取反的 NC 点位,蓝色表示 NO 点位;箭头方向表示从现场模拟到映像区再到上位机的信号链。

DI 回路逐点模拟与状态一致性核对 现场模拟 PLC 输入映像区 上位机发布值 判定要点 P01-RUN(NO) 断开→0 / 短接→1 I0.0 原始位 断开=0,短接=1 P01_Run_FB 断开=停,短接=运行 两端同步变化即一致; 若上位机相反→查取反配置 P02-RUN(NO) 断开→0 / 短接→1 I0.1 原始位 断开=0,短接=1 P02_Run_FB 断开=停,短接=运行 与 P01 同型,可对照; 若仅一路异常→查该通道接线 V01-OPEN(NO) 断开→0 / 短接→1 I0.2 原始位 断开=0,短接=1 V01_Open_LS 断开=未全开,短接=全开 开/关限位不可同时为 1; 若同时为 1→查限位选型或短接 V01-CLOSE(NC) 断开→0 / 短接→1(需取反) I0.3 原始位 断开=0,短接=1 V01_Close_LS 断开=未全关,短接=全关 NC 点位最易取反错; 短接后发布值应为“全关” LSH-01(NO) 断开→0 / 短接→1 I0.4 原始位 断开=0,短接=1 Bilge_High_LS 断开=正常,短接=高液位 短接应触发高液位报警; 不报警→查报警组态与变量映射 LSL-01(NC) 断开→0 / 短接→1(需取反) I0.5 原始位 断开=0,短接=1 Daily_Low_LS 断开=低液位,短接=正常 浮球方向易反; 断开应报低液位,否则取反错 NO 点位(动作闭合) NC 点位(动作断开,需取反核对) 判定原则:PLC 原始位与上位机发布值必须按点位表语义同步变化

典型异常与定位路径

联调中最常见的四类不一致现象及定位方向如下,均以本次 6 个点位为对象:

  • 短接后 PLC 位不变:先测端子对 COM 电压,若短接后仍为 24 V,说明短接线未跨接到正确公共端,或该通道被组态为未启用;若电压变为 0 V 而位不变,检查模块通道地址与映像区地址是否对应(如把 I0.3 误当 I0.4)。
  • PLC 位正确、上位机相反:集中在 NC 点位(V01-CLOSE、LSL-01)。检查上位机变量是否勾选了“取反”,或 PLC 侧 XOR 配置位是否与点位表一致。注意不要同时在两侧取反,否则会“负负得正”掩盖错误。
  • 开/关限位同时为 1:V01-OPEN 与 V01-CLOSE 在阀门中间位置应一个为 0、一个为 1(按取反后语义)。若同时为 1,多为 NC 限位未取反,或现场限位被短接。可在阀门手动操作过程中观察两位的翻转顺序。
  • 液位开关动作方向相反:LSH-01 短接应报高液位,LSL-01 断开应报低液位。若方向相反,先核对浮球安装方向与触点类型,再核对报警组态中的“高报/低报”定义,最后核对变量映射。
联调记录建议逐点填写四列:断开时 PLC 原始位、断开时上位机值、短接时 PLC 原始位、短接时上位机值。四列与点位表期望值全部吻合,才判定该点通过;任一点不通过,先按“现场→映像区→上位机”顺序分段定位,不要直接改上位机取反来“凑”结果。