Está en la página 1de 24

UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

ANTEPROYECTO - TRABAJO DE GRADO

APLICACIÓN MÓVIL EN ANDROID PARA


VISUALIZACIÓN Y CONTROL DE
EMULADOR DE SISTEMAS DINÁMICOS.

20 – Abril- 2021
Facultad de Ingeniería – Programa de Ingeniería Electrónica
Universidad del Quindío

i
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

TABLA DE CORRECCIÓN DE LAS OBSERVACIONES DE LA PROPUESTA

Número Observación Página Detalle

ii
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

Tabla de Contenido

1. PROPONENTE(S), DIRECTOR Y ASESOR(ES):.............................................................................. 1


2. ORGANIZACIÓN USUARIA: ............................................................................................................. 1
3. GLOSARIO ....................................................................................................................................... 1
4. ÁREA................................................................................................................................................ 2
5. MODALIDAD .................................................................................................................................... 2
6. TITULO ............................................................................................................................................. 2
7. TEMA ............................................................................................................................................... 2
8. ANTECEDENTES ............................................................................................................................. 3
8.1 Palabras Claves:....................................................................................................................... 3
8.2 Herramientas de Búsqueda....................................................................................................... 3
8.3 Estado del Arte ......................................................................................................................... 3
9. DESCRIPCIÓN DEL PROBLEMA ..................................................................................................... 7
10. JUSTIFICACIÓN DEL PROBLEMA .............................................................................................. 8
11. OBJETIVOS ................................................................................................................................. 8
11.1 GENERAL .................................................................................................................................... 8
11.2 ESPECÍFICOS ............................................................................................................................. 8
12. ALCANCE Y DELIMITACIÓN ....................................................................................................... 9
13. MARCO TEÓRICO ....................................................................................................................... 9
13.1 Sistemas Dinámicos ................................................................................................................. 9
13.1.2 Sistemas lineales .................................................................................................................. 9
13.1.3 Sistemas no lineales ............................................................................................................. 9
13.2 HARDWARE............................................................................................................................. 9
13.2.1 Arduino UNO ........................................................................................................................... 10
13.2.2 Arduino MEGA ......................................................................................................................... 10
13.2.3 Chip SoC ESP32. .................................................................................................................... 10
13.3 SOFTWARE ........................................................................................................................... 11
13.3.1 Android .................................................................................................................................... 11
13.3.2 Android Studio ......................................................................................................................... 11
13.3.3 Kotlin ....................................................................................................................................... 12
13.3.4 IntelliJ IDEA ............................................................................................................................. 12
13.3.5 Arduino IDE ............................................................................................................................. 13
14 METODOLOGÍA......................................................................................................................... 14
15 PRESUPUESTO Y RECURSOS NECESARIO. .......................................................................... 16
16 CRONOGRAMA ......................................................................................................................... 17
17 FUENTES DE INFORMACIÓN ................................................................................................... 18

iii
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

1. PROPONENTE(S), DIRECTOR Y ASESOR(ES):

PROPONENTES (s)

Código Est. : 1094964509 Nombre: Carlos Andrés Bonilla Méndez


Dirección: Calle 6 N # 16-61 Edificio Sierra Grande 2 Alejandro Teléfono: 314 819 1331
apto 204
E-mail: cabonillam@uqvirtual.edu.co Firma: ____________________________

DIRECTOR Nombre: Luis Miguel Capacho Valbuena


Títulos Universitarios: Magíster en ingeniería, Ingeniero Electrónico
Tiene Vinculación con la Universidad: S_X_ N __
Teléfono:
E-mail: lmcapacho@uniquindio.edu.co Firma: ____________________________

2. ORGANIZACIÓN USUARIA:
Razón social: Universidad del Quindío.
Dirección: Carrera 15 calle 12 norte, Armenia - Quindío.
Teléfono: 7359359
Responsable: Luis Miguel Capacho Valbuena
Cargo: Director.

3. GLOSARIO

Google play: Conocida anteriormente como Android Market, es una plataforma virtual de Google que
permite la distribución de aplicaciones gratuitas y premium para los sistemas operativos Android [3].

Wifi: Estándar internacional IEEE 802.11, que define las normas de funcionamiento de una red de área
local inalámbrica WLAN, que proporciona a los dispositivos conectados a un enrutador o punto de acceso
la conexión a internet [4].

APK: Android Aplication Package es un archivo ejecutable de instalación con extensión apk para ser
instalada en un dispositivo móvil con sistema operativo Android [5].

Aplicación móvil: Es un programa informático que se encarga de desarrollar una tarea específica, acceder
a servicios, entretener a los usuarios, entre muchas otras posibilidades. Estas aplicaciones son diseñadas
para ser ejecutadas desde en un dispositivo móvil inteligente [6].

Emulador: Es un programa informático diseñado para que se comporte de manera muy precisa en una
plataforma o sistema operativo distinto al dispositivo o sistema operativo original [7].

Función de Transferencia: Es un modelo matemático que a través de un cociente relaciona la “entrada-


salida” de sistemas lineales invariantes en el tiempo LTI en el dominio de la transformada de Laplace [8].
1
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

Espacio de estados: Es una representación de un modelo matemático de un sistema físico descrito


mediante un conjunto de entradas, salidas y variables de estado relacionadas por ecuaciones diferenciales
de infinito orden que determina el comportamiento del sistema en cualquier instante de tiempo [9].

