You are on page 1of 37

INTERFACES RFID

Los sistemas de identificacin por radiofrecuencia o RFID (Radio Frequency


Identification) son una nueva tecnologa para la identificacin de objetos a
distancia sin necesidad de contacto, ni siquiera visual. Se requiere lo que se
conoce como etiqueta o tag RFID que consiste en un microchip que va adjunto a
una antena de radio y que va a servir para identificar unvocamente al elemento
portador de la etiqueta. Con esto podemos almacenar hasta 2 Kbytes de datos.

RFID hace referencia a un tipo de tecnologa de intercambio inalmbrico de datos.


La lectura y grabacin de los datos se realiza a partir de un chip conectado a una
antena que recibe seales de radiofrecuencia desde un dispositivo de lectura y
grabacin (denominado normalmente lector, codificador o interrogador). El
intercambio de datos se produce automticamente, sin que ningn operador tenga
que intervenir para activar la lectura de RFID.

Tambin se va a necesitar un lector que sea capaz de leer los datos almacenados
en la etiqueta. Lo ms normal es tener un dispositivo que tenga una o ms
antenas que emitan ondas de radio y que reciban las seales devueltas por la
etiqueta RFID. Una vez hecho esto se puede trabajar con una computadora sobre
los datos que se han ledo.

Los microchips en las etiquetas RFID pueden ser o bien de lectura o bien
regrabables, teniendo stos ms posibilidades ya que puede variarse su
informacin o aumentarse la misma, lo cual es muy til para realizar seguimiento
de los objetos que portan la etiqueta (estudios biomtricos en animales,
movimientos en las cadenas de fabricacin y montaje, etc.).
Las bandas de frecuencia en las que trabajan los sistemas RFID son 125 o 134
Khz para baja frecuencia y 1356 para alta frecuencia, aunque pueden trabajar en
muchos otros rangos de frecuencia. Para el uso del espectro UHF los distintos
pases no consiguen llegar a un estndar ya que en Europa se trabaja en 868
Mhz., en Estados Unidos 915 Mhz. y en Japn, reticente al uso de esta banda,
empieza a trabajar en 960 Mhz. El problema que se genera en el empleo de la
banda UHF es que hay distintos dispositivos que operan sobre la misma, y
generan ruidos sobre los sistemas RFID y viceversa, con lo cual los gobiernos
tienen que realizar detallados estudios para determinar y minimizar los trastornos
que puedan suceder como consecuencia de cambiar las bandas de trabajo de los
dispositivos RFID.

La tecnologa RFID ofrece una serie de ventajas importantes en comparacin con


otras formas de captura de datos:

La RFID permite controlar y capturar datos en entornos inadecuados para


los operarios, ya que la lectura de las etiquetas no requiere ningn trabajo.
Esta tecnologa permite realizar ms de mil lecturas por segundo,
ofreciendo una alta velocidad y una gran precisin.
Los datos de un tag RFID (tambin conocido como tag) se pueden
modificar repetidamente.
La tecnologa RFID no necesita una lnea directa de visin entre la etiqueta
y el lector, lo que la hace adecuada para muchas aplicaciones en las que
no se pueden utilizar cdigos de barras.
Miles de empresas de numerosos sectores productivos han explotado las
ventajas de la identificacin por radiofrecuencia para desarrollar
operaciones que controlan procesos, facilitan datos precisos en tiempo real,
realizan el seguimiento de bienes e inventarios y reducen los requisitos de
mano de obra.
La tecnologa RFID se puede utilizar conjuntamente con sistemas de
cdigos de barras y redes inalmbricas.

Historia de RFID

El origen de la RFID est tristemente relacionado con la guerra, concretamente


con la II Guerra Mundial, en la que el uso del radar permita la deteccin de
aviones a kilmetros de distancia, pero no su identificacin. El ejrcito alemn
descubri que si los pilotos balanceaban sus aviones al volver a la base cambiara
la seal de radio reflejada de vuelta. Este mtodo haca as distinguir a los aviones
alemanes de los aliados y se convirti en el primer dispositivo de RFID pasiva.

1
Los sistemas de radar y de comunicaciones por radiofrecuencia avanzaron en las
dcadas de los 50 y los 60 en que los cientficos de los pases ms avanzados
trabajaban para explicar cmo identificar objetos remotamente. Las compaas
pronto comenzaron a trabajar con sistemas antirrobo que usando ondas de radio
determinaban si un objeto haba sido pagado o no a la salida de las tiendas. Se
utiliza con una etiqueta en la que 1 nico bit decide si se ha pagado o no por el
objeto en cuestin. La etiqueta pitar en los sensores colocados a la salida si el
objeto no se ha pagado.

Las primeras patentes para dispositivos RFID fueron solicitadas en Estados


Unidos, concretamente en Enero de 1973 cuando Mario W. Cardullo se present
con una etiqueta RFID activa que portaba una memoria rescribible. El mismo ao,
Charles Walton recibi la patente para un sistema RFID pasivo que abra las
puertas sin necesidad de llaves. Una tarjeta con un transponedor comunicaba una
seal al lector de la puerta que cuando validaba la tarjeta desbloqueaba la
cerradura.

El gobierno americano tambin trabajaba sobre esta tecnologa en los aos 70 y


mont sistemas parecidos para el manejo de puertas en las centrales nucleares,
cuyas puertas se abran al paso de los camiones que portaban materiales para las
mismas que iban equipados con un transponedor. Tambin se desarroll un
sistema para el control del ganado que haba sido vacunado insertando bajo la piel
de los animales una etiqueta RFID pasiva con la que se identificaba los animales
que haban sido vacunados y los que no.

Despus han ido llegando mejoras en la capacidad de emisin y recepcin, as


como en la distancia, lo cual ha llevado a extender su uso en mbitos tanto
domsticos como de seguridad nacional, como sucede con el pasaporte expedido
en la actualidad en los EEUU que lleva asociadas etiquetas RFID.

Principios bsicos de funcionamiento

En la tecnologa RFID los principios de operacin del circuito consta de 2


elementos principales: la etiqueta y los lectores.

La etiqueta es el elemento compuesto por silicio (Si), est unido al objeto o


producto al que se va a identificar.
El lector o tambin llamado Reader es el mecanismo que permite leer a la
etiqueta pegada en el objeto a identificar, logrando as un intercambio de
informacin contenida en la etiqueta, de acuerdo a la programacin de la
misma.

2
Esta tecnologa tambin puede llamarse tecnologa inalmbrica la cual se utiliza
para identificar un objeto nico, mediante la comunicacin entre el lector y la
etiqueta, la cual contiene una antena y un chip con capacidad para almacenar
informacin, el chip recibe el nombre de transponder o tag el cual va adherido al
objeto. Con el uso de la tecnologa RFID es posible realizar lecturas simultneas
de objetos, productos, vehculos o personas. El chip almacena un nmero de
identificacin, para cada producto sin repetirse, el funcionamiento es sencillo y se
puede detallar en 3 pasos:

1. El lector enva seales de radiofrecuencia en forma de ondas al tag, el cual


puede captar la seal por su micro antena.
2. Las ondas alimentan al chip por medio del micro antena, por
radiofrecuencia, transmite al lector la informacin que est contenida en la
memoria.
3. El lector recibe la informacin que contiene el tag y lo enva a una base de
datos, el cual previamente se han registrado las caractersticas del
producto.

El lector enva una seal de radio que es recibida por todos los tags presentes en
el campo de radiofrecuencia sintonizado con dicha frecuencia. Los tags reciben la
seal a travs de sus antenas y responden transmitiendo los datos que
almacenan.

