ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de...

167
INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA U ZACATENCO TESIS QUE PARA OBTENER EL TÍTULO DE INGENIERO EN CONTROL Y AUTOMATIZACIÓN PRESENTAN AGUILAR RODRÍGUEZ LUIS ARTURO OLVERA MUNGUIA DANIEL PONCE PALACIOS JAIR ASESORES: M. EN C. JOSÉ DARÍO BETANZOS RAMÍREZ M EN C. HUERTA GONZÁLEZ PEDRO FRANCISCO DESARROLLO DE APLICACIONES ELECTRÓNICAS PARA IMPLEMENTARSE EN UNA CASA HABITACIÓN MÉXICO, D.F. 2014

Transcript of ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de...

Page 1: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y

ELÉCTRICA UNIDAD ZACATENCO

TESIS

QUE PARA OBTENER EL TÍTULO DE INGENIERO EN CONTROL Y

AUTOMATIZACIÓN

PRESENTAN

AGUILAR RODRÍGUEZ LUIS ARTURO OLVERA MUNGUIA DANIEL

PONCE PALACIOS JAIR

ASESORES: M. EN C. JOSÉ DARÍO BETANZOS RAMÍREZ M EN C. HUERTA GONZÁLEZ PEDRO FRANCISCO

DESARROLLO DE APLICACIONES ELECTRÓNICAS

PARA IMPLEMENTARSE EN UNA CASA HABITACIÓN

MÉXICO, D.F. 2014

Page 2: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en
Page 3: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

AGRADECIMIENTO

Jair Ponce Palacios

Con todo el cariño para las personas que me apoyaron en este camino y en este sueño que decidí tomar y que hoy eh logrado, gracias por siempre motivarme y hacerme sentir que podía lograr ser lo que yo me propusiera, por creer en mí y por nunca dejarme solo, a ustedes por siempre mi agradecimiento y mi admiración.

A mis padres y a mis hermanos.

Daniel Olvera Munguia

Este gran trabajo va dedicado al esfuerzo, dedicación y empeño de mi madre que ha realizado toda mi vida para concluir este triunfo.

Luis Arturo Aguilar Rodríguez

Agradezco principalmente a mi familia por su apoyo, así como también a todas las personas que nos ayudaron e influyeron en la realización de este trabajo.

Page 4: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

Índice general

1. INTRODUCCIÓN .................................................................................................................................. 3

1.1. OBJETIVO GENERAL ........................................................................................................................ 5

1.1.1. OBJETIVOS PARTICULARES ...................................................................................................................... 5

1.2. JUSTIFICACIÓN ............................................................................................................................... 6

1.3. ANTECEDENTES .............................................................................................................................. 7

2. ANÁLISIS Y SELECCIÓN DE LOS DISPOSITIVOS ELECTRÓNICOS ........................................................... 10

2.1. SELECCIÓN DEL CONTROLADOR ............................................................................................................. 10 2.1.1. Tipos de Microcontroladores .................................................................................................... 10 2.1.2. Microcontroladores de Microchip ............................................................................................. 11 2.1.3. Microcontrolador PIC16F887 .................................................................................................... 11 2.1.4. Programación del microcontrolador ......................................................................................... 14 2.1.5. Organización de la Memoria del PIC16F877 ............................................................................. 14 2.1.6. Puertos de E/S, entrada/salida del microcontrolador PIC16f887. ............................................ 17 2.1.7. El reloj y el ciclo de instrucción. ................................................................................................ 17 2.1.8. Sistema de reinicio .................................................................................................................... 19

2.5. TECNOLOGÍA RFID (IDENTIFICACIÓN POR RADIOFRECUENCIA) ..................................................................... 19 2.5.1. Principales aplicaciones de la tecnología RFID ......................................................................... 20 2.5.2. Circuito electrónico para implementar en cerradura electrónica ............................................. 21 2.5.3. Características del Lector RFID 125kHz ..................................................................................... 22 2.5.4. Visualizador LCD 16x2 ............................................................................................................... 22 2.5.5. Memoria del LCD ...................................................................................................................... 24 2.5.6. Modo de Funcionamiento ......................................................................................................... 26 2.5.7. Comandos de control ................................................................................................................ 27

2.2. PANTALLA TÁCTIL ............................................................................................................................... 29 2.2.1. Tipos de pantallas Touchscreen ................................................................................................ 29 2.2.2. Funcionamiento de la pantalla táctil ........................................................................................ 30 2.2.3. Panel Táctil PIC18FJ .................................................................................................................. 32

2.3. SOFTWARE DE PROGRAMACIÓN, COMPILACIÓN Y SIMULACIÓN. ................................................................... 33 2.3.1. Entorno de programación MPLAB ............................................................................................ 33 2.3.2. Software Visual TFT .................................................................................................................. 34 2.3.3. mikroC PRO for PIC ................................................................................................................... 36 2.3.4. Master Prog .............................................................................................................................. 36 2.3.5. mikroBootloader USB HID v1.50 ............................................................................................... 38 2.3.6. Proteus ISIS Professional v7.7 ................................................................................................... 39 2.3.7. National Instruments LabVIEW 2012 ........................................................................................ 40

2.4. TARJETA DE ADQUISICIÓN DE DATOS CON LABVIEW ................................................................................. 40 2.4.1. Puertos E/S................................................................................................................................ 41 2.4.2. Arquitectura general de la DAQ ................................................................................................ 41 2.4.3. Comunicación entre la DAQ y LabVIEW .................................................................................... 42 2.4.4. Tecnología Bluetooth ................................................................................................................ 44

3. DISEÑO E IMPLEMENTACIÓN DEL HARDWARE ................................................................................. 47

3.1. INTRODUCCIÓN DEL HARDWARE ............................................................................................................ 47 3.2. RFID (IDENTIFICACIÓN POR RADIOFRECUENCIA) ....................................................................................... 49

3.2.1. Introducción de RFID ................................................................................................................. 49 3.2.2. Lector 125K RFID ....................................................................................................................... 50

3.3. CONEXIÓN DEL LECTOR RFID Y EL MICROCONTROLADOR PIC16F887 .......................................................... 56

Page 5: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

3.4. LCD ................................................................................................................................................ 59 3.4.1. Introducción de LCD .................................................................................................................. 59 3.4.2. LCD JHD162A ........................................................................................................................... 60 3.4.3. Características de la LCD JHD162A ........................................................................................... 61

3.5. CONEXIÓN DE RFID EL PIC16F887 Y LA LCD JHD162A .......................................................................... 61 3.6. PROPUESTA DE UNA TARJETA DE ADQUISICIÓN DE DATOS (DAQ) ................................................................. 63

3.6.1. Introducción de la Tarjeta DAQ ................................................................................................ 63 3.6.2. Descripción del sistema de la Tarjeta DAQ propuesta .............................................................. 64 3.6.3. Propuesta de una Interfaz Hombre Máquina ........................................................................... 70

4. DESARROLLO DEL SOFTWARE ........................................................................................................... 75

4.1. PERIFÉRICOS DEL PIC16F887 ...................................................................................................................... 76 4.1.1. Entradas y salidas de propósito general ....................................................................................... 76 4.1.2. Registro STATUS ............................................................................................................................ 76 4.1.3. Convertidor Analógico-Digital del microcontrolador PIC16F887. ............................................. 77 4.1.4. EUSART (Enhanced Universal Synchronous Asynchronous Receiver Trasmitter) del microcontrolador PIC16F887. ................................................................................................................ 84

4.2. CIRCUITO ELECTRÓNICO PARA IMPLEMENTAR EN CERRADURA ELECTRÓNICA CON TECNOLOGÍA RFID 89 4.5. INTERFAZ GRÁFICA DESARROLLADA EN PANEL TÁCTIL .................................................................................. 92 4.6. TARJETA DE ADQUISICIÓN DE DATOS CON MICROCONTROLADORES PIC ....................................................... 102

4.6.1. Comunicación serie en LabVIEW ............................................................................................. 109

5. RESULTADOS EXPERIMENTALES ...................................................................................................... 122

5.1. RFID (RADIO FREQUENCY IDENTIFICATION), CONTROL DE ACCESO .............................................................. 122 5.2. TECNOLOGÍA TOUCHSCREEN, DESARROLLANDO UN HMI EN UN PANEL TÁCTIL ............................................. 128 5.3. DISEÑO DE UNA DAQ (ADQUISICIÓN DE DATOS) CON MICROCONTROLADORES FABRICADOS POR MICROCHIP

INCORPORANDO COMUNICACIÓN INALÁMBRICA BLUETOOTH ................................................................................... 135

CONCLUSIONES ........................................................................................................................................ 146

BIBLIOGRAFÍA .......................................................................................................................................... 147

ANEXOS ................................................................................................................................................... 150

Page 6: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

Índice de tablas

Tabla 2.1 Periféricos del PIC16f887 ............................................................................... 12 Tabla 2.2 Bancos de Memoria del PIC16F887 ............................................................. 16

Tabla 2.3 Descripción de pines del Display LCD 16x2 ................................................ 24

Tabla 2.4 Comandos del módulo LCD ........................................................................... 27 Tabla 2.5 Periféricos del PIC18F87J5 ............................................................................ 33

Tabla 2.6 Entradas y Salidas de la DAQ ....................................................................... 41

Tabla 3.1 Descripción de puertos periféricos del microcontrolador PIC16F887 ..... 54

Tabla 4.1 Características principales de los circuitos electrónicos desarrollados .. 75 Tabla 4.2 Configuración para 9600 baudios ................................................................. 88 Tabla 5.1 Descripción de símbolos ............................................................................... 130

Tabla 5.2 Variaciones de voltaje ................................................................................... 141

Tabla 5.3 Estados de un botón pulsador ..................................................................... 144

Tabla 5.4 Botones de simulación de salidas digitales ............................................... 144

Índice de figuras

Figura 1.1 Diagrama General. ........................................................................................... 4

Figura 2.1 Diagrama a Bloques de la Arquitectura Mid-Range .................................. 12

Figura 2.2 Apariencia Física del PIC16f887 .................................................................. 13

Figura 2.3 Diagrama de Pines del PIC16f887 ............................................................... 14

Figura 2.4 Apariencia Física de un cristal de 20MHz .................................................. 18 Figura 2.5 Componentes básicos de funcionamiento, PIC16F887 ........................... 19

Figura 2.6 Comunicación serial RS-232, RFID Reader-MCU .................................... 21 Figura 2.7 Lector RFID a 125kHz ................................................................................... 22

Figura 2.8 Aspecto de un módulo LM016 ...................................................................... 23 Figura 2.9 Patillaje del LCD LM016L .............................................................................. 24

Figura 2.10 Lista de caracteres definidos dentro de la memoria CGROM ............... 25 Figura 2.11 Tecnología Resistiva de 4 hilos AT4 ......................................................... 30

Figura 2.12 Superficies que componen el panel táctil ................................................. 30

Figura 2.13 Red de resistencias del panel táctil ........................................................... 31

Figura 2.14 Función del Convertidor analógico a Digital............................................. 31

Figura 2.15 GLCD (Graphic Liquid Crystal Display) PIC18FJ .................................... 32 Figura 2.16 Diagrama a Bloques de la Arquitectura PIC18 ........................................ 32

Figura 2.17 Apariencia del entorno de programación MPLAB ................................... 34

Figura 2.18 Componentes para desarrollar Interfaces graficas en Visual TFT. ...... 35

Figura 2.19 Software Visual TFT. ................................................................................... 35

Figura 2.20 Software mikro C PRO for PIC ................................................................... 36 Figura 2.21 Contenido del archivo con extensión (*.HEX) .......................................... 37

Figura 2.22 Software Master Prog .................................................................................. 37 Figura 2.23 Hardware Master Prog ................................................................................. 38

Figura 2.24 Software mikroBootloader USB HID v1.50 ............................................... 38 Figura 2.25 Software Proteus ISIS Professional v7.7 .................................................. 39

Page 7: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

Figura 2.26 Software LabVIEW ....................................................................................... 40

Figura 2.27 Arquitectura General de la DAQ ................................................................ 42

Figura 2.28 Patillaje del conector DB-9 .......................................................................... 43

Figura 2.29 Análisis en Osciloscopio del protocolo Rs-232 ........................................ 43 Figura 2.30 Modulo Bluetooth serial ............................................................................... 44

Figura 3.1 Diagrama a bloques de la implementación de hardware ......................... 48

Figura 3.2 Sistema de RFID ............................................................................................. 49 Figura 3.3 RFID 125K ....................................................................................................... 50

Figura 3.4 Instalación de RFID acceso principal de peatón ....................................... 52 Figura 3.5 Instalación de RFID acceso principal de vehículos................................... 52

Figura 3.6 Trama del sistema RFID 125K ..................................................................... 53 Figura 3.7 Diagrama a bloques del sistema RFID y un microcontrolador ................ 56

Figura 3.8 Diagrama de lector RFID 125K .................................................................... 57

Figura 3.9 Diagrama de conexión de lector RFID y el microcontrolador PIC16F887 .............................................................................................................................................. 57

Figura 3.10 LCD 2 Filas * 16 Caracteres ....................................................................... 58

Figura 3.11 Diagrama a bloques de conexión de un sistema de RFID con visualizador ......................................................................................................................... 60

Figura 3.12 Diagrama a bloques de la LCD JHD162A ................................................ 60

Figura 3.13 Diagrama de conexión entre RFID, LCD JHD162A y un microncontrolado ............................................................................................................... 62

Figura 3.14 Diagrama a bloques del sistema de una DAQ ......................................... 64 Figura 3.15 Diagrama a bloques de un sistema de adquisición de datos ................ 65

Figura 3.16 Diagrama de conexión de los elementos de una Tarjeta DAQ ............. 67 Figura 3.17 Bluetooth COM SSP y Bluetooth USB ..................................................... 69

Figura 3.18 Conexión de un Bluetooth a una PC ......................................................... 69

Figura 3.19 Diagrama del sistema HMI .......................................................................... 70 Figura 3.20 Dimensiones de la mikromedia .................................................................. 71

Figura 3.21 Puertos periféricos de la mikromedia ........................................................ 72 Figura 3.22 Control de luces con HMI ............................................................................ 73

Figura 4.1 Registro STATUS ........................................................................................... 77 Figura 4.2 Diagrama de los canales analógicos disponibles ...................................... 80 Figura 4.3 Diagrama de los canales analógicos disponibles ...................................... 80

Figura 4.4 Registro TRISB ............................................................................................... 81 Figura 4.5 Registro TRISE ............................................................................................... 81

Figura 4.6 Registro ANSEL .............................................................................................. 82

Figura 4.7 Registro ANSELH ........................................................................................... 82

Figura 4.8 Registro ADCON0 .......................................................................................... 82

Figura 4.9 Registro ADCON1 .......................................................................................... 83 Figura 4.10 Registro INTCON ......................................................................................... 86

Figura 4.11 Registro TXSTA ............................................................................................ 86 Figura 4.12 Registro RCSTA ........................................................................................... 87

Figura 4.13 Registro PIE1 ................................................................................................ 87 Figura 4.14 Diagrama de flujo para la implementación de tecnología RFID .......... 90

Figura 4.15 Diagrama de flujo, identificación del usuario tecnología RFID ............ 91 Figura 4.16 Interfaz Gráfica del piso 1 que se ejecuta en pantalla táctil .................. 92

Page 8: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

Figura 4.17 Interfaz Gráfica del piso 2 que se ejecuta en pantalla táctil .................. 93

Figura 4.18 Paleta de Componentes de Visual TFT .................................................... 94

Figura 4.19 Propiedades del componente “Image” ...................................................... 95

Figura 4.20 Propiedad Name del componente “Button” .............................................. 96 Figura 4.21 Propiedad Caption del componente “Button” ........................................... 96

Figura 4.22 Propiedad OnClick del componente “Button” ........................................... 96

Figura 4.23 Diagrama de flujo del evento Toggle_LED2 ............................................ 97 Figura 4.24 Diagrama de flujo del evento Planta alta .................................................. 98

Figura 4.25 Diagrama de flujo de la configuración principal ..................................... 101 Figura 4.26 Diagrama general de la DAQ. .................................................................. 102

Figura 4.27 Diagrama de flujo, programación de la DAQ ......................................... 103 Figura 4.28 Interfaz gráfica de la tarjeta de adquisición de datos ........................... 106

Figura 4.29 Diagrama de flujo 1, interrupción en el PIC16F887 .............................. 107

Figura 4.30 Diagrama de flujo 2, interrupción en el PIC16F887 .............................. 108

Figura 4.31 Programación a bloques del Interfaz gráfica de la tarjeta de adquisición de datos ........................................................................................................ 110

Figura 4.32 VISA Configuración de puerto serial ....................................................... 111 Figura 4.33 Escritura en VISA ....................................................................................... 111

Figura 4.34 Nodo de propiedad ..................................................................................... 112 Figura 4.35 Lectura en VISA .......................................................................................... 112

Figura 4.36 Limpieza y clausura del buffer .................................................................. 113 Figura 4.37 Subconjuntos de una cadena de caracteres .......................................... 113

Figura 4.38 Conversión de cadena de caracteres a valor numérico ....................... 113

Figura 4.39 Ciclo While ................................................................................................... 114

Figura 4.40 Estructura Case .......................................................................................... 114

Figura 4.41 Termómetro, Push botón y LED indicador ............................................. 115

Figura 4.42 Programación a bloques del puerto serial en LabVIEW ...................... 116

Figura 4.43 Panel frontal, selección del puerto COM ................................................ 116

Figura 4.44 Panel frontal, Entrada de datos ................................................................ 116 Figura 4.45 Programación a bloques, Entradas analógicas ..................................... 117

Figura 4.46 Panel frontal, Entradas analógicas .......................................................... 118 Figura 4.47 Programación a bloques, Entradas digitales ......................................... 119

Figura 4.48 Panel frontal, Entradas digitales .............................................................. 119 Figura 4.49 Programación a bloques, Salidas digitales ............................................ 120

Figura 4.50 Panel frontal, Salidas digitales ................................................................. 120 Figura 5.1 Prototipo de una casa habitación ............................................................... 122

Figura 5.2 Tarjetas y Tag´s para RFID ......................................................................... 123

Figura 5.3 Modulo de RFID ............................................................................................ 123

Figura 5.4 LCD LM016L ................................................................................................. 124

Figura 5.5 LCD LM016L ................................................................................................. 124 Figura 5.6 Estado de la cerradura ................................................................................. 125

Figura 5.7 Puerta de la casa del prototipo ................................................................... 125 Figura 5.8 Vista aérea del acceso principal ................................................................. 126 Figura 5.9 Vista frontal del acceso principal ................................................................ 126

Figura 5.10 Ubicación del módulo RFID ...................................................................... 126 Figura 5.11 Circuito de control ....................................................................................... 127

Page 9: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

Figura 5.12 Cortina Automática ..................................................................................... 127

Figura 5.13 Circuito de control para la cochera .......................................................... 128

Figura 5.14 Ubicación de la pantalla táctil ................................................................... 129

Figura 5.15 Interfaz de la planta baja ........................................................................... 130 Figura 5.16 GLCD físicamente ...................................................................................... 131

Figura 5.17 Funcionamiento de la HMI ........................................................................ 132

Figura 5.18 Interfaz de la planta alta ............................................................................ 133 Figura 5.19 GLCD físicamente planta alta) ................................................................. 134

Figura 5.20 Funcionamiento de la HMI planta alta..................................................... 134 Figura 5.21 Bluetooth físicamente conectado a la DAQ ........................................... 135

Figura 5.22 Interfaz en LabVIEW .................................................................................. 136 Figura 5.23 DAQ físicamente ......................................................................................... 137

Figura 5.24 DAQ conectada al circuito de simulación ............................................... 137

Figura 5.25 Potenciómetros para entradas analógicos ............................................. 138 Figura 5.26 Botones de entradas digitales .................................................................. 138

Figura 5.27 Indicador de salidas digitales ................................................................... 139

Figura 5.28 P1_A1 voltaje gráficamente en alto y bajo nivel .................................... 140

Figura 5.29 P2_A2 voltaje gráficamente en alto y bajo nivel .................................... 140

Figura 5.30 P3_A3 voltaje gráficamente en alto y bajo nivel .................................... 140

Figura 5.31 P3_A3 voltaje gráficamente en alto y bajo nivel .................................... 141

Figura 5.32 Input 8 ........................................................................................................... 142 Figura 5.33 Input 7 ........................................................................................................... 142

Figura 5.34 Input 6 ........................................................................................................... 143 Figura 5.35 Entrada digital 1 .......................................................................................... 143

Figura 5.36 Botón simulador de salidas ....................................................................... 145 Figura 5.37 Salidas digitales activadas ........................................................................ 145

Page 10: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

1

Resumen El presente Trabajo de investigación tiene como principal objetivo desarrollar sistemas electrónicos con microcontroladores que permitan automatizar ciertas tareas que se realizan en una casa habitación, alguna oficina de trabajo o en algún proceso industrial e incorporar las más recientes tecnologías como:

Microcontroladores.

RFID (radio frequency identification).

Comunicación inalámbrica, Bluetooth.

Tecnología Touchscreen (Panel Táctil).

Desarrollo de una tarjeta de adquisición de Datos (DAQ del inglés Data Acquisition).

Desarrollo de sistemas electrónicos como:

Desarrollo de un circuito electrónico dotado con la tecnología RFID (del inglés Radio Frequency Identification) que ofrezca la posibilidad de identificar personas, que pueda ser implementado en un control de acceso electrónico, de manera que se pueda controlar la clausura o apertura de una puerta, ventana, caja fuerte o cualquier aplicación en donde intervenga una cerradura electrónica.

Desarrollo de un HMI (del inglés Human Machine Interface) en una pantalla táctil (touchscreen) a colores, desarrollando una interfaz gráfica con el propósito de controlar las luces de una casa habitación.

Diseño de una DAQ también conocida como, tarjeta de adquisición de datos que se comunica de manera inalámbrica con una interfaz gráfica desarrollada con el software LabVIEW la cual permite visualizar el estado de, entradas analógicas y de entradas y salidas digitales que contiene la tarjeta de adquisición de datos. Es importante mencionar que con el desarrollo del presente trabajo de investigación se pueden realizar múltiples proyectos de control y automatización en donde sea necesario monitorear el estado de sensores analógicos o digitales y además se puedan realizar acciones de control de manera remota desde una computadora. Con el desarrollo del presente trabajo es posible prescindir de una tarjeta de adquisición de datos de National Instrument®.

Page 11: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

2

Capítulo 1

Introducción

Page 12: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

3