JSON: Notación de objetos de JavaScript, es un formato de texto ligero para el intercambio de datos en
internet donde se utilizan cadenas de texto para representar objetos de JavaScript [10].

4. ÁREA

Sistemas digitales y control.

5. MODALIDAD

Proyecto de aplicación.

6. TITULO

Aplicación Móvil En Android Para Visualización Y Control Con Emulador De Sistemas Dinámicos.

7. TEMA

En la Universidad del Quindío se desarrolló el proyecto de aplicación de electrónica “Emulador de


sistemas Dinámicos lineales y no lineales” para optar por el título de ingeniero electrónico de los
estudiantes Esneyder Morcillo Ocampo y Julián David Chilatra Osorno. El trabajo consistía en emular
sistemas dinámicos lineales y no lineales sobre la plataforma de Arduino, en las tarjetas de desarrollo
Arduino UNO, DUE y MEGA, enviando la función de transferencia o las ecuaciones de estado de los
sistemas dinámicos desde una interfaz gráfica desarrollada con el framework Qt, adquiriendo los
resultados del emulador con la tarjeta de adquisición de datos de NI USB 6001 usando el software de
LabView 20014 y visualizando su respuesta en Matlab.

El presente proyecto consiste en desarrollar una aplicación móvil para dispositivos Android versiones 4.1
en adelante, para programar el Emulador de Sistemas Dinámicos (ESD) de E. Morcillo y J.D Chilatra y
visualizar el comportamiento del sistema dinámico. La aplicación móvil se desarrollará usando el lenguaje
de programación Kotlin y se comunicará con el Emulador de Sistemas Dinámicos (ESD) usando la
conectividad WiFi proporcionada por el microcontrolador ESP32 que se conectará con el ESD mediante el
puerto serial para programar el sistema. Además, la aplicación tendrá la capacidad de conectar otros
dispositivos móviles a través de un servidor que se ejecutará en el ESP32 con el sistema para visualizar su
funcionamiento.

 Búsqueda bibliográfica 30%.


 Desarrollo del emulador de sistemas dinámicos 20%.
 Desarrollo de la aplicación móvil 50%.

2
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

8. ANTECEDENTES

8.1 Palabras Claves:

Aplicaciones Móviles, aplicaciones web, Android, sistemas Dinámicos, Sistemas Lineales,


Sistemas No Lineales, sistemas embebidos.

8.2 Herramientas de Búsqueda

Las investigaciones bibliográficas que sustenten el concepto teórico y de desarrollo del presente
trabajo se sustentarán en:

 Motores de búsqueda: Google, Google académico, para la investigación de los conceptos que
sustenten el estado del arte del proyecto.
 Bases de datos que ofrece la biblioteca CRAI de la Universidad del Quindío.

8.3 Estado del Arte

Existe un proyecto realizado por los ingenieros Luis Miguel Capacho Valbuena y Nelson Antonio Becerra
en el año 2007 donde construyeron un emulador de sistemas dinámicos en un procesador digital de señales
DSK 6713, emulando sistemas de dos entradas y dos salidas, este emulador contó con un componente
Hardware y con un componente Software. En el componente Hardware utilizaron el DSK 6713 de Texas
Instruments, el cual recibía las entradas analógicas por medio de un ADC (conversor Analógico – Digital)
y emitía la salida de la planta emulada con dos DAC (conversor Digital – Analógico). En el componente
del Software, tenían una interfaz gráfica en un computador cuya comunicación con el ESD se realizaba
por intermedio de un cable USB, en donde el usuario tenía la opción de ingresar los sistemas en función
de transferencia continua o discreta, como también ingresar el sistema en variables de estado continuas o
discretas para posteriormente poder procesarlas y realizar la emulación, además permitía visualizar la
simulación del sistema a emular o bien el sistema ya emulado. Por último, los resultados permitieron
demostrar que el sistema se comportó eficazmente logrando emular sistemas hasta décimo orden, pero no
permitía la emulación de sistemas no lineales, además que complicaba su implementación y reproducción
en este Hardware era costoso [11].

Por otro lado, Juan Sebastián B.V y Edilson delgado T. en 2009 utilizaron microcontroladores de gama
baja como lo es el PICmicro de 8 bits para la emulación de sistemas dinámicos lineales. Para realizar el
algoritmo propuesto se basó en la idea de la discretización de los estados lineales obteniendo la variable de
entrada con el puerto análogo de entrada del PICmicro y cuya salida del sistema se lleva al puerto digital
donde finalmente se construye la señal con un DAC y el resto de variables de estados se obtienen de la
discretización del sistema lineal usando la técnica retenedor de orden Zero (ZOH) En la obtención de
resultados utilizaron una ecuación de segundo orden para verificar el comportamiento de la señal emulada
del microcontrolador tal como se muestra en la Figura 1, la respuesta de la gráfica de la emulación del
microcontrolador está marcada de color azul mientras que la gráfica de la simulación está de color rojo,
donde se demuestran buenos resultados. Sin embargo, el trabajo de los ingenieros tiene una limitación y es
que el algoritmo utilizado modela ecuaciones de sistemas dinámicos lineales ingresados directamente al
código fuente con el que se programó el microcontrolador prohibiendo al usuario agregar parámetros,
además siendo molesto para usuarios con poco conocimiento y experiencia [12].

3
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

Figura 1. Respuesta del microcontrolador y de la simulación de una función de transferencia de segundo


orden con una frecuencia de muestreo de 20Hz [14]

