Arduino Con Rfid

9
UNIVERSIDAD ANDRÉS BELLO FACULTAD DE INGENIERÍA ESCUELA DE INDUSTRIAS INGENIERIA EN AUTOMATIZACIÓN Y ROBÓTICA ARDUINO CON RFID Alumnos: Gerardo Jerez V. Aníbal Rubilar F. Profesor: Néstor Palomino Fecha de entrega: 29 de noviembre de 2013

Transcript of Arduino Con Rfid

Page 1: Arduino Con Rfid

UNIVERSIDAD ANDRÉS BELLO FACULTAD DE INGENIERÍA

ESCUELA DE INDUSTRIAS INGENIERIA EN AUTOMATIZACIÓN Y ROBÓTICA

ARDUINO CON RFID

Alumnos: Gerardo Jerez V.

Aníbal Rubilar F.

Profesor: Néstor Palomino

Fecha de entrega: 29 de noviembre de 2013

Page 2: Arduino Con Rfid

ii

Tabla de contenido

RFID. ..................................................................................................................................... 1

Arduino . ................................................................................................................................ 1

Aplicaciones. .......................................................................................................................... 2

Actividad ............................................................................................................................... 3

Page 3: Arduino Con Rfid

1

RFID.

RFID es el sistema de comunicación que todos conocen por el transantiago, en donde usando una tarjeta es posible pagar el viaje con dinero virtual.

Este sistema puede se puede usar para cumplir una amplia cantidad de funciones; tarjetas de acceso, tarjeta de presentacion y descripción para procesos automaticos, cuentas para impresiónes, alarmas, etc..

Es necesario saber que para que esto funcione se tiene que disponer de dos partes, emisor y receptor, que pueden ser activos o pasivos. En el caso de amplias distancias se usan dos emisores receptores activos. Como por ejemplo el tag del autopista.

Arduino.

Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un

entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos

multidisciplinares.

El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos de entrada/salida.

Los microcontroladores más usados son el Atmega168, Atmega328, Atmega1280, ATmega8 por su

sencillez y bajo coste que permiten el desarrollo de múltiples diseños. Por otro lado el software

consiste en un entorno de desarrollo que implementa el lenguaje de programación

Processing/Wiring y el cargador de arranque (boot loader) que corre en la placa.

Arduino es una plataforma de electrónica abierta para la creación de prototipos basada en software

y hardware flexibles muy fáciles de usar, debido a que el IDE con el que trabaja es fácil de aprender

a utilizar, y el lenguaje de programación con el que trabaja es simple.

Page 4: Arduino Con Rfid

2

Aplicaciones.

Diferentes usos y aplicaciones de las tarjetas RFID, tags RFID y lectores RFID

Las etiquetas RFID de baja frecuencia se utilizan comúnmente para la identificación de animales,

seguimiento de barricas de cerveza, y como llave de automóviles con sistema antirrobo. En

ocasiones se insertan en pequeños chips en mascotas, para que puedan ser devueltas a su dueño en

caso de pérdida.

Se utilizan dos frecuencias para RFID: 125 kHz (el estándar original) y 13,56 kHz (el estándar

internacional). Las etiquetas RFID de alta frecuencia se utilizan en bibliotecas y seguimiento de

libros, seguimiento de pallet, control de acceso en edificios, seguimiento de equipaje en aerolíneas y

seguimiento de artículos de ropa. Un uso extendido de las etiquetas de alta frecuencia como

identificación de insignias, substituyendo a las anteriores tarjetas de banda magnética. Sólo es

necesario acercar estas insignias a un lector para autentificar al portador.

Las etiquetas RFID se ven como una alternativa que reemplazará a los códigos de barras UPC (

Universal Product Code ) o EAN ( Europe Article Number ), puesto que tiene un número de

ventajas importantes sobre la arcaica tecnología de código de barras. Quizás no logren sustituir en

su totalidad a los códigos de barras, debidos en parte a su coste relativamente más alto. Para algunos

artículos con un coste más bajo la capacidad de cada etiqueta de ser única se puede considerar

exagerado, aunque tendría algunas ventajas tales como una mayor facilidad para llevar a cabo

inventarios.

También se debe reconocer que el almacenamiento de los datos asociados al seguimiento de las