El tag puede almacenar muchos tipos de datos, como el nmero de serie,


instrucciones de configuracin, historial de actividad (por ejemplo, fecha del ltimo
mantenimiento, paso del tag por una ubicacin concreta, etc.) o incluso la
temperatura y otros datos proporcionados por los sensores. El dispositivo de
lectura/escritura recibe la seal del tag a travs de su antena, la descodifica y
transfiere los datos al sistema informtico a travs de una conexin de cable o
inalmbrica.

La comunicacin entre el lector y la etiqueta se realiza por medio de ondas de


radiofrecuencia, la cual tiene caractersticas especficas en cuanto al alcance,
velocidad y seguridad segn el rango de frecuencia, tipo de antena, tipo de
etiquetas, etc. La frecuencia de operacin en los sistemas RFID se realiza entre
50KHz y 2.5GHz, las etiquetas que funcionan a bajas frecuencias (50KHz
14KHz) son de bajo costo, corto alcance y resistentes al ruido, no requiere de
licencias para su operacin. Las etiquetas que funcionan a altas frecuencias
(14MHz 2.5GHz) son de mayor costo, tecnologa ms compleja, mayor alcance,
y tampoco requiere de licencias para poder operar.

Los factores que hay que tener en cuenta para la creacin de sistemas RFID son:

3
Rango de alcance para poder mantener la comunicacin.
Capacidad de informacin que puede almacenar el transponder.
Velocidad de transmisin y recepcin entre etiqueta y lector.
Tamao de la etiqueta.
Velocidad de lector para poder leer varias etiquetas a la vez.
Posibles interferencias entre lector y etiqueta para su ptimo
funcionamiento.
Elegir entre etiquetas activas o pasivas.
Tipo de batera (solo en etiqueta activa).
Potencia de la etiqueta.

Un sistema de comunicacin RFID se basa en comunicacin bidireccional entre el


lector y una etiqueta, por medio de ondas electromagnticas de radiofrecuencia. El
sistema de trasmisin de informacin vara segn la frecuencia en la que opera,
de esta manera, un sistema RFID se basan en sistemas de acoplamiento. El tipo
de acoplamiento afecta directamente al rango de lectura entre las etiquetas y los
lectores. Los tipos de acoplamiento son:

Acoplamiento electromagntico: Es utilizado para los sistemas RFID de


ultra alta frecuencia (UHF). Consiste en reflejar la seal para enviarla al
origen. Como el lector y la etiqueta utilizan la misma frecuencia para
comunicarse, dependen de un sistema Half-duplex, el cual se basa en
envo de informacin bidireccional no simultaneo. Sin embargo el lector
emite energa todo el tiempo a la etiqueta hasta que esta le envi
respuesta.
Acoplamiento inductivo: el lector proporciona energa en forma de
acoplamiento inductivo a las etiquetas mediante antenas en forma de
bobina para generar campo magntico.
Acoplamiento magntico: Este tipo de acoplamiento se produce cuando
la antena del lector consiste en una bobina enrollada en una pieza de ferrita
con los extremos al aire.
Acoplamiento capacitivo o elctrico: basado en otro tipo de
acoplamiento cerrado, como el magntico.

En toda comunicacin realizada por medio de ondas electromagnticas, se


requiere de un campo sinusoidal variable o dicho de otra manera una onda
portadora. La comunicacin se consigue aplicando una variacin a este campo, ya
sea en amplitud, frecuencia o fase, en funcin de los datos a transmitir, a este
proceso se le conoce como modulacin. En los sistemas RFID se aplican diferente
tcnicas de modulacin: ASK (Amplitude Shift Keying), FSK (Frequency Shift
Keying) y PSK (Phase Shift Keying).

4
Componentes de un sistema RFID

Transponder, etiqueta o tag.

Por sus siglas en ingles Transmitter/response, se le llama transponder, trmino


que hace referencia a la tecnologa RFID, los componentes del transponder o
tambin llamado etiqueta por la forma que va pegada al objeto, son:

Memoria no voltil donde se almacenan los datos del objeto.


Memoria ROM donde almacena la programacin y funciones de la etiqueta.
Memoria RAM para almacenar datos durante la comunicacin con el lector.
Antena, la cual sirve de alimentacin a la etiqueta y poder comenzar con la
recepcin/transmisin de datos.
Componentes electrnicos para el proceso de los datos (buffers, filtros, etc.)
La etiqueta contiene informacin que puede utilizarse solo para leer, escribir
o solo para leer.
La mayora de etiquetas cuentan con memoria EEPROM para almacenar
los datos cargados por el fabricante.

Los tags RFID constan de dos elementos bsicos: un chip y una antena. El chip y
la antena, montados, forman un integrado.

5
Los tags RFID pueden ser de slo escritura o de lectura/escritura; esta ltima
opcin es ya de uso general. Los tags de slo lectura se programan en la fbrica
con un nmero de serie y otros datos inalterables. Los datos de los tags de
lectura/escritura se pueden revisar miles de veces. Los tags de lectura/escritura
suelen estar divididos en particiones con un rea segura de slo lectura definida
por el usuario, que incluye un nmero de identificacin exclusivo, y una parte de
memoria que es posible escribir y que los usuarios pueden reprogramar siempre
que quieran. De esta manera, el usuario puede codificar de modo permanente un
nmero de identificacin de la tarima en la memoria de slo lectura y utilizar
posteriormente las secciones de lectura/escritura para registrar los artculos
cargados en la tarima. Despus, una vez descargada la tarima, la seccin que
permite la escritura se puede borrar y reutilizar.

Alimentacin o potencia.

Para iniciar la transmisin/recepcin de datos de una etiqueta al lector, se


necesitan pequeas cantidades de energa (Mw) microwatts. Pero esta energa
depende del tipo de etiqueta a utilizar:

Pasiva, los que nicamente se alimentan del campo magntico producido


por el lector a la hora de identificar el objeto.
Activa, precisan de mayor energa, la cual es suministrada por bateras, con
ello posee un alcance mayor y no necesita que el lector lo alimente ya que
su alimentacin es directamente proporcionada por la batera, debido a esto
la vida til de la etiqueta se reduce y el costo es mayor.

Frecuencias y velocidades de transmisin.

El sistema RFID maneja diferentes frecuencias de operacin y velocidades de


transmisin, las cuales se clasifican de la siguiente manera:

Bajas frecuencias (LF), por sus siglas en ingls Low Frequency, las
frecuencias bajas se consideran en el rango de 120KHz hasta 134KHz, y
son utilizados en accesos de edificios.
Alta frecuencia (HF) High Frequency, se consideran altas en el rango de
13.56MHz, y es llamada banda industrial, mdica y cientfica (ISM) por sus
siglas en ingls, tiene alcance de lectura baja, a 30 cm, es generalmente
plana de 50 a 100 mm. Es de lectura fcil y son resistentes a
perturbaciones y ruido. Trabajan para el control de apertura y cierre de
puertas automticas por medio de un control remoto, til tambin para los
monederos electrnicos.
Ultra alta frecuencia (UHF), funcionan en el rango de 868MHz hasta
956MHz, casualmente es la misma frecuencia de los telfonos inalmbricos

