0% encontró este documento útil (0 votos)
36 vistas24 páginas

Sistema RFID para Control de Ingreso

El documento describe el diseño de un sistema de control de acceso con RFID para el Tecnoparque nodo Ocaña. Se seleccionaron los siguientes componentes: un controlador Arduino Uno, un lector RFID Parallax 28440, un módulo Bluetooth HC-06, un módulo WiFi ESP8266 y un motor DC para abrir la puerta. El sistema permitirá el ingreso de los administrativos mediante tarjetas RFID y de aprendices a través del módulo Bluetooth de forma remota.

Cargado por

Sergio Quintero
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
36 vistas24 páginas

Sistema RFID para Control de Ingreso

El documento describe el diseño de un sistema de control de acceso con RFID para el Tecnoparque nodo Ocaña. Se seleccionaron los siguientes componentes: un controlador Arduino Uno, un lector RFID Parallax 28440, un módulo Bluetooth HC-06, un módulo WiFi ESP8266 y un motor DC para abrir la puerta. El sistema permitirá el ingreso de los administrativos mediante tarjetas RFID y de aprendices a través del módulo Bluetooth de forma remota.

Cargado por

Sergio Quintero
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Capítulo 2

Diseño del control de ingreso


La primera etapa del proyecto consiste en el desarrollo del sistema de control de

ingreso con la tecnología RFID al Tecnoparque nodo Ocaña. Se le da una mayor prioridad a

la instalación de este sistema debido a la urgencia de agilizar el proceso ingreso del personal

administrativo y de garantizar la seguridad interior, restringiendo el ingreso a las personas

sin autorización.

Actualmente no existe ningún sistema de apertura en la puerta principal (véase Figura

21), por lo cual las personas que quieran ingresar deben esperar a que haya alguien en el

interior que se dé cuenta que hay personas fuera del lugar esperando que les concedan el

acceso. Proceso que se vuelve muy tedioso para los administrativos que se encuentran

ocupados y más alejados de la puerta, en algunas horas del día hay una persona en constante

supervisión del acceso principal, pero es una carga extra para esa persona, la cual tiene otros

deberes que realizar.


Figura 1. Acceso principal. Fuente: autor.

Identificación y selección de los componentes electrónicos del sistema. Cabe

aclarar que debido a que el Tecnoparque es un lugar de innovación tecnológica y cuenta con

laboratorios relacionados al tema, y además con una gran cantidad de componentes tanto

electrónicos, como mecánicos y computacionales. La lista de los posibles componentes

necesarios para utilizar en la implementación del sistema se veía limitada por los

componentes con los que ya contaba el Tecnoparque, los cuales eran los únicos que tenía

como opción de utilizar para realizar el prototipo.

El controlador seleccionado fue un Arduino uno, el cual se encargará de la

comunicación con el lector RFID y realizar el respectivo análisis del código para dar las

ordenes necesarias que permitan o no el acceso. Es seleccionado debido a su sencillez a la


hora de trabajar, su tamaño adecuado para no ocupar mucho espacio y el soporte que tiene

con una amplia comunidad de programadores en todas partes.

En la tabla 4 se pueden ver las características del controlador Arduino uno.

Tabla 1
Características de hardware de la tarjeta Arduino uno

Microcontrolador ATmega328P

Voltaje de operación 5V

Voltaje de alimentación (recomendado) 7-12V

Voltaje de alimentación (límite) 6-20V

Pines digitales I/O 14 (6 PWM)

Pines de entrada análoga 6

Corriente directa en pines I/O 20 mA

Corriente directa en el pin de 3,3 V 50 mA

Memoria flash 32 KB (0.5 KB para el arranque)

SRAM 2 KB

EEPROM 1 KB

Velocidad de reloj 16 MHz

LED_BUILTIN 13

Largo 68.6 mm

Ancho 53.4 mm

Peso 25 g

Fuente: Arduino.

Para realizar las lecturas de los códigos de las etiquetas RFID que se darán a cada

administrativo del Tecnoparque se recurrió al módulo RFID de lectura y escritura parallax


28440. Este cuenta con una buena compatibilidad con Arduino y contiene una gran cantidad

de posibilidades y aplicaciones, ya que no solo permite realizar lectura de los tags, también

proporciona la posibilidad de escritura en ellos. Esto para el caso en que en el futuro se quiera

extender más el proyecto. Además, cuenta con un buen rango de distancia de lectura de casi

8 centímetros lo necesario para poder ser ubicarlo detrás de la puerta de ingreso, lo que