En el año 2014 Jorge García de la Universidad tecnológica de Puebla México desarrolló un autómata
programable de un solo chip que emula un PLC con tele-control desde una aplicación móvil para Android
y una computadora con tele programación vía Bluetooth, esta aplicación fue desarrollada en el software de
programación de App Inventor de forma fácil e intuitiva para ser conectada desde un celular Android y el
emulador vía Bluetooth. También, desarrollaron un programa original llamado MikroPLAN que incorpora
un editor de diagramas KOP, diagramas en DIN y código AWL (Anweisungsliste – Lista de instrucciones)
compatible con la norma IEC 61131 en un computador para tele-programar el autómata con la opción de
comunicarse vía USB o vía inalámbrica usando Bluetooth. Por último, se utilizó el servidor DDE de
MikroPLAN que funcionó como una interfaz para que se estableciera la comunicación con el autómata
[13].

En 2016 se implementó una aplicación móvil en Android para la adquisición y visualización de Bioseñales
Cardíacas utilizando Android Studio. La metodología que se siguió en este proyecto fue recibir las
Bioseñales Electrocardiogramas ECG de los pacientes por medio de un circuito de adquisición de señales
cardíacas previamente desarrollado mediante el uso de filtros activos (Butterworth) para el procesamiento
de la señal obtenida, así como el uso de amplificadores para acondicionar la señal, para que
posteriormente se pueda establecer una comunicación Bluetooth entre la aplicación del dispositivo Móvil
y el circuito de adquisición de señales cardíacas. Esta aplicación consta de una serie de actividades las
cuales, inician desde una solicitud de permiso para encender el modulo Bluetooth del dispositivo móvil
cuando se encuentra desactivado, seguidamente se encuentra un botón PAIRED DEVICES de la Figura 2,
para poder vincular el dispositivo móvil con el circuito de adquisición de señales.

Figura 2. Pareado de Dispositivos. Fuente modificada de [14].


4
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

seguidamente se abre otra actividad como aparece en la Figura 3 para poder graficar las señales cardíacas
procesadas previamente por un microcontrolador y ser recibidas posteriormente por el dispositivo móvil,
esta actividad posee diferentes botones que permiten indicar el momento para iniciar la gráfica y guardar
los datos en un archivo de texto. Esta aplicación se implementó con el fin de optimizar el procedimiento
de obtener un electrocardiograma y lograr ventajas al visualizar los datos en un dispositivo ligero y
económico permitiendo además minimizar problemas de movilidad, por último, gracias al uso de esta
aplicación basada en Android se logra graficar la señal cardíaca sin utilizar papel y almacenar los datos en
un archivo de texto.

Figura 3. Pantalla graficadora. Fuente modificada de [14]

Por ultimo al efectuarse pruebas con el prototipo se obtuvieron resultados satisfactorios como se puede
observar en la Figura 4 [14].

Figura 4. Grafica de la señal cardíaca recibida [14].

En la ciudad de Valencia España, Pablo Vallés Juliá en el año 2019, diseñó e implementó una base de
datos y una aplicación móvil multiplataforma para el control y monitoreo de una explotación cunícula.
Esta aplicación consistía en monitorear y visualizar mediante graficas en Android y iOS, los datos
promedios de los sensores de humedad, temperatura, oxigeno, CO2 destinada a la domotización de una
granja de cría de conejos. Estos datos eran almacenados, en la base de datos MySQL guardada en un
pequeño servidor -Raspberry-. Esta aplicación al ser multiplataforma fue desarrollada en el entorno de
desarrollo de Ionic, la cual, inicia solicitando las credenciales del usuario, seguidamente muestra las
diferentes funciones del menú principal que la aplicación brinda al usuario como muestra la Figura 5 en la
parte izquierda, al igual que el estado general de las variables medidas por los sensores en la granja en la
parte derecha. Seguidamente, se muestra el desarrollo de un pequeño servidor en un –Raspberry-, al que le
fue instalado el sistema operativo Raspbian mediante una tarjeta MicroSD. También, se le instaló los
5
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

protocolos de SSH y SFTP, para tener un servidor remoto, este servidor se configuró mediante el software
de Apache 2 y de PHP para acceder a la base de datos MySQL [15].

Figura 5. Captura de pantalla de menú principal (izq). Estado general (der) [15].

Por último, Esneyder Morcillo y Juan David Chilatra presentaron un ESD lineales y no lineales sobre las
placas Arduino UNO, DUE y MEGA. El trabajo consistía en ingresar las ecuaciones de los sistemas
dinámicos en espacio de estados y en funciones de transferencia en una interfaz gráfica implementada en
Qt. En esta interfaz se establecía la conexión por Bluetooth entre el computador y el emulador, estos
parámetros ingresados se enviaban al Arduino con el fin de que el microcontrolador se comportara como
las plantas a emular, posteriormente, se obtenían los datos a partir de una tarjeta de adquisición de datos
NI USB 6001 exportados y graficados en Matlab. En los resultados utilizaron diferentes plantas lineales y
no lineales como los son el seguidor de tensión, un sistema de tercer orden de tanques no interactivos para
sistemas lineales y el sistema de anillo en un aro, el sistema de gas encerrado en un tanque, el sistema de
tanques no interactivos y sistemas de tanques interactivos para sistemas no lineales, en la Figura 6 sección
A se muestra un muy buen resultado al ver la respuesta de la posición del seguidor de tensión emulado vs
la posición teórica mientras que en la sección B se muestra la velocidad del seguidor de tensión emulada y
la teórica donde también se ven buenos los resultados, por último, en las secciones C y D se muestran las
respuestas del sistema no lineal del sistema de anillo en un aro, para la posición y velocidad teórica vs
emulada logrando respuestas muy precisas. Concluyendo, con base en los resultados obtenidos en este
trabajo realizado se puede constatar que el ESD tiene un comportamiento muy preciso, pero su defecto es
que no tiene la facilidad de ver la respuesta y guardar los datos directamente desde la interfaz gráfica
restringiendo un poco la facilidad de manejo, la visualización y el análisis del comportamiento del ESD
para los usuarios [1].