1. Introducción El presente trabajo de investigación se desarrolla con el propósito de utilizar algunas de las más recientes tecnologías tales como: sistemas de identificación por radiofrecuencia (RFID por su siglas en inglés Radio Frequency IDentification), sistemas de comunicación utilizando Bluetooth, sistemas de interfaz gráfica táctil (Touchscreen) e incorporar una tarjeta DAQ (Data Acquisition) que permite comunicar el software LabVIEW de National Instruments con el mundo exterior para monitorear el estado de sensores y en base a eso realizar acciones de control en actuadores. Para poder implementar las tecnologías antes mencionadas se utilizan micrcontroladores fabricados por Microchip Technology Inc. los cuales son programados en lenguaje ensamblador. El software utilizado es MPLAB IDE v8.02, ya que es de libre distribución y puede ser descargado de la página del fabricante. Los microcontroladores de Microchip Technology Inc. también denominados PIC (Peripheral Interface Controller) son una familia de microcontroladores que ha tenido gran aceptación y desarrollo en los últimos años gracias a sus buenas características, bajo precio, reducido consumo de energía, pequeño tamaño, gran calidad, fiabilidad, alta velocidad de procesamiento de información y sobre todo por su comodidad y sencillez de utilización. Estos microcontroladores permiten controlar y monitorear cada una de las señales que están inmersas en los sistemas desarrollados. La tecnología RFID actualmente está presente en numerosas aplicaciones tales como: el sistema de transporte colectivo-metro, el sistema de transporte suburbano o el metrobus, identificación de productos en centros comerciales, entre otras. La identificación por radiofrecuencia es una tecnología de identificación remota e inalámbrica en la cual un dispositivo lector o reader vinculado a un equipo de cómputo, se comunica a través de una antena con un transponder (también conocido como tag o etiqueta) mediante ondas de radio. Esta tecnología que existe desde los años 40, se ha utilizado y se sigue utilizando para múltiples aplicaciones incluyendo casetas de peaje, control de acceso, identificación de ganado y tarjetas electrónicas de transporte. En el presente trabajo se utiliza la tecnología RFID para el control de acceso a una casa habitación, donde cada habitante cuenta con una llave electrónica también denominada tarjeta o Tag que permite el acceso a la casa habitación. En la vida cotidiana se tiene contacto con múltiples sistemas electrónicos tales como: celulares, tabletas electrónicas o una computadora que hacen uso de la tecnología Touchscreen la cual permite una gran reducción de hardware en cualquier sistema y proporciona al usuario una interfaz gráfica fácil de entender y de operar. Una pantalla táctil permite la entrada y salida de datos mediante un toque directo sobre su superficie, de manera que es posible darle órdenes al dispositivo, y este

Page 13: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

4

a su vez muestra los resultados introducidos; actuando como periférico de entrada y salida de datos. En el presente trabajo se desarrolla un interfaz hombre máquina (HMI del inglés Human Machine Interface) en una pantalla táctil a colores con lo cual es posible controlar y visualizar las diferentes variables que se encuentran dentro de la casa habitación. El software LabVIEW® es un potente programa de diseño de sistemas construido específicamente para tareas realizadas por ingenieros y científicos. LabVIEW es el acrónimo de Laboratory Virtual Instrument Engineering Workbech. Es un lenguaje y a la vez, un entorno de programación gráfica en el que se pueden crear aplicaciones de una forma rápida y sencilla. Originalmente el software LabVIEW estaba orientado para aplicaciones de control de equipos electrónicos usados en el entorno de instrumentación, lo que se conoce como instrumentación virtual. En este trabajo también se desarrolla una tarjeta de adquisición de datos inalámbrica, dicha tarjeta está constituida mediante software y hardware, el hardware es una interfaz gráfica desarrollada con el software LabVIEW de manera que es posible visualizar y controlar las diferentes variables dentro de la casa. Es importante mencionar que en el presente trabajo se propone el hardware necesario para comunicar al software LabVIEW con el circuito de control y de esta forma es posible prescindir de una tarjeta DAQ (tarjeta de adquisición de datos) de National Instruments®. La comunicación entre la computadora y el circuito de control propuesto es bidireccional y la transmisión de los datos se realiza de forma inalámbrica vía Bluetooth. Es importante mencionar que el empleo de estas tecnologías es muy amplio y aunque en este trabajo se utilizan en el control y automatización de dispositivos electrónicos de una vivienda, pueden ser empleadas en diversas aplicaciones o procesos de control y automatización. En la Fig. 1.1 se muestra el diagrama general de control y monitoreo de la casa habitación.

Figura 1.1 Diagrama General.

Page 14: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

5

1.1. Objetivo General Integrar nuevas tecnologías para una casa habitación como, identificación por radiofrecuencia (RFID) para el control de acceso, una tarjeta de adquisición de datos (DAQ) funcional, comunicada con el software de LabVIEW, junto con una interfaz hombre maquina (HMI) desarrollada en una pantalla táctil dedicada al control de diferentes dispositivos electrónicos.

1.1.1. Objetivos Particulares

Desarrollar e implementar la tecnología de identificación por

radiofrecuencia (RFID) en el control de acceso.

Realizar una tarjeta de adquisición de datos (DAQ) utilizando un

microcontrolador de microchip mediante la cual sea posible monitorear

variables físicas y realizar acciones de control.

Desarrollar un interfaz gráfica utilizando el software de LABVIEW para

monitorear variables de control y la manipulación de algunos dispositivos

electrónicos.

Programar una interfaz hombre maquina (HMI) con una pantalla táctil

(touch screen) para los diferentes controles que se requieran.

Page 15: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

6

1.2. Justificación

El origen de la domótica se remonta a los años setenta, cuando, tras muchas investigaciones aparecieron los primeros dispositivos de automatización de edificios basados en la aún exitosa tecnología X-10 (es un conjunto de reglas de comunicaciones para el control remoto de dispositivos eléctricos). Durante los años siguientes la comunidad internacional mostró un creciente interés por la búsqueda de la casa ideal, comenzando diversos ensayos con avanzados electrodomésticos y dispositivos automáticos para el hogar. Los primeros sistemas comerciales fueron instalados, sobre todo, en Estados Unidos y se limitaban a la regulación de la temperatura ambiente de los edificios de oficinas y poco más. [1]

Más tarde, con el auge de los PC’s a finales de la década de los 80 y principios de los 90, se empezaron a incorporar en estos edificios los Sistemas de Cableado Estructurado (SCE) para facilitar la conexión de todo tipo de terminales y periféricos entre sí, utilizando un cableado estándar y tomas repartidas por todo el edificio. Además de los datos, estos sistemas de cableado permitían el transporte de la voz y la conexión de algunos dispositivos de control y de seguridad, por lo que a aquellos edificios, que disponían de un SCE, se les empezaron a llamar edificios inteligentes. [1]

Posteriormente, todos estos automatismos destinados a edificios de oficinas, se han ido aplicando también a las viviendas de particulares u otro tipo de edificios donde el número de necesidades que hay que cubrir es mucho más amplio, dando origen a la vivienda domótica. [1]

En el presente trabajo se propone una alternativa de control y monitoreo a una vivienda, esto para generar al usuario mayor accesibilidad y seguridad en su hogar, a través del uso y la implementación de tecnologías como: RFID (Radio Frequency IDentification), Bluetooth, sistemas de interfaz gráfica táctil (Touchscreen), un DAQ (Data Acquisition) que nos permite comunicar el software LabVIEW de National Instruments todas estas tecnologías no implementadas en la realización de una vivienda inteligente. Al hablar de una vivienda inteligente se entiende el término domótica el cual significa: Domótica es el conjunto de tecnologías aplicadas al control y la automatización inteligente de la vivienda, que permite una gestión eficiente del uso de la energía, además de aportar seguridad, confort, y comunicación entre el usuario y el sistema. [2] La propuesta de este trabajo generara servicios que ofrecen agrupar cuatro aspectos principales: • El ámbito del ahorro energético

Page 16: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

7

• El ámbito del nivel de confort • El ámbito de la protección patrimonial • El ámbito de las comunicaciones

Tras una etapa de introducción a la tecnología digital, ahora estamos en los comienzos de una revolución de los servicios para el hogar, apoyados en tecnologías propuestas en este trabajo, las cuales conectarán inteligentemente todos los dispositivos del hogar, soportando una gran diversidad de servicios interactivos, los cuales evitaran cableado gracias a la comunicación remota, accesibilidad a la vivienda mediante módulos de RFID, acceso a los diferentes dispositivos mediante una pantalla táctil touchscreen haciendo más amigable el control de la vivienda con el usuario y a la vez más visible, así como también conocer los estados de los diferentes dispositivos electrónicos para el control mediante el entorno de LabVIEW y todo esto utilizando dispositivos muy versátiles como lo son los microcontroladores que nos ofrece Microchip Technology Inc. [2]

1.3. Antecedentes En el año 2001 se diseñó y desarrollo una maqueta de una casa automatizada

para enseñanza de domótica la cual implementaba sistemas como alarmas de

intruso, control de persianas, despertadores por teléfono, comunicaciones

externas vía el módem y manejar varios componentes en la casa por el mando a

distancia telefónico todo esto controlado a través de un PLC. [3]

En el mismo año se creó un prototipo de simulación de software llamado VISIR, el cual es empleado para probar programas de control de edificio en cursos de domótica y en el verdadero desarrollo de proyectos. Que es comprendido de tres componentes: Redactor, Dibujando y Simulación en el cual se establece como módulo de control un PLC el cual cuenta con interruptores, potenciómetros y led’s para simular el control de motores, lámparas o calefactores y sensores tomando como referencia de control el SCADA (Control supervisorio y adquisición de datos) con el cual se observa el estado de sensores y actuadores y realiza un control on-off. [5] En el año 2006 se llevó a cabo una implementación de control de acceso e

iluminación de un estacionamiento habitacional en el cual para tener acceso al

estacionamiento el usuario cuenta con una tarjeta la cual cuenta con la tecnología

de radiofrecuencia RFID la cual al ser mostrada a módulo de entrada este manda

una señal al controlador en este caso un PLC el cual acciona un pluma y genera el

acceso, para el control de luminaria se utiliza un sensor dualtec el cual manda una

Page 17: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

8

señal al controlador cada que entra una persona, el controlador manda a encender

todas las amparas del lugar. [3]

En el año 2008 se presentó un trabajo de implementación de una HMI (Human

Machine Interface) orientado a una casa inteligente, utilizando una LCD

monocromática en la cual se generaron gráfico con símbolos que hacían

referencia a los diferentes sistemas de control con los cuales cuenta la casa

cumpliendo con funciones básicas como cerrar una cortina, encender la luz, abrir

la puerta, etc. [4]

En el año 2009 el sistema OBRECAD fue creado para establecer mando a distancia para sistemas de domótica en el cual permite a la comunicación entre sensores, dispositivos genéricos y actuadores. Se utiliza un diagrama de clase este creado para cualquier lenguaje de programación esto para establecer un protocolo el cual permita al usuario visualizar a distancia el estado de los componentes de control de la casa, en este caso no se establecen acciones de control, solo es a nivel supervisión a través de una PC mandando un SMS el cual se tiene acceso a otra PC mediante el uso del protocolo TCP/IP. [6]

En el mismo año se llevó a cabo el trabajo que lleva por nombre control remoto y

móvil en domótica; se realizó mediante el entorno de LabVIEW estableciendo

comunicación entre un dispositivo móvil y una PC para el control de una casa

utilizando adquisición inalámbrica y la arquitectura de distribución basada en

servidores de web integrados para el monitoreo de temperatura dentro de la casa.

[2]

Page 18: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

9

Capítulo 2

Análisis y Selección de los dispositivos electrónicos

Page 19: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

10

1. Análisis y Selección de los dispositivos electrónicos El presente Trabajo de investigación tiene como principal objetivo desarrollar sistemas electrónicos que permitan automatizar ciertas tareas que se realizan en una casa habitación, alguna oficina de trabajo o en algún proceso industrial e incorporar las más recientes tecnologías tales como:

RFID (radio frequency identification), Control de acceso.

Comunicación inalámbrica incorporado Bluetooth.

Tecnología Touchscreen, desarrollando un HMI en un panel táctil.

Desarrollo de una tarjeta de adquisición de datos también conocida como DAQ (Data Acquisition).

Desarrollando sistemas de: identificación por radio frecuencia, sistemas de comunicación utilizando Bluetooth, sistemas de interfaz gráfica táctil (Touchscreen) e incorporaración de un DAQ inalámbrica (Data Acquisition) que permita comunicar el software LabVIEW de National Instruments con el mundo exterior para visualizar, controlar y monitorear diferentes variables que intervienen en un proceso industrial y poder controlar el funcionamiento de diferentes actuadores.

1.1. Selección del Controlador Un Microcontrolador es un Circuito Integrado especialmente denominado computador que contiene los recursos necesarios para ser programado y poder realizar las funciones de una tarea predeterminada, recursos necesarios como: CPU (del inglés, Central Processing Unit), Unidad de Almacenamiento, Temporizadores, Puertos de Entrada y Salida y Recursos Auxiliares o también conocidos como complementos.

1.1.1. Tipos de Microcontroladores En el mercado existe gran variedad de fabricantes de microcontroladores, las principales marcas son:

Microchip

Atmel

Texas Instruments

FreeScale

Page 20: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

11

Cada Fabricante ofrece una muy amplia gama de modelos de microcontroladores cada modelo con recursos y características diferentes.

1.1.2. Microcontroladores de Microchip Los microcontroladores de Microchip Technology Inc. también denominados PIC (del inglés Peripheral Interface Controller) son una familia de microcontroladores que ha tenido gran aceptación y desarrollo en los últimos años gracias a sus buenas características, bajo precio, reducido consumo de energía, pequeño tamaño, gran calidad, fiabilidad, alta velocidad de procesamiento de información y sobre todo por su comodidad y sencillez de utilización [1]. Microchip ofrece soluciones para las gamas de 8-bit, 16-bit y microcontroladores de 32-bits, con una arquitectura de gran alcance. 8-bit MCU’s

Baseline

Mid-Range

Enhanced Mid-Range

PIC18 16-bit

PIC24F

PIC24H/E

dsPIC30F

dsPIC33F/E 32-bit Para poder implementar las tecnologías antes mencionadas se utilizaron micrcontroladores fabricados por Microchip Technology Inc. y programados en lenguaje Ensamblador con el software MPLAB IDE v8.02, ya que es de libre distribución y puede ser descargado de la página del fabricante. Estos microcontroladores permiten controlar y monitorear cada una de las señales que están inmersas en los sistemas desarrollados del presente trabajo.

1.1.3. Microcontrolador PIC16F887

El PIC16F887 es un microcontrolador de 8 Bits de la familia Mid-Range con características ideales para las aplicaciones que se desarrollan en el presente trabajo.

Page 21: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

12

Figura 1.1 Diagrama a Bloques de la Arquitectura Mid-Range

Tabla 1.1 Periféricos del PIC16f887

1.1.3.1. Recursos Auxiliares del PIC16f887 Según las aplicaciones a las que orienta el fabricante cada modelo de microcontrolador, incorpora una diversidad de complementos que refuerzan la potencia y la flexibilidad del dispositivo, entre los recursos más comunes se citan los siguientes [3]:

Page 22: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

13

Circuito de Reloj: Encargado de generar los impulsos que sincronizan el funcionamiento de todo el sistema.

Temporizadores: Orientados a controlar tiempos.

Watchdog: Destinado a provocar una re inicialización cuando el programa queda bloqueado.

Conversores AD y DA: para poder leer y generar señales analógicas.

Comparadores Analógicos: Para verificar el valor de una señal analógica.

Módulo USART es decir, Puertos Seriales, I2C, Rs-232, Rs-485, SPI, entre otros.

Módulo de captura, comparación y PWM.

Sistema de protección ante fallos de la alimentación.

Estado de Reposo: en el que el sistema queda dormido o deshabilitado cuando el sistema no está en uso y el consumo de energía se reduce al mínimo.

1.1.3.2. Características principales de funcionamiento del PIC16F887

Circuito de reloj de hasta 20MHz.

Tensión de alimentación de 2.0 Volts hasta 5.5 Volts. Los recursos auxiliares del PIC16F887 que se utilizaron para desarrollar las diferentes aplicaciones del presente trabajo son:

Circuito de Reloj: con un oscilador de 20MHz.

Puerto Serial Rs-232 a una velocidad de 9600 baudios.

Sistema de protección ante fallos de la alimentación PWRT.

Conversores AD: para leer o procesar señales analógicas.

Figura 1.2 Apariencia Física del PIC16f887

Page 23: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

14

Figura 1.3 Diagrama de Pines del PIC16f887

1.1.4. Programación del microcontrolador Para grabar la memoria de programa el microcontrolador debe llevarse a un modo especial de trabajo suministrando 13.5V a la línea MCLR y el voltaje de la línea alimentación Vdd debe estabilizarse entre 4.5V y 5.5V. La memoria de programa se puede grabar de manera serial por medio de las líneas data y clock las cuales deben separarse previamente de las líneas del dispositivo para evitar errores durante la programación [4].

1.1.5. Organización de la Memoria del PIC16F877 El microcontrolador PIC16F887 tiene tres bloques de memoria: EEPROM, Memoria de Datos y Memoria de Programa.

Page 24: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

15

1.1.5.1. Memoria de Programa La memoria de programa está hecha con tecnología FLASH, lo cual permite programar al microcontrolador una gran cantidad de veces antes de instalarlo en dispositivo y aun después de haberlo instalado si ocurren cambios eventuales en el programa o parámetros de proceso. Las localidades de memoria son de 14 bits cada una, donde las localidades cero y cuatro están reservadas para el reset y el vector de interrupción, respectivamente.

1.1.5.2. Memoria de Datos La memoria de datos está compuesta de la memoria EEPROM y la memoria RAM. La memoria EEPROM consiste de 256 localidades de 8 bits cada una cuyo contenido no se pierde al apagar la fuente de alimentación, La memoria RAM (del inglés Random Access Memory) ocupa espacio dentro del mapa de memoria de datos, las localidades de la memoria RAM se llaman también registros GPR (del inglés General Purpose Registers-registros de propósito general) estos registros se pueden accesar sin importar el banco seleccionado. Mientras que los registros SFR (Special Function Register-registros de funciones especiales) se debe primero seleccionar su banco en memoria y después se puede tener acceso a ellos.

1.1.5.3. GPR (General Purpose Registers-registros de propósito general) Son localidades de memoria de 8 bits donde se pueden almacenar variables que se ocupen durante la ejecución del proceso (ver Tabla 2.2).

1.1.5.4. SFR (Special Function Registers-registros de funciones especiales)

Son registros de 8 bits que se encuentran almacenados en la memoria de datos y cada uno cumple con una función en específico (ver Tabla 2.2).

Page 25: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

16

Tabla 1.2 Bancos de Memoria del PIC16F887

Page 26: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

17

1.1.6. Puertos de E/S, entrada/salida del microcontrolador PIC16f887. El microcontrolador se comunica con el mundo exterior a través de los puertos. Estos están constituidos por líneas digitales de entrada/salida que trabajan entre 0V (nivel cero lógico “0”) y 5V (nivel lógico “1”). Los puertos se pueden configurar como entradas para recibir datos o como salidas para gobernar dispositivos externos. El PIC16F887 tiene cinco puertos, tal como se ilustra en la figura 2.3 El Puerto A con 8 líneas, pines RA0 a RA7. El Puerto B con 8 líneas, pines RB0 a RB7. El Puerto C con 8 líneas, pines RC0 a RC7. El Puerto D con 8 líneas, pines RD0 a RD7. El Puerto E con 4 líneas, pines RE0 a RE3. Normalmente en las entradas se tiene:

Interruptores

Pulsadores

Sensores

Selectores Normalmente en las salidas se tiene:

Actuadores

Luces indicadores

1.1.7. El reloj y el ciclo de instrucción. El reloj del microcontrolador es uno de los principales suministros, el cual es obtenido de un componente externo llamado el “oscilador”. El reloj entra al microcontrolador por medio de la línea RA7/OSC1/CLKIN donde un circuito interno del microcontrolador lo divide en cuatro ciclos iguales, estos cuatro ciclos constituyen un ciclo de instrucción (también llamado ciclo de maquina) durante el cual se ejecuta una instrucción [4].

Page 27: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

18

1.1.7.1. Oscilador El microcontrolador requiere de un circuito que indique la velocidad de trabajo a este se le llama Oscilador o Reloj, Este genera una onda cuadrada de alta frecuencia que se utiliza para sincronizar todas las operaciones del sistema. En el PIC16F887 los pines RA7/OSC1/CLKIN y RA6/OSC2/CLKOUT son las líneas utilizadas para este fin, los osciladores que pueden ser empleados son:

XT. Cristal de cuarzo

RC. Oscilador con Resistencia y condensador.

HS. Cristal de alta velocidad.

LS. Cristal para baja frecuencia y baja potencia de trabajo.

Externa. Cuando se aplica una señal de reloj externa.

Figura 1.4 Apariencia Física de un cristal de 20MHz

El oscilador que se empleó para asignar la velocidad de procesamiento al PIC16F887 es un cristal de cuarzo de alta velocidad de 20MHz, sin embargo, el microcontrolador no opera a una frecuencia de 20MHz, debido a que un circuito interno divide en 4 esta frecuencia, por tanto la velocidad de procesamiento del microcontrolador está a una frecuencia de 5MHz. Definición de Frecuencia y Periodo:

𝐹 =1

𝑇 (2.1)

𝑇 =1

𝐹 (2.2)

Dónde: F = Frecuencia T = Periodo Si se tiene una frecuencia de operación de 5MHz, tenemos que cada instrucción se lee en 200ns es decir, 5 MIPS (millones de instrucciones por segundo), es una

Page 28: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

19

forma de medir la potencia en los procesadores que contienen el mismo juego de instrucciones.

𝑇 =1

5𝑀𝐻𝑧= 200𝑛𝑠

1.1.8. Sistema de reinicio

El llamado reset en un microcontrolador provoca la re inicialización de su funcionamiento, un “comienzo a funcionar desde cero”. En los microcontroladores se requiere un pin de reset para reiniciar el funcionamiento del sistema cuando el funcionamiento del sistema queda averiado o cuando sea necesario reiniciar desde cero el funcionamiento del sistema. El pin de reset en los PIC se denomina MCLR (Master Clear) y se produce un reset cuando se le aplica un nivel lógico bajo.

Figura 1.5 Componentes básicos de funcionamiento, PIC16F887

2.5. Tecnología RFID (Identificación por radiofrecuencia)

La tecnología de identificación por radio frecuencia, RFID (del inglés Radio Frequency Identification) está basada en ondas de radio, comúnmente usadas para trasmitir y recibir información sin el uso de cables. Se ha utilizado por muchos años, en las estaciones de radio AM y FM, en la banda civil, en los hornos de microondas, en los teléfonos celulares, y en un sin número de aparatos y aplicaciones; pero no fue sino hasta hace poco que su aplicación específica para la identificación de “objetos” ha despertado interés en las empresas, sobre todo en

Page 29: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

20

las que producen y distribuyen bienes de consumo, en el sector salud, logística, y aplicaciones gubernamentales [5].

Actualmente la tecnología de identificación por radiofrecuencia (RFID) está presente en numerosas aplicaciones tales como: el sistema de transporte metro, el sistema de transporte suburbano o el Metrobús, La identificación por radiofrecuencia o RFID, es una tecnología de identificación remota e inalámbrica en la cual un dispositivo lector o reader vinculado a un equipo de cómputo, se comunica a través de una antena con un transponder (también conocido como tag o etiqueta) mediante ondas de radio.

Esta tecnología que existe desde los años 40, se ha utilizado y se sigue utilizando para múltiples aplicaciones incluyendo casetas de peaje, control de acceso, identificación de ganado y tarjetas electrónicas de transporte.

RFID al ofrecer alternativas a las limitaciones de los códigos de barras, es una plataforma ideal para la recopilación de datos en sectores como el de salud, farmacéutico, manufactura, almacenamiento (inventarios), logística, trazabilidad y retail, implantarlo, usarlo y acoplarlo de manera armónica en los procesos empresariales depende del claro entendimiento de sus capacidades, limitaciones y fundamentos [5].

2.5.1. Principales aplicaciones de la tecnología RFID

Hoy en día la incorporación de RFID en los procesos de negocios han demostrado tener éxito en sectores como:

Administración de la cadena de suministros. En lo que se refiere a la administración de toda la cadena de abastecimientos, almacenes, depósitos, seguimiento de productos, empaques, pallets (tarimas), seguimiento de inventario, considera también fraudes, robos, falsificaciones.

Page 30: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

21

Proceso de manufactura. Automatización de procesos de ensamblaje, producción de componente, partes y refacciones, muy aplicado en la industria automotriz.

Administración de activos. Seguimiento de equipamiento, administración de flotillas, mantenimiento de vehículos, seguimiento y rastreo de activos, aplicaciones militares y de defensa.

Seguridad y control de acceso. Considera control de acceso, seguimiento de animales, controles de encendido, acarreo de equipaje, control de acceso, y seguridad en estacionamientos y seguridad de vehículos.

Aplicaciones de consumidor. Considera identificación de personal, identificación y seguimiento de pacientes, innovadores sistemas de pago, tarjetas de fidelidad inteligentes, cajeros automáticos y pago de servicios.

Figura 1.6 Comunicación serial RS-232, RFID Reader-MCU

2.5.2. Circuito electrónico para implementar en cerradura electrónica En el presente trabajo se diseña un circuito electrónico para controlar la clausura o apertura de una puerta, ventana, caja fuerte o cualquier cosa que contenga una cerradura electrónica, esto para tener acceso a una habitación, un garaje, algún lugar de una casa habitación o de cualquier establecimiento público, utilizando la tecnología RFID; es decir al presentar una tarjeta en el módulo que se encuentra

Page 31: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

22

en la entrada del garaje, el sistema lector manda una señal al microcontrolador, el cual evalúa si la tarjeta tiene el código correcto para que mande una señal eléctrica que accione la cerradura y de esta forma se pueda tener acceso. Si el código leído de la tarjeta o tag no coincide con la que se encuentra dentro del sistema de control, el microcontrolador no generara señal eléctrica y por tanto nunca se abriría la cerradura electrónica.

Mediante un visualizador LCD 16x2 (del inglés Liquid Crystal Display) el

circuito electronico le dara la bienvenida al usuario mostrando un

mensaje en la primer linea de “Bienvenido” y en una segunda linea mostrara si el usuario tendra o no acceso dependiendo de la tarjeta o

tag que se este utilizando.

Figura 1.7 Lector RFID a 125kHz

2.5.3. Características del Lector RFID 125kHz

Tensión de Alimentación 5V.

Comunicación Serial Rs-232 a 9600 Baudios.

Solo 4 pines en la placa para controlar.

Alta sensibilidad.

Máxima distancia de detección: 7cm.

Salida UART: Salida TTL, 9600 Baudios, 8 bits de datos y 1 bit de parada [9].

2.5.4. Visualizador LCD 16x2 Las pantallas de cristal líquido o display LCD (del inglés Liquid Crystal Display) para mensajes tienen la capacidad de mostrar cualquier carácter alfanumérico, permitiendo representar la información que genera cualquier equipo electrónico de

Page 32: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

23

una forma fácil y económica. La pantalla consta de una matriz de caracteres (normalmente de 5x7 puntos) distribuidos en una, dos, tres o cuatro líneas de 16 hasta 40 caracteres cada línea. El proceso de visualización es gobernado por un microcontrolador PIC16F887 incorporado a la pantalla, siendo el Hitachi 44780 el modelo más utilizado [1].

Figura 1.8 Aspecto de un módulo LM016

Existen distintos fabricantes que ofrecen una gran variedad de visualizadores de cristal líquido, pero el modelo mas utilizado el es LM016L, que es un módulo de 2 líneas de 16 caracteres cada una. Su fácil manejo lo hace ideal para dispositivos que necesitan una capacidad de visualización pequeña o mediana. Sus características principales son las siguientes:

Consumo reducido, del orden de 7.5 mW

Pantalla de caracteres ASCII, ademas de los caracteres japonese Kanji,

griegos y símbolos matemáticos.}desplazamiento de los caracteres hacia la

izquierda o a la derecha.

Memoria de 40 caracteres por línea de pantalla, visualizándose 16

caracteres por línea.

Movimiento del cursor y cambio de su aspecto.

Permite que el usuario pueda programar 8 caracteres.

Pueden ser controlados de dos formas principales:

- Conexión con bus de 4 bits.

- Conexión con bus de 8 bits.

Page 33: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

24

Figura 1.9 Patillaje del LCD LM016L

Tabla 1.3 Descripción de pines del Display LCD 16x2

2.5.5. Memoria del LCD

A continuación se muestran las características de la memoria de la LCD asi como sus tipos. 2.5.5.1. DDRAM. El LM016 posee una zona de memoria RAM llamada DDRAM (del inglés Data Display RAM) donde se almacenan los caracteres que se pueden representar. Tiene una capacidad de 80 bytes, 40 por cada línea, de los cuales solo 32 se pueden visualizar a la vez (16 bytes por línea).

SEÑAL DEFINICIÓN PINES FUNCIÓN

DB0…DB7 Data bus 7…14 Bus de datos

E Enable 6 E=0, LCD no habilitado E=1, LCD habilitado

R/W Read / write 5 R/W=0, escribe en LCD R/W=1, lee del LCD

RS Register select 4 R/S=0, modo comando R/S=1, modo carácter

𝑽𝑳𝑪 Liquid crystal driving voltage

3 Tensión para ajustar el voltaje

𝑽𝑫𝑫 Power supply voltage 2 Tensión de alimentación, +5v

𝑽𝑺𝑺 Ground 1 Masa

Page 34: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

25

Este espacio de memoria almacena los códigos ASCII de los caracteres que aparecerán en pantalla y existe una correspondencia entre las filas de la pantalla y las posiciones consecutivas de memoria. De las 80 direcciones posibles, las dos más importantes son:

Dirección 00h (que es el comienzo de la primera línea).

Dirección 40h (que es el comienzo de la segunda línea)

Figura 1.10 Lista de caracteres definidos dentro de la memoria CGROM

Page 35: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

26

2.5.5.2. Caracteres definidos en la CGROM. Este módulo posee una zona de memoria interna no volátil llamada CGROM donde almacena una tabla con los 192 caracteres que puedan ser visualizados (mostrados en la figura 2.10). Cada uno de estos caracteres tiene su representación binaria de 8 bits. Para visualizar un carácter debe recibir por el bus de datosel código correspondiente. Por ejemplo: Para visualizar el carácter “A” el LDC debe recibir por su bus de datos el código b’01000001’. Tambien permite la posibilidad de definir 8 nuevos caracteres de usuario, no incluidos en su tabla interna. Estos caracteres se guardan en una zona de RAM denominada CGRAM (Character Generator RAM). 2.5.6. Modo de Funcionamiento Este display tiene tres modos de funcionamiento principales:

Modo comando. Cuando por el bus de datos el LDC recibe instrucciones

como “Borrar Display”, “Mover Cursor”, “desplazar a iazquierda”, etc. Para

trabajar bajo este modo el pin RS debe estar a “0”, el pin R/W tambien debe

ser “0” para indicar que se esta realizando una operación de escritura.

Modo carácter o dato.Cuando por el bus de datos el LCD recibe un carácter

a escribir en la DDRAM. Es decir, cuando se envía al LCD el carácter ASCII

a visualizar. Para trabajar en este modo , el pin RS debe estar a “1”. El pin

R/W debe ser “0”, para indicar que se está realizando una operación de

escritura. También se puede llamar “modo carácter” o “modo registro”.

Modo lectura del “Busy Flag” o LCD ocupada.En el bit 7 del bus de dato el

LCD informa al microcontrolador de que está ocupado, (este bit es

denominado Busy Flag). Para ello se lee el bus de dato con RS=0 y R/W=1,

si el bit 7 del bus de datos es “1” indica que la pantalla LCD esta ocupada

realizando operaciones internas y no puede aceptar nuevas instruccinesni

datos. Hay que esperar a que el Busy Flag valga “0” para enviarle la

siguiente instrucción o carácter.

Page 36: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

27

Este último modo de operación se ha ideado para evitar posibles problemas de tiempo, de manera que no se realiza ninguna operación con el LCD hasta comprobar que no está ocupado. El pin R/W permite leer el registro de estado en el modo Busy Flag que sólo sirve para comprobar si el controlador ha terminado de realizar la instrucción que se le ha enviado y asi poder enviar más. 2.5.7. Comandos de control Los comandos que admite este modulo LCD son los siguientes:

Tabla 1.4 Comandos del módulo LCD

COMANDO RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

Clear Display 0 0 0 0 0 0 0 0 0 1

Return Home 0 0 0 0 0 0 0 0 1 *

Entry Mode Set 0 0 0 0 0 0 0 1 I/D S

Display Control 0 0 0 0 0 0 1 D C B

Cursor and Display Shift

0 0 0 0 0 1 S/C R/L * *

Funcion Set 0 0 0 0 1 DL N F * *

Set CGRAM Address 0 0 0 1 CGRAM Address

Set DDRAM Address 0 0 1 DDRAM Address

Read Busy Flag 0 1 BF DDRAM Address

Write RAM 1 0 Write Data

Read RAM 1 1 Read Data

Los comandos se envían através del bus de datos. Para que el LCD los reconozca hay que poner la señal RS a nivel bajo. A continuación e detallan las funciones de cada comenado:

Clear Display (00000001). Borra la pantalla y devuelve el cursor a la

posición inicial (dirección 0 de la DDRAM)

Return home (0000001x). cursor a dirección origen. Devuelve el cursor la

posición original de la DDRAM (dirección 00h) quedando intacto su

contenido.

Entry Mode Set (000001 I/D S). modo entrada establece las características

de escritura de los datos Shift e Increment/Decrement:

- S=0. La información visualizada en la pantalla no se desplaza al escribir

un nuevo carácter.

Page 37: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

28

- S=1. La información visualizada se desplaza al escribir un nuevo

carácter. Lapantalla se desplaza en el sentido indicado por el bit I/D

cuando el cursor llega al fin de la pantalla.

- I/D=1. Incremento automático de la posición del cursor. La posición de la

DDRAM se incrementa automáticamente tras cada lectura o escritura a

la misma.

- I/D=0. Decremento de la posición del cursor. Se decrementa el puntero

de la DDRAm.

Display Control (00001DCB). Control de la pantalla:

- B=0. Blink OFF, no hay efecto de parpadeo del cursor.

- B=1. Blink ON, efecto de parppadeo con cursor rectangular.

- C=0. Cursor OFF, el cursor no se visualiza.

- C=1. Cursor ON, el cursor es visualizado.

- D=0. Display OFF, el display se apaga.

- D=1 display ON, el display se enciende.

-

Cursor and Display Shift (0 0 0 1 S/C R/L x x). control de los

desplazamientos del cursor y de la pantalla:

- R/L=0. Left, a la izquierda.

- R/L=1. Right, a la derecha.

- S/C=0. El efecto de desplazamiento se aplica solo sobre el cursor sn

alterar el contenido de la DDRAM.

- S/C=1. El efecto de desplazamiento se afecta a todo el display.

Function Set (0 0 1 DL N F x x ) características de control hardware:

- F=0. Font, caracteres de 5x7 puntos.

- F=1. Font, caracteres de 5x10 puntos.

- N=0. Number Line, pantalla de una línea.

- N=1. Number Line, pantalla de dos líneas.

- DL=0. Data Length. Comunicación con 4 bits. Indica al LCD que

solamente se van a autilizar las líneas DB7, DB6, DB5 y DB4 para

enviarle datos y que se hará enviando primero el nibble alto, y a

continuación el nibble bajo del dato.

- DL=1. Data Length. Comunicación con 8 bits.

Set CGRAM Address. Se va a escribir sobre la dirección CGRAM señalada.

Page 38: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

29

Set DDRAM Address (1 d d d d d d d d). esta instrucción se utiliza para

modificar el puntero a la DDRAM, Así por ejemplo, si la dirección es la 08h

se escribirá en el centro de la primera línea.

Read Busy Flag. Lee el Bf indicando si hay una operación interna en curso

y lee, además el contenido de la dirección DDRAM apuntada [10].

1.2. Pantalla Táctil Una pantalla táctil es una pantalla que mediante un toque directo sobre su superficie, permite la entrada de datos y órdenes al dispositivo, y a su vez muestra los resultados introducidos; actuando como periférico de entrada y de salida de datos. El contacto se puede realizar por medio de un lápiz óptico u otras herramientas similares. Actualmente hay pantallas táctiles que pueden instalarse sobre una pantalla normal. Las pantallas táctiles son populares en la industria pesada y en otras situaciones, tales como exposiciones de museos donde los teclados y los ratones no permiten una interacción satisfactoria, intuitiva, rápida, o exacta del usuario con el contenido de la exposición. Es importante mencionar que un panel táctil también permite una notable reducción de hardware. El lápiz óptico es un periférico de entrada para computadoras, Tablets, Celulares entre otros, tomando en la forma de una varita fotosensible, que puede ser usado para apuntar a objetos mostrados en una pantalla, en una manera similar a una pantalla táctil pero con mayor exactitud posicional. Este periférico es habitualmente usado para sustituir al mouse, teclado o algún componente de entrada de algún sistema.

1.2.1. Tipos de pantallas Touchscreen Hoy en día se cuenta con muchas opciones de Tecnología Touchscreen.

Touchscreen Resistiva de 5 hilos AccuTouch.

Touchscreens de Reconocimiento de Pulso Acústico (APR).

Tecnología Resistiva de 4 hilos AT4.

Touchscreen Infrarroja CarrollTouch.

TouchscreenIntellitouch de Ondas de Superficie.

Touchscreen de Ondas de Superficie SecureTouch.

Touchscreen de Ondas de SuperficieiTouch (Touch-on-tube).

Tecnología Capacitiva Proyectada.

Tecnología Superficie Capacitiva.

Page 39: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

30

Figura 1.11 Tecnología Resistiva de 4 hilos AT4

1.2.2. Funcionamiento de la pantalla táctil

El panel táctil contiene dos superficies (ver Figura 2.12) y cada superficie contiene

una red de resistencias (ver Figura 2.13) de donde provienen dos terminales de

cada superficie. Para conocer la coordenada sobre el eje X en donde se realiza el

contacto, es necesario energizar una superficie con 5V y realizar una medición en

la otra superficie, es decir, para conocer la posición en el eje X donde se está

realizando el tacto, se energiza la superficie A y se mide el voltaje en la superficie

B. Ahora bien, para conocer la posición en el eje Y donde se realiza el contacto se

energiza la superficie B y se mida el voltaje en la superficie A. De esta forma se

determina el punto en donde se realiza el contacto (X, Y) Dichas coordenadas

obtenidas están dadas en valores analógicos de voltaje, por tanto el sistemas de

control deberá convertir esos valores analógicos a digitales y eso se logra

mediante un ADC (del inglés Analog to Digital Converter). Una vez obtenida la

coordenada (X, Y) el microcontrolador conoce el punto donde se realizó el tacto y

es capaz de tomar decisiones en base a la lectura.

Figura 1.12 Superficies que componen el panel táctil

Page 40: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

31

Ejemplo: Cuando la terminal-Derecha (ver Figura 2.12) se conecta a 5V, la terminal-Izquierda se conecta a GND ó 0V y en función del lugar en donde se esté realizando el contacto, se va a obtener un voltaje en la terminal-Abajo, y este voltaje es leído por el ADC de un Microcontrolador, la terminal-Arriba queda sin conexión, con esto se obtiene el punto del tacto en el eje X, para leer la posición del tacto en el eje Y, la terminal-Arriba se conecta a 5V, la terminal-Abajo a GND o 0V, la terminal-Derecha queda sin conexión y en la terminal-Izquierda se hace una medición de voltaje. Por lo tanto se puede observar que las resistencias funcionan como un circuito divisor de voltaje que está en función de la posición del contacto.

Figura 1.13 Red de resistencias del panel táctil

La conversión A/D es un proceso de cuantización en la cual una señal analógica es representada por su equivalente en estados binarios.

Figura 1.14 Función del Convertidor analógico a Digital

En el presente trabajo se desarrolla un HMI (del inglés Human machine Interface) en un GLCD (del inglés Graphic Liquid Crystal Display) a colores para controlar las luces de una casa habitación.

Page 41: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

32

Figura 1.15 GLCD (Graphic Liquid Crystal Display) PIC18FJ

1.2.3. Panel Táctil PIC18FJ El PIC18FJ es una placa que contiene un microcontrolador PIC18F87J50, una pantalla a colores de 320x240 pixeles, un panel táctil, ranura para tarjeta microSD, un reproductor de audio mp3, comunicación USB,un acelerómetro y un bootloader que permite programar el PIC18FJ desde el software mikroBootloader USB HID v1.50 mediante su puerto USB, esto para poder prescindir de un programador externo.

Figura 1.16 Diagrama a Bloques de la Arquitectura PIC18

Page 42: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

33

El PIC18F87J50 fabricado por Microchip Technology Inc. Es un microcontrolador de 8 Bits de la familia PIC18.

Tabla 1.5 Periféricos del PIC18F87J5

1.3. Software de Programación, Compilación y simulación. A continuación se hace un listado del software utilizado para la programación, compilación y simulación de los circuitos electrónicos e interfaces del presente trabajo, todo el software utilizado corre bajo la plataforma de Windows:

MPLAB IDE v8.02.

Visual TFT v2.71.

mikroC PRO for PIC v5.61.

Master Prog.

mikroBootloader USB HID v1.50.

Proteus ISIS Professional v7.7.

National Instruments LabVIEW 2012.

1.3.1. Entorno de programación MPLAB El MPLAB IDE® es una herramienta software de “Entorno de Desarrollo Integrado” (Integrated Development Enviroment, IDE) que se ejecuta bajo Windows. Con este entorno se pueden desarrollar aplicaciones para los microcontroladores PIC, los microcontroladores con arquitectura Mid-Range cuentan con un juego de 35 instrucciones lo que hace que sean fáciles de programar. El MPLAB® incluye todas las utilidades necesarias para la realización de proyectos con microcontroladores PIC, permite editar el archivo fuente del proyecto, además

Page 43: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

34

de ensamblarlo y simularlo en pantalla para comprobar cómo evolucionan tanto la memoria de datos RAM (del inglés Random Access Memory), como la de programa ROM (del inglés Read-only Memory) los registros del SFR (del inglés Special Function Register), etc., según progresa la ejecución del programa. El MPLAB IDE® incluye:

Un editor de texto.

Un ensamblador llamado MPASMTM.

Un simulador llamado MPLAB SIM TM.

Un organizador de proyectos y otros. Este programa es gratuito. Se puede descargar en la dirección de internet del fabricante www.microchip.com. Su instalación es muy sencilla y similar a cualquier otro programa para el sistema operativo Windows.

Figura 1.17 Apariencia del entorno de programación MPLAB

1.3.2. Software Visual TFT Visual TFT v2.71 es un software muy parecido al entorno de desarrollo Visual Basic, Visual TFT permite crear Interfaces graficas de usuario de forma fácil y rápida ya que el diseño de la Interfaz gráfica de usuario es por medio de bloques. El Sotfware Visual TFT cuanta con 12 componentes que son suficientes para crear múltiples aplicaciones.

Page 44: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

35

Figura 1.18 Componentes para desarrollar Interfaces graficas en Visual TFT.

Visual TFT permite crear solo la apariencia de la Interfaz Gráfica de usuario y en base a la interfaz gráfica prediseñada genera el código C para más tarde poder programar las funciones de cada bloque de la interfaz en el software mikroC PRO for PIC v5.61, ya que este último software da la posibilidad de programar en código C para manipular el funcionamiento del panel táctil, módulo de mp3, pantalla a colores 320x240 o cualquier otro elemento del PIC18FJ.

Figura 1.19 Software Visual TFT.

Page 45: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

36

1.3.3. mikroC PRO for PIC mikroC PRO for PIC es un compilador que sirve al programador para programar microcontroladores de Microchip en código C de manera fácil y rápida ya que cuenta con múltiples librerías y herramientas que ayudan a tener un código más compacto.

Figura 1.20 Software mikro C PRO for PIC

1.3.4. Master Prog Master Prog está formado de una parte de software y otra de hardware que permite programar microcontroladores de Microchip mejor conocidos como PIC’s, la parte de Hardware se conecta vía USB a un computador mientras que el Software se ejecuta en el computador, cuando se captura un programa en MPLAB IDE, al momento de compilar el programa genera diferentes archivos que conforman un mismo proyecto. El proceso de ensamblado produce un fichero ejecutable con extensión (*.HEX) que será el que posteriormente se grabara en la memoria de programa del PIC mediante el grabador, en la figura 2.21 se puede observar que en el archivo (*.HEX) únicamente contiene números hexadecimales, que es la forma de representar ceros y unos binarios de la información que se grabara posteriormente en la memoria de programa del microcontrolador [1].

Page 46: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

37

Master prog permite cargar el archivo con extensión (*.HEX) al microcontrolador.

Figura 1.21 Contenido del archivo con extensión (*.HEX)

Figura 1.22 Software Master Prog

Page 47: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

38

Figura 1.23 Hardware Master Prog

1.3.5. mikroBootloader USB HID v1.50 mikroBootloader es un programa que se utilizó para programar la pantalla táctil ya que el microcontrolador que contiene el PIC18FJ es fabricado por Microchip, la función de este software es similar a la del Master prog, cargar el archivo (*.HEX) al microcontrolador.

Figura 1.24 Software mikroBootloader USB HID v1.50

Page 48: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

39

1.3.6. Proteus ISIS Professional v7.7

Proteus es una compilación de programas de diseño y simulación electrónica, desarrollado por Labcenter Electronics que consta de dos programas principales: Ares e Isis.

El Programa ISIS, Intelligent Schematic Input System (Sistema de Enrutado de Esquemas Inteligente) permite diseñar el plano eléctrico del circuito que se desea realizar con componentes muy variados, desde simples resistencias, hasta alguno que otro microprocesador o microcontrolador, incluyendo fuentes de alimentación, generadores de señales y muchos otros componentes con prestaciones diferentes. Los diseños realizados en Isis pueden ser simulados en tiempo real.

Figura 1.25 Software Proteus ISIS Professional v7.7

Page 49: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

40

1.3.7. National Instruments LabVIEW 2012 El software LabVIEW® es un potente programa de diseño de sistemas construido específicamente para tareas realizadas por ingenieros y científicos. LabVIEW es el acrónimo de Laboratory Virtual Instrument Engineering Workbech. Es un lenguaje y, a la vez, un entorno de programación gráfica en el que se pueden crear aplicaciones de una forma rápida y sencilla [2]. Originalmente el software LabVIEW estaba orientado para aplicaciones de control de equipos electrónicos usados en el entorno de instrumentación, lo que se conoce como instrumentación virtual. En la interfaz se trabaja con dos ventanas principales: un instrumento real tendrá un panel frontal donde estarán su botones, pantallas, etc. y una circuitería interna. En LabVIEW estas partes reciben el nombre de Panel Frontal y Diagrama de Bloques respectivamente [2].

Panel Frontal: es la parte que vera el usuario, suele tener fondo gris.

Diagrama de Bloques: es donde se realiza la programación y suele tener fondo blanco.

Figura 1.26 Software LabVIEW

1.4. Tarjeta de Adquisición de Datos con LabVIEW Se tiene como principal objetivo realizar una tarjeta de adquisición de datos que nos permita comunicar el software LabVIEW con el mundo exterior de una manera inalámbrica para visualizar, controlar y monitorear diferentes variables que intervienen en un proceso industrial y poder controlar el funcionamiento de diferentes actuadores.