6
y algunos telfonos celulares, en cuanto a su aplicacin en RFID, se
emplean en suministros y aplicaciones detalladas, la principal ventaja es
que puede ser leda hasta 3 metros y puede leer varias etiquetas de forma
simultnea, no puede ser leda en objetos hmedos y en ser humanos. En
este rango de frecuencia tambin entra el RFID pasivo (entre 902 MHz y
920 MHz), debido a que se requiere una fuente de alimentacin para que el
chip integrado se active, enviando o almacenando la informacin necesaria.
Microondas, funcionan en el rango de los 2.45GHz.
Wi-fi (IEEE 802.11). En este rango tambin est situado los RFID activos,
el chip que contiene la etiqueta activa posee una batera independiente la
cual utilizan por ejemplo las tarjetas IAVE utilizadas en las casetas de
peaje, teniendo mltiples aplicaciones en las cadenas de suministro en
donde hoy en da es el sector que ms se adecua la tecnologa RFID.

La siguiente tabla muestra los rangos de frecuencia utilizados para RFID, en sus
diversas aplicaciones.

Lectores

Los lectores, tambin llamados readers, estos lectores envan la seal de


radiofrecuencia detectada por las etiquetas, en un rango de accin determinado y
existen 2 tipos:

Lectores con sistemas de bobina simple, que sirven para transmitir tanto
la energa como los datos, son sencillos, econmicos, poco alcance.
Lectores con sistemas interrogadores, depende del transponedor de la
etiqueta, son sofisticados, acondicionan, detectan y corrigen errores,
trabajan a mayor frecuencia.

7
Controladores y antenas

Las antenas son dispositivos de lectura y escritura, funcionan a travs de un


controlador el cual le suministra potencia para activar la lectura o grabacin, va
conectado por cable TCP/IP a una red, y a una computadora, existen diferentes
tipos de controladores, en equipos portables contienen una antena y un
controlador, es decir hacen una doble funcin, como se observa en la imagen
siguiente:

La antena es un componente importante, ya que es la que se encarga dentro del


entorno de comunicacin entre la etiqueta RFID hacia el lector, la antena es la que
transforma las corrientes elctricas en ondas electromagnticas y transforma las
ondas en corrientes oscilantes, esta accin forma un campo de accin a su
alrededor, tridimensional. Lo importante de la antena es lograr aumentar el radio
de accin lo mximo posible, aumentar la densidad del campo electromagntico al
mximo. Es decir entre mayor sea el alcance y ms denso sea el campo
electromagntico, mejor ser la lectura. Los patrones de radiacin de una antena
RFID son de 3 tipos:
8
Isotrpico: es una modelo de haz tomado como referencia
Omnidireccional: haz de una antena clsica para Etiquetas RFID
alargadas.
Directivo: es el haz de una antena RFID que contienen los portales

Funcionamiento de las etiquetas

Las etiquetas pueden ser de tres tipos distintos dependiendo del lugar del que
provenga la energa que utilizan para tramitar la respuesta.

La etiqueta activa: esta etiqueta tienen su propia fuente de alimentacin


consta de bateras para su funcionamiento, la cual proporciona la energa
necesaria para que todo el tiempo este mandando seales de su ubicacin.
La etiqueta pasiva: no tienen fuente de alimentacin propia, est
alimentada por medio del campo magntico. La antena recibe el flujo del
campo magntico y alimenta al circuito, no posee bateras, atreves del
campo magntico se comunican tambin los lectores.
La etiqueta semi-pasivas: utilizan una pequea batera asociada, la cual
es la combinacin de las 2 anteriores.

Para poder elegir que etiqueta conviene utilizar en nuestro objeto, se debe tener
en cuenta las caractersticas de cada etiqueta y saber el tipo de giro y uso del
objeto a identificar para seleccionar la adecuada, la siguiente tabla describe la
diferencia entre el circuito pasivo y el circuito activo.

9
La ventaja de la etiqueta pasiva es su funcionamiento conocido como sealizacin
pasiva o backscatter, el cual consiste en la dualidad que tiene la antena para
recibir y enviar informacin y alimentar el circuito para establecer el intercambio de
informacin.

Etiquetas RFID Pasivas

Las etiquetas pasivas no llevan fuente de alimentacin propia, no requieren de una


batera para su funcionamiento, ya que se alimenta del campo magntico creado
por el lector y utilizan para responder la energa inducida en la antena por la seal
de escaneo de radiofrecuencia, este tipo de etiquetas tiene menor rango de
comunicacin, pero son las etiquetas con mayor uso.

Debido a esto la seal de respuesta tiene un tiempo de vida bastante corto y su


radio de transmisin puede llegar a como mucho 6 metros, pero tiene la ventaja de
poder ser mucho ms pequeas que las etiquetas activas.

Generalmente operan en una frecuencia de 124, 125 o 135 Khz., aunque hay
sistemas que pueden llegar a operar en 2.45 Ghz. La forma de la etiqueta
depender del uso que se vaya a hacer de las mismas, aunque lo normal es que
vaya montada sobre una pegatina o una tarjeta. Se observa en la figura el
funcionamiento de una etiqueta pasiva.

El funcionamiento de una etiqueta consta del lector el cual transmite una seal
codificada de radiofrecuencia el cual alimenta a la etiqueta y se activa por la seal
recibida, la etiqueta responde al lector con el nmero de identificador y otros
datos, el lector captura los datos de la etiqueta y los enva a una computadora. La
computadora dispone de un software (Middleware) RFID que procesa y almacena
los datos obtenidos. Se observa en el siguiente diagrama a bloques la estructura
de una etiqueta pasiva:

10
En la tecnologa RFID pasiva, las bandas de frecuencia de emisin del sistema
estn reportadas en la siguiente tabla:

Algunas de las aplicaciones de las etiquetas pasivas son:

Logstica
Inventario de almacenes
Control de acceso

Etiquetas RFID Activas

Las etiquetas activas llevan su propia fuente de alimentacin, cuentan con una
batera interna, al cual permite alcanzar distancias de lectura y escritura muy altas
entre las etiquetas y los lectores RFID.

Tiene rangos mayores de uso, tanto a nivel de frecuencias, siendo las normales de
uso 455 Mhz, 245 o 58 Ghz, como las distancias a las que pueden ser detectadas
y ledas, 100 metros. Su tamao es lgicamente mayor que los otros dos tipos de
etiquetas, aunque no apenas supera el tamao de una moneda.

Adems portan una pequea memoria, debido a lo cual pueden almacenar un


mayor nmero de datos. Se puede usar como un transponedor o como una baliza.
En el primer caso puede ejemplificarse como un tele peaje o bien otros puestos de

11
control en los que se requiera la apertura de puertas de seguridad. Su segundo
uso es utilizado para sistemas de localizacin en tiempo real. En este caso la
etiqueta est lanzando una seal cada cierto intervalo de tiempo, por ejemplo 3
segundos, hasta que el lector consiga identificar el lugar del que proviene la seal.

El funcionamiento de las etiquetas activas se aprecia en la siguiente figura:

El funcionamiento de las etiquetas activas consta cuando los lectores y


generadores de zona transmiten una seal codificada de radiofrecuencia a cada
identificador de zona, funciona como repetidor de la seal, las etiquetas responden
con una seal de identificacin de forma peridica es decir cada determinado
tiempo permanentemente, hasta que la vida de la batera llegue a su fin
(aproximadamente 5 a 7 aos).

Si cada generador o lector solicitan a la etiqueta esta proporcionar su nmero de


identificacin, ubicacin y datos contenidos en la etiqueta, si estos no lo solicitan,
las etiquetas trasmiten dicha informacin peridicamente o ante un evento
previamente programado. El lector captura los datos de la etiqueta y los almacena
o enva a la computadora el cual procesa y almacena los datos. Por ltimo el
software instalado en la computadora enlaza el lector con la red local de la
compaa, transfiriendo y filtrando la informacin desde el lector hasta la etiqueta.