6
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

Figura 6. A) Posición emulada vs teórica sistema lineal de Seguidor de tensión. B) Velocidad emulada vs
teórica sistema lineal de Seguidor de tensión. C) Angulo emulado vs teórico de sistema no lineal de un
anillo en un aro. D) Velocidad angular emulada vs teórica de sistema no lineal de un anillo en un aro.
Fuente modificada [1].

9. DESCRIPCIÓN DEL PROBLEMA


En la actualidad y según los antecedentes estudiados, existe un gran desarrollo de aplicaciones móviles
Android donde según las estadísticas del articulo iPhone vs Android: Cuota de mercado, Android
representó el 74,45 % del total de la cuota de mercado en el periodo de enero de 2018 a enero del 2019,
mientras que iOS obtuvo el 22,85% de participación [16]. Por otro lado, existe una diversa variedad de
aplicaciones móviles para la medicina, transporte, alimentación, entre otras, pero, muy pocas aplicaciones
son desarrolladas para el aprendizaje en el campo de la ingeniería electrónica, específicamente en el
estudio de los sistemas dinámicos.
Gracias al inmenso crecimiento del uso así como el desarrollo de la telefonía móvil y el hecho de que
estos ya están remplazando los computadores y teniendo en cuenta el desarrollo en el trabajo de
investigación realizado por J.D Chilatra junto a E. Morcillo [1], en donde solo un usuario tiene acceso al
Emulador de Sistemas Dinámicos (ESD) desde un computador, se hace importante acudir a los beneficios

7
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

de las aplicaciones móviles en los teléfonos inteligentes que contribuyen a la simplicidad y practicidad con
el fin de lograr obtener una mayor cobertura de usuarios conectados al sistema dinámico.

Teniendo en cuenta lo descrito anteriormente, acerca de la importancia y las bondades que los teléfonos
inteligentes ofrecen, surge el siguiente planteamiento, ¿Es posible desarrollar una aplicación móvil en
Android que permita la visualización y el control del ESD?

10. JUSTIFICACIÓN DEL PROBLEMA


Basado en el planteamiento del problema y las bondades que tiene un sistema desarrollado bajo una
arquitectura y plataforma móvil, es necesario que el emulador de sistemas dinámicos (ESD) desarrollado
por [1], cuente con este tipo de tecnologías, ya que va a permitir que varios usuarios con un dispositivo
móvil como lo es un Smartphone o Tablet, puedan trabajar de forma inalámbrica con una interfaz gráfica
de usuario clara, concisa y flexible, características esenciales para facilitar la interacción del usuario y
poder emular y obtener datos importantes que determinan el comportamiento del sistema dinámico bajo
prueba.

Para lograr esto es necesario la implementación de una aplicación móvil en Android que permita
programar y visualizar la respuesta del sistema bajo prueba mediante un servidor web alojado en un chip
SoC ESP32 que se conecta mediante una comunicación serial con el ESD, que igualmente se conecta con
los dispositivos móviles, haciendo uso de Wi-Fi a través de las peticiones de la aplicación móvil al
servidor WEB, ofreciendo así una facilidad de manejo, adquisición y de portabilidad convirtiendo este
desarrollo en una herramienta que permitirá que varios usuarios estén interactuando, permitiéndoles
obtener conocimiento de la práctica que se está realizando.

El desarrollo de este proyecto constituye en una solución alternativa a las prácticas de laboratorio
convencionales, además que permite la inclusión de diferentes tecnologías de desarrollo para la
realización del mismo lo cual puede constituir un aporte significativo para la investigación en el campo de
laboratorios remotos a través de dispositivos móviles.

11. OBJETIVOS

11.1 GENERAL

Implementar una aplicación para dispositivos móviles Android que permita la visualización y el
control del Emulador de Sistemas Dinámicos.

11.2 ESPECÍFICOS

 Implementar un Servidor Web que permita la comunicación de la aplicación y el Emulador de


Sistemas Dinámicos.
 Desarrollar un módulo de aplicación móvil Android para la visualización de las entradas y salidas
del sistema dinámico a emular.
 Desarrollar un módulo de aplicación móvil Android para el control y configuración del Emulador
de Sistemas Dinámicos.

8
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

12. ALCANCE Y DELIMITACIÓN


La implementación del ESD se realizará en las placas Arduino UNO y Arduino MEGA 2560, con las
cuales se realizará la validación de la aplicación desarrollada.
En el presente proyecto se construirá una aplicación móvil en Android que será evaluada mediante la
visualización grafica de la respuesta del emulador, aprovechando las bondades de los celulares
inteligentes.

13. MARCO TEÓRICO


En esta sección se presentarán los conceptos fundamentales relacionados con el desarrollo del presente
proyecto. Además, se expondrá los conceptos de sistemas dinámicos, como también las diferentes
plataformas de desarrolladoras de software que permitirá la realización de la aplicación móvil.