Page 50: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

41

National Instrument ofrece en el mercado diferente tipos de DAQ (Tarjeta de Adquisición de Datos), estas tarjetas ayudan a comunicar vía USB el software LabVIEW con el mundo exterior.

1.4.1. Puertos E/S La Tarjeta de Adquisición de Datos que se va a desarrollar contiene puertos de entrada y puertos de salida como se describen en la Tabla 2-6, el voltaje de operación de dichos puertos de entradas y salidas digitales es de 0 y 5V de CD, por tanto si se deseara controlar un actuador que opera a una tensión mayor en CD o de CA es necesario utilizar un circuito externo de potencia. El rango de operación de las entradas analógicas es de cero a cinco volts 0-5V.

Tabla 1.6 Entradas y Salidas de la DAQ

Adquisición de Datos (DAQ)

Entradas 0-5V Salidas 0-5V

8 Digitales 8 Digitales

8 Analógicas -----

La tarjeta de adquisición de datos está compuesta principalmente por un microcontrolador fabricados por Microchip Technology Inc, también denominado PIC, un Bluetooth que permitirá hacer la comunicación inalámbrica entre el DAQ y la PC y diferentes elementos electrónicos como, transistores, resistencias, diodos y reguladores de tensión.

1.4.2. Arquitectura general de la DAQ El microcontrolador principal que gobierna las funciones de la tarjeta de adquisición de datos es el PIC16f887, en la figura 2.27 Se muestra un diagrama a bloques de la arquitectura general de la DAQ.

Page 51: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

42

Figura 1.27 Arquitectura General de la DAQ

1.4.3. Comunicación entre la DAQ y LabVIEW La forma más común y sencilla de comunicar cualquier dispositivo con una computadora es a través del puerto serie. La comunicación serial consiste en él envió de un bit de información de manera secuencial, esto es un bit a la vez y a un ritmo acordado entre el emisor y el receptor. En una computadora puede haber varios puertos serie, normalmente denominados COM 1, COM 2, etc. En la Figura 2.28, se observa las terminales que constituyen a un conector DB-9. En cualquier tipo de comunicación es importante considerar la velocidad de trasmisión. El Baudio es proporcional a los bits/segundo (bps) definidos como el número de bits de información enviados por segundo.

Page 52: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

43

La velocidad a la que pueden trabajar los puertos COM de un ordenador está normalizada a: 75, 150, 300, 600, 1200, 2400, 4800, 9600 Baudios, etc. Estos valores son demasiado pequeños para los estándares de hoy en día, Pero suficientemente rápidos para una multitud de aplicaciones [1].

1.4.3.1. Comunicación Rs-232 RS-232 significa Recommend Standard 232, y está definido por el ANSI (del inglés American National Standard Institution) como: la interfaz entre un equipo terminal de datos y un equipo de comunicación de datos utilizando un intercambio binario de tipo serie [2].

Figura 1.28 Patillaje del conector DB-9

Figura 1.29 Análisis en Osciloscopio del protocolo Rs-232

Page 53: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

44

1.4.4. Tecnología Bluetooth

Las redes inalámbricas de área personal WPAN (Wireless Personal Area Network), son redes que normalmente cubren distancias de hasta 100 metros, normalmente utilizadas para comunicar varios dispositivos portátiles personales sin la necesidad de utilizar cables. En la tecnología Bluetooth la velocidad de transmisión va desde 1 Mbit/s hasta 24Mbit/s [6]. El Bluetooth es un tipo de comunicación inalámbrica que posibilita la transmisión de voz y datos entre diferentes dispositivos mediante un enlace por radiofrecuencia en la banda de 2.4GHz. Algunas de las ventajas que se tiene al utilizar la comunicación Bluetooth son las siguientes:

Facilitar las comunicaciones entre equipos móviles y fijos.

Eliminar cables y conectores entre estos.

Ofrecer la posibilidad de crear pequeñas redes inalámbricas Al utilizar este tipo de comunicación se utilizan dos dispositivos:

Un adaptador de USB a Bluetooth

Un adaptador de Bluetooth a puerto serie RS232 Las velocidades de comunicación pueden ser desde 1200 – 115200 bps.

Figura 1.30 Modulo Bluetooth serial

Page 54: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

45

El modulo Bluetooth COM es diseñado para conectarse con un MCU (del inglés Unit Central Microproccesing) que tenga como recurso auxiliar un módulo UART, las características principales son:

Tensión de Alimentación 3.3V.

Comunicación Serial Rs-232, con velocidades de trasmisión que van desde los 4800 baudios hasta los 1382400 baudios.

3 pines para la comunicación serial Rs-232, Tx, Rx y GND. [8].

Page 55: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

46

Capítulo 3

Diseño e implementación del hardware

Page 56: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

47

3. Diseño e implementación del hardware

3.1. Introducción del hardware La implementación de hardware es una de las partes más importantes para el desarrollo del trabajo que se presenta, porque para realizar las diferentes acciones de control se requiere instalar diferentes dispositivos electrónicos. Como hemos vivido durante los últimos años la tecnología ha avanzado tan rápido, que en un parpadeo de ojos se desarrollaron cosas que en siglos antepasados no se pudiera imaginar que se realizara; sin embargo desde los ordenadores personales que se desarrollaron apenas hace dos décadas aproximadamente los han compuesto de partes principales que son el hardware que corresponde a todos los componentes tangibles físicamente y la segunda parte que incluye todo lo que se refiere a líneas de programación o dicho de otra forma todo lo intangible o software, dicho todo esto se desarrolla este proyecto. En el capítulo cuatro se describirá adecuadamente lo que corresponde a software, pero en el capítulo tres se describe cada parte del hardware detalladamente, debido a que se desarrolló un prototipo de casa habitación. En el trabajo se diseñaron algunos circuitos impresos, se implementó un lector de RFID (Identificador por Radio Frecuencia), una comunicación vía bluetooth, una tarjeta de adquisición de datos (DAQ) que incluye una pantalla touch screen y módulos periféricos como salida de audio, puertos USART, ADC (Convertidor analógico digital), entradas y salidas digitales, módulos de memorias SD entre otras. La implementación de tecnologías inalámbricas es muy importante en cuestión de gastos de adecuaciones, combinándose con los diferentes elementos a controlar la hacen una herramienta muy poderosa, sin embargo ningún sistema puede ser en su totalidad ideal por lo que los esfuerzos para que esto funcione con la mejor efectividad son incontables. La idea de utilizar touch screen es una idea que no es nueva en cuestión de desarrollo tecnológico, pero puede ser muy útil si se enfoca de una manera adecuada para aprovechar al máximo este tipo de tecnologías. Por último el RFID puede ser una herramienta relativamente económica además de muy eficiente, porque además de brindar seguridad y confiabilidad proporciona información adicional, el solo pensar en esto no quiere decir que la única función que puede tener es dar acceso presencial si no puede ofrecer datos de quien corresponda a la etiqueta de acceso. También es importante mencionar que una parte fundamental para desarrollar este proyecto fueron los microcontroladores ya que en estos se basan bastante el control de la mayoría de los diferentes elementos que se implementaron dentro del prototipo.

Page 57: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

48

El diagrama a bloques de la figura 3.1 se puede observar los diferentes elementos que compone el hardware.

Figura 3.1 Diagrama a bloques de la implementación de hardware

Casa Habitación

Interface hombre

máquina

Control de luces

TOUCH

Comunicación bluetooth

LabVIEW

Tarjeta de adquisición

de datosTarjeta de adquisición

de datos

Entradas y salidas

digitales

Entradas analogicas

PC

Identificación por radio

frecuencia

Control de acceso a puertas

Visualizacion por LCD

Page 58: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

49

3.2. RFID (Identificación por radiofrecuencia)

3.2.1. Introducción de RFID

Los negocios que ponen a clientes en el control de sus opciones de intimidad en línea aumentan la fe de consumidor en el mundo en línea y promueven la aceptación mayor de comercio electrónico. Debido al amplio despliegue potencial de Identificación de Radiofrecuencia (RFID), la seguridad de sistemas RFID ha llamado la atención extensa en la industria, y el protocolo RFID de autenticación es un mecanismo importante en la seguridad de sistemas RFID. Las exigencias de seguridad deseadas de protocolos RFID de autenticación incluyen la intimidad, la integridad, la autenticación, el anonimato, incapacidad de rastreo, y aún la disponibilidad. [13]

La identificación por radiofrecuencia (RFID) es una tecnología extensamente que es usada para la dirección de cadena de suministro y el control de existencias. La arquitectura típica de usos RFID comprende etiquetas RFID, que son integradas o conectadas a un objeto, un lector RFID, e IS (servicios de información) del servidor.

En la figura 3.2 se muestra un diagrama de los componentes básicos que son necesarios para el sistema de radiofrecuencia.

Figura 3.2 Sistema de RFID

Tags

Antena

Lector

Page 59: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

50

3.2.2. Lector 125K RFID

Un sistema completo RFID 125K comprende del lector, antena, y etiquetas. La función para cada componente es:

1. Lector: La energía electromagnética de alta frecuencia que es emitida por la

antena es generada por el lector, provoca que las etiquetas envíen la

información contenida en estas y así puede ser procesada por otro

dispositivo.

2. Antena: La antena envía señales inalámbricas a las etiquetas, y recibe el

mensaje inalámbrico de las etiquetas localizadas en la gama accesible.

3. Tags: Las etiquetas contienen las microchips en donde se programó la

información. Cada etiqueta tiene un código de ID, este código de ID es

único para la base de datos entera, y sólo puede ser identificado por la

base de datos designada o el servidor de aplicación. [14]

El lector RFID 125k (figura 3.3) lee el código en la etiqueta RFID y hace de intérprete comunicando con un el microcontrolador PIC16F887 vía una conexión alámbrica de comunicación UART. El lector RFID puede ser inmóvil o móvil. Aunque haya varios tipos de lectores de RFID en el mercado, proponemos un móvil sobre todo diseño de RFID, la tecnología que tiene varios rasgos positivos incluyendo la seguridad, la arquitectura de red, el argumento de operación, y el mecanismo de resolución de código. La modalidad de accesorio de llavero es más confiable, precios bajos, y fácil para reunirse, y por lo tanto, se hace cada vez más más popular en diseños de etiqueta RFID. [15], [16]

Figura 3.3 RFID 125K

Page 60: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

51

El lector 125K de RFID es un módulo que solía leer uem4100 RFID la información de tarjeta con dos formatos de salida: UART y Wiegand. Esto tiene la alta sensibilidad con el máximo 7cm sintiendo la distancia. Los 4 pins de interfaz electrónico de ladrillo lo hacen muy fácilmente ser usado con Arduino o Seeeduino. [19] Algunas características especiales que describen a nuestro dispositivo pueden mencionarse en los siguientes puntos escritos dentro de este documento:

Datos específicos claves

Voltaje de suministro: 5v

Max distancia de sensibilidad: 7cm

Salida UART: TTL la salida, 9600 baudios, 8 bits de datos, 1 bit de parada,

y no verifica el bit.

Salida Wiegand: 26 bits de formato wiegand, 1 aún verifican el bit, 24 bits

de datos, y 1 impar verifican el bit. [19]

Aplicaciones

Internet de Cosa

Juguete Favorito

Sistema de control de Acceso

También, es usado para credenciales ID, el control de acceso, el mantenimiento, el equipo y el mantenimiento de partes, abarcando el control de acceso de tronco, el sistema de puerta de peaje, el rastreo de coche, el control de línea de producción, etc. [19]

Para la comunicación de radiofrecuencia con etiquetas RFID, un lector RFID lee o escribe los datos que son almacenados en una memoria de la etiqueta RFID, y también hace otras tareas de acceso de memoria incluyendo el cerrar/abrir los datos así como la incapacitación de una funcionalidad de etiqueta.

El sistema adapta las ondas de radio para explorar y registrar los datos recibidos de etiquetas RFID. El lector de RFID 125K puede ser colocado hasta unos centímetros lejos de objetos RFID etiquetados. [14]

La etiqueta RFID, que es consistida en una antena, el transceptor, y el circuito integrado con la memoria como ya se había mencionado en este papel, la etiqueta es conectada o integrada a la puerta de acceso principal del peatón o a la puerta

Page 61: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

52

de acceso de la cochera del automóvil como se muestra en la figura 3.4 y la figura 3.5; para que el producto puede ser leído por el lector RFID que está colocado cerca de los accesos principales de la casa habitación y luego identifica el lector la información en la etiqueta presentada, a continuación muestra la información en una LCD (la cual se describirá más adelante dentro de este documento), que corresponde a la etiqueta ya sea una tarjeta o llavero dependiendo del caso en que se encuentra en cada uno de los ID de cada uno de estos.

Figura 3.4 Instalación de RFID acceso principal de peatón

Figura 3.5 Instalación de RFID acceso principal de vehículos

En general, RFID etiquetas tienden a ser móvil y los lectores son inmóviles. Esto es la arquitectura típica para el uso conocido RFID como la dirección de cadena

Page 62: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

53

de suministro. Sin embargo, fácilmente podemos pensar los usos RFID que ambos de etiquetas RFID y lectores podrían ser móviles. [15]

La utilización de un protocolo se refiere al empleo de datos específicos de los centros de datos para que los sistemas RFID sean puestos en práctica. En otras palabras, para tener una selección entre esquemas variados o protocolos, la importancia y el valor de información almacenada o el tipo de los datos que va a ser transferido entre etiquetas y su lector correspondiente deberían estar preocupados. El protocolo más conveniente y satisfactorio el más eficiente y seguro es el protocolo RS-232. Este protocolo tiene una trama predefinida para enviar los diferentes datos que específica el fabricante del sistema de RFID 125K el cual se muestra en la figura 3.6 en donde se indica cómo deben enviarse los paquetes de información de cada una de las tarjetas, cabe mencionar que esta secuencia es la información que se lee en los tags pero no cumple ninguna acción hasta este punto. [13]

Figura 3.6 Trama del sistema RFID 125K

Para tomar una acción de control con el sistema de RFID 125K, requiere realizar una comparación para lograr esta hazaña, para que esta información sea leída se utiliza los puertos del módulo EUSART microcontrolador PIC16F887.

Proponemos el microcontrolador PIC16F887 porque contiene en sus terminales periféricas la cual corresponde a TX (transmisión asíncrona) el pin 25 y RX (recepción asíncrona) al pin 26 que se observan en la figura 2.3, estas corresponden al módulo EUSAR que tiene la característica de transmitir y recibir datos en el protocolo RS-.232 el cual es compatible con la transmisión de datos UART del lector de RFID 125K.

Los puertos restantes del microcontrolador PIC16F887 son correspondientes a la siguiente tabla 3.1 incluyendo los mencionados en el párrafo anterior.

Page 63: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

54

Tabla 3.1 Descripción de puertos periféricos del microcontrolador PIC16F887

Nombre Número

(DIP 40)

Función Descripción

RE3/MCLR/Vpp 1 MCLR Pin de reinicio

RA0/AN0/ULPWU/C12IN0- 2 RA0 E/S propósito general PORTA

AN0 Canal 0 del convertidor A/D

RA1/AN1/C12IN1- 3 RA1 E/S propósito general PORTA

AN1 Canal 1del convertidor A/D

RA2/AN2/Vref-/CVref/C2IN+ 4 RA2 E/S propósito general PORTA

AN2 Canal 2 del convertidor A/D

RA3/AN3/Vref+/C1IN+ 5 RA3 E/S propósito general PORTA

AN3 Canal 3 del convertidor A/D

RA4/T0CKI/C1OUT 6 RA4 E/S propósito general PORTA

RA5/AN4/SS/C2OUT 7 RA5 E/S propósito general PORTA

AN4 Canal 4 del convertidor A/D

RE0/AN5 8 RE0 E/S propósito general PORTE

AN5 Canal 5 del convertidor A/D

RE1/AN6 9 RE1 E/S propósito general PORTE

AN6 Canal 6 del convertidor A/D

RE2/AN7 10 RE2 E/S propósito general PORTE

AN7 Canal 7 del convertidor A/D

Vdd 11 + Suministro de energía positiva

Vss 12 - Tierra

RA7/OSC1/CLKIN 13 RA7 E/S propósito general PORTA

OSC1 Entrada de oscilador del cristal

RA6/OSC2/CLKOUT 14 OSC2 Salida del oscilador del cristal

RA6 E/S propósito general PORTA

RC0/T1OSO/T1CK1 15 RC0 E/S propósito general PORTC

RC1/T1OSO/CCP2 16 RC1 E/S propósito general PORTC

CCP2 E/S módulos CCP1 y PWM1

RC2/P1A/CCP1 17 RC2 E/S propósito general PORTC

RC3/SCK/SCL 18 RC3 E/S propósito general PORTC

RD0 19 RD0 E/S propósito general PORTD

Page 64: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

55

Nombre Número

(DIP 40)

Función Descripción

RD1 20 RD1 E/S propósito general PORTD

RD2 21 RD2 E/S propósito general PORTD

RD3 22 RD3 E/S propósito general PORTD

RC4/SDI/SDA 23 RC4 E/S propósito general PORTC

RC5/SDO 24 RC5 E/S propósito general PORTC

RC6/TX/CK 25 RC6 E/S propósito general PORTC

TX Salida del módulo USART

RC7/RX/DT 26 RC7 E/S propósito general PORTC

RX Entrada del módulo USART

RD4 27 RD4 E/S propósito general PORTD

RD5 28 RD5 E/S propósito general PORTD

RD6/P1C 28 RD6 E/S propósito general PORTD

RD7/P1D 29 RD7 E/S propósito general PORTD

Vss 31 - Tierra

Vdd 32 + Suministro de energía positivo

RB0/AN12/INT 33 RB0 E/S propósito general PORTB

AN12 Canal 12 del convertidor A/D

RB1/AN10/C12INT3- 34 RB1 E/S propósito general PORTB

AN10 Canal 10 del convertidor A/D

RB2/AN8 35 RB2 E/S propósito general PORTB

AN8 Canal 8 del convertidor A/D

RB3/AN9/PGM/C12IN2- 36 RB3 E/S propósito general PORTB

AN9 Canal 9 del convertidor A/D

RB4/AN11 37 RB4 E/S propósito general PORTB

AN11 Canal 11 del convertidor A/D

RB5/AN13/T1G 38 RB5 E/S propósito general PORTB

AN13 Canal 13 del convertidor A/D

RB6/ICSPCLK 39 RB6 E/S propósito general PORTB

RB7/ICSPDAT 40 RB7 E/S propósito general PORTB

Nota para la tabla 1: E/S= Entradas y salidas, A/D= Analógico ha digital. [17]

Page 65: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

56

3.3. Conexión del lector RFID y el microcontrolador PIC16F887

Como se ha mencionado en los subtemas anteriores los elementos descritos, es un tipo de hardware que por sí mismo no realizan ningún efecto; para que su tarea que se lleve a cabo adecuadamente según sea el caso se debe de hacer una serie de modificaciones para que pueda ser efectivos, dicho de otra forma deben se conectados entre sí para que tengan comunicación entre el RFID y el microcontrolador, además del respectivo software precargado con las líneas de programación adecuadas que solucionan el problema presentado.

En la figura 3.7 se observa un diagrama a bloques del sistema de RFID y un microcontrolador en donde se puede observar el orden en que deben de conectarse para asegurar el éxito, en general no importa el tipo de RFID se escoja a utilizar ni el microcontrolador, porque el diagrama abarca la mayoría de posibles combinaciones sin importar del tipo que sean lo elementos seleccionados.

Figura 3.7 Diagrama a bloques del sistema RFID y un microcontrolador

La información del diagrama del lector RFID 125K se muestra en la figura 3.8 para conocer las terminales exteriores y establecer la conexión de estos dos elementos electrónicos. Como se puede observar contiene varias salidas y entradas de diferentes requerimientos, por mencionar algunos el sistema de alimentación, antena, indicadores tipo diodo led que dan correspondencia a la energía y la señal transmitida o recibida, pero los que nos interesan más son los que están indicando con RX y TX, ya que en estas terminales se realizara la vinculación con el

Tag de identificación

Lector de RFID Microcontrolador

Page 66: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

57

microcontrolador PIC16F887; evidentemente la alimentación del circuito es indispensable para el funcionamiento adecuado. [19]

Figura 3.8 Diagrama de lector RFID 125K

Para completar la comunicación se presenta un diagrama de conexión en la Figura 3.9 del sistema de RFID 125K y del microcontrolador PIC16F887con las terminales adecuadas de comunicación de RS-232, para establecer un intercambio de información formal entre estos dos elementos. Cuando establezcan la interacción de datos se podrá hacer una comparación de ID que proveniente de los tags, e identificar la información de la memoria para realizar una acción de control además de mostrar la información que le corresponde.

Figura 3.9 Diagrama de conexión de lector RFID y el microcontrolador PIC16F887

RE3/MCLR/VPP1

RA0/AN0/ULPWU/C12IN0-2

RA1/AN1/C12IN1-3

RA2/AN2/VREF-/CVREF/C2IN+4

RA3/AN3/VREF+/C1IN+5

RA4/T0CKI/C1OUT6

RA5/AN4/SS/C2OUT7

RE0/AN58

RE1/AN69

RE2/AN710

VDD11

VSS12

RA7/OSC1/CLKIN13

RA6/OSC2/CLKOUT14

RC0/T1OSO/T1CKI15

RC1/T1OSI/CCP216

RC2/P1A/CCP117

RC3/SCK/SCL18

RD019

RD120

RD221

RD322

RC4/SDI/SDA23

RC5/SDO24

RC6/TX/CK25

RC7/RX/DT26

RD427

RD5/P1B28

RD6/P1C29

RD7/P1D30

VSS31

VDD32

RB0/AN12/INT33

RB1/AN10/C12IN3-34

RB2/AN835

RB3/AN9/PGM/C12IN2-36

RB4/AN1137

RB5/AN13/T1G38

RB6/ICSPCLK39

RB7/ICSPDAT40

U1

PIC16F887-E/P

12

Y1XTAL

10K

R1

Res Semi

VCC

S1

SW-PB

GND

VCC

GND

10uF

C1Cap2

VCC

GND

Page 67: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

58

Cuando el enlace sea adecuado con respecto al diagrama de conexión como se presentó en la Figura 3.9, el tag podrá ser leído con su correspondiente lector de RFID y la información será enviada al microntrolador PIC16F887, una vez que sea procesada la información obtenida de la etiqueta presentada nos determina que etiqueta se presenta en el lector de RFID 125K, con ayuda de las líneas adecuadas de programación precargadas con el hardware master prog que en el capítulo cuatro se describirá más a detalle.

Una vez que la información es leída puede compararse con todos lo ID’s diferentes que sean guardados de la base en datos, sin embargo no se puede visualizar la información que necesitamos saber, cómo por ejemplo a quien pertenece sus datos principales o si tiene acceso a las puerta principales entre otras cosas dependiendo de las necesidades de cada implementación, en este caso solo requerimos colocar el nombre del individuo que corresponde al tag asignado.

Ya mencionando esto, el hardware descrito anteriormente mostrados en la figura 3.9 no tiene la característica de visualizar algún mensaje por lo que se propone una LCD 2 filas*16 caracteres que se muestra en la figura 3.10 y se describirá más adelante en este papel, en donde se puede ver que ya contiene una pantalla en donde se localizan los mensajes deseados; este elemento electrónico tiene la capacidad suficiente para mostrar los caracteres de la información presencial de los diferentes tags y contiene una iluminación adecuada para el horario nocturno.