proporciona una mayor seguridad, ya que evita que otras personas puedan entrar en contacto

con el sistema. Es considerado un módulo de bajo costo lo que proporciona un mayor interés

y accesibilidad.

Posee 4 pines de los cuales dos de ellos son alimentación y tierra, los otros dos pines

permiten la comunicación con el controlador utilizado. El tipo de comunicación con el

controlador se hace con el protocolo UART, el cual realiza la transmisión bits a bits o también

llamada serie.

Para conectarlo con el Arduino los pines de comunicación del módulo deben ser

conectados a los pines RX y TX del Arduino (véase Figura 22).

En la tabla 5 se pueden observar las características del módulo RFID parallax.

Tabla 2
Características del módulo lectura/escritura RFID parallax 28440

Voltaje de alimentación 5V

Consumo de corriente (inactivo) <10 mA

Consumo de corriente (activo) 100 mA – 200mA

Comunicación Serie asíncrona

Velocidad comunicación 9600 bps

Nivel TTL 5V
Cantidad de bits 8 datos

Largo 8.26 cm

Ancho 6.2 cm

Fuente: Parallax.

Figura 2. Conexión módulo RFID y Arduino uno. Fuente: Autor

En el Tecnoparque están ingresando constantemente personas diferentes a los

administrativos. Esas personas son llamadas “aprendices” por parte de los administradores,

denominadas como aprendices pueden ser estudiantes universitarios, estudiantes de colegios

o simplemente cualquier persona con la necesidad de realizar un proyecto tecnológico.

Debido a que pueden ser muchas las personas con la necesidad de ingresar y sin ninguna

relación directa con el Tecnoparque, no se les puede proporcionar tarjetas de ingreso RFID.

Por lo cual se introdujo un módulo bluetooth al sistema para poder permitir el ingreso desde

cualquier lugar al interior del Tecnoparque. Así se evita que el sistema no sea ineficiente
cuando los que deseen ingresar no sean los administrativos, sino lo aprendices, ya que, evita

que haya una persona en contacto directo con la puerta encargada de permitir el acceso a

ellos.

El módulo bluetooth seleccionado fue el hc-06 ya que contienen las características

necesarias en la programación, es económico, funcionan solo como esclavo y presenta solo

4 pines lo que facilita su conexión. Dos pines de alimentación y dos para realizar la

comunicación serial con el controlador (véase Figura 23).

En la tabla 6 se pueden observar las características del módulo Bluetooth HC-06.

Tabla 3
Características del módulo Bluetooth HC-06

Voltaje de alimentación 3.3V – 6V

Corriente modo sleep <1 mA

Corriente de operación <40 mA

Velocidad comunicación Ajustable (1200bps–115200bps)

Largo 8.26 cm

Ancho 6.2 cm

Fuente: [Link]
Figura 3. Conexión HC-06 y Arduino uno. Fuente: [Link]

Con el fin de ir observado los administrativos que ingresan en el Tecnoparque se

implementó el módulo wifi ESP8266 el cual tienen una gran cantidad de funciones que

permiten ser muy útiles a la hora de programar, una de esas funciones utilizadas, fue

programarlo en forma de servidor, el cual permite la opción de crear un servidor de área local

dentro del módulo, y dentro de ese servidor incluir todo tipo de información necesaria, en

este caso la de poder visualizar los códigos de los administrativos que van ingresando. Cabe

aclarar que solo fue utilizado para mostrar el código y que eso también era posible

implementado una pantalla LCD, pero esta tiene el inconveniente de que debe ser instalada

en la puerta o el lugar donde iba hacer implementado el sistema o si se desea instalar en otro

lugar tiene el problema de demandar una gran cantidad de cables, por lo cual se decidió

implementar otro dispositivo para verlo de forma remota, además, el modulo tiene la facilidad

de dejar el proyecto abierto en caso de querer anexar más configuraciones.

En la tabla 7 se pueden observar las características del módulo ESP8266 y en la Figura

24 la conexión necesaria del módulo con el programador.


Tabla 4
Características del módulo ESP8266

CPU Tensilica L106 32-bit

Voltaje de operación 3.3V – 3.6V

Pines digitales I/O 2 (2 PWM)

Corriente de operación 80 mA

Temperatura de operación -40ºC y 125ºC

Fuente: [Link]

Figura [Link]ón ESP8266 con programador. Fuente: [Link]

Como ya se mencionó, los componentes electrónicos que se van a utilizar en el

sistema, solo son componentes con los que ya cuenta el Tecnoparque, por tal razón, para el