En la parte de emulación de las diferentes plantas es necesario conocer sus modelos matemáticos que
determinan su comportamiento a través del tiempo, para ello, es necesario revisar los siguientes conceptos
de sistemas dinámicos lineales y no lineales.

13.1 Sistemas Dinámicos


Un sistema dinámico es aquel que transforma su estado con el tiempo. Los sistemas dinámicos describen
el comportamiento de las plantas y sistemas físicos en estado no estacionario, como también modelos
económicos y matemáticos entre otros. En los sistemas físicos en estado no estacionario existen variables
que dependen de un parámetro determinado que generalmente es el tiempo [34].

13.1.2 Sistemas lineales


Se les dicen sistemas lineales a todos aquellos sistemas en los que una expresión idealmente se comporta
de la misma manera con los cambios producidos por la otra expresión, es decir las salidas de un sistema
lineal dependerá linealmente de los cambios de las entradas. Son sistemas ideales dado que en los sistemas
físicos o reales no existen sistemas lineales, en ellos siempre existirá una no linealidad [17].

13.1.3 Sistemas no lineales


Son todos aquellos sistemas en que su ecuación diferencial se encuentran expresiones no lineales como,
por ejemplo, funciones trigonométricas, exponenciales, logarítmicas, ecuaciones diferenciales parciales,
multiplicación entre variables. Además, se puede decir que, si las no linealidades son suaves, existe un
rango de operación pequeño para el sistema que puede ser aproximado y trabajado como un sistema lineal.
Por último, es importante mencionar que los sistemas no lineales son en realidad todos los sistemas físicos
[17].

13.2 HARDWARE
En esta sección se revisarán los conceptos necesarios para conocer un poco acerca del Hardware que el
proyecto utilizará, para ello se describirán los conceptos y definiciones de las diferentes placas de Arduino
que servirán como plataforma para soportar el código contenido en el ESD.

9
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

13.2.1 Arduino UNO


Es una tarjeta hardware de código abierto basada en el microcontrolador ATmega 328, la tarjeta Arduino
UNO posee 14 pines de entrada/salidas digitales, además, 6 entradas analógicas, un oscilador de cristal de
16Mhz y una conexión USB para comunicar el IDE de Arduino con la tarjeta [18].

Figura 7: Placa de Arduino UNO [19].

13.2.2 Arduino MEGA


Es una tarjeta hardware de código abierto basada en el microcontrolador ATmega 2560, el Arduino
MEGA tiene 54 pines de entrada/salidas digitales, 16 entradas analógicas, 4 UARTS, un oscilador de
cristal de 16Mhz y una conexión USB para comunicar el IDE de Arduino con la tarjeta [20], la Figura 8
muestra la placa electrónica del Arduino MEGA.

Figura 8: Placa de Arduino MEGA 2560 [21].

13.2.3 Chip SoC ESP32.

Desarrollado por Espressif Systems, el ESP32 es un Sistema chip (SoC) de bajo costo y bajo consumo de
potencia con Wi-Fi y Bluetooth [22]. El corazón de este es un microprocesador LX6 de Tensilica Xtensa
que cuenta con uno o dos núcleos con una frecuencia de trabajo de hasta 240 MHz. El ESP32 es diseñado
de tal manera que puede ser integrado con módulos amplificadores, amplificadores de potencia, receptores
de bajo ruido, filtros entre otros. Se utiliza especialmente para aplicaciones inalámbricas y aplicaciones
IoT permitiendo bajo consumo de potencia lo que lo hace ideal para aplicaciones que requieran de esta
característica.

10
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

Figura 9: STM32F103 C8T6[23]

13.3 SOFTWARE
En la parte del Software se tiene todo lo relacionado con los diferentes programas que permiten el
desarrollo de aplicaciones móviles, como también el desarrollo del servidor Web y del programa
informático que contiene al ESD.

13.3.1 Android
Es el Sistema operativo más usado en el mundo diseñado para computadoras móviles como Smartphone,
tabletas, es de código abierto y basado en Linux fue programado en el lenguaje Java, creado en el año
2005 por Android Inc., posteriormente adquirido por Google en julio de 2018. El primer teléfono con
Android fue lanzado en el año 2008 con la versión 1, actualmente Android cuenta con 17 versiones y la
última versión en el 2020 estable es la 10, también permite las plataformas de 32 y 64 bits ARM, x64,
x86, MIPS y MIPS64 [24].

Figura 10: logo del OS Android [25].

13.3.2 Android Studio


Android Studio es el entorno de desarrollo integrado oficial para la plataforma de Android es desarrollado
por Google reemplazando en 2013 al IDE de eclipse. Permite diseñar las aplicaciones en dispositivos
móviles Android utilizando el ConstraintLayout, ayuda a simular las aplicaciones desarrolladas con los
diferentes emuladores de dispositivos móviles con las diferentes versiones de Android que el IDE como lo
muestra la Figura 11. Y a su vez ofrece la posibilidad de probar la aplicación transfiriendo el archivo
directamente al dispositivo móvil y desde allí poder ejecutarla, además el Software puede generar un
archivo APK para poderse compartir con los demás dispositivos como también poder subir la aplicación a
la tienda de Google Play Store. Asimismo, el Software permite programar en el lenguaje de programación
de C++, Java y Kotlin [26].

11
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

Figura 11: IDE de Android Studio [27].

