Avançat

Codificació d'etiquetes i memòria EPC

Domineu l'arquitectura de memòria d'etiquetes i la codificació GS1 per a la integració de la cadena de subministrament

Els 4 bancs de memòria

Cada etiqueta EPC Gen2 té exactament 4 bancs de memòria, cadascun amb un propòsit específic. Entendre aquesta estructura és essencial per codificar, llegir i protegir les vostres etiquetes.

Banc 00 (Reservat): Conté la contrasenya Kill de 32 bits i la contrasenya d'accés de 32 bits. Els valors predeterminats són 0x00000000. La contrasenya de kill desactiva permanentment l'etiqueta quan s'envia. irreversible. La contrasenya d'accés bloqueja els bancs de memòria per evitar escriptures no autoritzades.

Banc 01 (EPC): Conté StoredCRC (16 bits, calculat automàticament), StoredPC/Control de protocol (16 bits, indica la longitud de l'EPC i les capacitats de l'etiqueta) i el valor de l'EPC en si mateix. normalment 96 bits (12 bytes) per a SGTIN-96. Algunes etiquetes admeten EPC de 128 bits o fins i tot de 496 bits.

Banc 10 (TID): Identificador d'etiqueta programat de fàbrica. Conté el codi del fabricant del xip, el número de model i un número de sèrie únic. Aquest banc és de només lectura i mai es pot canviar. cosa que el fa inestimable per a la lluita contra la falsificació i l'autenticació d'etiquetes.

Banc 11 (Usuari): Emmagatzematge addicional opcional. La mida varia segons el xip: NXP UCODE 9 té 0 bits (sense memòria d'usuari), Quanray QStar-7U té 512 bits (64 bytes). Utilitzeu-lo per a números de lot, dates d'inspecció, llindars de temperatura o registres de manteniment. Comproveu sempre la capacitat disponible abans d'escriure.

Codificació SGTIN-96. Pas a pas

SGTIN-96 és l'esquema EPC més utilitzat. Codifica un GTIN-14 (el codi de barres del vostre producte) més un número de sèrie únic en exactament 96 bits (12 bytes). Això permet fins a 274.000 milions de números de sèrie únics per tipus de producte.

L'estructura de 96 bits: Capçalera (8 bits, sempre 0x30 per a SGTIN-96) → Filtre (3 bits: 0=tots, 1=POS, 2=caixa completa, 3=reservat, 4=paquet interior, 5=reservat, 6=càrrega unitària, 7=component) → Partició (3 bits: defineix com es divideixen els bits entre el prefix de l'empresa i la referència de l'element) → Prefix de l'empresa (20–40 bits) → Referència de l'element (4–24 bits) → Número de sèrie (38 bits).

El valor de partició (0–6) determina la longitud del prefix de l'empresa: P=0 → prefix de 40 bits (12 dígits), P=1 → 37 bits (11 dígits), P=2 → 34 bits (10 dígits), P=3 → 30 bits (9 dígits), P=4 → 27 bits (8 dígits), P=5 → 24 bits (7 dígits), P=6 → 20 bits (6 dígits). La longitud del prefix de la vostra empresa GS1 determina quin valor de partició utilitzar.

Utilitzeu l'eina Nextwaves TDS RFID Converter a /tools/tds-rfid-converter per codificar i descodificar valors SGTIN-96 de manera interactiva. Introduïu el vostre GTIN-14 + sèrie i obteniu l'EPC hexadecimal a l'instant.

SGTIN-96 Bit Structure
┌────────┬──────┬─────┬──────────────┬──────────────┬──────────────┐
│ Header │Filter│Part │Company Prefix│Item Reference│   Serial     │
│ 8 bits │3 bits│3bits│  20-40 bits  │   4-24 bits  │   38 bits    │
│  0x30  │ 0-7  │ 0-6 │  GS1 prefix  │  product ref │  unique ID   │
└────────┴──────┴─────┴──────────────┴──────────────┴──────────────┘

Partition table (defines prefix/item bit allocation):
P=0: 40-bit prefix (12 digits)  P=4: 27-bit prefix (8 digits)
P=1: 37-bit prefix (11 digits)  P=5: 24-bit prefix (7 digits)
P=2: 34-bit prefix (10 digits)  P=6: 20-bit prefix (6 digits)
P=3: 30-bit prefix (9 digits)

Example: 3034257BF7194E4000001A85
  Header=0x30 Filter=1 Part=5 Prefix=0614141
  Item=812345 Serial=6789 → GTIN-14: 80614141123458

Altres esquemes EPC

Més enllà de SGTIN-96, GS1 defineix diversos altres esquemes EPC de 96 bits per a diferents identificadors de la cadena de subministrament. Cadascun té el seu propi byte de capçalera.

Lectura i escriptura de memòria d'etiqueta

La lectura d'etiquetes durant l'inventari és passiva. El lector emet una consulta i les etiquetes responen amb el seu EPC des del Bank 01. Però també podeu llegir explícitament qualsevol banc de memòria enviant una ordre READ amb el número de banc, el desplaçament de paraula i el recompte de paraules.

L'escriptura a les etiquetes requereix més precisió. L'etiqueta ha d'estar aïllada (només una etiqueta responent), i les escriptures es fan una paraula (16 bits) a la vegada. Una escriptura completa d'EPC de 96 bits requereix 6 escriptures seqüencials de paraules. Cada escriptura triga 10–20ms, de manera que la codificació d'una única etiqueta triga 60–120ms només per a les dades EPC.

Errors d'escriptura comuns: Etiqueta massa lluny de l'antena (cal un senyal més fort per escriure que per llegir. Poseu l'etiqueta a menys d'1m). Múltiples etiquetes al camp (l'aïllament ha fallat. aïlleu l'etiqueta objectiu). Memòria de l'etiqueta bloquejada (es requereix contrasenya d'accés). Verificació d'escriptura fallida (reintenteu, o l'etiqueta pot ser defectuosa. taxa de defectes típica: 1–3 per cada 10.000).