Las frecuencias en las que opera la tecnologa RFID activa son las mismas que
las de la tecnologa RFID pasiva. Pero la estructura de la etiqueta activa es
diferente y puede verse en la siguiente figura:

12
Algunas de las aplicaciones de las etiquetas activas son:

Localizacin de objetos y personas en tiempo real


Pueden incorporarse sensores adicionales a la propia memoria como
sensores de temperatura, velocidad, movimiento, etc. que permiten
almacenar o controlar datos vitales en algunas aplicaciones y manipularlas
en tiempo real.

Un lector de etiquetas RFID puede identificar a muchas etiquetas en su alcance


debido a esto, el lector se configura para que otorgue prioridades y pueda darle a
cada etiqueta su tiempo para ser leda y as evitar que dos o ms etiquetas se lean
al mismo tiempo, esto se logra trasmitiendo un bit a la vez en forma de rbol y con
ello eliminamos las colisiones.

Para el sistema de RFID es necesario que cuente con alta seguridad, debido a sus
aplicaciones que tienen que tener ciertos parmetros de seguridad y tener una
defensa cuando quiera ser violado o atacado contra los siguientes mdulos de
ataque:

Lectura no autorizada, para conseguir una copia de la etiqueta y copiar su


informacin o bien modificar su operacin.
Colocar una etiqueta extraa en zona de lectura y obtener acceso no
autorizado con el fin de obtener servicios de rastreo de forma gratuita.
Escuchar sin ser advertido en comunicaciones de radio y enviar datos,
imitando una etiqueta portadora original con la intencin de hacer fraude.

Etiquetas RFID Semi-pasivas

Este tipo de etiquetas es muy similar a las etiquetas RFID pasivas, pero con la
diferencia de que incluyen una pequea batera que permite que el circuito
integrado de la etiqueta est siempre alimentado.

13
Esto da lugar a que las antenas no requieran capturar la potencia de la seal
entrante para devolver la seal saliente, sino que las antenas son mejoradas para
la emisin de la respuesta.

Control de errores

El control de errores se utiliza para reconocer errores en la va de transmisin,


existe riesgo de prdida de informacin, es por ello que hay que controlar que no
exista error durante la transmisin de informacin, ya que podra llegar incompleta
o alterada, esto se puede corregir por ejemplo con una retrasmisin cuando
previamente se compruebe error en la trama del envo, las medidas ms comunes
utilizadas son:

Control de paridad

Mtodo que incorpora un bit de paridad en cada byte transmitido, resultado de 9


bits enviados por cada byte de informacin. Antes de la transmisin de datos debe
tener lugar a una decisin para aceptar si se establece una paridad par o impar
para asegurar que el emisor y receptor realizan el control de acuerdo con una
misma seleccin. El valor de bit de paridad es fijado de modo que si se usa
paridad par, un nmero par de 1 debe contarse en los 9 bits, si la paridad es
impar, un nmero impar de 1dede contarse en los 9 bits.

Mtodo de control de redundancia longitudinal, de proceso lineal; LRC


(Longitudinal Redundancy Checksum).

Tambin conocida como la suma de comprobacin XOR, puede ser calculado fcil
y rpidamente, La suma de comprobacin XOR se genera mediante los puertos
XOR recursivo de todos los bytes de datos en un solo bloque de datos. El byte 1
se pasa por una XOR con el byte 2, la salida de esta OR exclusiva es pasado por
una XOR con el byte 3, etc. Si el resultado del LRC se aade al bloque de datos
que se transmite, entonces un simple control de la transmisin una vez es recibida
puede detectar los errores. El mtodo a seguir es generar una suma LRC de todos
los bytes recibidos. El resultado de esta operacin debe ser siempre cero;
cualquier otro resultado indica que ha habido errores en la transmisin como
puede verse en el ejemplo de la figura:

14
USOS DE RFID

La tecnologa RFID tiene una gran cantidad de aplicaciones y mbitos de uso. La


tecnologa RFID es utilizada por gobiernos en aplicaciones civiles y militares, en
asuntos de seguridad nacional (pasaportes o billetes con tecnologa RFID).
Tambin hacen uso de esta tecnologa las grandes empresas para el seguimiento
de sus productos, desde el inicio de su manufacturacin hasta su destino final en
los almacenes y tiendas.

En el hogar no son pocos los usos que se le puede dar a la tecnologa RFID, sino
que se abre muchas posibilidades. En primer lugar, utilizando un chip implantado
en los miembros de la familia, o con una tarjeta que porte el individuo, se puede
gestionar la apertura de puertas con un sistema conocido como RFID Digital Door
Lock, que es una cerradura electrnica, que se abre al acercarse el chip RFID o
en su defecto, caso de prdida, con una clave secreta. De un modo similar
funcionara el sistema de alumbramiento de la casa que se encendera al paso de
la persona sin utilizar sensores de movimiento o de presencia.

15
Otra de las posibilidades que se nos presenta es el uso de alfombras con
etiquetas RFID que permitira guiar a los robots de la limpieza hacindolos ms
eficientes, conociendo as las zonas de que consta la alfombra han sido limpiadas.

En la cocina se podra hacer uso de esta tecnologa con nuevas sartenes,


cacerolas y placas de vitrocermica que se sirven de esta tecnologa para ayudar
a las personas a cocinar. Este nuevo invento conocido como ROBOTICcookware
hace uso de los chips de las sartenes, las cacerolas y las placas de vitrocermica
para comunicarse con un libro de recetas para respetar y cumplir los tiempos y
temperatura del cocinado.

Se puede utilizar un reproductor de video RFID, que consiste en una etiqueta


RFID que tiene un video asociado a la misma, que se reproduce al ser detectada
la etiqueta y solicitada la reproduccin. Podra ser un nuevo paso despus de los
vdeos VHS o los actuales DVDs, pero sobre todo tienen gran utilidad para
presentaciones y exposiciones.

Otra utilidad que tiene el uso de etiquetas RFID que portaran la ropa sera el uso
de lavadoras capaces de leer dichas etiquetas y seleccionar el mejor programa de
lavado para no daar las prendas. Tambin tendramos controlados a los
individuos, especialmente a los ms pequeos, dentro del hogar o en el caso de
que salieran del mismo sin el consentimiento paterno. Esto evitara implantar los
chips en personas o que tuviesen que llevar la tarjeta siempre encima, ya que
deliberadamente se puede dejar olvidada en casa con el objeto de fugarse.

Adems se puede encontrar otros muchos usos para RFID como inventariar
nuestras pertenencias, especialmente til para localizar dnde tenemos las cosas,
pero adems conocer las reservas del hogar, lo cual nos ayuda a saber qu es lo
que tenemos que comprar sin tener que mirar la despensa.

Otra aplicacin posible del uso de RFID en el hogar es un sistema de apertura


automtica de la puerta del garaje al acercarse nuestro vehculo, similar al sistema
de apertura de puertas en las centrales nucleares americanas de la dcada de los
70.

COMO PROGRAMAR RFID EN UN MICROCONTROLADOR

Interfaz RFID para 8051microcontroller

RFID o Radio Frequency Identification es un mtodo en el que las ondas


