CompositeQualificationJudgmentActivity - 综合合格判断
概述
| 属性 | 值 |
|---|---|
| 节点名称 | 综合合格判断 |
| 节点描述 | 综合合格判断步骤 |
| 节点类型 | 业务节点 |
| 命名空间 | CMS.Plugin.MesSuite.Activitys |
| 程序集 | CMS.Plugin.MesSuite.Activitys |
| 分类 | 工序步骤 |
| 排序 | 26 |
| 发布 | 是 |
| 基类 | QualificationJudgmentActivity |
功能说明
CompositeQualificationJudgmentActivity 是综合合格判断节点,同时执行 PLC 合格判断和本机合格判断,只有两者都判定为合格时,最终结果才为合格。
该节点适用于需要双重校验的场景:设备端检测 + 系统端校验。
配置属性
| 属性名 | 显示名称 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|---|
| ExclusionValue | 指定排除检验的值 | double? | 否 | null | 当参数值等于此值时跳过该参数的校验 |
| IgnoreNull | 忽略空值 | bool | 否 | false | 若采集值为空,忽略空值后将不会判断为 NG |
业务逻辑
执行流程
开始
│
▼
调用 PLCJudgmentAsync 方法
│
├─► 获取 PLC 判断结果
│
▼
调用 LocalJudgmentAsync 方法
│
├─► 获取本机判断结果
│
▼
综合判断
│
├─► PLC 合格 AND 本机合格 → 最终合格
│
└─► 任一不合格 → 最终不合格
│
▼
设置流程数据项
│
├─► OutboundResultValue = 结果值
├─► QualityResultValue = 结果值
└─► QualityResultReason = 不合格原因
│
▼
结束
综合判断规则
| PLC 结果 | 本机结果 | 最终结果 | 不合格原因 |
|---|---|---|---|
| 合格(1) | 合格(1) | 合格(1) | 空 |
| 合格(1) | 不合格(2) | 不合格(2) | 本机原因 |
| 不合格(2) | 合格(1) | 不合格(2) | PLC原因 |
| 不合格(2) | 不合格(2) | 不合格(2) | PLC原因|本机原因 |
流程数据项
输入数据项
| 数据项 | 类型 | 说明 |
|---|---|---|
| ApplicationData | ProcessModel | 工艺模型 |
| OrderModel | OrderModel | 工单模型 |
| FormulaApplyModel | FormulaApplyModel | 配方应用模型 |
| ParameterCollectData | IReadOnlyDictionary<string, IVariableValue> | 参数采集数据 |
| OutboundQualityVariable | string | 合格信号变量名 |
输出数据项
| 数据项 | 类型 | 说明 |
|---|---|---|
| OutboundResultValue | int | 出站结果值(1=合格,2=不合格) |
| QualityResultValue | int | 质量结果值 |
| QualityResultReason | string | 不合格原因(格式:PLC原因|本机原因) |
依赖服务
| 服务接口 | 说明 |
|---|---|
| IFormulaProvider | 配方提供者 |
| IBusinessTextProvider | 业务文本提供者 |
使用示例
基本配置
<CompositeQualificationJudgmentActivity Name="综合合格判断">
<ExclusionValue>-999</ExclusionValue>
<IgnoreNull>false</IgnoreNull>
</CompositeQualificationJudgmentActivity>
典型流程配置
<ParameterCollectActivity Name="参数采集" />
<CompositeQualificationJudgmentActivity Name="综合合格判断">
<IgnoreNull>true</IgnoreNull>
</CompositeQualificationJudgmentActivity>
<ConditionActivity Name="质量判断">
<Condition>Flow.DataItems["QualityResultValue"] == 1</Condition>
<TrueBranch>合格处理</TrueBranch>
<FalseBranch>不合格处理</FalseBranch>
</ConditionActivity>
三种判断方式对比
| 特性 | PLC 判断 | 本机判断 | 综合判断 |
|---|---|---|---|
| 判断依据 | PLC 信号 | 配方参数 | 两者结合 |
| 配置复杂度 | 简单 | 中等 | 中等 |
| 可靠性 | 依赖设备 | 依赖配方 | 双重保障 |
| 适用场景 | 设备检测 | 系统校验 | 关键工序 |