Skip to main content
Version: Next

PLC Qualification Judgment

Introduction​

PLCQualificationJudgmentActivity is a PLC qualification judgment node used to read the qualification signal from parameters collected from the PLC and judge whether the product is qualified.

This node relies on the qualification signal returned by the PLC for judgment, suitable for scenarios where the equipment (PLC) completes quality detection and returns the result.

Configuration Items​

This node has no additional configuration properties and inherits common properties from the base class.

Business Logic​

Execution Flow​

Start
│
▼
Call PLCJudgmentAsync Method
│
├─► Get Parameter Collection Data
│
├─► Read Qualification Signal Variable
│ │
│ └─► Variable Name: OutboundQualityVariable or Default
│
├─► Parse Qualification Signal Value
│ │
│ ├─► 1 or true → Qualified
│ ├─► 2 → Unqualified
│ └─► 0 or other → Unknown
│
├─► If Unqualified, Match NG Reason
│
▼
Set Flow Data Items
│
├─► QualityResultValue = Result Value
│
└─► QualityResultReason = Unqualified Reason
│
▼
End

Qualification Signal Parsing​

Signal ValueParse ResultDescription
1QualifiedProduct detection qualified
trueQualifiedBoolean true converted to qualified
2UnqualifiedProduct detection unqualified
0UnknownUnable to determine result
OtherUnknownUnparsable value

NG Reason Matching​

When judged as unqualified, the system attempts to match specific reasons from the NG reason list in the process model:

  1. Traverse NG reasons defined in process model.
  2. Read value of corresponding variable.
  3. Compare with judgment value.
  4. Record NG reason if matched.

Flow Data Items​

Input Data Items​

Data ItemTypeDescription
ApplicationDataProcessModelProcess Model, containing NG reason definitions
ParameterCollectDataIReadOnlyDictionary<string, IVariableValue>Parameter Collection Data
OutboundQualityVariablestringQualification Signal Variable Name (Optional)

Output Data Items​

Data ItemTypeDescription
QualityResultValueintQuality Result Value (1=Qualified, 2=Unqualified, 0=Unknown)
QualityResultReasonstringUnqualified Reason

Usage Example​

Basic Configuration​

<PLCQualificationJudgmentActivity Name="PLC Qualification Judgment" />

Specify Qualification Signal Variable​

Specify qualification signal variable name via flow data item:

<VariableWriteActivity Name="Set Qualification Signal Variable">
<Variable>OutboundQualityVariable</Variable>
<Value>QualityResult</Value>
</VariableWriteActivity>

<PLCQualificationJudgmentActivity Name="PLC Qualification Judgment" />

Typical Flow Configuration​

Parameter Collect → PLC Qualification Judgment → Condition Branch (Qualified/Unqualified)
<ParameterCollectActivity Name="Parameter Collect">
<!-- Collect PLC Qualification Signal -->
</ParameterCollectActivity>

<PLCQualificationJudgmentActivity Name="PLC Qualification Judgment" />

<ConditionActivity Name="Quality Judgment">
<Condition>Flow.DataItems["QualityResultValue"] == 1</Condition>
<TrueBranch>Qualified Handling</TrueBranch>
<FalseBranch>Unqualified Handling</FalseBranch>
</ConditionActivity>

Difference from Local Judgment​

FeaturePLC Qualification JudgmentLocal Qualification Judgment
SubjectPLC/EquipmentMES System
BasisQualification Signal VariableRecipe Parameter Limits
ScenarioEquipment DetectionSystem Verification
ConfigurationSimpleRequires Recipe Parameters

Notes​

  1. Parameter Collect node must be executed before this node.
  2. Qualification signal variable must exist in collected data.
  3. NG reason matching requires pre-configuration in process model.
  4. If signal cannot be parsed, result is "Unknown".