electromagnticas se utilizan para la transmisin de datos para el propsito de
identificar las etiquetas unidas a objetos. Un sistema de RFID consiste en un
transmisor (tag) y una etiqueta de reader. Se cifra con un cdigo nico y el lector
escanea el cdigo para el propsito de identificacin. Las etiquetas son
16
generalmente de dos tipos: activa y pasiva. Las etiquetas activas tienen una
batera instalada a la misma y que transmite peridicamente o en la proximidad del
lector el cdigo nico. Las etiquetas pasivas son alimentadas mediante la
induccin electromagntica de la seal transmitida por el lector. Las aplicaciones
tpicas de RFID son los sistemas de control de acceso, tarjetas de identificacin,
identificacin humana, la identificacin de animales, sistemas de pago, los libros
de marcado, en sustitucin de cdigos de barras, etiquetado mercanca en las
tiendas, etc. Las etiquetas RFID estn disponibles en diferentes formas, pero la
forma ms comn es en forma de una tarjeta. Los lectores de RFID estn
disponibles en el mercado en la forma de un mdulo con todo el hardware de
apoyo.

Tarjeta RFID

La tarjeta RFID est disponible en diferentes tamaos y formas y el tipo ms


comnmente utilizado se muestra arriba. La imagen de un mdulo tpico lector de
RFID tambin se muestra arriba. Bsicamente contiene una memoria de
semiconductores para almacenar el cdigo de identificacin nico, circuito y una
bobina de modulacin. Los bobina acta como la fuente de alimentacin por medio
de induccin electromagntica, mientras que en la zona del lector y que tambin
sirve como la antena para propagar el cdigo ID. El circuito de modulacin modula
el cdigo nico en la onda transmitida. El lector contiene bsicamente una bobina
y un circuito electrnico. La bobina sirve como excitador para la tarjeta y tambin
la antena para recibir la seal propagada por la tarjeta. El circuito electrnico
demodula esta seal y la convierte en una forma adecuada para la siguiente etapa
(microcontrolador).

17
Esquema de conexiones para la conexin del mdulo RFID para 8051
microcontrolador. Interfaz RFID para 8051 diagrama del circuito.

El esquema completo para la conexin del mdulo RFID para 8051 se muestra
arriba. El cdigo de identificacin nico en la tarjeta RFID es ledo por el circuito y
se visualiza en la pantalla LCD 16 2. Pin Tx del mdulo RFID est conectado al
puerto 3.5 del microcontrolador. El microcontrolador recibe datos desde el mdulo
de RFID a travs de este canal. Interruptor S1, el condensador C1 y la resistencia
R1 forma el circuito de rearme. El condensador C2, C3 y el cristal X1 estn
asociados con el circuito de reposicin.

Programa:

El programa para la interfaz RFID a 8051 puede ser simplemente divide en cuatro
partes. Configuracin de la comunicacin en serie, la lectura de la tarjeta RFID, ir
a buscar desde la posicin de memoria y mostrarlo en la pantalla LCD.

RS EQU P2.7 //equates P2.7 to RS


RW EQU P2.6 //equates P2.6 to RW
E EQU P2.5 //equates P2.5 to E
ORG 000H //origin
MOV TMOD,#00100001B //Timer1=Mode2 timer & Timer0=Mode1 timer
MOV TH1,#253D //loads TH1 with 253D(9600 baud)
MOV SCON,#50H //sets serial port to Mode1 and receiver enabled
SETB TR1 //starts Timer1

MAIN:ACALL DINT //calls DINT subroutine


ACALL TEXT1 //calls TEXT1 subroutine
ACALL LINE2 //calls LINE2 subroutine

18
ACALL TEXT2 //calls TEXT2 subroutine
ACALL READ //calls READ subroutine
ACALL LINE2 //calls LINE2 subroutine
ACALL WRITE //calls WRITE subroutine
ACALL DELAY1 //calls DELAY1 subroutine
SJMP MAIN //jumps back to MAIN label

DELAY1:MOV R3,#46D //loads R3 with 46D


BACK: MOV TH0,#00000000B //loads TH0 with all 0's
MOV TL0,#00000000B //loads TL0 with all 0's
SETB TR0 //starts Timer 0
HERE1: JNB TF0,HERE1 //loops here until TFO flag is 1
CLR TR0 //stops TR1
CLR TF0 //clears TF0 flag
DJNZ R3,BACK //iterates the loop 46 times for 3s delay
RET //returns from subroutine

READ:MOV R0,#12D //loads R0 with 12D


MOV R1,#160D //loads R1 with 160D
WAIT:JNB RI,WAIT //loops here until RI flag is set
MOV A,SBUF //moves SBUF to A
MOV @R1,A //moves A to location pointed by R1
CLR RI //clears RI flag
DJNZ R0,WAIT //iterates the loop 12 times
RET //return from subroutine

WRITE:MOV R2,#12D //loads R2 with 12D


MOV R1,#160D //loads R1 with 160D
BACK1:MOV A,@R1 //loads A with data pointed by R1
ACALL DISPLAY //calls DISPLAY subroutine
INC R1 //incremets R1
DJNZ R2,BACK1 //iterates the loop 160 times
RET //return from subroutine

TEXT1: MOV A,#52H //loads A with ascii of "R"


ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#46H //loads A with ascii of "F"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#49H //loads A with ascii of "I"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#44H //loads A with ascii of "D"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#20H //loads A with ascii of "space"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#52H //loads A with ascii of "R"
ACALL DISPLAY //calls DISPLAY subroutine
19
MOV A,#45H //loads A with ascii of "E"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#41H //loads A with ascii of "A"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#44H //loads A with ascii of "D"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#45H //loads A with ascii of "E"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#52H //loads A with ascii of "R"
ACALL DISPLAY //calls DISPLAY subroutine
RET //returns from subroutine

TEXT2: MOV A,#53H //loads A with ascii of "S"


ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#77H //loads A with ascii of "w"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#69H //loads A with ascii of "i"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#70H //loads A with ascii of "p"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#65H //loads A with ascii of "e"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#20H //loads A with ascii of "space"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#63H //loads A with ascii of "c"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#61H //loads A with ascii of "a"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#72H //loads A with ascii of "r"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#64H //loads A with ascii of "d"
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#2EH //loads A with ascii of "."
ACALL DISPLAY //calls DISPLAY subroutine
MOV A,#2EH //loads A with ascii of "."
ACALL DISPLAY //calls DISPLAY subroutine
RET //return from subroutine

DINT:MOV A,#0FH //display ON cursor blinking ON


ACALL CMD //calls CMD subroutine
MOV A,#01H //clear display screen
ACALL CMD //calls CMD subroutine
MOV A,#06H //increment cursor
ACALL CMD //calls CMD subroutine
MOV A,#83H //cursor line 1 position 3
ACALL CMD //calls CMD subroutine
MOV A,#3CH //activate 2nd line
20
ACALL CMD //calls CMD subroutine
RET //return from subroutine

LINE2:MOV A,#0C0H //force cursor to line 2 position 1


ACALL CMD //calls CMD subroutine
RET //return from subroutine

CMD: MOV P0,A //moves content of A to Port 0


CLR RS //clears register select pin
CLR RW //clears read/write pin
SETB E //sets enable pin
CLR E //clears enable pin
ACALL DELAY //calls DELAY subroutine
RET //return from subroutine

DISPLAY:MOV P0,A //moves content of A to Port 0


SETB RS //sets register select pin
CLR RW //clears read/write pin
SETB E //sets enable pin
CLR E //clears enable pin
ACALL DELAY //calls DELAY subroutine
RET //return from subroutine

DELAY: CLR E //clears enable pin