Figura 3.10 LCD 2 Filas * 16 Caracteres

Page 68: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

59

3.4. LCD

3.4.1. Introducción de LCD

La pantalla de LCD por sus siglas en ingles pantalla de cristal líquido es utilizada para visualizar mensajes y existen de diferentes tamaños dentro del mercado.

Estos componentes son muy útiles por que proporcionan un mensaje visible y alusivo ya sea para publicidad o para obtener algún dato de información.

Esta tecnología es muy comercial por la forma sencilla de programarse y sus diferentes presentaciones, los fabrican en diferentes colores y en consecuencia ilumina los diferentes mensajes y por si fuera poco los consumibles son mínimos para este componente haciendo referencia a energía, en cuestión al precio no es muy costoso sin embargo varia tomando en cuenta en consideración el tamaño o la aplicación en donde se requiere ser utilizada.

Aun cuando esta LCD aparentemente se considerara una pantalla muy limitada se puede maximizar la eficiencia dependiendo de lo que se requiera y del adecuado desarrollo del software.

Este elemento puede ofrecer una ventaja importante como la de iluminación de ambiente nocturno ya que al tener la característica de visualizar puede incluir una iluminación independiente sin ningún aditamento especial ajeno al componente, así que también se puede mencionar que algunas LCD’s son de una forma compacta por lo que puede proporcionar una instalación sin tener mayor problema como por ejemplo construyendo espacios adicionales para que sea colocada.

Para darle utilidad a una LCD, se requiere agregar a un sistema donde sea funcional, en la figura 3.11 se puede ver cómo está conformado el diagrama de bloques con los componentes necesarios para aplicarse en acceso de puertas.

Page 69: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

60

Figura 3.11 Diagrama a bloques de conexión de un sistema de RFID con visualizador

3.4.2. LCD JHD162A

La LCD que se propone dentro del proyecto es de dos renglones por dieciséis caracteres diferentes con el modelo JHD162A, que incluye luminaria externa. La capacidad máxima que tiene esta LCD es suficiente para visualizar los mensajes en los accesos de las casa habitación que son: la bienvenida, el nombre del usuario perteneciente al tag asignado y por ultimo un mensaje de usuario incorrecto para una etiqueta que no se encuentra registrado de la base en datos.

En la figura 3.12 se puede observar un diagrama a bloques de cada uno de los elementos que componen a la LCD instalada en el prototipo de una casa habitación. [20]

Figura 3.12 Diagrama a bloques de la LCD JHD162A

Page 70: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

61

Algunas características que describen a la LCD JHD162A se mencionan en los siguientes puntos sin embargo no son las únicas que pudieran darnos a conocer a este componente electrónico.

3.4.3. Características de la LCD JHD162A

Puntos por carácter: 5 x 8.

Modo de conducción: 1/16D.

Tipos disponibles: TN, STN (AMARILLO VERDE, GRIS, B/W).

Reflectivo: con el led de iluminación, EL/100VAC, 400HZ LED/4.2VDC.

Parámetro: VDD=5.0V±10 %, VSS=0V, Ta=25°C. [20]

3.5. Conexión de RFID el PIC16F887 y la LCD JHD162A

La interconexión de todos los componentes electrónicos que se han descrito en las páginas anteriores, forman un sistema eficiente el cual en conjunto es la única forma de lograr este objetivo. Para ello, se presenta el diagrama de la figura 3.13, en donde se observa una manera gráfica de cómo se deben considerarse la conexión de los diferentes puertos periféricos de los dispositivos electrónicos, ya que sin esta comunicación alámbrica no puede ser posible que el sistema se comunique entre si y forme un sistema que realice un trabajo.

Page 71: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

62

Figura 3.13 Diagrama de conexión entre RFID, LCD JHD162A y un microncontrolado

RE3/MCLR/VPP1

RA1/AN1/C12IN1-3

RA2/AN2/VREF-/CVREF/C2IN+4

RA4/T0CKI/C1OUT6

RA5/AN4/SS/C2OUT7

RB0/AN12/INT33

RB1/AN10/C12IN3-34

RB2/AN835

RA7/OSC1/CLKIN13

RA6/OSC2/CLKOUT14

RD5/P1B28

RD6/P1C29

RD7/P1D30

RC4/SDI/SDA23

RC5/SDO24

RC3/SCK/SCL18

RC2/P1A/CCP117

RC1/T1OSI/CCP216

RC0/T1OSO/T1CKI15

RB7/ICSPDAT40

RB6/ICSPCLK39

RB5/AN13/T1G38

RB4/AN1137

RD322

RD221

RD120

RD019

RC7/RX/DT26

RC6/TX/CK25

RE2/AN710

RE1/AN69

RE0/AN58

RA3/AN3/VREF+/C1IN+5

RD427

RB3/AN9/PGM/C12IN2-36

RA0/AN0/ULPWU/C12IN0-2

U1

PIC16F887

VI1

VO3

GN

D2

U27805

X1

CRYSTAL

C11u

R1330

1

2

J2

TBLOCK-I2

LED INDICADOR

R2

10k

P1

CRYSTAL

RESET

R4

330R

1

2

J1

TBLOCK-I2

ALIMENTACION

R31k 1

2

J3

CONN-H2

SALIDA

1

2

3

4

5

6

7

8J4

CONN-SIL8

CONECTOR 1 DE LCD

1

2

3

4

5

6

7

8

J5

CONN-SIL8

CONECTOR 2 DE LCD

1

2

3

J6

TBLOCK-M3

RFID

1

J7

CONN-SIL1

SALIDA

SEÑAL DE

CONTROL

MUNGUIA

Page 72: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

63

La propuesta para la implementación de hardware es el acceso de puertas principales mediante una sistema de seguridad con tecnología RFID, la cual tiene tag adecuado que corresponde a un individuo, para poder reconocer a cada uno de ellos se colocó una LCD de 16*2, en donde nos muestra la presencia de la persona a quien corresponda, o si no está registrado dentro de la base en datos, hasta este momento solo se han mencionado las diferentes características de los diferentes componentes, en las cuales nos llevan a hacer una serie de pruebas para logar el objetivo de manera eficiente, para obtener un resultado con una presentación en donde se pueda instalar de manera permanente, se desarrolló el diseño de los circuitos impreso en tablilla fenólica que se presentara en el capítulo 5 basado en el diagrama de interconexión de la figura 3.13.

3.6. Propuesta de una Tarjeta de adquisición de datos (DAQ)

3.6.1. Introducción de la Tarjeta DAQ

La evolución de las diferentes tecnologías para controlar los diferentes procesos industriales ha tenido mucho auge en los últimos años, en donde empresas que compiten a nivel internacional se discuten el mercado, invirtiendo en investigación científica para diseñar diferentes aparatos que pueda cumplir con las diferentes necesidades que se requiera. Para lograr ello se debe tener contacto directo con el proceso, que se desea manipular mediante un elemento primario de medición, sin embargo este tipo de componentes solo logra recopilar información mediante señales analógicas y los diferentes dispositivos para realizar el control automatizado trabajan con señales digitales, por lo que no se puede establecer una comunicación directa.

Para que se tenga en éxito en recopilación de datos del proceso, se desarrolló una tecnología llamada Tarjeta de Adquisición de Datos (por su siglas en inglés DAQ), la cual va registrando las diferentes señales analógicas y la convierte en señales digitales para que se pueda tener control, se pueda generar una bitácora o un registro de lo que sucede en las diferentes entradas conectadas.

A continuación se presenta en la figura 3.14 un pequeño diagrama a bloques de los elementos que se proponen como una DAQ, además de la comunicación con una PC para obtener control y registro de datos.

Page 73: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

64

Figura 3.14 Diagrama a bloques del sistema de una DAQ

3.6.2. Descripción del sistema de la Tarjeta DAQ propuesta

La DAQ que se propone es un microcontrolador de la empresa microchip con conexión inalámbrica, tiene como meta, que el presupuesto que sea invertida en ella sea menor comparado con las diferentes tarjetas que se encuentran a la venta dentro del mercado internacional, por lo que podría darse alguna utilidad didáctica, porque para que sea funcional se ha utilizado una herramienta que forma parte del software de National Instrumens llamado LABVIEW el cual fue diseñado para diferentes aplicaciones, ya sea industriales o de manera educativa, principalmente en los niveles de educación medio superior y superior el cual contiene variedad dentro de sus herramientas, para comprender algunos fundamentos como controladores difusos dentro de un proceso por mencionar uno.

En la parte externa de esta tarjeta de adquisición de datos de National Instruments se pueden conectar entradas analógicas y entradas, salidas digitales las cuales están disponibles para utilizarse en cualquier aplicación.

En el siguiente diagrama a bloques de la figura 3.15, se muestra de manera general los elementos básicos como puertos físicos de entradas y salidas que se requieren estableciendo una comunicación inalámbrica mediante bluetooth con una PC porque se utiliza un software de programación grafica para realizar proyectos de control o recopilación de datos analógicos el cual describe lo que se está proponiendo.

Page 74: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

65

Figura 3.15 Diagrama a bloques de un sistema de adquisición de datos

Ahora que se observó el diagrama de la figura 3.15, de manera inmediata se ve que está conformada básicamente por tres subsistemas, considerando que el conjunto del sistema principal consta de una PC, el bluetooth y una DAQ para reafirmar cada uno de estos individuales forman un subsistema obteniendo 3 subsistemas diferentes.

El primer subsistema y el más importante es la DAQ la cual tiene contacto directo con los diferentes componentes que se le han interconectados entre sí dentro del proyecto a realizar. En esencia la tarjeta de adquisición de datos es una propuesta que se está dando para sustituir una tarjeta ya desarrollada por las diferentes empresas que se encuentran dentro del rubro. En ella está configurado puertos de entrada y salidas para ser utilizados, dicho de otra forma mediante estos puertos obtendrá los diferentes datos de donde estén interactuando dependiendo de los componentes que lo estén integrando.

El segundo subsistema es la comunicación, en donde engloba tanto la PC como la DAQ, en este caso se utilizara el medio del aire utilizando la tecnología de Bluetooth, ya que no es necesario ningún tipo de cableado por lo que nos da una ventaja, además el área de cobertura que nos ofrece este tipo de componente no es muy pequeña, así nos ofrece una cobertura bastante amplia, cabe mencionar que su principio básico es la transición y recepción de datos con diferentes frecuencias.

Tarjeta de adquisicion de datos (DAQ)

•Entradas analogicas

•Entradas igitales

•Salidas analogicas

Bluetooth

•Medio de comunicacion

PC

•Recepcion de datos

•Envio de datos

Page 75: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

66

Para finalizar el tercer subsistema es la PC, aun cuando es un dispositivo muy común, no hay mucho que decir acerca de esto, solo lo más relevante. Este dispositivo es la memoria y el control del sistema, porque mediante este se hacen registros, se guardan o se pueden tomar diferentes acciones de control, dicho de otra manera es el cerebro del sistema, pero el hardware solo lo utilizamos para establecer la iteración este los tres diferentes subsistemas, en si el software (capitulo 4) es el que realiza las acciones de almacenamiento y da paso a las diferentes comportamientos físicos.

