跳到主要内容

SecsSerialMaster

插件用途

SECS-I 半双工事务、多块重组和设备主动消息驱动

选择入口

进入“开发配置 → 采集配置”,创建设备并在“采集插件”中选择“SecsSerialMaster”。

支持的通道和数据类型

通道类型配置前检查
串口确认串口未被其它程序占用,并与设备保持一致的波特率、数据位、停止位和校验位。
TCP 客户端确认设备 IP、端口和网关到设备的网络可达性。

可选数据类型: Boolean、Byte、Int16、UInt16、Int32、UInt32、Int64、UInt64、Float、Double、String

插件参数

协议参数

参数说明
设备标识默认:0;范围:0~32767;填写:文本输入。设置协议通信使用的设备标识。
字节间隔 T1默认:10000;范围:1~2147483647;填写:数字输入。设置协议通信使用的字节间隔 T1。
线路响应 T2默认:5000;范围:1~2147483647;填写:数字输入。设置协议通信使用的线路响应 T2。
多块间隔 T4默认:10000;范围:1~2147483647;填写:数字输入。设置协议通信使用的多块间隔 T4。
碰撞优先方默认:0;填写:下拉选择。设置协议通信使用的碰撞优先方。

运行参数

参数说明
NAK 重试次数默认:3;范围:0~10;填写:数字输入。设置插件运行时使用的NAK 重试次数。

地址规则

  • 地址 说明
  • s=1;f=3;w; 发送主消息并等待 S1F4
  • s=6;f=11; 订阅设备主动 S6F11
  • s=1;f=13;w;<List Length="0" /> 携带 SECS-II XML 数据

特殊方法

方法用途参数
ExchangeMessageAsync交换 SECS-I 消息address=s=1;f=3;w;

设备调试

进入“开发配置 → 采集配置”,选择当前设备后点击“更多功能”并打开“调试”。

专用调试页

协议调试页接收一条完整 SECS-I 地址/消息描述,并执行一次消息交换。

功能作用
SECS 消息填写 s=f=、可选 w 和可选 SECS-II XML 数据。
交换消息发送主消息;带 w 时等待对应次消息,所有发送都需要确认。
调试结果显示返回消息、事务结果或线路错误。

SecsSerialMaster 调试子页 1

调试要点

先用测试 SECS-I 文本或十六进制内容验证交换;消息发送需要写入权限并二次确认。

验证重点

  1. 与设备方确认一条无副作用的标准查询消息,例如设备明确支持的 s=1;f=3;w;
  2. 执行交换并确认收到预期次消息,例如 S1F4;核对设备标识和返回数据结构。
  3. 使用包含 SECS-II XML 的消息时,先在测试设备验证 XML 类型和层级。
  4. 配置主动消息变量时,按实际 S/F 填写地址,并触发一次测试事件确认变量更新。
  5. 未确认语义的 S/F 消息不得发送到生产设备。

排障差异

  • 消息交换超时:检查设备标识、S/F、w 标志以及 T1、T2、T3、T4 定时参数。
  • 频繁收到 NAK:检查串口参数、校验、块边界和 NAK 重试次数,并确认线路没有字符丢失。
  • 多块消息无法重组:检查 T4 多块间隔和链路稳定性,查看是否有块序号或校验错误。
  • 双方同时发送时失败:核对“碰撞优先方”配置与设备约定。
  • SECS-II 解析失败:检查 XML 类型、长度和嵌套层级,先缩减为最小合法消息验证。
  • 串口设备无响应:确认串口未被占用,并核对波特率、数据位、停止位和校验位。

相关操作

  • 采集配置:查看通道、设备和公共变量配置。
  • 插件索引:查找其它采集或数据转发插件。