三种角色与连接结构
控制器负责与设备交换过程数据、下发参数并监控连接状态;设备提供过程数据、参数与诊断;监视器是工程软件或诊断工具这类角色,参与组态与诊断但不参与周期数据交换。控制器与一台设备之间先建立应用关系,其中包含多条通信关系:输入输出关系承载周期数据,报警关系承载诊断与报警,记录数据关系用于按需读写参数。过程数据按提供者/消费者模型交换:双方按约定周期各自发送,设备不需要等待轮询,因此周期短且可预测。
基本信息
| 控制器 | 发起组态、交换周期数据、监控连接 |
|---|---|
| 设备 | 提供过程数据、参数与诊断 |
| 监视器 | 组态与诊断,不参与周期交换 |
| 应用关系 | 控制器与设备之间的总连接,内含多条通信关系 |
| 通信关系 | 输入输出、报警、记录数据、连接监督 |
| 寻址粒度 | 槽与子槽,决定数据在设备中的位置 |
| 数据有效性 | 周期数据携带状态字段,用于判断是否可信 |
典型使用场景
- 组态阶段确认通信关系是否齐全:缺一条会表现为参数下不去或没有报警
- 排查设备掉站:先看该应用关系状态与看门狗,而不是直接测网络连通性
- 多控制器共用一台设备:划分各自的通信关系,避免地址与参数冲突
- 诊断工具接入:以监视器身份接入,不干扰生产侧周期数据
- 冗余方案设计:环网与系统冗余各自的失效切换时间不同
- 验收检查:按通信关系统一核对数据有效性状态与报警配置
通信关系速查
| 通信关系 | 承载内容 | 特点 |
|---|---|---|
| 输入输出 | 周期过程数据 | 无逐条确认,带有效性状态,超时即退出交换 |
| 报警 | 诊断与报警信息 | 事件驱动,分级并有确认机制 |
| 记录数据 | 参数与组态数据读写 | 按需发起,有明确应答 |
| 连接监督 | 看门狗与超时判定 | 超时导致关系中断,表现为设备掉站 |
| 隐式关系 | 由控制器按组态自动建立 | 参数不匹配时下载失败 |
建立数据交换的顺序
建立数据交换的顺序
# 1 建立应用关系:控制器与设备互相识别
# 2 参数分配与检查:模块参数下发,设备校验并返回结果
# 3 应用就绪:设备声明可以开始交换数据
# 4 周期数据交换:双方按约定周期各自发送,并携带有效性状态
# 5 持续监督:看门狗超时、报警上报、诊断通道状态
# 排查提示:任一阶段失败都要看该阶段的状态,而不是只看网络通不通设备掉站不等于网络断开:看门狗超时同样会让它退出数据交换,因此诊断应先看通信关系状态,再决定是否排查物理链路。
共用设备场景下两个控制器同时写同一段输入输出数据,会产生不可预测的交替覆盖,必须事先划分清楚各自的数据范围。