CLR RS //clears register select pin
SETB RW //clears read/write pin
MOV P0,#0FFh //moves all 0's to Port 0
SETB E //sets enable pin
MOV A,P0 //moves Port 0 to A
JB ACC.7,DELAY //jumps back to label DELAY if ACC.7 is set
CLR E //clears enable pin
CLR RW //clears read/write pin
RET //return from subroutine

END //end statement

Configuracin de la comunicacin en serie.

La primera parte establece la velocidad de transmisin y la velocidad de


comunicacin mode. Baud de serie es el nmero de pulsos por segundo que se
producen en una lnea de transmisin, es decir es la velocidad a la que se
intercambian datos entre dos sistemas. La velocidad de transmisin requiere aqu
es 9600 y se establece mediante el Timer1. Para ello, el Timer1 se configura en
Modo 2 y TH1 (Timer1 registro agudo) se carga con 253D. El valor que tiene que

21
ser cargado en TH1 para la velocidad de transmisin particular puede
determinarse usando la siguiente ecuacin;

TH1 = 256 - ((Crystal / 384) / Baud).

El cristal utilizado aqu es 11,052 MHz y la velocidad de transmisin requerida es


de 9600. Sustituyendo estos valores en la ecuacin anterior obtenemos TH1 = 256
- ((11.052MHz / 384) / Baud) = 253. El registro SCON se carga con 50H para
establecer modo de puerto serie al Modo 1 y permitiendo que el receptor de serie.
Todos estos procedimientos son el requisito mnimo para implementar la
comunicacin en serie en un microcontrolador 8051.

Lectura de la tarjeta RFID.

El siguiente paso es leer la tarjeta RFID. El lector RFID est emitiendo


peridicamente seales electromagnticas. Cuando la tarjeta RFID est en la
vecindad del lector, la tarjeta RFID recoge las emisiones lector y transmite el
cdigo de ID nico en la forma de una seal de radio modulada. El lector de fotos
esta onda de radio, demodula ella, la convierte en un microcontrolador de formas
reconocibles y salidas que en serie en su pin Tx. En decir el lector emite un cdigo
de identificacin nico en serie, cuando cada vez la tarjeta RFID est en su
proximidad.

Por lo general, el cdigo RFID constar de 12 caracteres y el microcontrolador


tiene que recogerlo cuando cada vez que el lector lo transmite. Esto se hace
comprobando el estado de la bandera RI en el registro SCON. Los datos
transmitidos al microcontrolador es receptor por el registro SBUF y este proceso
sucede automticamente. Cuando alguna vez la SBUF recibe un bloque completo
de datos, se hace alta RI. As que, cuando cada vez RI va alto, byte dentro SBUF
se mueve en un registro y luego se muda a una posicin de memoria apuntada por
registro R1. La ubicacin de memoria inicial (160D) es pre-cargado en el R1.
Entonces R1 se incrementa, bandera RI se borra y toda la etapa se repite 12
veces para recibir todos los 12 caracteres.

Obtencin y visualizacin del cdigo de identificacin nico.

La siguiente parte es a buscar a los caracteres individuales de la memoria y lo


mostrar en la pantalla LCD. Por esta direccin de la posicin de memoria del
primer carcter est cargado en el registro R1 y luego se traslada a un acumulador
(A) utilizando el cdigo MOV A, @ R1. Entonces subrutina DISPLAY se llama para
mostrar el carcter actual en A en la pantalla LCD. Todo el paso se repite 12
veces para ir a buscar y mostrar todos los 12 caracteres del cdigo RFID nico.

22
COMO PROGRAMAR RFID EN UN ARDUINO

Control de acceso por RFID en arduino

Se trata de usar el mdulo RFID, que permite la comunicacin entre un token


como puede ser una tarjeta, un colgante, un llavero o una etiqueta y un lector
RFID. Para construir un sistema de control de accesos se va necesitar:

Arduino Mega 2560


Mdulo RFID RC522
1 led rojo (opcional)
1 led verde (opcional)
2 resistencias de 2k2 (opcional)
1 pantalla LCD 216 IC2 (opcional)

El material opcional es para que quede ms presentable al simular lo que sera un


caso real. Los materiales del RFID:

20160305_9602: Este es el lector RFID que permite la comunicacin con el token.


Se trasmite una seal de radio de 13.56MHz. Al pasar el token a corta distancia
del lector se genera energa que hace funcionar al token enviando informacin. La
informacin que se quiera salvo por un detalle, la cantidad. No se puede enviar
mucha informacin por razones de velocidad y por la propia naturaleza del
sistema.

Esquema RFID

Este es el esquema, el circuito.

23
La conexin del RFID al Arduino va as:

Mdulo RC522 Arduino Uno, Nano Arduino Mega


SDA (SS) 10 53
SCK 13 52
MOSI 11 51
MISO 12 50
IRQ No conectado No conectado
GND GND GND
RST 9 9
3.3V 3.3V 3.3V

La conexin del mdulo LCD IC2 es el tpico de este mdulo, es decir:

VCC del LCD al 5V de Arduino


GND del LCD al GND de Arduino
SDA del LCD al SDA de Arduino
SCL del LCD al SCL de Arduino

Y el zumbador es:

GND del zumbador al GND de Arduino


+ del zumbador al 5V de Arduino
S del zumbador al pin 32 de Arduino

Programacin RFID

Este es el programa.

/*

24
* MFRC522 - Library to use ARDUINO RFID MODULE KIT 13.56 MHZ WITH
TAGS SPI W AND R BY COOQROBOT.
* The library file MFRC522.h has a wealth of useful info. Please read it.
* The functions are documented in MFRC522.cpp.
*
* Based on code Dr.Leong ( WWW.B2CQSHOP.COM )
* Created by Miguel Balboa (circuitito.com), Jan, 2012.
* Rewritten by Sren Thing Andersen (access.thing.dk), fall of 2013 (Translation to
English, refactored, comments, anti collision, cascade levels.)
* Released into the public domain.
*
* Sample program showing how to read data from a PICC using a MFRC522
reader on the Arduino SPI interface.
*----------------------------------------------------------------------------- empty_skull
* Aggiunti pin per arduino Mega
* add pin configuration for arduino mega
* http://mac86project.altervista.org/
----------------------------------------------------------------------------- Nicola Coppola
* Pin layout should be as follows:
* Signal Pin Pin Pin
* Arduino Uno Arduino Mega MFRC522 board
* ------------------------------------------------------------
* Reset 9 5 RST
* SPI SS 10 53 SDA
* SPI MOSI 11 51 MOSI
* SPI MISO 12 50 MISO
* SPI SCK 13 52 SCK
*
* The reader can be found on eBay for around 5 dollars. Search for "mf-rc522" on
ebay.com.
*/
#include <Wire.h>
#include <SPI.h>
#include <MFRC522.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
#define SS_PIN 53
#define RST_PIN 5
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance.
byte Usuario1[4]= {0xED, 0x99, 0x1D, 0x2B} ; //cdigo del usuario 1
byte ActualUID[4]; //almacenar el cdigo del Tag ledo
int green = 30;
int red = 31;
int buzzer = 32;
void setup() {
lcd.init(); // initialize the lcd
lcd.backlight();
25
lcd.setCursor(0,0);
Serial.begin(9600); // Initialize serial communications with the PC
SPI.begin(); // Init SPI bus
mfrc522.PCD_Init();// Init MFRC522 card
Serial.println("Verificacion por RFID...");
pinMode(green, OUTPUT);
pinMode(red, OUTPUT);
pinMode(buzzer, OUTPUT);

void loop() {
int z=0;
lcd.setCursor(0,0);
lcd.print("Pase Tarjeta");
digitalWrite(green, LOW);
digitalWrite(red, LOW);
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}

// Select one of the cards


if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}

