Detecta la presencia de múltiples etiquetas RFID (200-300) en una sola superficie

Estoy trabajando en un proyecto en el que quiero detectar la presencia de varias etiquetas RFID (200-300) en una superficie específica. Tengo conocimientos generales de electrónica, pero no tengo experiencia con antenas y RFID.

La superficie normalmente sería una antena plana de 20x20cm-30x30cm en una mesa conectada a una raspberry pi, y me gustaría tener acceso de alguna manera a una lista/matriz de ID para todas las etiquetas RFID presentes en la parte superior de la antena.

Por ejemplo; Digamos que etiqueto 300 piezas de Lego con etiquetas RFID y uso 250 de ellas para construir una estructura de 30 cm de alto sobre mi antena, luego me gustaría acceder a las identificaciones de las 250 piezas que he usado en una aplicación en mi raspberry pi .

¿Es esto factible con componentes razonablemente asequibles? ¿Alguna sugerencia sobre qué tipo de antena debo buscar y dónde puedo conseguir una?

¿Hay alguna restricción sobre el tipo de RFID? Como se señaló en las respuestas, la RFID estándar de corto alcance puede tener problemas con tantas etiquetas. Sin embargo, si puede usar RFID de 900 MHz (ISO 18000-6C, también conocido como Gen2 RFID), entonces está diseñado para escanear rápidamente una gran cantidad de etiquetas, es posible realizar auditorías de cientos de etiquetas por segundo.
La etiqueta RFID promedio es un poco más grande que la pieza de Lego promedio, lo que podría presentar un problema aquí.

Respuestas (2)

En el protocolo ISO14443 (el protocolo utilizado por la mayoría de las tarjetas inteligentes sin contacto), hay un mecanismo que hace eso: se llama anticolisión .

Básicamente (y simplificando las cosas), así es como funciona para ISO14443 tipo A (que es uno de los dos tipos de tarjeta sin contacto):

  • El lector sondea periódicamente el campo y solicita a todas las etiquetas que respondan con su ID único (que se asigna durante la fabricación de la etiqueta).
  • El lector es capaz de detectar cuando dos etiquetas responden a cosas diferentes al mismo tiempo. Cuando sucede (por ejemplo, en el enésimo bit), el lector vuelve a sondear las etiquetas en el campo, pero proporciona los primeros n bits que acertó, más un bit establecido en 0, por lo que solo las etiquetas con la ID que comienza con estos bits responden.
  • También intentará con los n bits que acertó, más un bit establecido en 1, para obtener las otras etiquetas.
  • De esta manera, y eventualmente usando múltiples niveles e intentos, finalmente obtiene todas las identificaciones únicas de todas las etiquetas en el campo.
  • Más tarde, cuando quiera enviar un comando, indicará a qué etiqueta está dirigido el comando, de modo que solo esta etiqueta procese el comando y responda.

para ISO14443 tipo B , la anticolisión se realiza de manera diferente y se basa en intervalos de tiempo. No tengo los detalles en mente, pero está en la especificación.

Entonces, desde el punto de vista del protocolo, teóricamente podrías hacer lo que quieras, sin problema.

Ahora, 200/300 etiquetas es mucho y, por lo tanto, seguramente necesitará una antena diseñada específicamente para poder alimentar todas esas etiquetas al mismo tiempo. Además, implica que el rango de comunicación ciertamente debe ser más alto de lo habitual, porque 300 piezas de lego ocupan más espacio que 5 cartas apiladas una encima de la otra.


Editar: lo anterior solo sugiere soluciones HF (13.56Mhz). Estas soluciones están hechas para un rango limitado (10-20 cm más o menos), pero capacidades extendidas (criptografía, ...). Lo que en realidad es más apropiado en su caso son las soluciones UHF (860-960MHz), principalmente etiquetas ECP Gen2 . No he trabajado yo mismo con esta tecnología, pero parece ser lo que necesita.