Millor pràctica: Sempre verifiqueu després d'escriure llegint les dades de nou i comparant. Una ordre d'escriptura pot tenir èxit però corrompre bits adjacents en casos rars. La verificació de lectura-després-d'escriptura detecta aquests problemes.

Write EPC - Nextwaves NRN Protocol
TX → 5A 00 01 02 11 00 0C [EPC_12_BYTES] [CRC16]

Write per 16-bit word: 10-20ms
Full 96-bit EPC = 6 words = 60-120ms total

With access password:
TX → 5A 00 01 02 11 00 10 [PWD_4B] [EPC_12B] [CRC16]

Seguretat de l'etiqueta i contrasenyes

Les etiquetes EPC Gen2 admeten dues contrasenyes de 32 bits per a seguretat. La contrasenya d'accés (Access Password) blocaja bancs de memòria específics. un cop establerta, aquest banc requereix la contrasenya abans de qualsevol operació de lectura o escriptura. La contrasenya de destrucció (Kill Password) desactiva permanentment l'etiqueta quan es transmet. una operació irreversible utilitzada principalment per a la privacitat del consumidor a la venda al detall (destruint l'etiqueta després del checkout).

Millors pràctiques de seguretat: Mai feu servir la contrasenya per defecte de zeros (0x00000000) en producció. no proporciona cap seguretat. Genereu contrasenyes úniques per lot d'etiquetes o utilitzeu el vostre prefix d'empresa com a llavor. Emmagatzemeu les contrasenyes al vostre sistema backend, mai a la mateixa etiqueta (la memòria de contrasenya es pot llegir si l'etiqueta està desbloquejada). Bloquegeu els bancs de contrasenya després de la programació. Considereu el mode Untraceable (disponible en xips més nous) que oculta el TID i redueix l'EPC, proporcionant privacitat sense destruir l'etiqueta.

L'ordre Kill és permanent i irreversible. No hi ha desfer. Un cop una etiqueta és destruïda, mai podrà respondre a cap lector. Implementeu sempre la verificació de contrasenya de destrucció al vostre programari i requeriu autorització de gerència abans d'executar ordres de destrucció.

Tornar a l’inici