3.6.2.1. Características de la Tarjeta DAQ propuesta La Tarjeta de adquisición de datos o como se le dice de manera abreviada por su significado en inglés DAQ Card (Data Acquisition Card, es un dispositivo electrónico o hardware que establece comunicación con una PC donde se interconectan diferentes elementos de control para realizar un trabajo o acciones. La tarjeta DAQ que se propone es un microcontrolador en donde se configuraron diferentes tipos de entradas y salidas electrónicas para ser utilizadas dependiendo de la necesidad y se comunica con la PC inalámbricamente con Bluetooth y realiza diferentes acciones con ayuda del software de LABVIEW. La tarjeta DAQ tiene una alimentación de energía de 9V en donde el consumo de esta es bastante ahorrativo porque los dispositivos utilizados son de nivel Transistor-Transistor Lógico (TTL) esto quiere decir que requiere solo 5V para su funcionamiento óptimo. Las características principales se enuncian a continuación:

Alimentación a 9V

8 Entradas analógicas

8 Entradas digitales

8 Salidas digitales

Conexión inalámbrica con bluetooth

Interacción con LABVIEW

Conexión a la tarjeta DAQ con borneras con tornillos En la figura 3.16 se puede ver un diagrama de interconexión de los diferentes elementos que integra a la tarjeta DAQ para realizar cualquier trabajo dependiendo de la necesidad que se tenga.

Page 76: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

67

Figura 3.16 Diagrama de conexión de los elementos de una Tarjeta DAQ

RE3/MCLR/VPP1

RA1/AN1/C12IN1-3

RA2/AN2/VREF-/CVREF/C2IN+4

RA4/T0CKI/C1OUT6

RA5/AN4/SS/C2OUT7

RB0/AN12/INT33

RB1/AN10/C12IN3-34

RB2/AN835

RA7/OSC1/CLKIN13

RA6/OSC2/CLKOUT14

RD5/P1B28

RD6/P1C29

RD7/P1D30

RC4/SDI/SDA23

RC5/SDO24

RC3/SCK/SCL18

RC2/P1A/CCP117

RC1/T1OSI/CCP216

RC0/T1OSO/T1CKI15

RB7/ICSPDAT40

RB6/ICSPCLK39

RB5/AN13/T1G38

RB4/AN1137

RD322

RD221

RD120

RD019

RC7/RX/DT26

RC6/TX/CK25

RE2/AN710

RE1/AN69

RE0/AN58

RA3/AN3/VREF+/C1IN+5

RD427

RB3/AN9/PGM/C12IN2-36

RA0/AN0/ULPWU/C12IN0-2

U1

PIC16F887

Microcontrolador

X1CRYSTAL

Oscilador

S1 Push Botton

Reset

R110k

Resistencia de pull up

1

2

J1

TBLOCK-I2

Alimentacion a 9V

VI1

VO3

GN

D2

U27805

Regulador a 5V

C11u

Proteccion caida

de tension

1

2

3

4

5

6

7

J2

CONN-SIL7

Conector

Bluetooth

1

2

3

4

5

6

7

8

J3

TBLOCK-I8

Entradas

analogicas

1

2

J4

TBLOCK-I2

Entradas

analogicas

1 2 3 4 5 6 7 8

J5TBLOCK-I8

Entradas digitales

1 2

J6TBLOCK-I2

Entradas digitales

1

2

3

4

5

6

7

8

J7

TBLOCK-I8

Salidas

digitales

R2

1k

Resitencia

pull down

S3Push Botton

Arranque

R31k

Resistencia

Pull up

R41k

Resistencia

Pull up

R5

1k

Resistencia entrada

analogicaR6

1k

Resistencia entrada

analogicaR7

1k

Resistencia entrada

analogicaR8

1k

Resistencia entrada

analogicaR9

1k

Resistencia entrada

analogicaR10

1k

Resistencia entrada

analogicaR11

1k

Resistencia entrada analogica

VI1

VO3

GN

D2

U37833

Regulador a 3.3V

Page 77: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

68

Como se puede observar es una tarjeta DAQ muy sencilla pero bastante funcional pero falta comunicarla porque hasta aquí solo se obtiene el hardware en contacto con el proyecto que se realiza para ello se utilizó un módulo de Bluetooth COM (SSP) para establecer la comunicación entra la Tarjeta DAQ y la PC.

3.6.2.2. Características del Bluetooth El Bluetooth es un dispositivo el cual engloba distintos componentes electrónicos, que transforman los datos a transmitir en ondas de frecuencia para ser transmitidas y recibidas por otro dispositivo de igual frecuencia o de manera inversa. Para establecer la comunicación mediante los puertos UART del microcontrolador y enviar lo datos correspondientes, se transforma las diferentes señales analógicas y digitales a protocolo serial y la transmite por medio del aire y las recibe otro bluetooth de la misma frecuencia y viceversa, en esta aplicación se utilizó un dispositivo Bluetooth Bus Universal en Serie (USB) que va interconectado con la PC y para la parte de la Tarjeta DAQ se utilizó el Bluetooth COM (SSP). Las características del Bluetooth COM (SSP) se enlistan a continuación [18]:

Configuración como modo de esclavo y maestro

Configuración de transmisión y recepción de 1200-115200 baudios

Tamaño: módulo principal: 28mm*15mm*2.35mm, módulo completo: 35.33mm*19.6mm*3.7mm.

Corriente: 30mA máximo

Puede ser usado con todo el MCU por el puerto de UART

2 Señales luminosas Las características del Bluetooth USB se enlistan a continuación [18]:

Versión 2

Velocidad 3Mbs

Soporta redes LAN, auriculares, fax

Compatible con Windows 7 Si se analizan las diferentes características que corresponden a los 2 Bluetooth no son muy parecidas porque uno de ellos es para desarrollo y el otro ya tiene aplicaciones establecidas en la figura 3.17 se puede observar que incluso en su forma física son distintos.

Page 78: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

69

Figura 3.17 Bluetooth COM SSP y Bluetooth USB

3.6.2.3. Especificaciones de la PC Las especificaciones de la PC no son muy extensas porque en la actualidad existen computadoras que contienen una capacidad suficiente para el desarrollo de proyectos. La PC solo debe tener un puerto USB como mínimo para poder ser interconectado el Bluetooth y tener la capacidad para que pueda ser instalado el controlador que le corresponde al bluetooth. En la figura 3.18 es un ejemplo de cómo conectar un bluetooth a una PC.

Figura 3.18 Conexión de un Bluetooth a una PC

Page 79: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

70

3.6.3. Propuesta de una Interfaz Hombre Máquina

3.6.3.1 Introducción de la Interfaz Hombre Máquina

La Interface Hombre Máquina ha tenido un auge en el último siglo dentro de las nuevas tecnologías que se han desarrollado, porque el ser humado adapta la materia prima que tiene a su alrededor para facilitar las actividades que tiene a diario. Para poder lograr esto ha creado diferentes herramientas que pueden llamarse maquinas, a tal grado que se ha tratado de inventar partes no orgánicas para que sean sustituidas por falta de ellas, cabe mencionar que las aplicaciones son muy variadas este solo es un ejemplo. De cierto modo el hombre ha tratado de inventar tecnología para que podamos comunicarnos con los diferentes sistemas mecánicos y electrónicos. Así que se desarrolla una propuesta de esta comunicación llamada Interface Hombre Maquina (por su siglas en inglés HMI), en donde un componentes electrónico compuestos por diferentes elementos electrónicos como el touch screen. El diagrama de la figura 3.19 representa en grandes rasgos lo que compone un sistema así para que sea útil dependiendo de la necesidad presentada.

Figura 3.19 Diagrama del sistema HMI

3.6.3.2. Características de la HMI propuesta La HMI que se propone es una Pantalla de Cristal Líquido para Gráficos (por sus siglas en ingles GLCD), donde se crea un gráfico referente al control que se

Touch Screen

Pantalla Gráfica

Proceso de

analisis de

datos

Accion de

control

Page 80: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

71

requiere y con ayuda de su pantalla táctil se da la indicación que debe de realizar, dependiendo del modo en cómo se programe. La GLCD que se utilizó es: mikromedia para PIC18FJ, que es un sistema de desarrollo compacto con muchos periféricos a bordo, que permiten al desarrollo de dispositivos con el contenido multimedia. La parte central del sistema es 8 bit PIC18F87J50 el microregulador. El mikromedia para PIC18FJ destaca módulos integrados como MP3 estéreo codec, TFT 320x240 la demostración de pantalla de toque, el acelerómetro, USB el conector, MMC/SD la ranura de tarjeta y otro. Esto viene preprogramado con USB bootloader, pero también puede ser programado con programadores externos, como mikroProg o ICD2/3. Mikromedia es compacta y delgada se puede ver por sus dimensiones en la figura 3.20, y perfectamente cabe en la palma de la mano, que lo hace la plataforma conveniente para dispositivos móviles. [21]

Figura 3.20 Dimensiones de la mikromedia

Las aplicaciones son tan variadas por la cantidad de elementos a disposición tanto en gráficos como en control por mencionar algunos y lo demuestra la figura 3.21 donde se pueden observar los puerto periféricos de entrada y salida. [21]

Page 81: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

72

Figura 3.21 Puertos periféricos de la mikromedia

3.6.3.3. Aplicación con la HMI propuesta La aplicación que se hizo con la HMI fue el control de luces mediante la pantalla táctil y con ayuda del grafico que corresponde al plano de la localidad en donde se encuentra las diferentes lámparas, esta aplicación es muy sencilla pero si se considera la parte del touch screen y la parte grafica se le puede dar peso. Sin embargo las aplicaciones son innumerables y su modo de programación para introducir los diferentes grafico es bastante útil. Si se observa la figura 3.22 podemos detectar el grafico que se muestra en la pantalla para el control de las diferentes lámparas.

Page 82: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

73

Figura 3.22 Control de luces con HMI

Page 83: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

74

Capítulo 4

Desarrollo del Software

Page 84: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

75

4. Desarrollo del Software

El desarrollo de los circuitos electrónicos del presente trabajo están conformados por software y hardware, en el presente capítulo se explica cómo se desarrolló la parte de software, el lenguaje de programación empleado es lenguaje ensamblador y lenguaje C para realizar la programación y que los microcontroladores cumplan con las funciones que se requiere. Mediante diagramas de flujo se ilustra la manera en que se desarrolló el código de programación, También se proporciona en anexos el código en lenguaje ensamblador para configurar los periféricos del PIC16F887 empleados en el presente trabajo. En la tabla 4.1 se describen los circuitos electrónicos implementados en el presente trabajo, se menciona su principal funcionamiento, el controlador empleado, sus principales características y los recursos del controlador que han sido utilizados para desarrollar los circuitos electrónicos.

Tabla 4.1 Características principales de los circuitos electrónicos desarrollados

RFID GLCD DAQ

Función

Control de acceso

Control de luces

Adquisición de datos

con LabVIEW

Controlador empleado

Microcontrolador

PIC16F887

Controlador

PIC18FJ

Microcontrolador

PIC16F887

Periféricos utilizados del controlador empleado

Puertos E/S

Comunicación serie Rs-232

Pantalla a colores de 320x240 pixeles

Panel táctil

Puertos E/S

Puertos E/S

Comunicación serie Rs-232

ADC

Lenguaje de programación

utilizado

Ensamblador

Código C

Ensamblador

Compilador

MPLAB IDE

mikroC PRO for PIC

MPLAB IDE

Page 85: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

76

4.1. Periféricos del PIC16F887

Cuando se observó la organización básica de un microcontrolador, se mencionó que dentro de este se ubican un conjunto de periféricos. A continuación se describen algunos de los periféricos del PIC16F887 de los cuales se hace uso en el presente trabajo.

4.1.1. Entradas y salidas de propósito general

También conocidos como puertos de E/S, generalmente agrupadas en puertos de 8 bits de longitud, permiten leer datos del exterior o escribir en ellos desde el interior del microcontrolador.

Algunos puertos de E/S tienen características especiales que le permiten manejar salidas con determinados requerimientos de corriente, o incorporan mecanismos especiales de interrupción para el procesador.

Típicamente cualquier pin de E/S puede ser considerada E/S de propósito general, pero como los microcontroladores no pueden tener infinitos pines, ni siquiera todos los pines que queramos, las E/S de propósito general comparten los pines con otros periféricos. Para usar un pin con cualquiera de las características a él asignadas debemos configurarlo mediante los registros destinados a ellos.

4.1.2. Registro STATUS El registro de estado o STATUS ocupa la posición 03h del Banco 0 o la 83h del Banco 1 o el 103h del Banco 2 o el 183h del Banco 3 y es uno de los registros más importantes y utilizados. Los bits de este registro indican el estado de la última operación aritmética o lógica realizada, la causa de reset y los bits de selección de banco para la memoria de datos. A los bits del registro de estado se les suele denominar flags o banderas. A continuación se explican sus bits principales.

Page 86: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

77

Figura 4.1 Registro STATUS

Bit 6-5 RP<1:0>: bits para la selección de bancos de memoria. 00 = Banco 0 01 = Banco 1 10 = Banco 2 11 = Banco 3 Bit 2 Z: Bit cero 1 = el resultado de una operación aritmética o lógica fue igual a cero. 0 = el resultado de una operación aritmética o lógica fue diferente a cero. Bit 0 C: Bit de acarreo 1 = por la suma: hubo acarreo en el octavo bit y por la resta: el resultado ha sido positivo. 0 = por la suma: no hubo acarreo en el octavo bit y por la resta: el resultado ha sido negativo.

4.1.3. Convertidor Analógico-Digital del microcontrolador PIC16F887.

Como es muy frecuente el trabajo con señales analógicas, éstas deben ser convertidas a digital y por ello muchos microcontroladores incorporan un conversor analógico-digital, el cual se utiliza para tomar datos de varias entradas diferentes que se seleccionan mediante un multiplexor.

Las resoluciones más frecuentes son 8 y 10 bits, que son suficientes para aplicaciones sencillas. Para aplicaciones en control e instrumentación están

Page 87: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

78

disponibles resoluciones de 12bit, 16bit y 24bit. También es posible conectar un convertidor externo, en caso de ser necesario.

El ADC (Analogto digital converter) del PIC16F887 permite convertir señales analógicas de tensión o corriente a una representación binaria de 10-bit de esa señal, los registros asociados al módulo ADC del microcontrolador son:

TRISA // Configuración como entradas.

TRISB // Configuración como entradas.

PORTA // Donde se encuentran ubicados los canales analógicos.

PORTB // Donde se encuentran ubicados los canales analógicos.

ANSEL // Selección de los canales analógicos a leer.

ANSELH // Selección de los canales analógicos a leer.

ADRESL // Parte baja del resultado de la conversión.

ADRESH // Parte alta del resultado de la conversión.

ADCON0 // Configuración del módulo ADC.

ADCON1 // Configuración del módulo ADC. Para configurar el módulo ADC del microcontrolador se debe tener en cuenta que los registros son de 8 bits y que cada registro tiene la tarea de cumplir funciones diferentes, en algunos casos las funciones de cada uno de los 8 bits de esos registros son diferentes, en otras ocasiones los bits tienen que trabajar en grupos de 2 o más bits para configurar una sola función, a continuación se explican las funciones que tienen los bits de los registro que se requiere configurar para poder hacer uso del módulo ADC del microcontrolador PIC16F887. Es importante configurar los pines donde se van a leer señales analógicas como entradas y también indicarle al microcontrolador que dichas entradas serán analógicas y no digitales. El PIC16F887 tiene disponibles 14 canales analógicos, es decir, 14 pines que se pueden identificar con nombres que van de AN0 hasta AN13 dichos canales analógicos se encuentran en el puerto A, puerto B y puerto E, los 14 canales analógicos también pueden ser configurados como simples entradas o salidas digitales uno independientemente del otro, en la figura 4.2 se puede observar que los 14 canales analógicos están conectados mediante un multiplexor a un ADC de tal manera que no se pueden realizar lecturas en más de un canal simultáneamente, es preciso realizar una lectura de un canal y después de otro. Resolución 10-bit El microcontrolador solo acepta señales analógicas en el rango de 0Va 5V y su resolución máxima es de 10-bit, es decir, 1024 valores binarios, con estos datos se puede obtener el tamaño de las muestras y se puede interpretar en la siguiente formula.

Page 88: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

79

𝑇𝑚 = 𝑉𝑟

1024 (4.1)

Dónde: Tm = Tamaño de las muestras. Vr = Rango de voltaje de la señal analógica. para la aplicación en el presente trabajoVr = 5V.

𝑇𝑚5𝑉

1024= 4.882 𝑚𝑉

Es decir, Un uno binario será igual a 4.882 mV Un dos binario será igual a 9.764mV Un tres binario será igual a 14.646mV Un cuatro binario será igual a 19.528mV Un cinco binario será igual a 24.41mV De modo que un mil veinticuatro será igual a 5V Tensión de referencia En la figura 4.2 se puede observar que los pines AN2 y AN3 pueden funcionar tanto como canales analógicos como pines para asignar la tensión de referencia, tensión de referencia menor para AN2 y tensión de referencia mayor para AN3, de modo que si se desea trabajar con señales analógicas muy pequeñas por ejemplo, si se desea trabajar con sensores que dan una respuesta de tensión en el orden de los mili volts no sea necesario agregar una etapa de pre-amplificación. Ejemplo con el sensor de temperatura LM35 Características del LM35

Rango de temperatura: –55 °C a +155 °C

Tensión de operación: 4 – 30 volts

Respuesta: 10mV = 1 °C Si se emplearan señales analógicas como esta, sería muy conveniente ajustar tensiones re referencia de tal manera que una tensión menor sea dividida en 1024 y se obtengan muestras más pequeñas para trabajos más precisos.

Page 89: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

80

Figura 4.2 Diagrama de los canales analógicos disponibles

Para configurar los pines que se desean utilizar como entradas analógicas primero es necesario configurarlas como entradas mediante los registros, TRISA, TRISB y TRISE.

Figura 4.3 Diagrama de los canales analógicos disponibles

Page 90: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

81

Bit 7-0 TRISA<7:0>: Configuración de puertos como entradas o salidas. 1 = El pin correspondiente es configurado como entrada. 0 = El pin correspondiente es configurado como salida.

Figura 4.4 Registro TRISB

Bit 7-0 TRISB<7:0>: Configuración de puertos como entradas o salidas. 1 = El pin correspondiente es configurado como entrada. 0 = El pin correspondiente es configurado como salida.

Figura 4.5 Registro TRISE

Bit 3-0 TRISE<3:0>: Configuración de puertos como entradas o salidas. 1 = El pin correspondiente es configurado como entrada. 0 = El pin correspondiente es configurado como salida. Una vez configuradas como entradas, se le indica al microcontrolador que son entradas analógicas y no digitales mediante los registros ANSEL y ANSELH.

Page 91: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

82

Figura 4.6 Registro ANSEL

Bit 7-0 ANS<7:0>: Selección de canales analógicos. 1 = El pin correspondiente es asignado como entrada analógica. 0 = El pin correspondiente es asignado con puerto E/S Digital.

Figura 4.7 Registro ANSELH

Bit 7-0 ANS<13:8>: Selección de canales analógicos. 1 = El pin correspondiente es asignado como entrada analógica. 0 = El pin correspondiente es asignado con puerto E/S Digital.

Figura 4.8 Registro ADCON0

Bit 7-6 ADCS<1:0>: Bits para seleccionar el reloj de la conversión. 00 = Fosc/2 01 = Fosc/8 10 = Fosc/32

Page 92: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

83

11 = Frc (oscilador RC interno = 500kHz máximo) Bit 5-2 CHS<3:0>: Bits para seleccionar el canal analógico a leer. 0000 = AN0 0001 = AN1 0010 = AN2 0011 = AN3 0100 = AN4 0101 = AN5 0110 = AN6 0111 = AN7 1000 = AN8 1001 = AN9 1010 = AN10 1011 = AN11 1100 = AN12 1101 = AN13 1110 = CVRef 1111 = Referencia fija (0.6V fijo) Bit 1 GO/DONE: Bit de estado de la conversión analógica. 1 = la conversión A/D inicia o está en proceso, cuando l conversión A/D se ha realizado este bit es puesto automáticamente a cero. 0 = la conversión A/D ha sido finalizada. Bit 1 ADON: Bit de habilitación del Módulo ADC. 1 = Módulo ADC es habilitado. 0 = Módulo ADC es deshabilitado.

Figura 4.9 Registro ADCON1

Bit 7 ADFM: selección del formato del resultado de la conversión A/D. 1 = El resultado es justificado a la derecha. 0 = El resultado es justificado la izquierda.

Page 93: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

84

Bit 5 VCFG1: Tension de referencia. 1 = Vref- pin 0 = Vss Bit 4 VCFG0: Tension de referencia. 1 = Vref+ pin 0 = Vdd Por tanto, la configuración de registros que se empleó en el presente trabajo de investigación para realizar la lectura de señales analógicas es:

TRISA = b’11111111’

TRISB = b’11111111’

ANSEL = b’00000001’

ANSELH = b’00000000’

ADCON = b’00000000’

ADCON0 = b’11000001’

4.1.4. EUSART (Enhanced Universal Synchronous Asynchronous Receiver Trasmitter) del microcontrolador PIC16F887.

Este periférico está presente en casi cualquier microcontrolador, normalmente en forma de UART (Universal Asynchronous Receiver Transmitter) o USART (Universal Synchronous Asynchronous Receiver Transmitter) dependiendo de si permiten o no el modo sincrónico de comunicación.

El propósito común de este periférico es la comunicación con otro microcontrolador o con una PC y en la mayoría de los casos hay que agregar circuitos externos para completar la interfaz de comunicación. La forma más común de completar el puerto serie es para comunicarlo con una PC mediante la interfaz EIA-232 (más conocida como RS-232), es por ello que muchas personas se refieren a la UART o USART como puerto serie RS-232, pero esto constituye un error, puesto que este periférico se puede utilizar para interconectar dispositivos mediante otros estándares de comunicación. En aplicaciones industriales se utiliza preferiblemente RS-485 por su superior alcance en distancia, velocidad y resistencia al ruido.

Este periférico del PIC16F887 es el que controla las comunicaciones seriales como: I2C, Rs-232, Rs-485, SPI, entre otras.

Page 94: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

85

EUSART también es conocido como Interface de comunicaciones seriales, puede ser configurado como: • Full-Dúplex Asynchronous: La mayoría de los sistemas y redes de comunicaciones modernos funcionan en modo full-dúplex permitiendo canales de envío y recepción simultáneos. • Half-Duplex Synchronous: Una conexión half-dúplex (a veces denominada una conexión alternativa o half-dúplex) es una conexión en la que los datos fluyen en una u otra dirección, pero no las dos al mismo tiempo. Con este tipo de conexión, cada extremo de la conexión transmite uno después del otro. Este tipo de conexión hace posible tener una comunicación bidireccional utilizando toda la capacidad de la línea. La configuración de este periférico de forma síncrona (Synchronous) permite comunicar el microcontrolador con un ordenador de escritorio mejor conocido como PC mientras que la comunicación asíncrona (Asynchronous) admite comunicar el microcontrolador con dispositivos ADC, memorias EEPROM o cualquier otro dispositivo electrónico que necesite de un maestro para ser controlador y para que este le asigne la velocidad de operación, los registros asociados al módulo EUSART del microcontrolador son:

PIR1 // Control de Interrupciones.

INTCON // Control de Interrupciones.

PIE1 // Control de Interrupciones.

BAUDCTL // Control velocidad en baudios.

RCSTA // Estado de la recepción.

TXREG // Contenido a enviar.

RCREG // Contenido recibido.

TXSTA // Estado de la trasmisión.

SPBRG // Asignación de la velocidad de trasmisión y recepción.

SPBRGH // Asignación de la velocidad de trasmisión y recepción. A continuación se explican las funciones de los bits utilizados que requieren ser configurados para configurar la comunicación serial Rs-232 a una velocidad de 9600 baudios, el microcontrolador realiza la función de maestro por tanto es el que gestiona las comunicaciones, por ello al momento de trasmitir información del microcontrolador al ordenador de escritorio el control de flujo de información lo tiene el microcontrolador, mientras que en la recepción de información no, el microcontrolador sabe cuándo enviar información sin embargo no sabe cuándo va a recibir información, por tal motivo es necesario configurar la recepción por medio de interrupciones, es decir, que cuando el ordenador de escritorio envié información al microcontrolador, el microcontrolador sea interrumpido, revise la información que está entrando, tome decisiones en base a eso y continúe con la ejecución del programa al finalizar la interrupción.

Page 95: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

86

Figura 4.10 Registro INTCON

Bit 7 GIE: bit de habilitación de todas las interrupciones. 1 = Habilita todas las interrupciones. 0 = Deshabilita todas las interrupciones. Bit 6 PEIE: bit de habilitación de interrupción de periféricos. 1 = Habilita todas las interrupciones de periféricos. 0 = Deshabilita todas las interrupciones de periféricos.

Figura 4.11 Registro TXSTA

Bit 6 TX9: Noveno bit de trasmisión. 1 = 9-bit de trasmisión. 0 = 8-bit de trasmisión. Bit 5 TXEN: bit de habilitación de la trasmisión. 1 = Trasmisión es habilitada. 0 = Trasmisión es deshabilitada. Bit 4 SYNC: Modo EUSART. 1 = Modo síncrono. 0 = Modo asíncrono.

Page 96: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

87

Bit 2 BRGH: bit para selección de alta velocidad. 1 = Alta velocidad. 0 = Baja velocidad. Bit 1 TRMT: Estado de la trasmisión. 1 = Registro secundario TSR vacío. 0 = Registro secundario TSR lleno.

Figura 4.12 Registro RCSTA

Bit 7 SPEN: bit para habilitar el puerto serial Rs-232. 1 = Puerto serial es habilitado. 0 = Puerto serial deshabilitado. Bit 6 TX9: Noveno bit de recepción. 1 = 9-bit de recepción. 0 = 8-bit de recepción. Bit 4 CREN: bit para habilitar recepción. 1 = Recepción habilitada. 0 = Recepción deshabilitada.

Figura 4.13 Registro PIE1

Page 97: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

88

Bit 5 RCIE: bit de interrupción de recepción EUSART. 1 = Interrupción en la recepción activada EUSART. 0 = Interrupción en la recepción desactivada EUSART.

Tabla 4.2 Configuración para 9600 baudios

Por tanto, la configuración de registros que se empleó en el presente trabajo de investigación para realizar la comunicación entre un microcontrolador PIC16F887 y un ordenador es:

INTCON = b’11000000’

PIE1 = b’00100000’

BAUDCTL = b’01000000’

RCSTA = b’10010000’

TXSTA = b’00100110’

SPBRG = b’10000001’

SPBRGH = b’00000000’

Page 98: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

89

4.2. Circuito electrónico para implementar en cerradura electrónica con tecnología RFID

En la figura 4.14 se puede ver el algoritmo utilizado en la programación para hacer uso de la tecnología RFID, dicha programación se realizó en lenguaje ensamblador haciendo uso del compilador MPLAB IDE v8.02, a continuación se explican las diferentes partes del algoritmo. Declaración de variables Como se explicó en el capítulo 2 los tags o etiquetas contienen un número de identificación denominado ID que está definido por 14 caracteres por ejemplo: .0040D5F8EA65. Por ello se declaran 14 variables de un byte que contendrán el ID del lector que se presente, también se declara una variable llamada contador y se inicializa con 14, dicha variable es la que controla que entren datos de 14 bytes y que el microcontrolador no realice comparaciones de usuarios hasta que entre el dato del ID completo. Configuración de Puertos I/O Se configura el pin RA1 como entrada, es el pin donde se conectara un interruptor para saber cuándo la puerta se cierre. Se configura el pin RE2 como salida, es el pin donde se generara la señal eléctrica para una cerradura electrónica. Configuración del puerto Serial Rs-232 En esta parte del programa se realiza la configuración de los registros correspondientes al módulo EUSART como se explicó en el presente capitulo sección 4.1, se agrega código de programación en lenguaje ensamblador en anexo A3. El microcontrolador se pone en espera de una interrupción

Page 99: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

90

Inicio

Declaración de

variables

Configuración

de puertos E/S

Configuración del puerto serial

Rs-232 del microcontrolador

PIC16F887

Configuración del

módulo LCD 16x2

Esperando se

presente una

interrupción

Figura 4.14 Diagrama de flujo para la implementación de tecnología RFID

Cuando se acerca un tag al módulo lector, el lector envía de manera serial a una velocidad de 9600 baudios al microcontrolador el paquete de los 14 caracteres, el microcontrolador almacena los 14 caracteres y comienza a evaluar el ID guardado con los diferentes ID de los usuarios previamente grabados en el programa, si el ID almacenado es igual al de algún usuario entonces el microcontrolador genera un pulso de 5V, 20mA por medio del pin RE2 para activar alguna cerradura electrónica y comienza a evaluar el estado del interruptor que se encuentra en el pin RA1, al momento en que se encuentre pulsado el interruptor, es decir, que la puerta se halla cerrado, el microcontrolador regresa a la espera de una nueva interrupción.

Page 100: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

91

Interrupción

Almacena la cadena

de 14 caracteres del

ID del Tag

Compara ID

recibido con el de

los usuarios

¿ID

corresponde

al usuario

Luis?

¿ID

corresponde

al usuario

Jair?

¿ID

corresponde

al usuario

Daniel?

Genera una señal eléctrica para

activar alguna cerradura

electrónica e imprime mensaje

de bienvenida

Genera una señal eléctrica para

activar alguna cerradura

electrónica e imprime mensaje

de bienvenida

Genera una señal eléctrica para

activar alguna cerradura

electrónica e imprime mensaje

de bienvenida

Espera a que

se cierre la

puerta

Espera a que

se cierre la

puerta

Espera a que

se cierre la

puerta

Termina

Interrupción

no

si

no

no

si

si

Figura 4.15 Diagrama de flujo, identificación del usuario tecnología RFID

Page 101: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

92

4.5. Interfaz gráfica desarrollada en panel táctil En el presente trabajo de investigación se desarrolla un HMI (del inglés Human Machine Interface) en una pantalla táctil (touchscreen) para controlar las luces de una casa habitación, el panel táctil PIC18FJ contiene un microcontrolador PIC18F87J50, una pantalla a colores de 320x240 pixeles también denominado GLCD (del inglés Graphic Liquid Crystal Display), un panel táctil, ranura para tarjeta microSD, un reproductor de audio mp3, comunicación USB, un acelerómetro y un bootloader que permite programar el PIC18FJ desde el software mikroBootloader USB HID v1.50 mediante su puerto USB, esto para poder prescindir de un programador externo. Dicho microcontrolador, controla los gráficos del GLCD, el prototipo de la casa para el cual se desarrolló la interfaz gráfica en el panel táctil contiene dos plantas, planta baja y planta alta. En las imágenes siguientes se puede apreciar el interfaz de cada piso.

Figura 4.16 Interfaz Gráfica del piso 1 que se ejecuta en pantalla táctil

El interfaz está conformado por dos pantallas:

Page 102: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

93

Pantalla Uno: es la que se ejecuta cuando se energiza la pantalla tactil, cuenta con cinco botones con la etiqueta de “OFF” para controlar las luces correspondientes del primer piso, es decir, si el usuario aplica un toque sobre la superficie de algun boton, el microcontrolador PIC18F87J50 activa uno de sus puertos para activar la luz correspondiente, también contiene una imagen que muestra la estructura en dos dimensiones de la planta baja, si el usuario aplica un toque sobre cualquier punto de la imagen el microcontrolador PIC18F87J50 muestra la pantalla dos (ver figura 4.16). Pantalla Dos: si se tiene un tacto sobre la superficie de la pantalla uno, automaticamente se muestra la pantalla dos, esta pantalla contiene cinco botones con la etiqueta de “OFF” para controlar las correspondientes luces también contiene una imagen que muestra la estructura en dos dimensiones de la planta alta, si el usuario aplica un toque sobre cualquier punto de la imagen el microcontrolador PIC18F87J50 muestra la pantalla uno (ver figura 4.17).

Figura 4.17 Interfaz Gráfica del piso 2 que se ejecuta en pantalla táctil

Page 103: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

94

La programación de la pantalla táctil PIC18FJ se lleva a cabo mediante dos softwares:

Visual TFT v2.71.

mikroC PRO for PIC v5.61. En Visual TFT v2.71 se desarrolla la parte visual, es decir, en un componente llamado “Image” se agregó un diagrama en dos dimensiones de la casa, donde se muestra la ubicación de las habitaciones y sobre ese componente se agregaron cinco componentes del mismo tipo con nombre “Button”, para controlar las luces que se encuentran en ese piso o planta.

Figura 4.18 Paleta de Componentes de Visual TFT

Visual TFT cuenta con una paleta de 12 componentes, para la aplicación del presente trabajo se utilizaron dos componentes, cada componente tiene diferentes propiedades y es necesario variar ciertas propiedades para tener control de todos los componentes utilizados al momento de realizar la programación. En la figura 4.19 se puede observar las propiedades del componente “Image” y las propiedades que se modificaron son:

Page 104: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

95

Name

Picture Name

OnClick

A Name se asignó la etiqueta de “Planta_Alta”, en Picture Name se adjunto la imagen con el diagrama en dos dimensiones de la planta alta de la casa y en OnClick se le coloco la etiqueta de “go_piso1” esta última propiedad OnClick es la que se emplea en la programación, cuando se compila el programa, Visual TFT crea una carpeta en donde está corriendo el proyecto y genera un código en C que debe ser ejecutado en mikroC PRO for PIC, dentro del código en C se crea automáticamente una función llamada “go_Piso1”, de modo que cuando el usuario de un click sobre la superficie de la imagen, el microcontrolador PIC18F87J50 ejecuta el código que se encuentra dentro de esa función.

Figura 4.19 Propiedades del componente “Image”

Las propiedades que se cambian en el componente “Button” son tres:

Name

Caption

OnClick En la propiedad Name del componente “Button” se le asigna la etiqueta Button_LED2, este es el nombre con el que se identifica el botón al momento que se realiza la programación.

Page 105: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

96

Figura 4.20 Propiedad Name del componente “Button”

En la propiedad caption se le asigna la etiqueta OFF, que es el texto que aparecerá por default en el botón y es el estado en el que se encuentra el foco que se está controlando, en la figura 4.17 se puede observar que OFF es la etiqueta que tienen todos los botones, conforme se pulsen, la propiedad de caption cambiara a ON y activara o desactivara la salida correspondiente para el control de luces.

Figura 4.21 Propiedad Caption del componente “Button”

A la propiedad OnClick se le asigna la etiqueta Toggle_LED2, dicha etiqueta es la función que visual TFT creara dentro del archivo en C, el código que se encuentre dentro de esa función es el que el microcontrolador PIC18F87J50 ejecutara, en el diagrama de flujo de la figura 4.23 se describe el evento de un botón, el evento ocurre cuando hay un tacto en la superficie del botón, inicia preguntando si el pin del puerto está activado o desactivado, al inicio de la ejecución de la aplicación se encuentra desactivado por tanto si ha habido un tacto sobre su superficie, activa el pin del puerto correspondiente y cambia la propiedad caption del botón. Para los 10 botones que se encuentran en la aplicación se siguió el mismo diagrama de flujo, solo activando y desactivando puertos diferentes.

Figura 4.22 Propiedad OnClick del componente “Button”

Page 106: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

97

Evento

Toggle_LED2

¿Esta Activado

el pin 2 del

puerto E?

Activa la salida

del puerto E

Desactiva la salida

del puerto E

Termina evento

Cambia etiqueta

Button_LED2.Caption=”OFF”

Cambia etiqueta

Button_LED2.Caption=”ON”

no

si

Figura 4.23 Diagrama de flujo del evento Toggle_LED2 En el diagrama de flujo de la figura 4.24 se describe el comportamiento del evento que ocurre cuando se toca un punto de la superficie de la pantalla uno.

Page 107: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

98

Evento

Planta Alta

¿Se pulso la

superficie del

panel táctil?

Muestra el interfaz de la planta alta

Termina evento

no

si

Figura 4.24 Diagrama de flujo del evento Planta alta

En el programa se utilizaron dos componentes del tipo “Image” con las siguientes propiedades: Interfaz de la planta baja

Name con Planta_Baja

Picture Name se adjunta la imagen del diagrama en 2D de la planta baja

OnClick con go_piso2

Page 108: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

99

Interfaz de la planta alta

Name con Planta_Alta

Picture Name se adjunta la imagen del diagrama en 2D de la planta alta

OnClick con go_piso1 También se utilizaron diez componentes del tipo “Button” con las siguientes propiedades: Name

Button_LED1

Button_LED2

Button_LED3

Button_LED4

Button_LED5

Button_LED6

Button_LED7

Button_LED8

Button_LED9

Button_LED10 Caption Todos con la etiqueta OFF OnClick

Page 109: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

100

Toggle_LED1

Toggle_LED2

Toggle_LED3

Toggle_LED4

Toggle_LED5

Toggle_LED6

Toggle_LED7

Toggle_LED8

Toggle_LED9

Toggle_LED10 El PIC18FJ cuenta con nueve puertos de entrada y salida: El Puerto A con 3 líneas, pines RA2, RA3 y RA4. El Puerto B con 6 líneas, pines RB0, RB1, RB2, RB3, RB6 y RB7. El Puerto C con 7 líneas, pines RC0, RC1, RC3, RC4, RC5, RC6 y RC7. El Puerto D con 2 líneas, pines RD5 y RD6. El Puerto E con 7 líneas, pines RE1, RE2, RE3, RE4, RE5, RE6 y RE7 El Puerto F con 3 líneas, pines RF2, RF5 y RF6. El Puerto G con 5 líneas, pines RG0, RG1, RG2, RG3 y RG4. El Puerto H con 2 líneas, pines RH4 y RH6. El Puerto J con 6 líneas, pines RJ0, RJ1, RJ2, RJ3, RJ4 y RJ5.

Page 110: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

101

Se configuro el puerto E y puerto G como salidas de los cuales cinco pines de cada puerto están destinados a controlar las luces de cada planta, en el diagrama de flujo de la figura 4.25 se describe la programación del programa principal, al energizar el PIC18FJ se configuran Puerto E y G como salidas y se pone en espera a que ocurra algún evento ya sea que se pulse algún botón de la planta baja o que se pulse algún punto de la imagen que muestra el diagrama en dos dimensiones de la planta baja.

Inicio

Configuración de

puertos E/S

Espera a que se

presente un

evento

Figura 4.25 Diagrama de flujo de la configuración principal

Se agrega en anexo A5 el código de la programación en lenguaje C que se desarrolló para esta aplicación.

Page 111: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

102

4.6. Tarjeta de adquisición de datos con microcontroladores PIC

Figura 4.26 Diagrama general de la DAQ.

La tarjeta de adquisición de datos o DAQ (Data acquisition) desarrollada con microcontroladores contiene:

8 entradas analógicas.

8 entradas digitales.

8 salidas digitales. Tiene como principal objetivo realizar el control de 8 salidas digitales, la adquisición de 8 señales analógicas y 8 saldas digitales mediante una interfaz gráfica desarrollada en LabVIEW, teniendo la posibilidad de poder implementarla en múltiples aplicaciones de una manera sencilla, por ejemplo, aplicaciones donde se encuentren involucrados sensores que den una respuesta analógica o digital y se requiera manipular actuadores, a continuación se muestra en diagramas de flujo el algoritmo de programación que se empleó.

Page 112: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

103

Inicio

Declaración de variables

Configuración de puertos E/S

Configuración del módulo ADC

Configuración del puerto Rs-232, Activando interrupción cuando allá

una recepción de datos

Realiza lectura de 8 entradas analógicas y se almacenan en variables

Realiza lectura de 8 entradas digitales y se almacenan en variables

Envía el estado de entradas analógicas, digitales y un 13 decimal vía Rs-232, el 13

la PC lo interpreta como un enter

Figura 4.27 Diagrama de flujo, programación de la DAQ

Page 113: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

104

Declaración de variables El microcontrolador tiene la tarea de leer el estado de ocho entradas analógicas y de ocho entradas digitales, almacenarlas en variables y enviarlas vía Bluetooth bajo la norma Rs-232 a un computador donde se encuentra ubicada la interfaz gráfica, a cada una entrada digital se le asigna una variable de un byte ya que solo puede tener dos estados cero o uno mientras que por cada entrada analógicas se le asigna tres variables de un byte debido a que el estado de las entradas analógicas está comprendido entre 0 y 255 por tanto en el programa del microcontrolador se declaran 32 variables, estas variables son cargadas con el estado que tiene cada entrada respectivamente. Configuración de Puertos I/O Se configuran los pines RA0, RA1, RA2, RA3, RA5, RE0, RE1 y RE2 como entradas analógicas. Se configuran los pines RB0, RB1, RB2, RB3, RB4, RB5, RB6 y RB7 como entradas digitales. Se configuran los pines RD0, RD1, RD2, RD3, RD4, RD5, RD6 y RD7 como salidas digitales. Y por último se configura RA4 como entrada digital. Configuración del Módulo ADC En esta parte del programa se realiza la configuración de los registros correspondientes al módulo ADC como se explicó en el presente capitulo sección 4.1, se agrega código de programación en lenguaje ensamblador en anexo A1. Configuración del puerto Serial Rs-232 En esta parte del programa se realiza la configuración de los registros correspondientes al módulo EUSART como se explicó en el presente capitulo

Page 114: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

105

sección 4.1, se agrega código de programación en lenguaje ensamblador en anexo A3. Realiza lectura de las ocho entradas analógicas y ocho entradas digitales. Esta etapa consta de estar actualizando el valor de las 32 variables en base a las nuevas lecturas de las entradas digitales y analógicas, cada variable es de 1 byte, es decir, 8 bits por tanto los valores son guardados en binario natural. El computador donde se encuentra la interfaz gráfica opera con el código ASCII (del inglés American Standard Code for Information Interchange) mientras que el microcontrolador en código binario por tanto es necesario realizar una conversión a BCD (Binary-Coded Decimal). La conversión de un numero expresado en binario natural o formato BCD es una de las operaciones más utilizadas en los programas con microcontroladores, por ejemplo el valor 123 expresado en binario natural seria 01111011, para expresarlo en BCD hay que separar las centenas, decenas y unidades quedando 0001 0010 0011 por esta razón para almacenar el estado de una entrada analógica es necesario tres variables, el valor de una entrada analógica va de 0 a 255, se agrega código de programación en lenguaje ensamblador en anexo A3. En la figura 4.28 se puede apreciar la parte de software de la tarjeta de adquisición de datos, esta interfaz gráfica está desarrollada en LabVIEW, contiene ocho LED’s con las etiquetas INPUT_1 a INPUT_8 que indican el estado de las ochos entradas digitales, se tiene ocho termómetros con etiquetas de Analog 1 a Analog 8 que indican el estado de las ocho entradas analógicas y en la parte de abajo cuenta con 16 botones para controlar las ocho salidas digitales de la tarjeta de adquisición de datos, de ON_1 a ON_8 para activar correspondientemente las salidasy de OFF_1 a OFF_8 para desactivarlas. Mediante un String control se introduce un password, si es correcto en otro String control muestra el estado del sistema ya sea ON = Encendido u OFF = Apagado y se activa el LED que se encuentra en la parte superior del interfaz, para hacer uso de la tarjeta de adquisición de datos es necesario ejecutar esta aplicación y conectar la parte de hardware vía Bluetooth a un computador, la comunicación se puede realizar por diferentes puertos seriales del computador denominados COM1, COM2, COM3 etc. Dependiendo del número de puertos seriales que tenga el computador, para seleccionar el puerto donde se desea comunicar el software con el hardware.

Page 115: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

106

Figura 4.28 Interfaz gráfica de la tarjeta de adquisición de datos

Page 116: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

107

Interrupción

Recibe el dato y lo guarda en una variable

X=A?

X=B?

X=C?

X=D?

X=E?

X=F?

X=G?

X=H?

Activa Salida O:0

Activa Salida O:1

Activa Salida O:2

Activa Salida O:3

Activa Salida O:4

Activa Salida O:5

Activa Salida O:6

Activa Salida O:7

Parte DosTermina la

Interrupción

no

si

si

si

si

si

si

si

si

no

no

no

no

no

no

no

Figura 4.29 Diagrama de flujo 1, interrupción en el PIC16F887

Page 117: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

108

Parte Dos

X=I?

X=J?

X=K?

X=L?

X=M?

X=N?

X=O?

X=P?

Desactiva Salida O:0

Desactiva Salida O:1

Desactiva Salida O:2

Desactiva Salida O:3

Desactiva Salida O:4

Desactiva Salida O:5

Desactiva Salida O:6

Desactiva Salida O:7

Termina la Interrupción

Termina la Interrupción

no

si

si

si

si

si

si

si

si

no

no

no

no

no

no

no

Figura 4.30 Diagrama de flujo 2, interrupción en el PIC16F887

Page 118: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

109

Como se puede observar en los diagramas de flujo, la programación del microcontrolador contiene una interrupción, el microcontrolador está en constante comunicación con el computador enviando el estado de las entradas analógicas y digitales al interfaz, si se deseara activar una salida digital de las 8 que contiene, al momento que se presiona un botón, LabVIEW envía por el puerto serial un carácter, por ejemplo: si se pulsa el botón ON_1 LabVIEW envía una letra “A” el microcontrolador recibe el dato, es interrumpido, es decir, deja de enviar el estado de las entradas analógicas y digitales y atiende la interrupción dentro de la interrupción el microcontrolador realiza una serie de comparaciones para saber qué carácter entro y en base a eso realizar una acción como activar una salida o desactivarla y al momento en que termina de atender la interrupción, el microcontrolador continua enviando al computador el estado de las entradas analógicas y digitales, se puede decir que todas estas funciones las realiza en tiempo real debido a que el tiempo que tarda en atender la interrupción está en el orden de los micro segundos. 4.6.1. Comunicación serie en LabVIEW Usando VISA en LabVIEW VISA es una API (del inglés Application Programming Interface) deE /S estándarpara la programación deinstrumentación. VersatilidaddeVISA VISA puede controlar GPIB (del inglés General-Purpose Instrumentation Bus), serial, USB del inglés Universal Serial Bus), Ethernet, PXI, VXIoinstrumentos, independientemente del protocolo que se utilice, VISA es el API ideal para controlar el puerto serial de manera que el usuario no tenga que aprender el protocolo de comunicación que se esté utilizando. A continuación se describen las principales funciones de los componentes que se requiere que sean conectados entre sí para obtener una comunicación serial a 9600 baudios con el microcontrolador que gobierna el funcionamiento de la tarjeta de adquisición de datos.