sistema de apertura de la puerta se implementó un motor DC (véase Figura 25) de carro

(motor de bloqueo central ultra), el cual va a ir conectado directamente a la chapa para halar

el pestillo y abrir la puerta. Fue seleccionado debido al mecanismo con el que cuenta, el cual

convierte el movimiento circular a horizontal, el necesario para conectarlo directamente el

pestillo de la puerta. El motor es alimentado a 9 voltios por lo que es necesario utilizar una

etapa de potencia.
Figura 5. Motor DC. Fuente: [Link].

En la etapa de potencia necesaria para controlar el motor se seleccionó un módulo de

dos relés, debido a su facilidad de manejo para realizar las conexiones y su pequeño tamaño,

el cual evita que sea tediosa su implementación. Gracias a que es controlado por una entrada

TTL, hace que sea adecuado y fácil de controlar con el Arduino ya seleccionado.

En la tabla 8 se pueden observar las características del módulo de relés.

Tabla 5
Características del módulo de relés.

Protección Optocopladores

Voltaje de alimentación 5V

Voltaje de control 3.3V – 9V

Voltaje de salida 250 Vca o 30 Vdc

Corriente de salida 10 A

Dimensiones 50mm x 39mm x 17mm

Fuente: [Link]

Después de analizar las características y conexiones de todos los componentes

seleccionados, se procede hacer el esquema general del circuito (véase Figura 26), con el fin

de analizar los pines que serán usados en el controlador.


Figura 6. Esquema general de la electrónica, los módulos del RFID, wifi, bluetooth y de relé conectados
al Arduino. Fuente: Autor.

Desarrollo de la programación. La programación para el lector RFID es divida en

dos partes, primero se realiza un programa simple que se encarga solo de realizar las lecturas

de los códigos que contienen las tarjetas entregadas al personal administrativo.

La programación hecha en Arduino (véase Figura 27) se usó librería

“NeoSWSerial.h” para aumentar la cantidad de puertos serial, ya que el Arduino uno solo

cuenta un puerto de comunicación serial y dentro de los componentes que contiene el circuito

electrónico son tres los cuales envían información por medio de ese puerto. Se usó esa librería

debido a que, a diferencias de las otras que también crean puertos serial virtuales, esta

respondía más rápido con la lectura de los códigos RFID.


Figura 7. Programa Arduino para las lecturas de los códigos de las tarjetas RFI. Fuente. Autor.

Luego de tener los códigos de las tarjetas RFID, son agregados en la programación

general (véase Figura 28) que contiene todas las comparaciones y funciones para realizar la

identificación y permitir el ingreso del personal. (Véase el Apéndice A, para observar

detalladamente el código completo y diagrama de flujo).


Figura [Link] la imagen de la izquierda se observan los códigos de las tarjetas RFID y en la derecha las
comparaciones de los códigos con el código leído en el momento de pasar por el lector una tarjeta.
Fuente. Autor.

El módulo bluetooth fue otro componente importante que debía ser ingresado en la

programación para permitir el ingreso desde una zona alejada a la puerta principal. Antes de

ingresar el módulo bluetooth a la programación principal fue necesario realizar algunos

cambios dentro de su configuración. Como sabe la mayoría de personas que han manejado

ese módulo, cuenta con una contraseña de vinculación muy sencilla que viene

predeterminada de fábrica. Una persona con ese conocimiento se le iba facilitar vincularse al

él, para luego poder realizar el respectivo control de ingreso sin autorización, por lo cual fue

necesario realizar un cambio de contraseña de vinculación del módulo (véase Figura 29),

además, se cambió el nombre para que los funcionarios pudieran ubicarlo rápidamente.
Figura 9. En la figura de la izquierda se observa la programación utilizada para cambiar la configuración
del módulo bluetooth y en la de la derecha una capture del celular vinculando dicho módulo. Fuente:
Autor.

Para evitar problemas de lectura de los puertos seriales virtuales, debido a que ambos

se encuentran leyendo constantemente, ya sea, el puerto conectado al lector RFID o el puerto

conectado al módulo bluetooth fue necesario utilizar la función “listen” la cual se encarga de

separar las lecturas de ambos puertos y permitir recibir la información de un puerto serial a

la vez (véase Figura 30).

Figura 10. Parte del código general encargado de realizar el control de ingreso por medio del módulo
bluetooth. Fuente: Autor.

La aplicación necesaria para comunicar los celulares con el módulo bluetooth y

permitir el ingreso de las personas fue realizada en app inventor (véase Figura 31). Ya se
tenía un previo conocimiento de ese entorno de desarrollo por cual facilito la creación de la