13.3.3 Kotlin
Es un lenguaje de programación de código abierto nuevo para crear aplicaciones móviles en sistemas
operativos Android desarrollado por el equipo de JetBrains en el año 2010 y lanzado al público en el año
2012, las aplicaciones son ejecutadas desde la máquina virtual de java (JVM), además, reduce el código
escrito en JAVA, permitiendo crear aplicaciones en JVM, Java Script, Android y en aplicaciones de
consola. Es conciso, por tanto, reduce drásticamente la cantidad de código repetido, es seguro ya que evita
clases enteras de errores e interoperable mediante el uso de bibliotecas existentes en JVM, Android y el
navegador, igualmente, brinda diferentes bibliotecas y existen diversas herramientas que dan soporte a
Kotlin como lo son los entornos de desarrollo de intelliJ IDEA y Android Studio [28]. La Figura 12
muestra el logo del lenguaje de programación de Kotlin.

Figura 12: logo del lenguaje de programación Kotlin [29].

13.3.4 IntelliJ IDEA


IntelliJ IDEA es un entorno de desarrollo integrado IDE para JVM que brinda una programación eficaz y
ergonómica, se podría decir que amigable, desarrollado por JetBrains, lanzado en el año 2001, posee
diversas herramientas integradas tales como compilador, visor de bytecode, FTP y terminal entre otros,
además marcos de trabajo compatibles como lo son las herramientas de compilación, herramientas de
generación de perfiles, herramientas para bases de datos SQL y NoSQL. Maneja los lenguajes Kotlin,
Groovy, Scala y Java, permitiendo el desarrollo de aplicaciones móviles en Android, aplicaciones nativas,
cordova, nativas e Ionic o híbridas, así como también permite el desarrollo de aplicaciones Web [30]. Y lo
más atractivo de este entorno es que analiza el código que se está implementando y busca conexiones
entre los símbolos en todos los archivos y lenguajes del proyecto para proporcionar asistencia de
codificación en mayor profundidad, navegación rápida y análisis inteligente de errores permitiendo que la
codificación sea más rápida e intuitiva.

12
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

13.3.5 Arduino IDE

Es un programa informático compuesto por diferentes herramientas de programación. IDE entorno de


desarrollo por sus siglas en inglés, es un programa de aplicación, que conforma un editor de código, un
compilador, un depurador y un constructor de interfaz gráfica (GUI). Este IDE es multiplataforma lo cual
quiere decir que puede ser instalado en los sistemas operativos Windows, Mac OSX y Linux. Este entorno
cuenta con diferentes menús y opciones entre ellas se encuentran; los botones de verificar y subir el
código, el monitor serie, el cual, muestra los datos enviados por el Arduino a través del puerto serial, la
consola de error, el menú de herramientas de placas y puerto, que muestra las diferentes placas de Arduino
que el IDE maneja y los puertos USB del computador, el menú de preferencias, el proyecto/sketch y el
resultado de palabra clave [31]. En la Figura 12 se muestra el IDE de Arduino al iniciar el programa.

Figura 13: Entorno de desarrollo integrado de Arduino [32].

13
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

14 METODOLOGÍA

La metodología que se llevara a cabo para la ejecución de este proyecto de aplicación constara de 5
fases basadas en el modelo de cascada [33] como se observa en la Figura 14.

Figura 14. Metodología del proyecto: fuente: elaboración propia.

14.1 Búsqueda bibliográfica.

Durante el desarrollo de esta fase, se estudiará a fondo la tesis “emulador de sistemas


dinámicos lineales y no lineales”, de [1] como también, la bibliografía necesaria para el
desarrollo del software en la implementación de la aplicación móvil mediante la realización
de las siguientes tareas:
 Revisar los diferentes proveedores de servicios.
 Estudiar literatura acerca del desarrollo web.
 Analizar la estructura del lenguaje de programación Java y Kotlin que será utilizado
para el desarrollo del código en la construcción de la aplicación móvil.
 Identificar las diferentes estrategias que se utilizaron en el estado del arte que
proporcionen un aporte importante para el desarrollo de aplicaciones móviles, bases
de datos, aplicaciones web y su interacción con los sistemas embebidos.

14.2 Implementación y validación del ESD.

En esta fase del proyecto se buscará replicar y comprobar el funcionamiento del ESD para los
Arduino UNO y Arduino MEGA, para llevar a cabo esta fase, se realizarán las siguientes
actividades.
 Construir un Shield de Arduino que contiene los acondicionadores de entrada y de
salida del Arduino UNO MEGA.
 Probar el funcionamiento de los Shield con las placas de Arduino
 Cargar la interfaz gráfica en el software de Qt Creator.
 Cargar el código del emulador a los Arduino UNO y Arduino MEGA.
 Establecer comunicación entre el Computador y el ESD.
 Validar el comportamiento del emulador.

14
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

14.3 Diseño e implementación de la aplicación móvil y Servidor Web.

Con el apoyo de herramientas de desarrollo de aplicaciones móviles como Android Studio e


intellij IDEA, se diseñará e implementará una aplicación por medio de las siguientes
actividades:

 Realizar interfaz gráfica en una aplicación móvil en Android que le permita al usuario
ingresar y enviar los valores de las funciones de transferencia al servidor WEB.
 Implementar un servidor web alojado en el Chip SoC ESP32 que permita enviar y
recibir información de un dispositivo móvil mediante Wi-Fi.
 Establecer una comunicación serial que permita el intercambio de información entre