Page 119: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

110

Figura 4.31 Programación a bloques del Interfaz gráfica de la tarjeta de adquisición de datos

Page 120: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

111

Figura 4.32 VISA Configuración de puerto serial

VISA resource name específica el puerto COM con el que se desea establecer una comunicación también específicala sesióny clase. VISA resource name out es una copia del nombre de VISA resource name de las funciones que VISA devuelve. Error out Contiene información sobre el error, esta salida proporciona el error estándar de la funcionalidad.

Figura 4.33 Escritura en VISA

VISA resource name específica el recurso a ser abierto, es decir, el puerto COM donde se van a escribirlos datos también específicala

sesióny clase. Write buffer Contiene los datos que se van a enviar al dispositivo mediante el puerto serial.

Error in (no error) describe las condiciones de error que se producen al realizar el emparejamiento entre los dispositivos. VISA resourcenameout es una copia del nombre de VISA resource name de las funciones que VISA devuelve. Error out Contiene información sobre el error, esta salida proporciona el error estándar de la funcionalidad.

Page 121: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

112

Figura 4.34 Nodo de propiedad

Reference es el número de referencia asociado con el objeto para el que desea establecer u obtener propiedades.

Error in (no error) describe las condiciones de error que se producen al realizar el emparejamiento entre los dispositivos.

Reference out regresa referencias asociadas sin cambios. Error out Contiene información sobre el error, esta salida proporciona el error estándar de la funcionalidad. Property 1 son ejemplos de propiedades que se desean activar, por ejemplo, numero de bytes que se desean escribir o leer

Figura 4.35 Lectura en VISA

VISA resource name específica el recurso a ser abierto, es decir, el puerto COM donde se van a leer los datos también específica la sesión y

clase.

Error in (no error) describe las condiciones de error que se producen al realizar el emparejamiento entre los dispositivos. VISA resource name out es una copia del nombre de VISA resource name de las funciones que VISA devuelve. Read buffer Contiene los datos que llegan del dispositivo mediante el puerto serial. Error out Contiene información sobre el error, esta salida proporciona el error estándar de la funcionalidad.

Page 122: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

113

Figura 4.36 Limpieza y clausura del buffer

VISA resourcename específica el recurso a ser abierto, es decir, el puerto COM con el que se está estableciendo comunicación también

específica la sesión y clase.

Error in (no error) describe las condiciones de error que se producen al realizar el emparejamiento entre los dispositivos. VISA resource name out es una copia del nombre de VISA resource name de las funciones que VISA devuelve. Error out Contiene información sobre el error, esta salida proporciona el error estándar de la funcionalidad.

Figura 4.37 Subconjuntos de una cadena de caracteres

String es la cadena de caracteres que entra.

Offset es la posición de partida y debe ser numérico, su valor por default es cero, es decir no so se cablea a algún valor numérico. Length longitud de la cadena de caracteres que se va a filtrar, si no se cablea a un valor numérico, tomara el resto de la cadena. Substring es un fragmento de la cadena de caracteres que entro, dependiendo del valor numérico que se le allá asignado a Offset y Length.

Figura 4.38 Conversión de cadena de caracteres a valor numérico

Page 123: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

114

String cadena de caracteres para convertir. Number el resultado de la cadena de caracteres en valor numérico.

Ciclo While El ciclo while es muy común en los lenguajes de programación de alto nivel, en LabVIEW permite mantener en constante ejecución la programación a bloques que se encuentra en su interior.

Figura 4.39 Ciclo While

Estructura case Estructura case tiene uno o más subdiagramas o casos, exactamente uno de los cuales se ejecuta cuando el programa está en ejecución. El valor del terminal cableado determina el caso a ejecutar, este puede ser booleano, cadena de caracteres, un entero o un tipo enumerado.

Figura 4.40 Estructura Case

En la siguiente imagen se observan los componentes utilizados en la interfaz para conocer el estado de las entradas analógicas y digitales también los Push botón que nos sirven para activar o desactivar alguna entrada de la tarjeta de adquisición de datos.

Page 124: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

115

Figura 4.41 Termómetro, Push botón y LED indicador

La programación a bloques de la interfaz gráfica en LabVIEW se puede observar en la figura 4.31 dicha programación se divide en 4 partes que a continuación se describen:

Primera parte: Puerto serial Rs-232.

Segunda parte: Entradas Analógicas.

Tercera parte: Entradas Digitales.

Cuarta parte: Salidas Digitales. Primera parte: Configuración del puerto serial Rs-232 en LabVIEW Se agrega un bloque de VISA y se agrega un controlador en VISA resource name que servirá para seleccionar el puerto COM donde se desea enlazar una comunicación con la parte de hardware. Cuando el microcontrolador envía el estado de las entradas analógicas llegan a la PC por medio del bus “Lectura de Datos” para la lectura de daros se agrega un control en byte count para indicar cuantos bytes o paquetes de cuantos bytes llegaran, mientras que por el bus “Escritura de datos” LabVIEW envía al microcontrolador 16 diferentes caracteres dependiendo que botón se pulse, esto para el control de las salidas digitales.

Page 125: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

116

Figura 4.42 Programación a bloques del puerto serial en LabVIEW

Figura 4.43 Panel frontal, selección del puerto COM

El microcontrolador envía 34 bytes, en la figura 4.44 se puede ver que los primeros 24 bytes subrayados en rojo corresponden a las entradas analógicas, después un espacio como carácter número 25, después manda 8 bytes subrayados en azul que corresponden al estado de las 8 entradas digitales y al finalizar un enter o 13 decimal, esta cadena de 34 caracteres que llega al bus “Lectura de datos” posteriormente es desfragmentarla y varias cadenas y enviarlas a sus respectivos indicadores.

Figura 4.44 Panel frontal, Entrada de datos

Page 126: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

117

Segunda parte: Entradas Analógicas

Figura 4.45 Programación a bloques, Entradas analógicas

En el Bus “Lectura de Datos” llegan paquetes de 34 bytes dentro de estos se encuentra el estado de las entradas analógicas y las entradas digitales, los datos llegan a un componente subconjunto de cadena de caracteres para tomar solo 3 caracteres por entrada analógica y posteriormente convertirlos de cadena de tres caracteres a un dato numérico y finalmente mostrar el valor en un termómetro, esto para cada una de las ocho entradas analógicas.

Page 127: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

118

Figura 4.46 Panel frontal, Entradas analógicas Tercera parte: Entradas digitales En el Bus “Lectura de Datos” llegan paquetes de 34 bytes dentro de estos se encuentra el estado de las entradas analógicas y las entradas digitales, los datos llegan a un componente subconjunto de cadena de caracteres para tomar solo un carácter por entrada digital y posteriormente convertirlos de cadena de caracteres a un dato numérico, realizar una comparación para saber si la entrada digital del microcontrolador está en uno o en cero lógico y finalmente mostrar el valor en un LED, esto para cada una de las ocho entradas digitales.

Page 128: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

119

Figura 4.47 Programación a bloques, Entradas digitales

Figura 4.48 Panel frontal, Entradas digitales

Page 129: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

120

Cuarta parte: Salidas digitales Para esta última parte se encuentran anidados 16 estructuras case, cada estructura contiene dos casos, true y false que se evalúan mediante un botón, si el botón esta pulsado ejecuta el código que se encuentra dentro de true, si el botón no está pulsado se ejecuta la programación a bloques que se encuentra en false, en false se van anidando las estructuras mientras que si se cumple la condición, el botón esta pulsado se envía un carácter, los caracteres enviados son de la “A” a la “P”, estos caracteres los recibe el microcontrolador dependiendo que botón se halla pulsado.

Figura 4.49 Programación a bloques, Salidas digitales

Figura 4.50 Panel frontal, Salidas digitales

Page 130: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

121

Capítulo 5

Resultados experimentales

Page 131: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

122

5. Resultados experimentales Al obtener los conocimientos teóricos del funcionamiento de cada sistema que se implementa en el prototipo y su estructura electrónica se parte a la descripción de cada sistema físicamente.

Figura 5.1 Prototipo de una casa habitación En el presente trabajo existes tres sistemas que rigen el prototipo, se desglosara cada uno de ellos y se mencionara la función que cumple dentro de la casa habitación.

5.1. RFID (radio frequency identification), Control de acceso La tecnología RFID se contempló para realizar el acceso a la casa mediante uno o varios códigos los cuales se otorgaran a los usuarios a través de tarjetas o tag’s con las cuales se tendrá acceso a la casa (figura 5.2).

Page 132: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

123

Figura 5.2 Tarjetas y Tag´s para RFID

El método de acceso se basa en lo siguiente:

I. Al presentar la tarjeta al lector RFID que se encuentra en la entrada

principal y en la entrada de la cochera el microcontrolador PIC16F877

evalúa el código que contiene la tarjeta o tag.

Figura 5.3 Modulo de RFID

II. El microcontrolador PIC16F877 verifica a través de una comparación con

los códigos asignados por default en el programa del mismo si el código

presentado es el correcto, si esta cumple el acceso es permitido

desplegando el siguiente mensaje en la LCD:

Page 133: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

124

Figura 5.4 LCD LM016L

III. Si una persona que no habita en la casa y quiere tener acceso presentando

una tarjeta con un código que no está almacenado en el microcontrolador

PIC16F877 el acceso es denegado y al igual genera un mensaje de usuario

incorrecto indicando así que no se abrirán las puertas de la casa.

Figura 5.5 LCD LM016L En el acceso principal se cuenta con una cerradura electrónica la cual al ser energizada retrocede su vástago y se abre la puerta, al detectar el microcontrolador PIC16F877 que el código es correcto manda un 1 lógico a un pin del puerto configurado como salidas en el cual está conectada la cerradura, al

Page 134: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

125

cerrar la puerta la cerradura se desenergiza y su vástago vuelve a su posición realizando la función de candado sobre la puerta.

Figura 5.6 Estado de la cerradura

Figura 5.7 Puerta de la casa del prototipo Indicaciones de componentes electrónicos en la entrada de la casa.

Page 135: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

126

Figura 5.8 Vista aérea del acceso principal

Figura 5.9 Vista frontal del acceso principal

Figura 5.10 Ubicación del módulo RFID

En la Figura 5.8 Vista aérea del acceso principal se aprecia el circuito electrónico para el control de acceso y a continuación se muestra su diseño final.

Page 136: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

127

Figura 5.11 Circuito de control En el acceso a la cochera se cuenta con un motor de CD (Corriente Directa). La función del motor es para subir y bajar la cortina que se tiene como puerta, al pasar la tarjeta frente al lector de RFID y si el código de acceso es el correcto se abre la cortina de la cochera, ya dentro de ella se cierra la cortina con un pulsador.

Figura 5.12 Cortina Automática

Page 137: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

128

En la siguiente imagen se muestra el circuito para controlar la apertura y cierre de la cortina automática.

Figura 5.13 Circuito de control para la cochera

5.2. Tecnología Touchscreen, desarrollando un HMI en un panel táctil

La HMI se desarrolló y se implementó para realizar un entorno más amigable con el usuario. La pantalla GLCD (Graphic Liquid Crystal Display) PIC18FJ presenta una gran versatilidad para el manejo del usuario además de ser compacta. La función primordial de esta HMI es tener un fácil acceso a la luminaria de la casa, con lo cual el usuario podrá encender o apagar cualquier lámpara de cualquier área de la casa.

Page 138: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

129

Se instaló a un costado del acceso principal en el interior de la casa como se muestra en la figura 5.14, esto para que el usuario al accesar a la casa encienda la luminaria de la misma.

Figura 5.14 Ubicación de la pantalla táctil

El entorno se realiza mediante Visual TFT v2.71, este permite crear Interfaces graficas de usuario de forma fácil y rápida. El prototipo consta de dos pisos en los cuales en cada área se encuentra una lámpara, cada lámpara en la GLCD tiene un botón en forma gráfica el cual tiene 2 estados: on y off. A continuación se muestra las pantallas de la HMI las cuales presentan en forma virtual las áreas de la casa.

Page 139: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

130

Figura 5.15 Interfaz de la planta baja

En la figura 5.15 aparecen 2 tipos de simbología, cada una cumple a función de acuerdo a la tabla 5.1:

Tabla 5.1 Descripción de símbolos

Simbolo Descripción

Indicador luminoso. Indica en que parte del prototipo está instalado un led el cual su objetivo es ejemplificar un tipo de luminaria.

Botón pulsador En estado ON indica que al pulsarlo se encenderá el led.

Botón pulsador En estado OFF indica que al pulsarlo se apagara el led.

Page 140: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

131

La forma de realizar acciones de control de luminaria es sencilla y fácil para el usuario ya que solo se necesita pulsar en los recuadros que indican un botón con los cuales se pueden encender y apagar los leds de la planta baja. A continuación se muestra la GLCD físicamente y con la interfaz para el control de luminaria de la planta baja (Figura 5.16).