APK necesaria para instalar en los celulares de los administrativos.

Figura 11. Aplicación instalada en los celulares para permitir el ingreso del personal.

El módulo wifi el componente electrónico utilizado para observar el código del

personal administrativo que va ingresando al Tecnoparque es programado

independientemente, debido a que este contiene un microcontrolador que le permite ser

programado sin necesidad de tarjetas externas. El módulo contiene diferentes métodos de

programación, desde comandos AT por medio de Arduino hasta programación con leguaje

Lua.

En este caso fue programado por medio de Arduino IDE, ya que, es el entorno con el

que más me encuentro familiarizado. Previamente se debe tener instalado el plugin del

ESP8266 en el Arduino IDE en la cual se encuentran todas las tarjetas del módulo wifi

ESP8266 (véase Figura 32).


Figura 12. Plugin del ESP8266, donde se pueden observar todas las tarjetas soportadas por la librería.
Fuente: Autor.

Para el desarrollo de la programación del módulo wifi las características más

importantes a tener en cuenta fueron las del modo de operación del módulo, el usuario y

contraseña de la red a la que se iba a conectar, el contenido de la página web y la lectura de

los puertos seriales, el cuál iba hacer el medio de comunicación del Arduino uno usado en el

control de ingreso con el modulo wifi ESP8266.

Se incluyen dos librerías, de las cuales, una permite usar el módulo wifi ESP8266 y

conectarlo a una señal wifi de área local. La otra librería define el modo de operación, en este

caso el módulo wifi va hacer usado como servidor al cual se le van a conectar los clientes

que van a poder observar el código del personal que ingresan en la página web.

#include <ESP8266WiFi.h>

#include <ESP8266WebServer.h>
Para realizar la conexión del módulo wifi a la red de área local con la que cuenta el

Tecnoparque se realizó de la siguiente manera.

char ssid [] = “TECNO_2”

char password [] = “1091658551”

Se declararon algunas constantes que son usadas en las funciones del código, Además,

se inicial el puerto 80 por el cual va hacer la comunicación del servidor con los clientes.
const int buttonPin = 2;

int state=0;

int val = 0;

char code[11]; //eliminar para ver que recibe

int bytesread = 0;

ESP8266WebServer server (80);

Luego se definen las funciones con el código en HTML que se encargaran de mostrar

los códigos de las tarjetas RFID en la página web. Se ven dos funciones, en la cual, una

permite observar el código cuando se ingresa la IP del módulo wifi. La otra función es para

indicar que la pagina cargada con esa IP ha sido errónea.


void handleRequest() { //Función cuando se ingresa la IP asignada por el modem
String s = "<html><HEAD> <meta http-equiv=”refresh” content=”1″ /> </HEAD>"; //Para
cargar las pagina cada segundo
s += "\r\nIngreso el usuario: ";
s += (code);
s += "</html>\n";
[Link](200, "text/html", s);
}
void handleNotFound() { //Función que dice que se ingresó mal la IP del módulo wifi
String body = "<h1>Not found :(</h1>";
[Link](404, "text/html", body);
}
La función definida a continuación es la que permite la identificación del código de

la tarjeta RFID la cual es enviada por el puerto serial del Arduino y recibida igualmente por

el puerto serial del módulo wifi.


void lectura () {
if([Link]() > 0) { // cantidad de datos disponibles
if((val = [Link]()) == 10) { // lees los datos entrantes por el rx
bytesread = 0; // variable para contar y asignar al vector
while(bytesread<10) { // código tiene 10 dígitos
if( [Link]() > 0) { // verifica nuevamente los datos disponibles
val = [Link]();
if((val == 10)||(val == 13)) { //
break; //
}
code[bytesread] = val; // crear el vector de la variable código
bytesread++; //
}
}
if(bytesread == 10) { //
[Link]("Usuario: "); //
[Link](code); // Asigna el código a la variable code que luego va hacer mostrada
//en la pagina web
[Link]();
}
}
}
} Luego se define la velocidad en baudios, la cual va hacer de 115200 con la que viene

por defecto el módulo wifi, se establece la funciones para realizar la conexión del módulo a

la red wifi y se imprime la dirección IP asignada por el modem al módulo.


void setup() {
[Link](115200); // Velocidad
pinMode(buttonPin, INPUT); // pin para realizar el cabio

[Link](ssid, password); //Comando para realizar la conexión a la red wifi


while ([Link]() != WL_CONNECTED) {
[Link](".");
delay(500);
}

[Link]("");
[Link]("WiFi connected"); // en caso de conexión exitosa

[Link](("/"), handleRequest);
[Link](handleNotFound);
[Link]();

[Link]("Server started");
[Link]([Link]()); //Imprime IP asignada al módulo
}
Por último, para evitar el conflicto de la lectura de los clientes que se conecten al

