Вы находитесь на странице: 1из 15

1

Recordando
• ¿Qué es MQTT?
• ¿Qué es un topic y para que sirve?
• ¿Cómo se jerarquizan los topics?
• ¿Qué programa usamos para depurar MQTT?

2
Semana 11

3
Objetivos

• Implementar el protocolo MQTT en Arduino


• Enviar mensajes entre la PC y Arduino por MQTT.

4
Librería Pubsubclient
La librería pubsubclient en combinación con la
librería ethernet y SPI permiten a nuestra tarjeta
de Arduino comunicarse mediante el protocolo
MQTT.

5
Instalación de la libería

6
7
Funciones básicas de la librería
• PubSubClient (client)
Es el constructor que usamos para referirnos en
nuestro programa a la librería pubsubclient.
Debe ser declarado después del constructor de
la librería Ethernet.

8
• PubSubClient setServer (servidor, puerto)
Es la función que se encarga de configurar la
librería Pubsubclient para trabajar con el
servidor y el puerto deseado. Esta función es
llamada en Setup();

9
• PubSubClient setCallback (callback)
Así como configuramos el servidor y el puerto
para nuestra conexión, debemos indicarle a la
librería una función que va a ejecutar cuando
reciba un mensaje. Esta función en este caso se
llama callback. Esta función es llamada en
Setup(); y la función callback debe estar fuera de
Setup(), Loop() o cualquier otra.

10
• boolean connect (clientID)
Es la función encargada de realizar la conexión al
servidor a través del puerto previamente
configurado. Esta función requiere que le
otorguemos el clientID que vamos a usar para la
conexión. Recuerde que el clientID debe ser
único.

11
• int publish (topic, payload)
Esta función nos permitirá enviar un mensaje
MQTT. Debemos otorgarle el topic y el
contenido(payload) que vamos a publicar.

12
• boolean subscribe (topic, [qos])
Esta función nos permite suscribirnos a un topic.
El parámetro [qos] es opcional y 0 por defecto.
Recuerde que al llegar un mensaje se llamará la
función previamente declarada con
setCallback().

13
Ejercicio 1
• Modifique el ejemplo mqtt_basic para enviar
el estado del pin 2 al topic “IOT/(su
nombre)/pin2”. El envío solo debe ser cada
vez que el pin cambie de estado.

14
Ejercicio 2
• Modifique el ejemplo mqtt_basic para
encender un led en el pin 3 si recibe “1” en el
topic “IOT/(su nombre)/pin3”. Si se recibe un
“0” debe apagar el led. Se debe ignorar
cualquier otro contenido.

15

Вам также может понравиться