> Blog

may 3, 2011 || por yago

Escribir y leer en inventario más de 96 bits en EPC Class1 Gen2

El protocolo EPC Class 1 Gen 2 define los requisitos físcos y lógicos de los sistemas de identificación por radiofrecuencia RFID pasivos que actúan en respuesta a señales de interrogación en frecuencias entre 860MHz - 960MHz.

En su concepción el protocolo soporta una longitud variable para el identificador único de producto de entre 0 y 496 bits. La mayoría de los tags que cumplen este estandar, cuentan unicamente con 96 bits para este identificador; es por esto que muchos fabricantes que elaboran tags con más de 96 bits para el identificador de producto, los entregan con una configuración de fábrica de 96 bits.

En este artículo veremos como configurar estos tags para permitir realizar lecturas en modo inventario de identificadores del total de su capacidad.

La memoria de las etiquetas RFID EPC Clase1 Gen2 se organiza en 4 campos: EPC,USER, TID y RESERVED. A su vez, cada campo se divide en bloques (o palabras) de 16 bits cada uno. El campo en el que se almacena el identificador único de producto y en el que nos centraremos será el campo EPC.

Según el protocolo EPC Class1 Gen2:

"Reserved memory shall contain the kill and and/or access passwords, if passwords are implemented on the Tag. The kill password shall be stored atmemory addresses 00h to 1Fh; the access password shall be stored at memoryaddresses 20h to 3Fh...

EPC memory shall contain a StoredCRC at memory addresses 00h to 0Fh, a StoredPC at addresses 10h to 1Fh, a code (such as an EPC, and hereafter referred to as an EPC) that identifies the object to which the Tag is or will be attached beginning at address 20h, and if the Tag implements Extended Protocol Control (XPC) then either one or two XPC word(s) beginning at address 210h...

TID memory shall contain an 8-bit ISO/IEC 15963 allocation class identifier at memory locations 00h to 07h. TID memory shall contain sufficient identifying information above 07h for an Interrogator to uniquely iden-tify the custom commands and/or optional features that a Tag supports...

User memory is optional..."

Esto es, el campo EPC se divide en tres partes:

  • StoredCRC (0x00 a 0x0F): Primer bloque con un CRC de control
  • StoredPC (0x10 a 0x1F): Segundo bloque con configuración del protocolo
  • Código EPC propiamente (a partir de 0x20): Lo siguientes bloques, hasta un máximo de 31

De estas tres partes hay que fijarse en StoredPC, que a su vez en los primeros 5 bits  (0x10 a 0x14) contiene información que indica el tamaño de la parte del campo EPC dedicada al código EPC en palabras (o bancos) de 16 bits cada uno. Así si en estos 5 bits se codifica:

  • 00000: no habrá código EPC
  • 00001: el código EPC ocupará una palabra (o un banco), esto es 16 bits
  • 00010: el código EPC ocupará dos palabra, esto es 32 bits
  • ...
  • 11111: el código EPC ocupará 31 palabras, esto es 496 bits

Por defecto, algunos fabricantes en los bits 16 a 19 tienen codificado por defecto 00110, o lo que es lo mismo, 6 bloques (96 bits).  Esto le indica a los lectores que cuando obtienen el identificador de la etiqueta lo hagan tomando 6 bloques a partir del 2 dentro del campo EPC.

Por ejemplo según el datasheet de los tags con chip monza4 de Impinj:

"The EPC is factory encoded with 96 bits to ensure backward compatibility with older readers. Users must encode Monza 4 tag chips above 96 bits."

Por lo tanto, lo que nos dice Impinj es que si estamos tratando con un Monza4QT o con un Monza4D (128 bits para el código EPC), en estos 5 primeros bits del StoredPC, hay que indicar que nuestro tag soporta 8 palabras (o bancos) 01000. Si se está tratando con un tag Monza 4E (496 bits para el código EPC), nuestro tag tendrá 31 palabras, con lo que en estos bits hay que indicar 11111.

Comenta
Título:
Nombre:
(obligatorio)
Email:
(no se publicará)
Comentario:
This is a captcha-picture. It is used to prevent mass-access by robots. (see: www.captcha.net)
 

Categorías

Últimas entradas

Página 1 de 3 > >>

dic 20, 2014 || Categoría:General
dic 9, 2013 || Categoría:android
nov 11, 2013 || Categoría:android