Figura 5.16 GLCD físicamente Funcionamiento.

I. Al pulsar ON en la GLCD se enciende el led del prototipo en el area

indicada en la pantalla (Figura 5.17).

Page 141: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

132

Figura 5.17 Funcionamiento de la HMI Nota: Al pulsar el boton ON automaticamente se prende el led y cambia la leyeda del boton a OFF para que indique que al siguiente pulso se apague el led.

Page 142: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

133

El siguiente punto a considerar es la planta alta en donde se desplega otra pantalla (Figura 5.18) con un grafico diferente para diferenciar los dos pisos.

Figura 5.18 Interfaz de la planta alta

La simbología es la misma que en la planta baja, solo se realiza un cambio de color en la pantalla para que se diferencie en que piso se va a realizar el control de luminaria. En la siguiente imagen se muestra la GLCD con la interfaz para la planta alta (Figura 5.19).

Page 143: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

134

Figura 5.19 GLCD físicamente planta alta)

El funcionamiento se lleva a cabo igualmente como en la planta baja al pulsar ON la GLCD enciende el led del prototipo en el area indicada en la pantalla.

Figura 5.20 Funcionamiento de la HMI planta alta

Nota: Al pulsar el boton ON automaticamente se prende el led y cambia la leyeda del boton a OFF para que indique que al siguiente pulso se apague el led.

Page 144: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

135

5.3. Diseño de una DAQ (Adquisición de datos) con Microcontroladores fabricados por Microchip incorporando comunicación inalámbrica Bluetooth Se pensó en diseñar una DAQ con un microcontrolador en este caso el PIC16F877 para que si el usuario quiere implementar sistemas de medición tales como monitoreo de temperatura, sensores de humo o sistemas de alarmas solo se acoplen a la DAQ. Como se mencionó una DAQ es una tarjeta que adquiere datos y que actúa conforme a ellos. Al crear una DAQ se pensó en hacerla compacta y más funcional. De acuerdo a la comunicación se establece mediante bluetooth adquiriendo datos desde la interfaz creada en LabVIEW (Figura 5.21).

Figura 5.21 Bluetooth físicamente conectado a la DAQ

En la computadora se tiene el software de LabVIEW en el cual se creó la interfaz que se muestra en la Figura 5.124 para visualizar el estado de las entradas tanto analógicas como digitales y las salidas digitales. Estos valores son enviados desde la DAQ a LabVIEW mediante el módulo de Bluetooth generando así una comunicación remota prescindiendo del cableado

Page 145: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

136

En la Figura 5.22 se muestra el entorno de LabVIEW en el cual se definen:

- INPUT: Entradas

- Analog: Entradas analógicas

- ON Y OFF: Botones para activar y desactivar las salidas digitales.

Figura 5.22 Interfaz en LabVIEW

Como se muestra en la Figura 5.20 se cuentan con:

- 8 entradas analógicas dispuestas para conectar cualquier tipo de sensor

que genere señales analógicas (0-5 VCD)

- 8 entradas digitales, en las cuelas se pueden conectar interruptores,

botones o pulsadores para actuar sobre un sistemas (0-5 VCD).

- 8 salidas digitales en las cuales pueden controlar actuadores, como por

ejemplo un motor (0-5 VCD).

Page 146: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

137

Bluetooth

PIC16F877

Figura 5.23 DAQ físicamente

Para comprobar el funcionamiento de la DAQ se verificaron las salidas y entradas tanto analógicas y digitales.

Las entradas analógicas se simularon a través de potenciómetros con los

cuales se puede regular el voltaje de entrada.

Las entradas digitales se simulan con botones pulsadores.

Las salidas digitales con leds.

En la figura 5.22 se muestra el circuito de simulación conectado a la DAQ.

Figura 5.24 DAQ conectada al circuito de simulación

Page 147: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

138

A continuación se muestra el funcionamiento de la DAQ con la PC en la cual se encuentra la interfaz realizada en LabVIEW. Desarrollo:

1) Primero asignaremos una etiqueta a cada componente.

Figura 5.25 Potenciómetros para entradas analógicos

Nota: P1_A1 indica: P: potenciómetro 1: número de potenciómetro A: entrada analógica 1: Numero de entrada analógica

Figura 5.26 Botones de entradas digitales

Page 148: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

139

Nota: B1_D1 indica:

B: botón pulsador. 1: número de botón pulsador. D: entrada digital 1: Numero de entrada digital

Figura 5.27 Indicador de salidas digitales

Nota: L1_O1 indica: L: Led indicador. 1: número de Led indicador. O: salida digital 1: Numero de salida digital

2) Simulación

I. Variamos los potenciómetros para observar en la interfaz el

comportamiento del voltaje.

En las siguientes imágenes se observa que se varía los potenciómetros que simulan las señales analógicas físicamente y en la interfaz se observa la variación del voltaje que va desde 0 a 5 volts.

Áreas en proceso de simulación.

Page 149: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

140

Figura 5.28 P1_A1 voltaje gráficamente en alto y bajo nivel

Figura 5.29 P2_A2 voltaje gráficamente en alto y bajo nivel

Figura 5.30 P3_A3 voltaje gráficamente en alto y bajo nivel

Page 150: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

141

Figura 5.31 P3_A3 voltaje gráficamente en alto y bajo nivel En las imágenes se observa que al variar el valor de la resistencia del potenciómetro a través de su perilla el voltaje llega a valores altos si se gira hacia el lado derecho, al cambiar de giro en voltaje cae a valores de voltaje bajo, su variación se muestra en la tabla 5.9.

Tabla 5.2 Variaciones de voltaje

Se varia de 0 a 5 volts

Se varia de 5 a 0 volts

Este procedimiento de verificación se emplea para todas las entradas analógicas.

II. Para verificar el funcionamiento de las entradas digitales se emplean

botones pulsadores con los cuales solo se obtienen 2 estados: 0 y 1

(ausencia o presencia de voltaje).

Áreas en proceso de simulación.

Page 151: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

142

Figura 5.32 Input 8 Al pulsar B1_D1 en la interfaz se enciende un led el cual muestra que se recibió un 1 lógico o que hay presencia de voltaje, en este caso 5 volts.

Figura 5.33 Input 7

Al pulsar B2_D2 en la interfaz se enciende un led el cual muestra que se recibió un 1 lógico o que hay presencia de voltaje, en este caso 5 volts.

Page 152: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

143

Figura 5.34 Input 6

Al pulsar B3_D3 en la interfaz se enciende un led el cual muestra que se recibió un 1 lógico o que hay presencia de voltaje, en este caso 5 volts.

Figura 5.35 Entrada digital 1

Al pulsar B8_D8 en la interfaz se enciende un led el cual muestra que se recibió un 1 lógico o que hay presencia de voltaje, en este caso 5 volts.

Page 153: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

144

En las imágenes anteriores se observa que al pulsar el botón en nuestro circuito de simulación se enciende el led asignado a la entrada digital correspondiente, su activación se muestra en la tabla 5.3.

Tabla 5.3 Estados de un botón pulsador

- Al pulsar el botón existe presencia de voltaje (5 volts).

- Al dejar de pulsarlo y en estado normal el voltaje es igual a 0

III. Para simular que se puede actuar sobre las salidas digitales se simulo a

través de 2 interruptores:

Tabla 5.4 Botones de simulación de salidas digitales

Botón de encendido.

Botón para apagar.

Para ver el estado de las salidas digitales se implementó una barra de leds, en la cual se observa su estado.

Page 154: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

145

Figura 5.36 Botón simulador de salidas Al cerrar el interruptor ON_1 dando un clic en el icono se enciende el primer led de la barra, esto comprueba que en la primera salida existe voltaje (5 volts) para desenergizar se pulsa el botón de OFF_1.

Figura 5.37 Salidas digitales activadas

Page 155: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

146

En la figura 5.35 se muestra como las 8 salidas digitales de la DAQ se activaron mediante los botones ON, esto para observar que se puede mandar a activar cualquier dispositivo actuador como se mencionó previamente como por ejemplo:

- Una válvula solenoide de aspersores la cual puede ser activada por una

señal analógica de un sensor de humo.

- Un calefactor el cual puede ser activado por un sensor de temperatura

cuando este detecta bajas temperaturas.

- Etc.

Conclusiones

Con el desarrollo del presente trabajo se verifica el correcto funcionamiento de los dispositivos electrónicos incorporados a, la tecnología RFID, tecnología Touchscreen y a la tarjeta de adquisición de datos inalámbrica. También se validan los algoritmos de programación, de los microcontroladores, de la interfaz gráfica desarrollada en una pantalla a colores con un panel táctil y de la etapa de software de la tarjeta de adquisición de datos, la interfaz gráfica desarrollada en LabVIEW. Es importante mencionar que el empleo de estas tecnologías es muy amplio y aunque en el presente trabajo se utilizan en el control y automatización de dispositivos electrónicos de una vivienda; pueden ser empleadas en diversas aplicaciones o procesos de control y automatización.

Page 156: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

147

Bibliografía Libros: [1] Enrique Palacios, Fernando Remiro, Lucas J. López “Microcontrolador PIC16F84 Desarrollo De Proyectos”, Tercera Edición, Editorial: Alfaomega. [2] José Rafael Lajara Vizcaíno, José Pelegri Sebastiá “LabVIEW Entorno Gráfico de Programación”, Segunda Edición, Editorial: Alfaomega. [3] José M. Angulo Usategui, Ignacio Angulo Martínez “Microcontroladores PIC16F84 Diseño Practico de Aplicaciones” Tercer Edición, MC GRAW HILL. [4] José Ignacio Vega Luna, Gerardo Salgado Guzmán, Mario Alberto Lagos Acosta, Víctor Noé Tapia Vargas “Notas del PIC16F84 para la UEA” Universidad Autónoma Metropolitana. [5] Luis Miguel Godínez González “RFID oportunidades y riesgos, su aplicación práctica”, Alfaomega Tesis: [6] Calderón Juárez Leticia, Camacho Rebollar Perla Verania, Pioquinto Ramírez Juan Manuel, “Tecnología Bluetooth” 2006 ESIME Culhuacán. [7].- Control de acceso e iluminación de un estacionamiento habitacional. 2006, México DF. ESIME Zacatenco. Artículos: [8].- Design and development of an automatic small-scale house for teaching domotics. Felipe Mateos, Victor M Gonzdlez, Reyes Poo, Marta Garcia and Rosana Olaiz. October 10 - 13,2001 reno, nv 31” aseei/ieee frontiers in education conference [9].- Remote and Mobile Control in Domotics F. Sandu*1, M. Romanca*1, A. Nedelcu1, P. Borza*1, R. Dimova*2 1Transilvania University / Department of Electronics and Computers, Brasov, Romania Technical University of Varna / Department of Communication Engineering, Varna, Bulgaria [10] Design of a portable touchscreen interface for powerline domotic Systems. Elena Mainardi. 4th IEEE Conference on Automation Science and Engineering Key Bridge Marriott, Washington DC, US August 23-26, 2008

Page 157: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

148

[11] Visir, a simulation software for domotic s installations to improve laboratory training victor m. Gonzalez, Felipe Mateos, Antonio m. l6pez3, josb m. enguita4, marta garcia' and rosana olaiz'. 31" asee/ieee frontiers in education conference [12] Object Oriented Framework for Remote Control and Domotics. Alfredo Milani. Comparetti SpeedFan Project Leader and Developer. SOKNO S.R.L. Folco Fioretti and Paola Pierleoni Dipartimento di Ingegneria Biomedica, Elettronica e Telecomunicazioni Università Politecnica delle Marche [13] Authentication and Lightweight Cryptography in Low Cost Rfid Hoopad Mobahat LuLea University of Technology –Sweden International University of Chabahar – Iran [14] A Study for Optimizing the Reading rate of RFID Tagged Cartons in Palletizing Process Chiao-Tzu Huang*, Li-Wen Lo, Wei-ling Wang, Hsin-Lin Chen Department of Industrial Engineering and Management, National Chin-Yi University of Technology, Taichung, Taiwan 4110 [15] Mobile Platform for Networked RFID Applications Donggeon Lee, Seongyun Kim, and Howon Kim Department of Computer Engineering Pusan National University Busan, Republic of Korea [16] Characterization of RFID Strap Using Single-Ended Probe Sung-Lin Chen, Student Member, IEEE, and Ken-Huang Lin, Member, IEEE Manuales, Hojas de Datos: [17] Microchip, Datasheet PIC16f882/883/884/886/887 Microchip products meet the specification contained in their particular Microchip Data Sheet. [22] [18] Mcuzone, Bluetooth COM module User Manual. [19] 125K RFID Reader, Datasheet RDM630 Specification. [20] Manual de referencia Display LCD 16x2 [21] mikroMedia for PIC18FJ User Manual [23]

Page 158: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

149

Internet: [22] http://www.microchip.com/ [23] http://www.mikroe.com/

Page 159: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

150

Anexos

A1.- Código para la configuración del módulo ADC del microcontrolador PIC16F887 en lenguaje ensamblador. CBLOCK 0x78 DATO_ADC_AN0 DATO_ADC_AN1 ENDC ADC_CONFIG bcf STATUS,RP1 ; BANCO 1 bsf STATUS,RP0 ; BANCO 1 bsf TRISA,0 ; AN0 COMO ENTRADA bsf TRISA,1 ; AN1 COMO ENTRADA bsf STATUS,RP1 ; BANCO 3 bsf STATUS,RP0 ; BANCO 3 movlw b'00000011' ; movwf ANSEL ; AN0 Y AN1 COMO ENTRADA ANALOGICA clrf ANSELH ; SOLO AN0 Y AN1 call BANCO_1 ; BANCO 1 movlw b'00000000' ; JUSTIFICO MI RESULTADO A LA IZQUIERDA ADRESH ADRESL movwf ADCON1 ; Vref(-)= GND -- Vref(+)= VCC bcf STATUS,RP1 ; BANCO 0 bcf STATUS,RP0 ; BANCO 0 return ADC_AN0 bcf STATUS,RP1 ; BANCO 0 bcf STATUS,RP0 ; BANCO 0 movlw b'11000001' ; SELECCIONO -- OSCILADOR RC INTERNO movwf ADCON0 ; SELECCIONO -- A LEER AN0 -- ENCIENDO EL ADC call Retardo_20us return ADC_READ_0 bcf STATUS,RP1 ; BANCO 0 bcf STATUS,RP0 ; BANCO 0 bsf ADCON0,1 ; INICIA CONVERSIÓN WAITING btfsc ADCON0,1 ; ¿TERMINO LA CONVERSIÓN? goto WAITING ; NO ; SI movf ADRESH,W ; W = ADRESH movwf DATO_ADC_AN0 return

Page 160: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

151

A2.- Código para la configuración del módulo LCD 16x2 en lenguaje ensamblador. #DEFINE PIN_E PORTE,0 #DEFINE PIN_RS PORTE,1 #DEFINE PUERTO PORTB ;----- INICIALIZACION DEL LCD A 8 BITS ------- LCD_INICIA bcf STATUS,RP1 ; BANCO 1 bsf STATUS,RP0 ; BANCO 1 bcf PIN_E ; PIN_E COMO SALIDA bcf PIN_RS ; PIN_RS COMO SALIDA bcf STATUS,RP1 ; BANCO 0 bcf STATUS,RP0 ; BANCO 0 bcf PIN_RS ; PIN_RS LO PONEMOS A CERO 0 bcf PIN_E ; PIN_E LO PONEMOS A CERO 0 call Retardo_20ms ; RETARDO DE 20ms movlw b'00111000' call LCD_ENVIA_COMANDO call Retardo_5ms ; RETARDO DE 5ms movlw b'00110000' call LCD_ENVIA_COMANDO call Retardo_200us ; RETARDO DE 200us movlw b'00110000' call LCD_ENVIA_COMANDO call Retardo_5ms ; RETARDO DE 5ms movlw b'00110000' call LCD_ENVIA_COMANDO call Retardo_5ms ; RETARDO DE 5ms ;------------- CONFIGURACION DEL LCD ----------- call FUNCTION_SET call ENTRY_MODE_SET call DISPLAY_CONTROL call CURSOR_AND_DISPLAY_SHIFT call CLEAR_DISPLAY return ; regreso de LCD_INICIA FUNCTION_SET movlw b'00111000' call LCD_ENVIA_COMANDO return CLEAR_DISPLAY movlw b'00000001' call LCD_ENVIA_COMANDO return ENTRY_MODE_SET

Page 161: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

152

movlw b'00000110' call LCD_ENVIA_COMANDO return DISPLAY_CONTROL movlw b'00001100' call LCD_ENVIA_COMANDO return CURSOR_AND_DISPLAY_SHIFT movlw b'00010100' call LCD_ENVIA_COMANDO return SET_DDRAM_ADDRESS movlw b'10000000' call LCD_ENVIA_COMANDO return ESCRIBE_LINEA_DOS movlw b'11000000' call LCD_ENVIA_COMANDO return ESPACIO_BLANCO movlw ' ' call LCD_ENVIA_DATO return ESCRIBE_CGRAM movlw b'01000000' call LCD_ENVIA_COMANDO return ;----------- ENVIA DATO ------------ LCD_ENVIA_DATO bsf PIN_RS movwf PUERTO bsf PIN_E nop bcf PIN_E bcf PIN_RS call Retardo_5ms return ;----------- ENVIA COMANDO ------------ LCD_ENVIA_COMANDO bcf PIN_RS movwf PUERTO bsf PIN_E nop bcf PIN_E call Retardo_5ms retur

Page 162: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

153

A3.- Código para la configuración del módulo EUSART del microcontrolador PIC16F887 en lenguaje ensamblador. CBLOCK 0x5A DATO_Rx COPY_W COPY_STATUS ENDC TX_RX_CONFIG bcf STATUS,RP1 ; BANCO 1 bsf STATUS,RP0 ; BANCO 1 bcf TRISC,6 ; TX SALIDA bsf TRISC,7 ; RX ENTRADA clrf SPBRGH movlw d'129' movwf SPBRG ; 9600 BAUDIOS movlw b'00100110' movwf TXSTA ; SYNC = 0 ; TXEN = 0 HABILITO TRASMISION bsf INTCON,6 ; HABILITO PEIE bsf INTCON,7 ; HABILITO GIE bsf PIE1,5 ; HABILITO RCIE bcf STATUS,RP1 ; BANCO 0 bcf STATUS,RP0 ; BANCO 0 movlw b'10010000' movwf RCSTA ; SPEN = 1 bsf STATUS,RP1 ; BANCO 3 bsf STATUS,RP0 ; BANCO 3 movlw b'01000000' movwf BAUDCTL bcf STATUS,RP1 ; BANCO 0 bcf STATUS,RP0 ; BANCO 0 return ;================================================ ENVIA_DATO movwf TXREG ; CARGO MI DATO PARA ENVIARLO bcf STATUS,RP1 ; BANCO 1 bsf STATUS,RP0 ; BANCO 1 ENVIA_Tx btfss TXSTA,1 ; TMRT ES = 1? YA SE ENVIO EL DATO? goto ENVIA_Tx ; NO bcf STATUS,RP1 ; BANCO 0 bcf STATUS,RP0 ; BANCO 0 return ;================================================ RECIBE_DATO movwf COPY_W ; REALIZA UNA COPIA DE LOS REGISTROS movf STATUS,W ; DEBIDO A QUE SUCEDIO UNA INTERRUPCION movwf COPY_STATUS movf RCREG,W ; CARGO A W EL DATO QUE ENTRO movwf DATO_Rx

Page 163: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

154

movf COPY_STATUS,W ; CARGAMOS A STATUS movwf STATUS ; CON EL VALOR QUE TENIA ANTES DE LA INTERRUPCION movf COPY_W,W ; A W TAMBIEN bcf PIR1,5 ; LIMPIO LA BANDERA retfie A4.- Código para realizar una conversión de código decimal a BCD en lenguaje ensamblador. CBLOCK 0x6E UNIDADES DECENAS CENTENAS DVNDO DVSOR RESI COSI ENDC ;========================================================== CONVERT_DECIMAL MOVWF DVNDO ; CARGO MI DATO A CONVERTIR CLRF COSI CLRF RESI MOVLW H'A' ; DIVICIONES DE 10 MOVWF DVSOR CALL DIVISION MOVFW RESI MOVWF UNIDADES MOVFW COSI MOVWF DVNDO CALL DIVISION MOVFW RESI MOVWF DECENAS MOVFW COSI MOVWF CENTENAS Return ;========================================================== DIVISION CLRF COSI CLRF RESI DIVI MOVF DVSOR,W SUBWF DVNDO,F BTFSS STATUS,0 GOTO RESID INCF COSI,F GOTO DIVI RESID ADDWF DVNDO,W MOVWF RESI return ;==========================================================

Page 164: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

155

A5.- Código Principal del HMI void main() { TRISE = 0B00000000; PORTE = 0B00000000; TRISG = 0B00000000; PORTG = 0B00000000; Start_TP(); while (1) { Check_TP(); } } Eventos #include "Toggle_LED_objects.h" #include "Toggle_LED_resources.h" //--------------------- User code ---------------------// //----------------- End of User code ------------------// // Event Handlers void Toggle_LED() { if(PORTE.F2 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTE.F2 = 1; Button_LED1.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTE.F2 = 0; Button_LED1.Caption = "ON" ; } } void Toggle_LED2() { if(PORTE.F3 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTE.F3 = 1; Button_LED2.Caption = "OFF" ; }

Page 165: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

156

else { // SI ES UNO LO MANDA A CERO PORTE.F3 = 0; Button_LED2.Caption = "ON" ; } } void Toggle_LED3() { if(PORTE.F4 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTE.F4 = 1; Button_LED3.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTE.F4 = 0; Button_LED3.Caption = "ON" ; } } void Toggle_LED4() { if(PORTE.F5 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTE.F5 = 1; Button_LED4.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTE.F5 = 0; Button_LED4.Caption = "ON" ; } } void Toggle_LED5() { if(PORTE.F6 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTE.F6 = 1; Button_LED5.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTE.F6 = 0; Button_LED5.Caption = "ON" ; } } void Toggle_LED6() {

Page 166: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

157

if(PORTG.F0 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTG.F0 = 1; Button_LED6.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTG.F0 = 0; Button_LED6.Caption = "ON" ; } } void Toggle_LED7() { if(PORTG.F1 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTG.F1 = 1; Button_LED7.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTG.F1 = 0; Button_LED7.Caption = "ON" ; } } void Toggle_LED8() { if(PORTG.F2 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTG.F2 = 1; Button_LED8.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTG.F2 = 0; Button_LED8.Caption = "ON" ; } } void Toggle_LED9() { if(PORTG.F3 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTG.F3 = 1; Button_LED9.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTG.F3 = 0; Button_LED9.Caption = "ON" ; } }

Page 167: ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ......Figura 2.17 Apariencia del entorno de programación MPLAB ..... 34 Figura 2.18 Componentes para desarrollar Interfaces graficas en

158

void Toggle_LED10() { if(PORTG.F4 == 0) { // SI PORTE,2 ES CERO LO MANDA UNO PORTG.F4 = 1; Button_LED10.Caption = "OFF" ; } else { // SI ES UNO LO MANDA A CERO PORTG.F4 = 0; Button_LED10.Caption = "ON" ; } } void go_piso2() { DrawScreen(&Screen2); } void go_piso1() { DrawScreen(&Screen1); }