3.2 Serialization and Identity Lifecycle
A Serial Number (SN) is not a sticker; it is the Primary Key of your physical reality. If two units on the floor share the same ID, or if an ID is generated but never physically attached, the integrity of your database collapses.
Identity is a state machine. A Serial Number must be managed through a strict lifecycle from "Birth" to "End of Life" to prevent data corruption.
Identity Syntax Rules
Before generating a single ID, define the syntax. "Smart" numbers (embedding logic like Date/Line) eventually break.
- Structure: Use a random or sequential Unique Identifier (UID). Store context (Date, Line, Product) in the database, not the string.
- Alphabet: Use Base-34 (exclude I, O).
- Constraint: If SN contains special characters (/, \, :) → Then Reject. (These break URL strings in web-based reporting).
The Lifecycle State Machine
An Identity is not static. It moves through distinct states.
1. Create (Minting)
The generation of the string in the database.
- Rule: The Unit_ID column must have a UNIQUE constraint.
- Risk: "Ghost IDs". If you pre-print 1,000 labels and the printer jams, you have 50 "Created" IDs that do not exist physically.
- Control: If Label is destroyed → Then scan to "Void/Scrap" immediately.
2. Assign (Binding)
The moment the ID is physically applied to the hardware.
- Laser Marking (Preferred): Laser requests ID from MES → Marks Board → Verify Read. If Read Fail → Then Reject Board (Do not assume mark is good).
- Labeling: Operator scans Label → MES links Label to Production Order.
3. Split (Depaneling / Inheritance)
In electronics, you manufacture a "Panel" (1 Parent) containing multiple "Circuits" (N Children).
- The Problem: Reflow data belongs to the Panel. The customer buys the Circuit.
- The Logic:
- Step 1: Track Panel_ID through SMT.
- Step 2: At Depaneling (Router), trigger the Split Event.
- Step 3: MES auto-generates Circuit_IDs (if not pre-marked) or reads existing Circuit_IDs.
- Step 4: Inheritance: All process data (Temperatures, Times) from Panel_ID is copied/linked to every Circuit_ID.
4. Merge (Aggregation / Packing)
The inverse of splitting. Grouping individual units into a parent container (Tray, Box, Pallet).
- Logic:
- Scan Box_ID (Parent).
- Scan Unit_IDs (Children).
- Constraint: If Unit_ID status ≠ "Passed" → Then Block adding to Box.
- Traceability: The Box_ID becomes the proxy. Scanning the Box reveals all contained Units.
5. Reassign (Carrier Logic)
Distinguish between Product ID (Immutable) and Carrier ID (Reusable).
- Product ID: Once assigned, it never leaves the product.
- Carrier ID (Pallet/Tray): Can be unbound.
- Logic: If Unit is removed from Carrier → Then Break the Link (Carrier_ID = Null).
6. Relabel (Damage Control)
Labels get damaged. Replacing them is a high-risk operation.
- The Cardinal Rule: Never generate a new identity for an existing product. You must reprint the original SN.
- Procedure:
- Supervisor authenticates.
- Operator scans old 2D code (if readable) or manually enters SN.
- MES validates status.
- Printer produces Duplicate label.
- Audit Log: Record "Reprint event for SN:123 by User:ABC".
7. Scrap (The End)
When a unit is physically destroyed, its digital twin must die.
- Action: Transition State to "Scrapped".
- Constraint: If SN is Scrapped → Then Block all future processing.
- Re-Use: Never recycle the SN of a scrapped part. It is burned forever.
8. Rework (The Loop)
Sending a unit back to a previous step.
- Logic: Do not delete history. Append new history.
- State: Transition to "In Rework".
- Validation: When rework is done, the unit must re-pass the Quality Gate that originally failed.
Final Checklist
Category | Control | Rule |
Uniqueness | Constraint | Database Unit_ID must be Globally Unique. |
Depaneling | Inheritance | 100% of Panel data must link to Child Circuits after split. |
Relabel | Immutable Identity | Damaged labels are Reprinted (Same SN), never Replaced (New SN). |
Aggregation | Quality Gate | Cannot pack (Merge) a unit unless State = "Pass". |
Carriers | Hygiene | Carrier IDs must be cleared (unbound) before starting a new run. |
Scrap | Finality | Scrapped IDs are blacklisted. Never re-used. |
Format | Readability | No ambiguous chars (O/0, I/1). ISO Grade C minimum. |