el servidor web y el ESD.
Programar actividad en la aplicación móvil que permita visualizar la información
recibida en el servidor WEB por parte del ESD.

14.4 Pruebas y validación final.

Realizar la interacción entre un máximo de tres dispositivos móviles Android y el ESD para
probar el comportamiento y respuesta del emulador y poder constatar con el comportamiento
de los sistemas físicos teóricos, así como el comportamiento de la aplicación móvil y el
servidor WEB cumpliendo a cabalidad la validación de los objetivos específicos.

15
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

15 PRESUPUESTO Y RECURSOS NECESARIO.

Tabla 1. Presupuestos y recursos necesarios para el desarrollo del proyecto.

Rubros Universidad del Quindío Estudiante Total


Efectivo Recurrente Efectivo Recurrente
1. Personal
Trabajo director: $30.000 la $1.200.000 $1.200.000
hora, dedicación 2 horas
semana, durante 5 meses.
2. Transportes
Transporte $100.000 $100.000
3. Bibliografía
Servicios de Biblioteca
Bases de datos $3.000.000 $3.000.000
Capacitaciones
Consulta a experto
4. Equipos
Equipo 1: Computador $1.000.000 $1.000.000
Equipo 2: Celular $500.000 $500.000
Equipo 3: Arduino UNO $25.000 $25.000
Equipo 4: Shield de Arduino $20.000 $20.000
UNO
Equipo 5: Arduino MEGA $50.000 $50.000
Equipo 6: Shield de Arduino $35.000 $35.000
MEGA
Equipo 7: 2 ESP32 $60.000 $60.000
5. Software
IDE de Arduino.
Android Studio
IntelliJ IDEA
6. Materiales e insumos

Fotocopias $30.000 $30.000

Cautín $15.000 $15.000


TOTALES $0 $4.200.000 $335.000 $1.500.000 $6.035.000

16
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

16 CRONOGRAMA

ACTIVIDAD Mes 1 Mes 2 Mes 3 Mes 4 Mes 5 Mes 6 Ocupación


(año) 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 en Horas
Búsqueda bibliográfica:
Identificar las diferentes
estrategias que se utilizaron
en el estado del arte que
proporcionen un aporte
importante para el desarrollo
del presente proyecto.
30
Implementar y validar el
EDS.
Replicar y comprobar el
funcionamiento del ESD para
los Shields con los Arduinos
UNO y MEGA. 50
Diseñar e implementar la
aplicación móvil y Servidor
Web.
Realizar la comunicación
mediante los dispositivos
móviles entre el servidor web
y el emulador. 80
Pruebas y validación final 40
Informe final 150
Total 350

17
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

17 FUENTES DE INFORMACIÓN

[1] E. Morcillo Ocampo y J. D. Chilatra Osorno, «Emulador de sistemas dinámicos lineales y no lineales,»
Armenia, 2019.
[2] C. E. Plasencia Prado, «DevCode,» [En línea]. Disponible: https://devcode.la/blog/que-es-sql/.
[Último acceso: 22 06 2020].
[3] GCFGlobal, «¿Qué es una aplicación móvil?,» [En línea]. Disponible: https://edu.gcfglobal.org/es/
informatica-basica/que-es-una-aplicacion-movil/1/. [Último acceso: Enero 2021].
[4] P. Review, «Wlan,» [En línea]. Disponible: https://www.profesionalreview.com/2020/03/07/wlan-que-es/.
[Último acceso: Enero 2021].
[5] «Appnet Blog,» [En línea]. Disponible: https://www.tu-app.net/blog/apk/. [Último acceso: Enero 2021].
[6] «SoftCorp» [En línea]. Disponible: https://servisoftcorp.com/definicion-y-como-funcionan-las-
aplicaciones-moviles/. [Último acceso: Enero 2021].
[7] Culturacion, «Que es un emulador y para que se utiliza,» [En línea]. Disponible: https://culturacion.com/
que-es-un-emulador-y-para-que-se-utiliza/. [Último acceso: Enero 2021].
[8] «catedra “sistemas de control”,» 03 2015 [En línea]. Disponible: https://catedras.facet.unt.edu.ar/sistemas
decontrol/wp-content/uploads/sites/101/2015/12/CL03_Funci%C3%B3n_Transferencia_Modelado
_y_an%C3%A1lisis_de_sistemas_2015.pdf. [Último acceso: 2020]
[9] E. F. M. Daniel Ruiz Olaya, “Herramienta de emulación de sistemas dinámicos a través de internet”,
Revista Tecnura, pp. 19(46), 103-11, 2015.
[10] «developer.mozilla.org,» 04 mayo 2020. [En línea].
Disponible:https://developer.mozilla.org/es/docs/Learn/JavaScript/Objects/JSON.
[Último acceso: Enero 2021].
[11] L. M. B. C. N. A. Capacho Valbuena, “EMULADOR DE SISTEMAS DINÁMICOS ESD”, Armenia, 2007.
[12] J. S. B. V. y. E. D. Trejos, “EMULACIÓN DE SISTEMAS LINEALES USANDO
MICROCONTROLADORES DE GAMA MEDIA”, Educación en Ingeniería, pp. 188-193, 2010.
[13] J. García, «Desarrollo de un Sistema Emulador de PLC con Telecontrol desde una Aplicación,»
Handbook-ECORFAN, Puebla, 2014.
[14] W. Mata, A. Ochoa, A. Gonzales, L. Mena y V. Félix, «Implementación de una aplicación en Android
para la adquisición y visualización de Bioseñales Cardiacas,» Conferencia Iberoamericana en Sistemas,
Cibernética e Informática, nº 4, pp. 64-68, 2016.
[15] P. Vallés Juliá, «DISEÑO E IMPLEMENTACION DE UNA BASE DE DATOS Y UNA APLICACIÓN
MÓVIL MULTIPLATAFORMA PARA EL CONTROL Y MONITOREO DE UNA EXPLOTACIÓN
CUNÍCULA,» Escuela Técnica Superior de ingenieros de telecomunicación de la Universitat Politécnica
de Valencia, Valencia, 2019.
[16] A. Casas, «iPhone vs Android: Cuota del mercado,» 25 02 2019. [En línea]. Disponible:
https://www.pcworld.es/articulos/smartphones/iphone-vs-android-cuota-de-mercado-3692825/.
[Último acceso: 2020].
[17] A. P. H. E. P. B. Mario Alberto Pérez, «INTRODUCCION A LOS SISTEMAS DE CONTROL Y
MODELO MATEMATICO PARA SISTEMAS INVARIENTES EN EL TIEMPO,» 2008. [En línea].
Disponible: http://dea.unsj.edu.ar/control1b/teoria/unidad1y2.pdf. [Último acceso: 21 Enero 2020].
[18] Arduino.cl, «Arduino MEGA,» [En línea]. Disponible en: https://store.arduino.cc/usa/mega-2560-r3.
[19] «Arrow,» [En línea]. Disponible: https://www.arrow.com/es-mx/products/a000073/arduino-corporation.
[Último acceso: 2020].
[20] Arduino.cl, «Arduino MEGA,» [En línea]. Disponible en: https://store.arduino.cc/usa/mega-2560-r3.
[21] M. Delgado, «Blog Manuel Delgado Crespo,» [En línea]. Disponible:
http://manueldelgadocrespo.blogspot.com/p/arduino-mega-2560.html. [Último acceso: 2020].
[22] «The INTERNET of THINGS with ESP32»,[En línea].Disponible: http://esp32.net/.
[Último acceso: 20 marzo 2021].
18
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