// Dump debug info about the card. PICC_HaltA() is automatically called.


Serial.println(F("Card UID:"));
for (byte i = 0; i < mfrc522.uid.size; i++) {
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
Serial.print(mfrc522.uid.uidByte[i], HEX);
ActualUID[i]=mfrc522.uid.uidByte[i];
}
Serial.print(" ");
if(compareArray(ActualUID,Usuario1)){
Serial.println("Acceso concedido...");
digitalWrite(green, HIGH);
for(z=0;z<80;z++){
digitalWrite(buzzer,HIGH);
delay(1);
digitalWrite(buzzer,LOW);
delay(1);
}
lcd.setCursor(0,0);
lcd.print("Acceso concedido");
delay(1000);
26
lcd.setCursor(0,0);
lcd.print(" ");
lcd.print("Pase tarjeta");
}
else
{
Serial.println("Acceso denegado...");
digitalWrite(red, HIGH);
for(z=0;z<80;z++){
digitalWrite(buzzer,HIGH);
delay(4);
digitalWrite(buzzer,LOW);
delay(4);
}
lcd.setCursor(0,0);
lcd.print("Acceso denegado");
delay(1000);
lcd.setCursor(0,0);
lcd.print(" ");
lcd.print("Pase la tarjeta");
}

// Terminamos la lectura de la tarjeta tarjeta actual


mfrc522.PICC_HaltA();

boolean compareArray(byte array1[],byte array2[])


{
if(array1[0] != array2[0])return(false);
if(array1[1] != array2[1])return(false);
if(array1[2] != array2[2])return(false);
if(array1[3] != array2[3])return(false);
return(true);
}
Se tiene que instalar varias libreras:
#include <Wire.h>
#include <SPI.h>
#include <MFRC522.h>
#include <LiquidCrystal_I2C.h>
Son para el control del mdulo RFID y el LCD. Despus se configura el sistema.
La idea es que se compare un identificador RFID y esto lo hace la funcin
compareArray.
boolean compareArray(byte array1[],byte array2[])
{
if(array1[0] != array2[0])return(false);
27
if(array1[1] != array2[1])return(false);
if(array1[2] != array2[2])return(false);
if(array1[3] != array2[3])return(false);
return(true);
}
Esta es la lnea donde se va a almacenar el id admitido:
byte Usuario1[4]= {0xED, 0x99, 0x1D, 0x2B} ; //cdigo del usuario 1
Y este es el cdigo de decisin:
if(compareArray(ActualUID,Usuario1)){
Serial.println("Acceso concedido...");
digitalWrite(green, HIGH);
for(z=0;z<80;z++){
digitalWrite(buzzer,HIGH);
delay(1);
digitalWrite(buzzer,LOW);
delay(1);
}
lcd.setCursor(0,0);
lcd.print("Acceso concedido");
delay(1000);
lcd.setCursor(0,0);
lcd.print(" ");
lcd.print("Pase tarjeta");
}
else
{
Serial.println("Acceso denegado...");
digitalWrite(red, HIGH);
for(z=0;z<80;z++){
digitalWrite(buzzer,HIGH);
delay(4);
digitalWrite(buzzer,LOW);
delay(4);
}
lcd.setCursor(0,0);
lcd.print("Acceso denegado");
delay(1000);
lcd.setCursor(0,0);
lcd.print(" ");
lcd.print("Pase la tarjeta");
}

// Terminamos la lectura de la tarjeta tarjeta actual


mfrc522.PICC_HaltA();

28
Cada vez que se pasa el token por el lector, compara si el Id recibido es igual al
almacenado en la variable usuario []. Si es, entonces se emite un sonido por la
bocina y se muestra por el LCD un mensaje. Si no lo es, se emite otro sonido y se
muestra otro mensaje. Esta es la imagen del proyecto:

COMO PROGRAMAR RFID EN UN RASPBERRY PI

Utilizando el lector NFC RC522 en la Raspberry Pi

La tecnologa de Near Field Communications (NFC) se ha vuelto muy popular


desde hace un par de aos, al incluirse en telfonos mviles, tarjetas de crdito e
incluso pasaportes.

Esta ser una extremadamente-corta entrada, donde se explicar los avances en


su uso y funcionamiento y el cdigo que se ha utilizado para hacer funcionar el
mdulo lector.

El mdulo RFID

Las tecnologas de identificacin por radio-frecuencia (RFID) cubren una amplia


gama de estndares. Los dispositivos con NFC son aquellos que funcionan
utilizando induccin magntica y trabajan a una frecuencia de 13.56MHz.

Usualmente las etiquetas RFID funcionan como simples cdigos de barra, es


decir, simplemente reportan un nmero que es identificado por el lector. El
estndar NFC tiene la caracterstica particular que permite el envo y recepcin de
datos, de manera adicional existen estndares que ofrecen cifrado en la
comunicacin lo que permite almacenar informacin sensible y protegerla en la
transmisin, como en las tarjetas de crdito y los pasaportes.

El mdulo del ejemplo es el MF522-AN, este kit incluye un pequeo llavero NFC,
una tarjeta "S50",, una tableta de pruebas con antena incluida y los pines
29
necesarios que facilitan la conexin. Este mdulo se comunica por medio de la
interfaz I2C o SPI.

Configurando la Raspberry Pi

El puerto GPIO posee soporte tanto para I2C como para SPI. Antes de conectar el
mdulo debemos habilitar el soporte de la siguiente manera:

Editamos el siguiente archivo:

/etc/modprobe.d/raspi-blacklist.conf

Una vez abierto debemos comentar la lnea:

blacklist spi-bcm2708

El archivo nos deber quedar como se muestra aqu:

# blacklist spi and i2c by default (many users don't need them)

#blacklist spi-bcm2708

blacklist i2c-bcm2708

Reiniciamos la Raspberry Pi y verificamos que existan los dispositivos con el


comando "ls":

pi@raspberrypi ~ $ ls /dev/spidev0.*

/dev/spidev0.0 /dev/spidev0.1

Conectando el Mdulo

La conexin del mdulo es sencilla como en la imagen:

30
Hay que tener cuidado de no invertir las lneas MOSI y MISO y conectarlas justo
como se muestra en el diagrama.

Explicacin de la interfaz SPI

Tanto I2C como SPI son interfaces para comunicacin entre circuitos. Este tipo de
interfaz utiliza un bus para comunicarse es decir un solo cable sirve para enviar o
recibir datos desde distintos dispositivos. Para el caso de SPI tenemos
esencialmente 4 lneas:

MOSI: Master Out Slave In, por esta lnea se envan datos en forma serial
desde el dispositivo "maestro" a los dispositivos esclavos.
MISO: Master In Slave Out, por esta lnea los dispositivos esclavos envan
datos al dispositivo maestro.
SCK/SCLK: Lnea de reloj, aqu se enva un tren de pulsos que se encarga
sincronizar las comunicaciones entre los dispositivos.
CE: Cada dispositivo tiene una lnea de habilitado, en el dispositivo maestro
deberan de haber tantas lneas de habilitado como dispositivos esclavos
existan. Los dispositivos esclavo en cambio solo tienen una lnea CE que
les indica cuando tienen que enviar/recibir datos. En este ejemplo la lnea
SDA hace las veces de "CE" en el lector NFC.

La interfaz SPI utiliza ms lneas que I2C tiene la ventaja de que alcanza altas
velocidades de transferencia (1Mbps), adems su implementacin usualmente
resulta ms sencilla ya que utiliza simples lnea serie.

