Está en la página 1de 5

IMPLEMENTACION SERVIDOR

MQTT EN RASPBERRY
CONEXION CON ESP32
UNIVERSIDAD CATOLICA BOLIVIANA

MARIA BELEN FRANCO


LUIS FELIPE NUÑEZ
EVELYN PLATA CANAVIRI

| Internet de las Cosas | 17/05/2022


Resumen
En el presente documento veremos la implementacion de un servidor MQTT en un
Raspberry Pi 4 y realizaremos conexión con una placa ESP32. Explicaremos los pasos
relizados para el trabajo

1. Conectar RaspberryPi 4 e instalar el sistema operativo del mismo


(Raspbian)

2. Instalar MOSQUITTO en el raspberry

3. Configurar MOSQUITTO (sub-pub) y comprobar que funciona


correctamente

4. Conectar la placa ESP32 a wifi

5. Realizar la conexión con el broker mosquitto y el ESP32

PROTOCOLO MQTT
MQTT son las siglas MQ Telemetry Transport, aunque en primer lugar fue conocido
como Message Queing Telemetry Transport. Es un protocolo de comunicación M2M
(machine-to-machine) de tipo message queue.

Está basado en la pila TCP/IP como base para la comunicación. En el caso de MQTT
cada conexión se mantiene abierta y se "reutiliza" en cada comunicación. Es una
diferencia, por ejemplo, a una petición HTTP 1.0 donde cada transmisión se realiza a
través de conexión.

MQTT fue creado por el Dr. Andy Stanford-Clark de IBM y Arlen Nipper de Arcom
(ahora Eurotech) en 1999 como un mecanismo para conectar dispositivos empleados
en la industria petrolera.

Aunque inicialmente era un formato propietario, en 2010 fue liberado y pasó a ser un
estándar en 2014 según la OASIS (Organization for the Advancement of Structured
Information Standards).

El funcionamiento del MQTT es un servicio de mensajería push con patrón


publicador/suscriptor (pub-sub). Como vimos en la entrada anterior, en este tipo de
infraestructuras los clientes se conectan con un servidor central denominado broker.

Para filtrar los mensajes que son enviados a cada cliente los mensajes se disponen en
topics organizados jerárquicamente. Un cliente puede publicar un mensaje en un
determinado topic. Otros clientes pueden suscribirse a este topic, y el broker le hará
llegar los mensajes suscritos.

PÁGINA 1
CONEXIÓN CON EL BROKER
Para realizar la conexión del ESP32 con el broker mosquitto previamente instalado en
el Raspberry pi implementamos el siguiente codigo en el IDE Arduino.

1. Implementamos las librerias necesarias

2. En el VoidSetUp definimos las funciones que realizara el ESP32

3. En el VoidLoop preguntamos si el cliente esta desconectado si lo esta llamamos


a la funcion Recconect

PÁGINA 2
4. En la funcion VoidSetUpWifi definimos las funciones para conectarnos a WIFI

5. En el VoidRecconect es donde se realiza la conexión MQTT la funcion crea un


cliente id, intenta conectar, si esta conectado lo suscribe.

6. La funcion VoidCallback recibe el mensaje de acuerdo al topico

PÁGINA 3
CONCLUSIONES

Los objetivos de MQTT son optimizar el ancho de banda, minimizar los recursos a
nivel de hardware y hacer que las comunicaciones sean fiables.

La típica arquitectura de un sistema MQTT se basa en una red con topología de


estrella donde hay un nodo central llamado Broker por el que pasan todas las
comunicaciones. Los clientes se conectan al Broker para recibir y enviar mensajes.

Un topic es el tema al que se suscriben los clientes y el tema al que se pueden enviar
mensajes.

En este proyecto hemos puesto en práctica lo aprendido montando el Broker MQTT


Mosquitto en una Raspberry Pi. Utilizando como cliente tanto la Raspberry Pi como un
ESP32 hemos visto cómo comunicar estos dos dispositivos y enviar mensajes entre
ellos.

Se trata de un protocolo que tiene muchas posibilidades en el movimiento Maker y


dentro del IoT.MA

PÁGINA 4

También podría gustarte