Puede funcionar a unos pocos metros (incluso cuando se alimenta de forma pasiva), pero está hecho principalmente para el etiquetado simple. Por supuesto, también admite algún esquema anticolisión, por lo que puede tener muchas etiquetas en el campo. Bonificación: estas etiquetas suelen ser más baratas que las etiquetas de 13,56 Mhz. Los lectores, sin embargo, parecen más caros (típicamente en el rango de 500$-1000$), y no estoy seguro de cómo puede conectarlos fácilmente con un raspi (aunque algunos de ellos parecen tener una interfaz USB, podrá hay que comprobar los controladores).

Su explicación del sistema Tipo A es útil. No era consciente de ello antes. Parece similar al sistema de sondeo de 1 cable de Dallas en el que puede identificar todas las etiquetas en la red muy rápidamente.

Las etiquetas y lectores RFID comunes funcionan 1:1, por lo que si hay dos etiquetas presentes, esto causaría un problema porque ambas etiquetas responderían potencialmente al mismo tiempo y la lectura de datos se dañaría.

EDITAR: la respuesta de dim explica que existe un protocolo para clasificar la presencia de múltiples etiquetas en caso de que sus respuestas colisionen y esto, por lo que puedo decir, da como resultado varios comunicados 1: 1 entre maestro y esclavo (s).

Una mejor idea podría ser alimentar todas las etiquetas desde la antena de bobina inductiva, pero luego usar un método de interrogación de dirección de barrido mediante el cual las etiquetas actúan como esclavos que escuchan su dirección específica y responden al recibir esa solicitud al maestro.

Las etiquetas de alimentación pueden ser un problema cuando esas etiquetas se colocan en lo alto de la pila de otros ladrillos de Lego, pero dado que la antena de "alimentación" es bastante grande, su campo magnético se extenderá bastante y, una buena regla general es que usted debería poder "cosechar" suficiente energía del campo magnético en aproximadamente la mitad del radio de la bobina (esto sería de unos 10 cm en el caso de una bobina cuadrada). Mucho más allá de esto, la densidad del flujo magnético cae como la distancia al cubo, es decir, rápidamente se vuelve demasiado pequeña para extraer suficiente energía.

Entonces, si el ladrillo de Lego más bajo estuviera en el plano de la bobina de 20 cm y se moviera a 10 cm de distancia, el campo que recibe se reduce en 2 2 (es decir, se reduce a alrededor del 35%). A 2x esta distancia se ha reducido a alrededor del 9%. A 4x es alrededor del 1,4%. Está empezando a acercarse a una ley del cubo inverso.

Puede usar la calculadora en esta página para confirmar o simplemente usar la fórmula: -

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

El protocolo ISO14443 puede manejar múltiples tarjetas en el campo. El estándar se ha escrito teniendo en cuenta este problema desde el principio, por lo que el hecho de que funcione 1:1 no es cierto. De lo contrario, no podría abrir la puerta de su edificio de trabajo simplemente poniendo su billetera frente al lector, si tiene una tarjeta de pago sin contacto en esta misma billetera. Para las aplicaciones sin contacto en el uso diario, eso sería un gran problema.
Parece que he propuesto una idea que ya tiene una posible solución.
No digo que su solución no sea correcta, solo digo que la oración "Etiquetas y lectores RFID comunes funcionan 1: 1" es inexacta.
@dim si ambas etiquetas responden al mismo tiempo o, en general, superponen significativamente sus transmisiones, dado que usan la misma frecuencia de transmisión, tiene que haber colisiones destructivas y esto, estimaría, significa que no puede hacer frente a verdaderas colisiones simultáneas a pesar de la exageración. Pueden parecer simultáneos, pero si todo termina en unos pocos milisegundos, ¿quién puede decirlo?
El lector puede decir con certeza cuándo hay una colisión. La especificación está hecha para resolver ese problema. Al igual que el protocolo CAN puede garantizar que si dos nodos están hablando al mismo tiempo, el que enviará el primer bit dominante se hará cargo, y eso no conducirá a una trama corrupta en ningún punto de la red.
Mi punto es que no hay ningún sistema que pueda funcionar de otra manera que no sea 1:1 simultáneamente.