mercancías a nivel de artículo ocuparía muchos terabytes. Es mucho más probable que las

mercancías sean seguidas a nivel de pallet usando etiquetas RFID, y a nivel de artículo con

producto único, en lugar de códigos de barras únicos por artículo.

Page 5: Arduino Con Rfid

3

Los códigos RFID son tan largos que cada etiqueta RFID puede tener un código único, mientras que

los códigos UPC actuales se limitan a un solo código para todos los casos de un producto particular.

La unicidad de las etiquetas RFID significa que un producto puede ser seguido individualmente

mientras se mueve de lugar en lugar, terminando finalmente en manos del consumidor. Esto puede

ayudar a las compañías a combatir el hurto y otras formas de pérdida del producto. También se ha

propuesto utilizar RFID para comprobación de almacén desde el punto de venta, y sustituir así al

encargado de la caja por un sistema automático que no necesite ninguna captación de códigos de

barras.

Figura 1. Arduino con RFID

Page 6: Arduino Con Rfid

4

Actividades.

El código que ingresamos en esta nuestro arduino uno identifica el codigo de la tarjeta, lo

compara con el que elegimos, lo muestra por comunicación serial y si este corresponde activa el

pin 2 accionando el ventilador.

La conección es la siguiente:

MOSI: Pin 11 / ICSP-4 * MISO: Pin 12 / ICSP-1 * SCK: Pin 13 / ISCP-3 * SS: Pin 10 * RST: Pin 9 3v: Pin 3v Gnd: Pin Gnd

En seguida el codigo:

#include <SPI.h>

#include <RFID.h>

#define SS_PIN 10

#define RST_PIN 9

RFID rfid(SS_PIN, RST_PIN);

int Led = 3;

int ventilador = 2;

// Setup variables:

int serNum0;

int serNum1;

int serNum2;

int serNum3;

int serNum4;

void setup()

{

Serial.begin(9600);

Page 7: Arduino Con Rfid

5

SPI.begin();

rfid.init();

pinMode(ventilador,OUTPUT);

digitalWrite(ventilador,LOW);

}

void loop()

{

if (rfid.isCard()) {

if (rfid.readCardSerial()) {

if (rfid.serNum[0] != serNum0

&& rfid.serNum[1] != serNum1

&& rfid.serNum[2] != serNum2

&& rfid.serNum[3] != serNum3

&& rfid.serNum[4] != serNum4

) {

/* With a new cardnumber, show it. */

Serial.println(" ");

Serial.println("Tarjeta Encontrada");

serNum0 = rfid.serNum[0];

serNum1 = rfid.serNum[1];

serNum2 = rfid.serNum[2];

serNum3 = rfid.serNum[3];

serNum4 = rfid.serNum[4];

//Serial.println(" ");

Serial.println("Identificacion de tarjeta:");

Serial.print("Numeros identificativos: ");

Serial.print(rfid.serNum[0],DEC);

Page 8: Arduino Con Rfid

6

Serial.print(", ");

Serial.print(rfid.serNum[1],DEC);

Serial.print(", ");

Serial.print(rfid.serNum[2],DEC);

Serial.print(", ");

Serial.print(rfid.serNum[3],DEC);

Serial.print(", ");

Serial.print(rfid.serNum[4],DEC);

Serial.println(" ");

Serial.print("Letras identificadoras: ");

Serial.print(rfid.serNum[0],HEX);

Serial.print(", ");

Serial.print(rfid.serNum[1],HEX);

Serial.print(", ");

Serial.print(rfid.serNum[2],HEX);

Serial.print(", ");

Serial.print(rfid.serNum[3],HEX);

Serial.print(", ");

Serial.print(rfid.serNum[4],HEX);

Serial.println(" ");

if (serNum0 == 85 &&

serNum1 == 85 &&

serNum2 == 246 &&

serNum3 == 45&&

serNum4 == 219){digitalWrite(ventilador,HIGH);

delay(1000);

digitalWrite(ventilador,LOW);

digitalWrite(RST_PIN,HIGH);

Page 9: Arduino Con Rfid

7

}

} else {

/* If we have the same ID, just write a dot. */

Serial.print(".");

digitalWrite(ventilador,LOW);

}

}

}

rfid.halt();

}