servidor creado en el módulo wifi con la lectura del puerto serial de los códigos de las tarjetas

RFID, se habilita uno de los pines gpio del ESP8266 para permitir realizar el cambio de los

clientes al puerto serial.

void loop() {
[Link](); //Espera a que se conecte un cliente

state = digitalRead(buttonPin); // boton para realizar el cambio de lectura del


// servidor al puerto serial.
if (state==HIGH){
lectura();
}
}
Así el funcionamiento queda de la siguiente manera, el módulo ESP8266 está

constantemente a la espera de que se conecte un cliente a su servidor, al enviar un pulso en

alto por el gpio2 del EPS8266, este entrará al condicional, el cual, permitirá correr la función
lectura, que es donde se encuentra el código para realizar la lectura de la comunicación serial

y ordenar los datos enviados del Arduino por el mismo medio.

Después de haber cargado el código anterior en el ESP8266 y guardar la dirección IP

asignada por la red. Se conecta el ESP8266 al Arduino uno, por medio de los puertos Rx y

Tx ya definidos en el circuito general.

Figura 13. Servidor web del módulo wifi ESP8266 mostrando un código de una tarjeta RFID. Fuente:
Autor.

Construcción del control de ingreso. Luego de haber definido la electrónica y la

programación, se procede a ordenar todo el circuito y diseñar la estructura que va a contener

y proteger ese circuito.

En el circuito electrónico todos los componentes fueron conectados por medio de

jumper, por lo cual, no se utilizó ningún software de diseño de circuitos, ni baquelitas de

circuitos impresos.

La caja principal para cubrir y proteger todo el circuito, fue una caja reciclada de pasta

donde de un modem de internet que ya no se encontraba en funcionamiento (véase Figura

34).
Figura 14. Circuito electrónico con sus respectivas conexiones y caja protectora. Fuente: Autor.

Ya teniendo todo el circuito acomodado dentro de la caja protectora, se

procede a realizar el montaje en la puerta principal donde va hacer instalado para obtener una

primera imagen de cómo va a quedar todo el sistema de control de ingreso (véase Figura 35).

Se provecha para realizar también el montaje del motor, que tendrá el sistema

encargado que realizará la respectiva apertura de la puerta.


Figura 15. Instalación en la puerta principal del sistema de control de ingreso. Fuente: Autor.

Luego de realizar la instalación, se propuso agregar una estructura que permitiera una

mejor sujeción de la caja de circuito con el marco de la puerta, además, que mejorara el

aspecto visual de todo el sistema (véase Figura 36).

Figura 16. Diseño del CAD en 3D de la carcasa protectora del circuito. Fuente: Autor
Para el motor que controla el sistema de apertura y cierre de la puerta también se

propuso un diseño en CAD (véase Figura 37) que mejorara la parte visual y ayudara a

proteger el motor y a sujetarlo al marco de la puerta. (Véase el Apéndice B, para las medidas

de todas las piezas diseñadas en CAD).

Figura 17. Diseño del CAD en 3D de la estructura del motor. Fuente: Autor.

Para llevar a cabo las estructuras se utilizó una impresora 3D que pertenece al área de

diseño e ingeniería del Tecnoparque (véase Figura 38).

Figura 18. Impresión de la pieza 3D; durante la impresión y ya terminada. Fuente: Autor.
Debido a que las piezas son impresas con material de apoyo es necesario realizar unos

retoques de limpieza y lijado luego de que son impresas (véase las Figuras 39 y 40).

Figura 19. Estructura para el circuito de control. Fuente: Autor.

Figura 20. Estructura para proteger el motor encargado de la apertura de la puerta principal. Autor:
Fuente.

Por último, se agregaron las estructuras a la instalación que se había hecho

previamente del circuito y del motor en la puerta de acceso principal (véase Figura 41).
Figura 21. Instalación completa del sistema de ingreso al Tecnoparque. Fuente: Autor.

Como resultado se obtiene la instalación del circuito de control y de potencia, junto

con el motor en la puerta de acceso principal. La capacidad con respecto a la distancia de

lectura de los códigos del lector RFID es la suficiente para ser ubicada detrás del vidrio de la

puerta principal, favoreciendo la seguridad del sistema de control de ingreso.

Instalación polución

También podría gustarte