[23] «ESP32 Espressif ESP-WROOM-32 Dev Board,» [En línea]. Disponible:


https://commons.wikimedia.org/wiki/File:ESP32_Espressif_ESP-WROOM-32_Dev_Board.jpg.
[Último acceso: 20 Marzo 2021].
[24] «Android,» [En línea]. Disponible: https://es.wikipedia.org/wiki/Android. [Último acceso: 21 enero 202].
[25] M. García, «Brandemia.org,» [En línea]. Disponible: https://www.brandemia.org/la-historia-del-logo-de-
android. [Último acceso: 2021].
[26] [En línea]. Disponible: https://developer.android.com/studio. [Último acceso: 22 02 2021].
[27] «developer. android,» [En línea]. Disponible: https://developer.android.com/studio?hl=es.
[28] «Kotlin,» [En línea]. Disponible: https://kotlinlang.org/. [Último acceso: 22 02 2021].
[29] A. Picón, «medium.com,» abril 10 2016. [En línea]. Disponible: https://medium.com/kotlin-dev-
reactor/android-aprendiendo-a-desarrollar-usando-kotlin-283fe9956788. [Último acceso: 2021].
[30] [En línea]. Disponible: https://www.jetbrains.com/es-es/idea/. [Último acceso: 22 02 021].
[31] «Aprendiendo Arduino,» [En línea]. Disponible: https://aprendiendoarduino.wordpress.com/2016/12/11/
ide-arduino/. [Último acceso: 21 Enero 2020].
[32] «Arduino IDE» [En línea]. Disponible: https://www.malavida.com/es/soft/arduino/#gref.
[Último acceso: 2020].
[32] «developer.mozilla.org,» 04 Mayo 2020. [En línea].
Disponible:https://developer.mozilla.org/es/docs/Learn/JavaScript/Objects/JSON. [Último
acceso: 2021].
[34] Manuel Loaiza Ramírez, «Diseño y simulación de un criptosistema caótico para comunicaciones seguras,»
[En línea]. Disponible: http://catarina.udlap.mx/u_dl_a/tales/documentos/lem/loaiza_r_m/capitulo3.pdf.
[Último acceso: 20 02 2021].

19
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

1. ACTA DE PROPIEDAD INTELECTUAL

Proyecto: Aplicación móvil en Android para visualización y control con emulador


de sistemas dinámicos

Todos los partícipes conocen y aceptan el estatuto de propiedad intelectual de la


Universidad del Quindío, el de las empresas participantes y también el reglamento
de elaboración de trabajos de grado de la Facultad de Ingeniería.

FIRMA DE LAS PARTES IMPLICADAS.

__________________________ ______________________________
Carlos Andres Bonilla Méndez Luis Miguel Capacho Valbuena
1094964509 de Armenia
Estudiante Docente

20
UNIVERSIDAD DEL QUINDÍO - FACULTAD DE INGENIERÍA

ESPACIO RESERVADO PARA COORDINACIÓN DE TRABAJOS DE GRADO

Fecha de revisión: dd / mm / aa Código: ____/____/____

Observaciones - Recomendaciones: _______________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

_________________________________________________________________________________

Estado de la propuesta (Viable, No viable, Aplazado):

Firma: ______________________________ Firma:__________________________________

Firma: ______________________________ Firma: __________________________________

21

También podría gustarte