El cdigo fuente.

Primero, se necesita descargar una pequea biblioteca que nos permitir acceder
al puerto SPI en la Raspberry Pi en Python GitHub con el siguiente comando:

31
git clone https://github.com/lthiery/SPI-Py

Nos cambiamos a la carpeta SPI-Py y ejecutamos:

sudo python setup.py install

Una vez terminado de descargar el cdigo fuente de la clase que controla el lector
NFC:

git clone https://github.com/mxgxw/MFRC522-python

Para ejecutarlo, simplemente nos cambiamos a la carpeta MFRC522-python y


ejecutamos:

sudo python MFRC522.py

El cdigo se encarga de inicializar el lector NFC y mantenerse leyendo


continuamente para detectar una tarjeta y leer el ID correspondiente.

MIFAREReader = MFRC522()
while continue_reading:
(status,TagType) =
MIFAREReader.MFRC522_Request(MIFAREReader.PICC_REQIDL)

if status == MIFAREReader.MI_OK:
print "Card detected"

(status,backData) = MIFAREReader.MFRC522_Anticoll()
if status == MIFAREReader.MI_OK:
print "Numero de la tarjeta:
"+str(backData[0])+","+str(backData[1])+","+str(backData[2])+","+str(backData[3])+"
,"+str(backData[4])

Importante: Esta es una re-escritura en Python del cdigo de ejemplo para


Arduino, no est completo, por el momento solo permite detectar el tipo de tarjeta
y leer el nmero de identificacin. Con esta funcionalidad muy sencilla de lectura
del ID se podra generar una sencilla aplicacin de llave electrnica.

Por ltimo unas cuantas fotos del lector conectado funcionando y del programa en
ejecucin desde la Raspberry Pi.

32
GLOSARIO

Transponedor Elemento de un satlite que acta como canal de recepcin y


envo de programas.

Tarjetas IAVE Sirve para circular por las carreteras mexicanas.

Sealizacin pasiva o backscatter Consiste en la dualidad que tiene la antena


para recibir y transmitir informacin siendo el circuito tambin alimentado por esta.

Pegatina Es un soporte de texto o imgenes impresas o serigrafiadas sobre una


lmina de vinilo o papel en cuya parte posterior se ha dispuesto de una fina capa
de adhesivo.

Baliza Es un objeto sealizador, utilizado para indicar un lugar geogrfico o una


situacin de peligro potencial.

Registro SBUF Provee el control al puerto serial.

Near Field Communications (NFC) es una tecnologa de comunicacin


inalmbrica, de corto alcance y alta frecuencia que permite el intercambio de datos
entre dispositivos. Los estndares de NFC cubren protocolos de comunicacin y
formatos de intercambio de datos, y estn basados en ISO 14443 (RFID, radio-
frequency identification) y FeliCa. Los estndares incluyen ISO/IEC 18092 y los
definidos por el NFC Forum, fundado en 2004 por Nokia, Philips y Sony, y que hoy
suma ms de 170 miembros.

BIBLIOGRAFIAS

http://smdelectronicayalgomas.blogspot.mx/2015/06/interfaz-rfid-para-
8051microcontroller.html#.WAvpzfl97IV

33
Cmo funciona la tecnologa de identificacin por radio frecuencia RFID? Autor:
egomexico. http://www.egomexico.com/tecnologia_rfid.htm

Control de acceso por RFID en arduino (2016).


http://lanzarduino.beautifullcode.com/control-de-acceso-por-rfid-en-arduino/

Captulo 3. Principios de la Tecnologa RFID. Autor: UDLAP.


http://catarina.udlap.mx/u_dl_a/tales/documentos/lep/urbina_r_rd/capitulo3.pdf

Sistemas de identificacin por radiofrecuencia. Autor: Luis Miguel Blzquez del


Toro. http://www.it.uc3m.es/~jmb/RFID/rfid.pdf

Conceptos bsicos de RFID: Conocimiento y uso de la identificacin por


radiofrecuencia (2007). Autor: Intermec Technologies Corporation.
http://www.intermec.com.mx/learning/content_library/white_papers/localized/wpAB
C_MX.pdf

Control de un lector RFID mediante microcontrolador. Autores: Mario L. Ruz,


Francisco Vzquez y Juan Galn. http://docplayer.es/12586869-Control-de-un-
lector-rfid-mediante-microcontrolador.html

Utilizando el lector NFC RC522 en la Raspberry Pi (2013). Autor: Mario Gmez.


http://fuenteabierta.teubi.co/2013/07/utilizando-el-lector-nfc-rc522-en-la.html

PROYECTO

http://www.leantec.es/blog/29_Control-de-acceso-con-Arduino-y-RFID-.html

http://miarduinounotieneunblog.blogspot.mx/2016/02/control-de-acceso-con-el-
modulo-rfid.html

http://hetpro-store.com/TUTORIALES/modulo-lector-rfid-rc522-rf-con-arduino/

http://arduteca.blogspot.mx/2014/09/control-de-acceso-mediante-un-modulo.html

http://arduteca.blogspot.mx/2014/09/control-de-acceso-mediante-un-
modulo_22.html

https://elinoxzaifehr.wordpress.com/tag/control-de-acceso-con-arduino/

http://www.prometec.net/arduino-rfid/

http://www.naylampmechatronics.com/blog/22_Tutorial-Lector-RFID-RC522.html

34
http://victorbarcelo.net/comunicacion-basica-entre-un-raspberry-pi-y-un-arduino-
usando-i2c/

http://colab-raspberry.blogspot.mx/2013/11/i2c-raspberry-pi-y-arduino.html

https://giltesa.com/2015/05/14/guardar-en-un-servidor-web-informacion-enviada-
desde-un-arduino

https://geekytheory.com/internet-de-las-cosas-parte-2-subir-los-datos-a-una-base-
de-datos/

http://panamahitek.com/conectar-arduino-base-datos-mysql/

https://geekytheory.com/arduino-raspberry-pi-lectura-de-datos/

http://morelosgeek.com/2014/02/raspberryarduinoraspduino/

http://diymakers.es/raspberry-pi-como-servidor-web/

https://jadasupport.wordpress.com/2015/08/28/conectar-arduino-a-base-de-datos-
mysql/

http://polaridad.es/preparar-base-datos-mysql-mariadb-internet-de-las-cosas-iot/

https://geekytheory.com/tutorial-raspberry-pi-crear-servidor-web/

http://www.diverteka.com/?p=1182

http://www.diverteka.com/?p=1205

http://www.netsysblog.info/2014/11/establecer-conexion-entre-php-mysqli-y.html

https://www.ochobitshacenunbyte.com/2014/11/03/como-instalar-mariadb-y-
primeros-pasos/

https://asciinema.org/a/29915

http://geekchickens.blogspot.mx/2014/01/control-de-acceso-con-lector-de.html

http://geekchickens.blogspot.mx/2014/12/leer-codigo-modulo-rfid-rfid-rc522.html

https://geekytheory.com/tutorial-raspberry-pi-15-instalacion-de-apache-mysql-php/

https://geekytheory.com/arduino-raspberry-pi-lectura-de-datos/

https://eodos.net/proyectos/conexion-i2c#.WBbNCS197IU

35
https://translate.google.com.mx/translate?hl=es&sl=en&u=https://oscarliang.com/ra
spberry-pi-arduino-connected-i2c/&prev=search

http://miarduinounotieneunblog.blogspot.mx/2016/02/control-de-acceso-con-el-
modulo-rfid.html

36

You might also like