Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE INGENIERÍA
PRESENTADO POR:
21451019 CARLOS RENE MELÉNDEZ DÍAZ
CAMPUS: UNITEC-SPS
OCTUBRE 2019
DERECHOS DE AUTOR
© Copyright 2019
Señores
Estimados Señores:
La presentación del documento de tesis forma parte de los requerimientos y procesos establecidos de
graduación para alumnos de pregrado de UNITEC.
Yo, Carlos Rene Meléndez Díaz, de San Pedro Sula autor del trabajo de grado titulado: IMPLEMENTACIÓN
DE PROTOCOLO MQTT EN AUTÓMATAS PROGRAMABLES SIEMENS-1200, presentado y aprobado en el
año 2019, como requisito para optar al título de Profesional de Ingeniero en Mecatrónica, autorizo a:
Las Bibliotecas de los Centros de Recursos para el Aprendizaje y la Investigación (CRAI) de la Universidad
Tecnológica Centroamericana (UNITEC), para que, con fines académicos, pueda libremente registrar,
copiar y usar la información contenida en él, con fines educativos, investigativos o sociales de la siguiente
manera:
1) Los usuarios puedan consultar el contenido de este trabajo de grado en las salas de estudio de la
biblioteca y la página Web de la universidad
2) Permita la consulta y la reproducción, a los usuarios interesados en el contenido de este trabajo, para
todos los usos que tengan finalidad académica, ya sea en formato CD o digital desde Internet,
Intranet, etc., y en general para cualquier formato conocido o por conocer.
De conformidad con lo establecido en el artículo 19 de la Ley de Derechos de Autor y de los Derechos
Conexos; los cuales son irrenunciables, imprescriptibles, inembargables e inalienables.
Es entendido que cualquier copia o reproducción del presente documento con fines de lucro no está
permitida sin previa autorización por escrito de parte de los principales autores.
En fe de lo cual, se suscribe la presente acta en la ciudad de San Pedro Sula a los 19 días del mes octubre
de dos mil diecinueve.
19 de octubre del 2019
Los abajo firmantes damos fe, en nuestra posición de miembro de Terna, Asesor y/o Jefe
cual no habría sido posible alcanzar este peldaño de mi formación universitaria. Y por último,
pero no menos importante a todos los catedráticos del área de mecatrónica y
v
AGRADECIMIENTO
Agradezco a Dios primeramente por llevarme a este punto y por su inmenso amor. A mi familia y
amigos por su inmenso apoyo en mi trayectoria universitaria.
A si mismo al asesor metodológico y temáticos por brindar sus conocimientos en sus respectivos
campos de la ingeniería y guiarme en la formación del proyecto de investigación.
vi
EPÍGRAFE
Arthur C. Clarke
vii
RESUMEN EJECUTIVO
En la actualidad, la industria 4.0 ha causado un gran impacto sobre la industria, permitiendo una
manufactura inteligente, con un control más preciso y con todos los procesos interconectados.
Esta interconexión se debe gracias al internet de las cosas (IoT). Con el protocolo MQTT de IoT
se permite la comunicación entre máquinas a través del broker de la red. Por lo tanto, se
propuso desarrollar e implementar el internet de las cosas con el protocolo MQTT aplicado en
un autómata Siemens S7-1200 por medio de una Raspberry Pi 3. Existen diferentes formas de
aplicar el protocolo MQTT en una red de IoT algunos son, el uso de una librería MQTT de
Siemens con un SIMATIC IoT 2040 y a través de una Raspberry Pi 3. Se implementó esta red
Portal, SNAP7 y Node-RED para permitir la comunicación entre el PLC Siemens S7-1200 y la
Raspberry Pi 3. Se logró el funcionamiento de la red IoT con el autómata Siemens S7-1200 como
cliente y con la Raspberry Pi 3 como broker de la red. Se obtuvo un tiempo respuesta de la red
entre el broker y el cliente de 23.4 ms. Los costos obtenidos de la implementación de esta red
viii
ABSTRACT
Currently, industry 4.0 has caused a great impact on the industry, allowing intelligent
manufacturing, with more precise control and with all interconnected processes. This
interconnection is due to the internet of things (IoT). With the MQTT protocol of IoT,
communication between machines is allowed through the network broker. Therefore, it was
proposed to develop and implement the internet of things with the MQTT protocol applied in a
Siemens S7-1200 automaton through a Raspberry Pi 3. There are different ways to apply the
MQTT protocol in an IoT network some are, the use of a Siemens MQTT library with a SIMATIC
IoT 2040 and through a Raspberry Pi 3. This network was implemented using a methodology
with a quantitative, descriptive, documentary and experimental approach. It was necessary to use
different programming tools such as TIA Portal, SNAP7 and Node-RED to allow communication
between the Siemens S7-1200 PLC and the Raspberry Pi 3. The operation of the IoT network with
the Siemens S7- PLC was achieved. 1200 as a customer and with the Raspberry Pi 3 as a network
broker. A response time of the network between the broker and the client of 23.4 ms was
obtained. The costs obtained from the implementation of this network were much less compared
ix
ÍNDICE DE CONTENIDO
CAPÍTULO I. INTRODUCCIÓN................................................................................................................................................ 1
CAPÍTULO II. PLANTEAMIENTO DEL PROBLEMA................................................................................................................. 2
2.3 JUSTIFICACIÓN.......................................................................................................................................................... 5
2.4 PREGUNTAS DE INVESTIGACIÓN............................................................................................................................. 6
2.5 OBJETIVOS................................................................................................................................................................ 6
2.5.1 OBJETIVO GENERAL................................................................................................................................................ 6
3.4.3 SEGURIDAD........................................................................................................................................................... 21
3.4.4 PAQUETES DE CONTROL..................................................................................................................................... 21
4.1 ENFOQUE............................................................................................................................................................... 24
4.2 VARIABLES DE INVESTIGACIÓN............................................................................................................................ 25
x
5.1 DESCRIPCIÓN......................................................................................................................................................... 30
5.1.1 EQUIPOS IMPLEMENTADOS................................................................................................................................. 30
5.2 IMPLEMENTACIÓN................................................................................................................................................. 31
5.2.1 CONEXIONES........................................................................................................................................................ 31
BIBLIOGRAFÍA....................................................................................................................................................................... 55
xi
ÍNDICE DE ILUSTRACIONES
xii
Ilustración 23-Configuración del PLC, parte I..................................................................................................... 45
xiii
ÍNDICE DE TABLAS
xiv
LISTA DE SIGLAS Y GLOSARIO
SIMATIC IoT 2040, plataforma que facilita la actualización de las plantas a la industria 4.0
mediante IoT.
xv
CAPÍTULO I. INTRODUCCIÓN
mejorar la flexibilidad en sus diseños, obtener más información sobre el proceso y los productos
manufacturados, utilizar dispositivos más inteligentes en el procesamiento de datos adquiridos y
primera y más importante es que la producción no puede detenerse; las nuevas tecnologías
deben ser compatibles con los sistemas antiguos, y la interoperabilidad entre los proveedores
debe ser facilitado. Además, las soluciones deben ofrecer un medio para apoyar la operación en
tiempo real y la ciberseguridad. Hoy en día el difundido acceso a los datos y la integración
de la industria 4.0 la cual no es nada más que la era del internet de las cosas, con la
implementación de dicho protocolo damos una actualización a la industria que cuentan con las
siemens 1200 el cual es uno de los más utilizados en la industria hondureña, otro método de
implementación del protocolo será de forma indirecta a través de una raspberry la cual hará la
función de doble servidor web y mqtt, en la raspberry se encuentra la interfaz capaz de generar
un control vía web, además, se definen las diferencias más significativas, en cuestión de
como alternativa a la compra de nuevos equipos, en este proyecto se propone una alternativa y
una posible solución más económica, y al menos temporal hasta una posible y futura
1
CAPÍTULO II. PLANTEAMIENTO DEL PROBLEMA
que se hará en la misma. En este capítulo se presenta, afina y estructura adecuadamente la idea
de la investigación, el enfoque general de la investigación, presentación de antecedentes,
productivos.
Los sistemas basados en PLCs industriales se han convertido en sistemas muy útiles y eficaces ya
que estos siendo equipos robustos logran realizar diferentes tareas de control simples, así como
complejas. A causa de esto, tienen un coste elevado que los hace poco interesantes a la hora de
aportar soluciones en los casos más simples y, por otro lado, una serie de controladores
discretos de bajo costes, basados en electrónica programable de código abierto que, si bien son
ideales para resolver necesidades sencillas, no son muy apropiados para ser incorporados
dentro del ámbito industrial, como ser la Raspberry Pi.
experimental.
2
2.1 PRECEDENTES DEL PROBLEMA
diferentes controladores lógicos programables (PLCs), para realizar una acción específica en una
determinada área.
La industria 4.0, término que fue acuñado por el gobierno alemán para describir la fábrica
inteligente, una visión de la fabricación informatizada con todos los procesos interconectados
por el “Internet de las Cosas” (IoT). En el caso general de la industria, es lo que se conoce como
“Internet Industrial de las Cosas” (I2oT o IIoT).
Desde hace unos 30 años se trabaja con la idea de hacer un poco más interactivos todos los
objetos de uso cotidiano. Ideas como el hogar inteligente, también conocido como la casa del
mañana, han evolucionado en el hogar conectado para entrar al “Internet de las Cosas”.
El uso de Internet de las cosas en todo tipo de productos y servicios los hace más eficientes para
realizar su tarea, mejora las comunicaciones y controlar cada fase y momento de la producción.
Esto permite conectar dispositivos y generar datos de mucha importancia para un proceso,
incluso datos en tiempo real, con el fin de, determinar las evoluciones de los productos y
servicios y fabricación de los mismo, de este modo, mejorar un proceso a base de la información
y de las estadísticas obtenidas a través del uso efectivo de comunicaciones. Esto permite
avanzarse a las demandas y actuar con previsión ante ellas y también saber lo que ya no tiene
uso o no se ve como una necesidad para los clientes o para el proceso de producción.
Un aspecto muy relevante para que el IoT siga evolucionando y ampliándose a diferentes
de tecnologías en el uso industrial, así como tecnología que no es aplicada a la industria, de esta
manera se logra interconectar toda clase de tecnología.
3
El protocolo MQTT es un protocolo muy implementado hoy en día, gracias al incremento en el
uso del internet de las cosas. De acuerdo con Villena Albert (2017), en su proyecto, creó una red
IoT para un diseño de control domótica vía web, integrando un autómata programable Siemens
en la red a través de un equipo de bajo coste, una Raspberry-Pi 3 Model B. La vinculación entre
comunicación entre Raspberry y la web utiliza los servicios de protocolo MQTT, también
conocido como mosquitto. Concluyeron que, actualmente existen equipos que permiten
Desarrollaron una página web donde se monitorea los datos y estados de las salidas y entradas
del autómata programable Siemens 1200, realizaron una comunicación con las Raspberry pi que
contiene todos los softwares utilizaos para acceder a la información requerida del PLC, para
ejecutar ese manejo usaron uno de los protocolos de IIoT denominado Message Queuing
Telemetry Transport (MQTT) el cual les permitió enviar y almacenar una base de datos que
crearon en PhpMyAdmin. Creada la red, obtuvieron en el sistema, una latencia de 0.6
servicio.
protocolo MQTT junto con un autómata programable Siemens, uno de ellos es el uso de las
4
Raspberry Pi en esta implementación se busca determinar la seguridad, eficiencia y costo de
esta red, ya que estas son las cualidades y características que la industria busca en cualquier
sistema de comunicación.
2.3 JUSTIFICACIÓN
industria 4.0 y su concepto del IIoT puede provocar un salto en la productividad del 20 % al 30%
para el año 2025. Sin embargo, el sector industrial necesita cambios progresivos y amigables
el denominado IIoT logrando uno de los objetivos de las smart factories que es la
interoperatibilidad. Las actuales fábricas cuentan con las automatizaciones necesarias instaladas
en su momento, sin embargo, los avances y desarrollos tecnológicos llevan a que los equipos y
procesos se vuelvan obsoletos. (Semle, 2016)
Por otro lado, la posibilidad de ingresar en el mundo de la nueva era de tecnología e industria
es una oportunidad que debe ser aprovechada. Las nuevas tecnologías son las que están
emergiendo en este momento y lograr entender y dominarlas es una tarea importante hoy en
día.
5
2.4 PREGUNTAS DE INVESTIGACIÓN
1) ¿Cómo se comporta el tiempo de respuesta del protocolo MQTT con el uso de una
Raspberry Pi?
2) ¿Cuáles son las características, ventajas y desventajas de la red implementada?
3) ¿Cuál es la eficiencia en todos los aspectos al aplicar el protocolo MQTT con una Raspberry
Pi 3 en un PLC S7-1200?
2.5 OBJETIVOS
Los objetivos tienen como finalidad establecer lo que se pretende hacer para dar respuesta a las
preguntas de investigación y al problema formulado; establecen el rumbo que debe seguir el
trabajo de investigación.
Implementar Internet de las Cosas con el protocolo MQTT aplicado en un S7-1200 por medio
1) Evaluar experimentalmente la aplicación del Internet de las Cosas con el protocolo MQTT en
6
CAPÍTULO III. MARCO TEÓRICO
En el capítulo anterior se estableció cuál era el problema objeto de investigación con la finalidad
información de diversas fuentes primarias y secundarias que nos permitirán explicar y examinar
las teorías, conceptos, metodologías y casos de estudios relacionados con el problema en
mención.
Se da inicio al capítulo con el análisis de la situación actual de los aspectos que comprenden el
entorno del problema a investigar. Posteriormente se exponen las teorías de sustento para cada
una de las variables a considerar en el proceso de investigación, así como la conceptualización
legal respectivo.
El protocolo de comunicación MQTT proviene del IoT y el origen del IoT es la cuarta revolución
industrial. La Cuarta Revolución Industrial, también conocida como industria 4.0, está cambiando
la forma en que los negocios operan y, por lo tanto, los entornos en los que se ven obligados a
competir. La Industria 4.0 implica la promesa de una nueva revolución que combina técnicas
avanzadas de producción y operaciones con tecnologías inteligentes que se integrarán en las
Esta revolución está marcada por la aparición de nuevas tecnologías como la robótica, la
satisfacen sus necesidades para invertir en ellas. Si las empresas no comprenden los cambios y
oportunidades que trae consigo la Industria 4.0, corren el riesgo de perder cuota de mercado.
7
3.1 INDUSTRIA 4.0
metodologías, este proceso incidirá de manera más concreta el modo de hacer negocios. La
industria 4.0 fusiona digitalmente diversas disciplinas garantizando la satisfacción del cliente y la
De acuerdo con lo mencionado lo que ofrece la industria 4.0 a través de la digitalización y el uso
HRM, Help desk, redes sociales, IoT) donde ser capaces de analizarla y explotarla en tiempo
real.
El concepto de Industria 4.0, hace referencia a una política económica gubernamental basada en
estrategias de alta tecnología; caracterizada por la automatización, la digitalización de los
8
La Industria 4.0 está sustentada en el desarrollo de sistemas, el Internet de las Cosas (IoT), el
internet de la gente y de los servicios; además de otras tecnologías como la fabricación aditiva,
la impresión 3D, la ingeniería inversa, el Big Data (datos masivos), inteligencia artificial, etc., las
que al trabajar de forma conjunta, están generado cambios trascendentales no sólo en la
permiten a las empresas adaptarse a los cambios del mercado. (Ynzunza, Izar, Aguilar, & Larios,
2017)
También, las tecnologías sociales, los Sistemas Ciber-físicos (CPS) y de colaboración abierta; los
dispositivos móviles (tabletas, teléfonos), las plataformas 9 y aplicaciones tecnológicas, así
A través del Internet de las Cosas (IoT), los sistemas pueden interactuar entré sí y con los
humanos en tiempo real. El Internet de los Servicios (IoS) es el medio mediante el cual es
posible ofertar y acceder a éstos. Mientras que, el Big Data (datos masivos), el cómputo en la
nube y la inteligencia artificial son facilitadores de la Industria 4.0 y junto con la automatización
industrial están cambiando la forma en la que los productos se fabrican. Contribuyendo al
mayor innovación de productos y procesos; sino también fábricas inteligentes y otros modelos
de negocio. Se mejore la cadena de suministro; estrategia clave para incrementar la posición
9
Las bases tecnológicas en que se apoya esta orientación, entre otras son: Internet de las Cosas
(IoT); Sistemas Ciber-físicos (CPS), Cultura Maker y Fábrica 4.0. Sin embargo, la Industria 4.0 no
se reduce exclusivamente a los cuatro puntos recién citados, pues es mucho más que eso. La
Industria 4.0, llamada Cuarta Revolución Industrial, enfatiza y acentúa la idea de una creciente y
La revolución 4.0, es diferente de las tres revoluciones industriales que ocurrieron anteriormente,
esto se da por los avances en tecnología y potencial para continuar conectando a miles de
Por lo tanto, se define la Industria 4.0 como la digitalización de la industria y todos los servicios
fusionar en las fábricas, aplicando nuevas tecnologías de la información en todos los procesos
productivos.
10
Fuente: (Oliván, 2016)
industriales que han ocurrido a lo largo del tiempo. La última fue la cuarta revolución industrial,
también conocida como la industria 4.0, con la implementación de nuevas tecnologías, con
Con la adecuada aplicación del enfoque Industria 4.0, se obtienen: procesos más depurados,
repetitivos, sin errores ni alteraciones; optimización de niveles de calidad, mayor eficiencia y
ahorro en costes; además de producción mucho más flexible y con tiempos reducidos. El flujo
de datos es eficiente, con una competitividad empresarial más elevada y un nivel alto de
respuesta a las necesidades de los mercados. Finalmente se asegura un gran potencial para
conectar a millones de personas por medio de las redes digitales. Sin embargo, no todas las
organizaciones pueden adaptarse al ritmo de los nuevos métodos, con cambios cada día más
veloces, muchas industrias pueden quedar desactualizadas en poco tiempo. La Industria 4.0
tiene una enorme dependencia tecnológica, del gobierno local y sus legislaciones. Además, el
personal necesario en los nuevos procesos es mucho más especializado y los avances
Internet de las Cosas (en inglés, Internet of Things, IoT), es un concepto que se refiere a la
interconexión digital de objetos cotidianos con Internet. La revolución de Internet ha llevado a la
interconexión entre las personas por medio de aplicaciones en dispositivos inteligentes, correo
electrónico, redes sociales, etc. Ahora estamos en la era de la interconexión con las cosas u
objetos, para crear y promover un ambiente totalmente informado y confortable para una mejor
toma de decisiones y calidad de vida. La primera consecuencia directa del Internet de las Cosas
(IoT), es la generación de grandes cantidades de datos, donde cada objeto físico o virtual
conectado al IoT puede tener una doble digital en la nube, que podría generar actualizaciones
periódicas. Como resultado, el volumen de mensajería relacionada con IoT podría alcanzar entre
11
1.000 y 10.000 mensajes por persona y día. No hace falta decir, que esto es una ingente
cantidad de mensajes que es necesario gestionar. (Terán, Espinosa, Hernández, & Flores, 2017)
En la ilustración 2, se presenta una línea del tiempo, que muestra que entre 2008 y 2009 nació el
internet de las cosas. Actualmente, está firmemente encaminada según lo demuestra el avance
de diferentes iniciativas que utilizan esta nueva tecnología, desde vehículos inteligentes, hasta la
producción de una línea en una fábrica. Desde el inicio del internet de las cosas, la cantidad de
Es necesario comprender las diferencias que existen entre Internet y World Wide Web (o web),
términos que suelen utilizarse indistintamente. Internet es la capa física o la red compuesta de
que opera sobre la superficie de Internet. Su rol principal es proporcionar una interfaz que
permite utilizar la información que fluye a través de Internet. (Cisco, 2011)
Hay tres componentes o elementos básicos que interactúan entre sí: a) el hardware, como
sensores, actuadores (dispositivos que controlan los sistemas) y otros dispositivos de
12
comunicación alojados en los objetos; b) la plataforma de middleware, que es el software que
permite el intercambio de información entre las aplicaciones, así como las herramientas
computacionales que permitan el análisis de datos; y c) las herramientas que en forma fácil
permitan la visualización e interpretación de la información y que deben ser diseñadas para ser
El control electrónico apoyado por la información aportada por sensores (monitorización), algo
conectar los dispositivos a internet. Aun siendo una aportación muy interesante, la verdadera
ventaja tampoco es la posibilidad de usar la red (seguramente la web) para conocer el estado de
los dispositivos y controlarlos en remoto. Una de las ventajas más importantes de la integración
de sensores en el IoT radica en el gran volumen de datos que pueden obtenerse para conocer
un entorno de forma (estadísticamente) más precisa tanto de forma directa (big data) como
indirecta (minería de datos). (Terán et al., 2017)
comunicación del Internet de las Cosas (IoT) y como red nerviosa del nuevo mundo digital que
combina personas y objetos. (Weyrich, Schmidt, & Ebert, 2014)
una fábrica hacen posible controlar, automatizar y mejorar los procesos; expandir los negocios
con seguridad y costes reducidos. La fabricación y producción de bienes se ve potenciada por
las posibilidades que traen estas nuevas tecnologías. (Weyrich et al., 2014)
13
La tecnología de comunicación M2M lleva con nosotros desde hace más de una década en
forma de gestión de flotas, redes de sensores y otras aplicaciones industriales, pero su progreso
ha sido lento y se han hecho eco de él sobre todo las publicaciones especializadas. En la
actualidad existen indicios de que la M2M está a punto de generalizarse y convertirse en el
Ahora que las redes inalámbricas son fiables y accesibles en casi todo el mundo, nos
encontramos con que los emprendedores de distintos sectores están participando activamente
necesidad que tienen los operadores inalámbricos de expandirse más allá de las comunicaciones
de voz, las grandes reducciones en el coste de los chipsets inalámbricos y la conectividad
sea móvil, según indica la rápida aceptación del smartphone y las tabletas inalámbricas. (Terán
et al., 2017)
Cada entorno del IIoT necesita un protocolo con capacidades diferentes, lo que hace realmente
específico de qué protocolo tiene que ser usado para un determinado número de nodos, el
2016)
De acuerdo con Thota & Kim (2016), La oportunidad de M2M es dinámica y está creciendo
Esto se debe a que los objetos cotidianos que estamos usando están siendo actualizados,
14
abordados, reconocidos y controlados a través de redes. Los protocolos que permiten realizar la
comunicación M2M son:
Ambos protocolos mencionados anteriormente son estándares abiertos y son más adecuados
para entornos restringidos que el protocolo de transferencia de hipertexto (HTTP). Ambos
protocolos tienen amplia gama de implementaciones para diferentes requisitos en el campo del
IIoT, así como también ambos proporcionan mecanismos para la comunicación asíncrona y se
MQTT se desarrolló originalmente en IBM en 1999, donde fue diseñado para ser liviano, ancho
de banda eficiente, fácil de implementar, independiente de los datos entregados, conscientes de
la sesión y capaces de proporcionar QoS (Qualityof Service) para los datos entregados. Durante
sus primeros días, MQTT se usó internamente en IBM para sistemas integrados patentados. Sin
embargo, en 2010 IBM decidió lanzar el protocolo libre de regalías para que todos lo usen. En
ese momento, el protocolo llevaba la versión número 3.1. Unos años más tarde, MQTT se
MQTT (Message Queue Server Telemetry Transport) es una norma ISO (ISO / IEC PRF 20922),
la red es limitado. Su sistema consiste en clientes que se comunican con el servidor central,
como publicadores de información o suscriptores; existe desacoplamiento total entre editores y
15
transferencia de mensajes es por publicaciones/suscripciones, Topología en forma de estrella
con un broker central, no se manejan metadatos, existe niveles de calidad del servicio y
usado en el “internet de las cosas”, realiza la función de “message broker” para permitir la
comunicación entre los diferentes clientes interconectados. MQTT se basa en un patrón de
publicación-suscripción donde los mensajes se entregan entre clientes a través del intermediario
de mensajes central. Aunque el protocolo se considera simple y fácil de implementar, todavía
hay características numéricas que pueden no ser evidentes y, por lo tanto, requieren una
exploración cercana para comprender cómo funciona realmente el protocolo. Las características
MQTT usa un tópico para definir un canal de comunicación entre los equipos. Aquellos que
deseen recibir datos necesitan suscribirse bajo ese tópico en el bróker y así se los relacionará
con un canal de comunicación, mientras que los dispositivos que deseen enviar datos
16
necesitarán publicarlos bajo el tópico que relaciona al canal de comunicación deseado. En este
protocolo, cuando un nuevo dato está disponible, su bróker simplemente envía los nuevos
datos a cualquier dispositivo suscrito en éste. A diferencia de otros protocolos, éste no necesita
enviar mensajes constantes de solicitud para refrescar nuevos datos, por tanto, maneja una
carga inferior de paquetes lo que lo hace más rápido. (Osathanunkul, Hantrakul, Pramokchon,
Khoenkaw, & Tantitharanukul, 2017)
Este protocolo está diseñado para entornos donde se tiene recursos limitados y responde a las
siguientes necesidades:
De acuerdo con la especificación del protocolo MQTT publicada por OASIS (2019) cuando un
cliente establece una conexión con el intermediario, envía el paquete CONNECT al
sucede si el cliente se desconecta del intermediario sin gracia, o si se deben almacenar mensajes
particulares para el cliente si se desconecta. Los más esenciales se describen a continuación.
también es posible establecer el identificador del cliente vacío. En tal caso, la conexión no
tiene estado y el cliente no puede establecer una sesión persistente con el agente.
2) Con el indicador de sesión limpia, el cliente indica si desea establecer una sesión limpia o
persistente con el intermediario. Si se solicita una sesión limpia (indicador establecido en
17
verdadero), el intermediario no restaurará ni comenzará a almacenar ningún estado para el
cliente y purgará toda la información de la sesión persistente anterior. Sin embargo, si el
realizadas por el cliente en la sesión anterior se restauran y se envían mensajes que el cliente
se había suscrito (con QoS 1 o 2) y que se recibieron cuando el cliente estaba desconectado.
4) Last will, se utiliza para notificar a otros clientes si un cliente se desconecta sin gracia del
intermediario. En caso de tal evento, el intermediario, en nombre del cliente desconectado,
5) Keep alive, se utiliza como un intervalo de tiempo que puede transcurrir entre mensajes
consecutivos enviados desde el cliente al intermediario. En caso de que no se envíen
mensajes, el cliente envía una solicitud PING al agente, que debe responder con la respuesta
PING. Este mecanismo se utiliza para determinar si cualquier lado de la comunicación aún es
accesible.
y viceversa. El acuerdo de QoS es específico del cliente y del tema: cuando el cliente publica
mensajes en el tema, establece el nivel de QoS de forma independiente para cada mensaje y
cuando el cliente suscribe mensajes, establece independientemente el nivel de QoS para cada
tema. El nivel de QoS, por lo tanto, puede degradarse. Esto sucede si un cliente publica con una
QoS más alta que otro ha suscrito el mismo tema. Como se mencionó anteriormente, hay tres
18
niveles distintos de QoS en MQTT: 0 (como máximo una vez), 1 (al menos una vez) y 2
(exactamente una vez). (OASIS, 2019)
Con el nivel 0 de calidad de servicio, que también es el más simple de los niveles, el remitente
simplemente envía el paquete PUBLISH sin esperar ninguna confirmación o reconocimiento del
receptor. En tal caso, el paquete PUBLISH se recibe como máximo una vez. En QoS nivel 1, cada
paquete PUBLISH se recibe al menos una vez. Cuando se utiliza el nivel 1 de calidad de servicio,
el receptor debe reconocer cada mensaje PUBLISH con el paquete PUBACK. Si el acuse de recibo
no se recibe en un período de tiempo adecuado, el paquete PUBLISH se envía nuevamente, lo
que puede suceder varias veces. Cuando QoS es igual o superior a 1, todos los paquetes
PUBLISH transmitidos se identifican con el campo identificador de paquete (tiene un valor
mayor que cero). El uso del receptor de campo sabe qué paquete reconoce con el paquete
PUBACK. Con QoS 0 el campo identificador de paquete se establece en 0. (OASIS, 2019)
El nivel de calidad del servicio 2 asegura que el receptor procese cada paquete PUBLISH
exactamente una vez. En la calidad del servicio 2, se envían un mínimo de cuatro paquetes entre
utilizando su identificador de paquete. Esto es para evitar que el receptor procese el mismo
paquete PUBLICAR dos veces. El paquete PUBLISH es reconocido por el receptor con el paquete
recibido con éxito. Cuando se recibe PUBREC, el remitente almacena la referencia a este paquete
y responde con el paquete PUBREL (también contiene el identificador de paquete original).
Después de recibir PUBREL el paquete, el receptor puede descartar todos los estados
relacionados con la identificación del paquete y responder con el paquete PUBCOMP.
PUBCOMP es el paquete final y finaliza la entrega del paquete QoS nivel 2. Si el paquete
asumido no se recibe en una ventana de tiempo adecuada en cualquiera de las etapas de
19
En el modelo de PUB/SUB manejado por MQTT, el publicador puede definir la Calidad de
Servicio (QoS) para la entrega de mensajes en tres niveles:
1) Nivel 0:"A lo sumo una vez", este nivel de servicio garantiza que un mensaje podría
entregarse de acuerdo al mejor esfuerzo, donde la pérdida puede ocurrir.
2) Nivel 1:"Al menos una vez", donde se garantiza la llegada de los mensajes, pero pueden
producirse duplicados.
3) Nivel 2:"Exactamente una vez", donde se garantiza que el mensaje llegue exactamente una
vez. Para esto el publicador deberá guardar el mensaje hasta que el intermediario confirme
3.4.3 SEGURIDAD
deben cifrar los datos de la aplicación o verificar su integridad cuando se transportan dentro de
los paquetes PUBLICAR. Aunque el protocolo MQTT podría no tener diversas características con
respecto a la seguridad, hay varias formas de incorporarlos. Por ejemplo, TLS se puede usar
como protocolo subyacente en lugar de texto plano TCP para proporcionar autenticación,
El identificador del cliente, el nombre de usuario y la contraseña se envían dentro del paquete
CONNECT cuando se establece la conexión con el agente. Cuando se usan credenciales, el
agente autentica al cliente y autoriza qué recursos (esencialmente temas) se les permite usar.
Por supuesto, esto requiere que el intermediario deba estar configurado correctamente antes de
que los clientes comiencen a conectarse a él. También es importante tener en cuenta que toda
esta información (identificador de cliente, nombre de usuario y contraseña) se envía de forma
clara con el paquete CONNECT y, por lo tanto, es visible para cualquier equipo de red
20
intermedio si se transfiere en la parte superior de la conexión TCP de texto plano. Debido a esto,
el paquete CONNECT (si se usan credenciales) siempre debe estar en la parte superior del
protocolo que proporciona confidencialidad para los datos transferidos. (HiveMQ, 2015)
OASIS (2019) especificó que el estándar MQTT define catorce tipos diferentes de paquetes de
control. Estos son CONNECT (1), CONNACK (2), PUBLISH (3), PUBACK (4), PUBREC (5), PUBREL
(6), PUB-COMP (7), SUBSCRIBE (8), SUBACK (9), UNSUBSCRIBE (10), UNSUBACK (11), PINGREQ
(12), PINGRESP (13) y DESCONECTAR (14). El tipo en forma numérica (utilizado para diferenciar
paquetes a nivel de protocolo) se presenta entre paréntesis. A continuación, se incluye una
con el intermediario.
2) PUBLISH, PUBACK, PUBREC, PUBREL y PUBCOMP se utilizan cuando los datos de la
suscripciones.
4) PINGREQ y PINGRESP se utilizan para verificar que el cliente y el agente estén vivos y
accesibles.
Los paquetes MQTT constan de tres partes. Estos son encabezado fijo, encabezado variable y
carga útil. El encabezado fijo siempre está presente, mientras que la existencia de los otros dos
depende de un paquete. Las partes siempre se organizan de modo que el encabezado fijo sea
El encabezado fijo tiene tres campos. Estos son tipo de paquete, banderas y longitud restante.
Tanto el tipo de paquete como las banderas reservan cuatro bits. El tipo de paquete, como su
nombre indica, contiene el tipo de paquete. Las banderas son específicas para cada paquete (no
21
se utilizan en la mayoría de los casos). La longitud restante especifica cuántos bytes quedan en
el paquete restante (excluyendo el encabezado fijo). Utiliza codificación de longitud variable y,
por lo tanto, la longitud total del encabezado fijo varía de 2 a 5 bytes. (OASIS, 2019)
3.5 RASPBERRY PI
Es un ordenador de bajo costo. Consta de una placa base sobre la que se monta un procesador,
un chip gráfico y memoria RAM. Se puede considerar un ordenador completo. La diferencia con
un ordenador normal es que no incluye cable de alimentación, la caja ni el disco duro, para el
que se utiliza una tarjeta SD. Su principal objetivo es el posibilitar realizar pequeños proyectos y
el poder aprendizaje de un lenguaje de programación de forma sencilla, teniendo en cuenta que
nuestros computadores que tenemos en nuestros hogares solo nos sirven para tareas o de ocio.
Esta tecnología fue diseñada con el fin de ser lo más barato posible y poder llegar al mayor
número de personas. La placa Raspberry cuenta con una salida de audio y video a través de un
conector HDMI lo que nos permite conectar la tarjeta a un monitor, como a una televisión desde
luego que cuente con este tipo de conexión. (Eben & Gareth, 2012)
Raspberry no tiene un software específico instalado por ello, este deja que se escoja el mismo,
con la posibilidad escoger entre Raspbian, distintas distribuciones de Linux, Windows IoT, etc.
Este software se instala en una memoria microSD. (Eben & Gareth, 2012)
Caracteristas Descripcion
CPU ARM1176JF-S a 700 MHz(familia ARM11)
Memoria (SDRAM) 512 MB (compartidos con la GPU) desde el 15 de octubre de 2012
Almacenamiento integrado SD/MMC/ranura para SDIO
Conectividad de red 10/100 Ethernet (RJ-45) via hub USB
Consumo energetico 700 mA, (3.5W)
Fuente de alimentacion 5 V via Micro USB o GPIO header
Dimensiones 85.60mm x 53.98MM
Sistemas operativos soportados Debian (Raspian), Fedora, Arch Linux, Slackware Linux, RISC OS
Fuente: (Eben & Gareth, 2012)
22
Debido a sus características físicas mostradas en la Tabla 1, la raspberry pi es una herramienta
que posee la tecnología utilizada para la generación, adquisición, almacenamiento y análisis de
datos y que permitiera la conexión entre ellos, independiente del hardware. De esta manera se
determinó utilizar este microcontrolador de placa reducida por tener una amplia gama de
aplicaciones generalmente orientadas al uso del software y también tomando en cuenta que
tiene la capacidad de alojar varios lenguajes de programación.
23
CAPÍTULO IV. METODOLOGÍA
apropiada el marco teórico, y las bases para la presente investigación se procede con la
metodología. En el presente capítulo se determina la metodología de la investigación a utilizar
para recabar información valiosa para la investigación. La realización del presente proyecto de
investigación se hará de manera secuencial y probatoria. Se medirán las diferentes variables de
4.1 ENFOQUE
del proyecto. Se estipuló el desarrollo del proyecto en un tiempo determinado ya que se tuvo
un cronograma de actividades a realizarse.
La investigación es de tipo descriptiva ya que analiza e implementa una nueva tendencia que
implica el internet de las cosas y la industria 4.0, además, es de tipo documental y experimental,
un periodo de tiempo.
24
4.2 VARIABLES DE INVESTIGACIÓN
Las variables de investigación son de mucha importancia ya que son los objetos de estudio. En
esta investigación, se definieron las variables de investigación, se evaluaron diferentes variables
que afectan directamente la efectividad y funcionamiento de la red IoT, entre ellas fueron:
1) Independiente
2.1) Latencia
2.2) Tiempo de respuesta
2.5) Servidor
Para el presente proyecto se recopiló información de fuentes confiables como ser revistas
científicas, libros y diversas revistas sobre el tema. Se configuró el protocolo MQTT para
implementar una red establece y funcional. Se diseñó algoritmos para el funcionamiento de la
red en el software respectivo de cada dispositivo a utilizar, para el PLC Siemens S7-1200 se
utilizó TIA Portal para ejecutar el funcionamiento esperado, para la Raspberry Pi 3 se utilizó su
4.4 MATERIALES
Los materiales necesarios para el funcionamiento y comunicación estable de la red IoT con el
25
Ilustración 4-PLC Siemens S7-1200
En la ilustración 4, se presenta el PLC utilizado, de marca Siemens modelo S7-1200, fue utilizado
2) Raspberry Pi 3
la red, se utilizó en uno de los métodos implementados se utilizó como bróker de la red MQTT y
en el otro método se implementó como servidor
26
3) Pistones
4) Cables UTP
5) TIA Portal
Software utiliza para implementar la lógica del PLC, necesaria para el funcionamiento de la red
IoT.
6) Raspbian
Sistema Operativo utilizado por la Raspberry Pi, en la cual se programó para su respectivo
funcionamiento.
En la ilustración 4 se describen las cuatro etapas seguidas para la realización del presente
27
En la etapa de implementación, se desarrolló y estableció una red de comunicación que permita
enlazar la Raspberry Pi con el dispositivo de control, el PLC Siemens 1200. Se configuró el
protocolo MQTT en esta red, se desarrolló un algoritmo que permite el uso del protocolo MQTT
en una red industrial, además, se implementó un algoritmo apropiado en el autómata
programable para efectuar la comunicación con la Raspberry Pi y el uso del protocolo MQTT.
En la siguiente etapa, análisis, luego de hacer establecido una red funcional, se procedió a la
evaluación de la red, se midieron las variables establecidas en el presente capítulo. Se obtuvo los
datos de latencia y capacidad de almacenamiento de información que presentó la red con el
uso del protocolo MQTT en la red de IoT industrial con el uso del PLC Siemens-1200 y la
Raspberry Pi3.
En la última etapa, resultados, donde toda la literatura obtenida en el desarrollo de este trabajo
permite implementar el protocolo MQTT y obtener conclusiones y recomendaciones del
Tal como lo manifiesta Corbin (2002), para construir una teoría bien desarrollada, integrada y
exhaustiva, un investigador debería elegir el método más conveniente, teniendo en mente que
siempre es necesaria una interacción de métodos que lo complementen, además, es importante
señalar que independientemente del método que se utilice, la fuerza motriz siempre deberá ser
la teoría en su constante evolución.
proyecto de investigación sobre red IoT, donde observa de manera objetiva la latencia que
presenta la red implementada.
28
4.7 CRONOGRAMA DE ACTIVIDADES
29
CAPÍTULO VI. RESULTADOS Y ANÁLISIS
5.1 DESCRIPCIÓN
En la implementación realizada se creó una red con un protocolo del internet de las cosas,
MQTT, el cual es un protocolo de comunicación M2M de tipo message queue. Se utilizó este
las cosas. Se utilizó la Raspberry PI 3, (ver ilustración 5), como broker del protocolo MQTT, este
se podría decir que es el corazón de cualquier protocolo de publicación/suscripción. La
Raspberry Pi 3 es responsable de recibir todos los mensajes, filtrar los mensajes, determinar
quién está suscrito a cada mensaje y enviar el mensaje a estos clientes suscritos, además de que
mantiene las sesiones de todos los clientes persistentes, incluidas las suscripciones y los
mensajes perdidos.
Por lo tanto, la Raspberry es la central a través del cual debe pasar cada mensaje, por ello, es
importante que esta sea escalable, integrable en sistemas de back-end, fácil de monitorear y
resistente a fallas.
30
El autómata programable, PLC Siemens S7-1200 actuo como un cliente MQTT. El cliente puede
ser tanto editor como suscriptor. Las etiquetas de editor y suscriptor se refieren así el cliente
dispositivos pueden comunicarse a través de una pila TCP/IP. El cliente MQTT, el PLC Siemens
S7-1200 se logró configurar con na librería la cual permite la comunicación con el broker,
Raspberry Pi 3, asi como la publicación y suscripción y los diferentes mensajes del protocolo
MQTT, especificados en el marco teórico.
Se utilizó el software TIA Portal para configurar el cliente de la red implementada, el PLC,
Siemens S7-1200. Aquí se configuró el PLC para establecer comunicación a la red, se le asignó
5.2 IMPLEMENTACIÓN
Una vez descrito de manera detallada el proceso a realizar, así como sustentado todo el
dispositivos se utilizaron cable de cobre RJ45, o Ethernet, el cual permitía comunicar el PLC,
como cliente de la red IoT, con la Raspberry Pi 3, como broker de la red IoT.
5.2.1 CONEXIONES
Fue necesario la instalación de los medios por los cuales los paquetes serán transportados,
permitiendo la comunicación entre el broker y n cliente dentro una red del internet de las cosas
31
Ilustración 8-Conexiones del cliente MQTT
cliente, el PLC Siemens S7-1200, hacia el broker, la Raspberry Pi3, a través del cable UTP, RJ45,
Ethernet. Además, se muestran conexiones de proceso de control del plc.
32
Ilustración 9-Conexiones del broker MQTT
se comunica con el PLC Siemens S7-1200 a través del cable Ethernet. Luego la Raspberry Pi 3, es
conectado a la red inalámbrica dada por el router instalado, permitiendo la conexión a internet
El broker en esta red IoT con el protocolo MQTT fue la Raspberry Pi 3, por lo tanto, fue
33
Raspberry Pi 3 permite la instalación de diferentes sistemas operativos, desde sistemas
operativos basados en Windows o Linux. Para la realización de las configuraciones para el
luego se anexo una tarjeta microSD a la Raspbrry Pi 3, con este proceso el sistema operativo ya
está instalado en la Raspberry Pi 3.
La primera vez para iniciar la Raspberry se debe conectar un teclado y un mouse a los
respectivos puertos USB con el fin de lograr realizar las configuraciones iniciales del sistema.
34
Ilustración 11-Configuración inicial de la Raspberry Pi 3
configuró la clave y el hostname para mayor seguridad de la red, para que nadie más logre
acceder sin la autorización brindada, además, se activó el acceso remoto con VNC.
configurarla fue necesario editar un fichero en la Raspberry, agregando y modificando las líneas
indicadas.
35
Ilustración 12-Lista de resoluciones de la pantalla HDMI
Se presenta en la ilustración 12, las diferentes resoluciones disponibles para configurar la salida HDMI de
la Raspberry. Se cambió al modo 16, con una resolución de 1080p con 60 Hz de refresco de imagen,
como se muestra en la ilustración 13, estos datos fueron modificados en el fichero de la Raspberry Pi.
36
Ilustración 14-Actualización de sistema operativo Raspbian
Se actualizo el sistema de la Raspberry Pi, ver ilustración 14, para mantenerlo con las últimas
modificaciones añadidas. Esto se realiza ingresando el comando: “sudo apt-get updtade” y
Posteriormente se instaló el servido apacha, el cual es un servidor web HTTP de código abierto,
para plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que
implementa el protocolo HTTP/1.1 y la noción de sitio virtual. Apache presenta entre otras
características altamente configurables, bases de datos de autenticación y negociado de
contenido, pero fue criticado por la falta de una interfaz gráfica que ayude en su configuración.
Apeche es modular, es de código abierto, multi-plataforma y extensible. Apache es el
37
componente de servidor web en la popular plataforma de aplicaciones LAMP, junto a MySQL y
los lenguajes de programación PHP/Perl/Python (y ahora también Ruby).
Por ello, también se instaló PHP 7, el cual es un lenguaje de programación de propósito general
de código del lado del servidor originalmente diseñado para el preprocesador de texto plano,
PHP no genera HTML, sino que ofrece una salida de texto con codificación UTF-8 compatible
con los documentos HTML. Fue uno de los primeros lenguajes de programación del lado del
módulo de procesador de PHP que genera el texto plano en formato UTF-8, ampliamente
reconocido por el estándar HTML, dando como resultado, en los exploradores, una salida al
38
Ilustración 16-Servidor apache 2
Una vez configurado la Raspberry Pi, con la configuración inicial asi como el servidor http,
Apache, instalado, se procedió a instalar mosquitto, el cual es el que le permite a la Raspberry Pi
39
Ilustración 17-Instalación de mosquitto
mosquitto. El envío, así como la recepción de mensajes son directos, con solo suscribirse al
broker y al tópico se pudo realizar una comunicación eficaz, con las configuraciones realizadas.
Luego se procedió a instalar Node-RED, el Node-RED es un motor de flujos con enfoque IoT,
que permite definir gráficamente flujos de servicios, a través de protocolos estándares como
REST, MQTT, Websocket, AMQP, además, de ofrecer integración con apis de terceros, tales
Node-RED se trata de una herramienta visual muy ligera, programada en NodeJS y que puede
ejecutarse desde en dispositivos tan limitados como una Raspberry, hasta en plataformas
complejas como IBM Bluemix, Azure IoT o Sofia2 Platform. El editor de flujos de Node-RED
consiste en una sencilla interfaz en HTML, accesible desde cualquier navegador, en la que
arrastrando y conectando nodos entre sí, es posible definir un flujo que ofrezca un servicio. Es
40
una herramienta de código abierto, una de las características más notables de Node-RED es la
sencillez con la que se pueden crear nuevos nodos e instalarlos.
el módulo UI, posteriormente, se reinicia el programa para guardar los cambios. Para entrar al
Node-RED, se debe ingresar al navegador web y escribir en la barra de búsqueda
1880.
En la ilustración 19, se muestra el resultado al ingresar la dirección local en el puerto 1880 del
navegador web, la interfaz del Node-RED. En la parte en cuadro azul, se encuentra la lista de
41
selección de nodos, donde aparecen todos los nodos entrada, salida y programación, entre
otros, instalados en Node-RED. En la ventana verde se encuentra el espacio de programación,
donde se ubican, arrastrándolos, los nodos y se vinculan entre ellos para formar flujos y de tal
manejar sea crea la lógica de la programación. Y en la ventana anaranjada, se muestra
Una vez configurado la Raspberry Pi como broker de la red IoT, es necesario establecer
comunicación entre el autómata programable, el PLC Siemens S-1200, y la Raspberry Pi. Para
Snap7 es un software multi plataforma para comunicarse de igual manera que lo harían de
forma nativa los PLCs Siemens, empleando tecnología Ethernet y protocolo S7. Snap7 es un
software de código abierto, el cual soporte muchas plataformas de sistemas operativos. Dentro
de snap7, se definen 3 componentes principales los cuales son, cliente, servidor y partner.
La implementación del protocolo S7, base de las comunicaciones entre dispositivos SIEMENS, se
soporta sobre una ampliación del protocolo TCP recogida en la RFC 1006 y titulada como “ISO
Transport Service on top of TCP”. Esto es necesario ya que TCP está orientado al envío de datos
no transmitiendo información sobre la longitud de la información contenida o sobre cuándo
reconocer, ahora sí, dónde terminan y finalizan cada uno de ellos. Con RFC 1006, se logra esto
último ya que se incluye una cabecera que lo define, y por tanto, garantiza el proceso.
42
Resumiendo, RFC 1006 es una aplicación dirigida a mensajes, pero basada en TCP que está
basado en datos.
instalados.
En la ilustración 21, se muestran los nodos instalados para lograr establecer comunicación de la
red IoT. Luego se reinició y se obtuvieron nuevas entradas y salidas para configurar en el
diagrama de Node-RED. Y se finalizó configurando el diagrama de flujo, donde se estableció al
43
autómata programable, Siemens S7-1200 como cliente y a la Raspberry Pi 3, como servidor y asi
mismo broker de la red de internet de las cosas con el uso del protocolo MQTT.
El cliente en la red IoT es el PLC Siemens S7-1200, el cual es suscriptor y editor de la red, el cual
puede realizar publicaciones y suscripciones, comunicando y estableciendo todas estas acciones
Fueron necesario realizar configuraciones en la protección del PLC para lograr establecer
comunicación en la red IoT.
44
En la ilustración 22, se presenta los cambios realizados en la protección del PLC Siemens S7-
1200 a través del software TIA Portal, se garantizó total acceso de todos los paquetes que recibe
el PLC. Además, se permitió el acceso con PUTGET, el cual permite la comunicación con un
dispositivo remoto.
En la ilustración 23, en el primer bloque de programación se agregaron 4 variables, 3 que son entradas y 1
salida, en el principio M0.1 sirve para accionar el motor Q0.0 así mismo se mantiene en un ciclo a menos
que M0.2 sea activado este sirve como un paro de emergencia. En el segundo empieza el primer ciclo del
45
Ilustración 24-Configuración del PLC, parte II
En la ilustración 24, se encuentra el bloque 3 y 4 de programación estos son el segundo y tercer ciclo del
46
Ilustración 25-Configuración del PLC, parte III
El quinto y sexto bloque de programación se encuentran en la ilustración 25, estos contienen el último
ciclo del motor y el reinicio de ciclo completo. El último bloque sirve para que el motor llegue a 0 Hz y
reinicie el ciclo completo del motor, si este no se activa luego de 50 segundos activara M0.2 el cual
5.3 RESULTADO
Para que una red sea funcional, debe existir comunicación entre los dispositivos deseados, en
este caso se desea establecer comunicación entre el PLC como cliente y la Raspberry Pi 3 como
47
Fuente: Elaboración Propia
generó un ping desde la Raspberry Pi con la dirección IP 192.168.43 hacia la dirección IP del PLC
la cual tiene la dirección IP 192.168.43.232, se obtuvo un tiempo de respuesta estimado de
23.4ms.
Se creó un diagrama de flujo donde se configuró la red IoT con el protocolo MQTT, como se
48
Ilustración 28-Configuración del Node-RED, parte II
Existen diferentes métodos para lograr el establecimiento de una red de internet de las cosas
con el protocolo MQTT. Otra forma para implementarlo es con el uso de una librería de MQTT
CLIENTE del PLC Siemens S7-1200, y el uso de otro dispositivo Siemens para que sea el broker
de la red IoT, el cual es el SIMATIC IoT 2040.
El SIMATIC IoT 2040 fue creado como pasarela inteligente para las soluciones de IoT industrial,
permite la interconexión de las plantas existentes a la nube, permite la armonización entre las
una red IoT con el protocolo MQTT, ya que permite la distribución y recepción de mensajes de
manera adecuada.
El PLC de igual manera actuaría como cliente de la red IoT realizando las respectivas
publicaciones en un tópico en específico. Con la diferencia que no se utilizaría el software
SNAP7 para establecer la comunicación entre el broker SIMATIC IoT 2040 con el cliente el PLC
Siemens S7-1200, debido a la librería de MQTT Client.
49
Ilustración 30-Librería MQTT Client Siemens
En la ilustración 30, se muestra la librería a utilizar para lograr la comunicación entre el PLC
Siemens S7-1200 y el SIMATIC IoT 2040 en la red IoT con el protocolo MQTT.
Por lo tanto, la diferencia entre estos métodos es el uso de un diferente hardware para ser el
Artículo Precio
Raspberry Pi 3 Modelo B+ $42
SIMATIC IoT 2040 $320
Fuente: Elaboración Propia
En la tabla 2, se muestra el precio que posee la Raspberry Pi 3 Modelo B+ y el SIMATIC IoT 2040
con una diferencia total de $278. El SIMATIC IoT 2040 con un precio de $278 más que la
Raspberry Pi 3. Esto se debe a que a que el SIMATIC IoT 2040 es un equipo más robusto, puede
soportar de una mejor manera cualquier ambiente, ya que están diseñadas para el entorno
industrial. En cambio, la Raspberry Pi 3, con los diferentes accesorios y carcasas que
50
proporcionan mayor robustez, no están diseñadas para el entorno industrial y, por lo tanto, sus
condiciones de operación pueden no ser adecuadas en algunas industrias. Otro detalle a
en el uso industrial, el cual puede ser crucial en una planta en específico. A pesar de ello, la
Raspberry Pi 3, posee una gran capacidad para un precio tan cómodo, además de que cuenta
con una gran comunidad open source, lo cual hace que tenga una compatibilidad y
funcionalidad muy extendida gracias a las distinta librerías y programas existentes y también
cuenta con una gran cantidad de accesorios existentes de los cuales hay mucha variedad debido
a su extendida popularidad.
51
CAPÍTULO VI. CONCLUSIONES
Se diseñó e implementó una red de comunicación de internet de las cosas con el uso del
protocolo MQTT, utilizando una Raspberry Pi 3 como broker de la red IoT, con el uso de
mosquitto. El PLC Siemens S7-1200 fue establecido como cliente de la red, el cual hacia
52
Raspberry Pi, además, de SNAP7 el cual es un conjunto de comunicaciones Ethernet
multiplataforma para interactuar de forma nativa con PLC Siemens S7 y permitió la
y suscripciones en la red, los cuales eran recibidos por el broker, la Raspberry Pi.
2) Para la comunicación entre la Raspberry Pi y el PLC Siemens S7-1200 fue necesario el uso
snap7, junto con Node-RED para lograr comunicar estas dos máquinas. MQTT es un
protocolo de menor consumo de energía, lo que permite usar este sistema 24/7, además, de
comunicar a las máquinas entre sí, se determinó una velocidad de respuesta de 23.4ms.
4) La Raspberry Pi 3 Modelo B+ es un gran dispositivo para ser un broker apropiado dentro de
una red IoT, posee grandes capacidades al igual que el SIMATIC IoT 2040, con la gran
diferencia que el SIMATIC IoT 2040 está diseñado para cualquier ambiente industrial en
cambio la Raspberry Pi aun con diferentes carcasas no es apta para cualquier ambiente.
Una vez elaboradas las conclusiones y en base a estas se realizan las recomendaciones a la
investigación.
53
1) Se recomienda utilizar software y protocolos de comunicaciones que sean open source, esto
debido a que primeramente son de menor costo y al ser open source, existen más librerías y
ayuda para trabajar o implementar con algún equipo en específico, por ejemplo, Node-RED
y SNAP7.
2) Si la red se va a instalar en una planta industrial, donde el equipo está expuesto a diferentes
cosas que pueden afectar el rendimiento del equipo se recomienda utilizar el SIMATIC IoT
2040 ya que este equipo cuenta con mayor robustez y pertenece a un entorno más
industrial debido a sus características.
54
BIBLIOGRAFÍA
Bonilla, I., Tavison, A., Morales, M., Guajardo, L., & Laines, C. (2016). IOT, el Internet de las Cosas
Cisco. (2011). Internet de las Cosas; Cómo la próxima evolución de Internet lo cambia todo.
Eben, U., & Gareth, H. (2012). Raspberry Pi User Guide (Primera). United Kingdom: John Wiley &
Sons Ltd.
Lindén, E. (2017). A latency comparison of IoT protocols in MES (Master). Linköping University.
Munner, B., Mohammed, Q., & Shadi, A. (2017). Internet of Things: Survey and open issues of
Oliván, R. (2016). La cuarta revolución industrial. Revista de Estudios Urbanos y Ciencias Sociales,
101-111.
55
Osathanunkul, K., Hantrakul, K., Pramokchon, P., Khoenkaw, P., & Tantitharanukul, N. (2017).
https://www.raspberrypi.org/products/raspberry-pi-3-model-b-plus/
Sabalza. (2016). Reflexiones sobre la Industria 4.0 desde el caso vasco. Ekonomiaz, 142-173.
https://new.siemens.com/global/en/products/automation/systems/industrial/plc/s7-
1200.html
Terán, O., Espinosa, E., Hernández, P., & Flores, J. (2017). Internet de las Cosas Iot como
Thota, P., & Kim, Y. (2016). Implementation and Comparison of M2M Protocols for Internet of
Things.
Val Román, J. (2017). Industria 4.0: La transformación digital de la industria. coddiingorme, 1-10.
Villanueva, M. (2016). La Industria 4.0, una prioridad. Revista de la Asociación Española para la
Calidad, 1-51.
56
Villena Albert, R. (2017). Proyecto de Integración de Autómata Programable Simatic S7-1200 en
Weyrich, M., Schmidt, J., & Ebert, C. (2014). Machine-to-Machine Communication. IEEE, 19-23.
Ynzunza, C., Izar, J., Aguilar, F., & Larios, M. (2017). El Entorno de la Industria 4.0: Implicaciones y
57