Diferència entre revisions de la pàgina «Conexión entre la placa IoT-02 y Snap! v9 mediante MQTT»

De binefa.com
Salta a la navegació Salta a la cerca
 
(Hi ha 11 revisions intermèdies del mateix usuari que no es mostren)
Línia 7: Línia 7:
  
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/00_reqMAC.xml Acceso directo a 00_reqMAC.xml]-->
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/00_reqMAC.xml Acceso directo a 00_reqMAC.xml]-->
[http://formacio.things.cat/snap8.2/snap.html#open:../codisSnap/00_recMacSnapBroker2.xml Acceso directo a 00_reqMAC.xml]<!--[https://www.binefa.cat/training/snap/iot-02/00_reqMAC.xml Código en Snap! para saber la MAC]-->[https://www.binefa.cat/training/iot02/snap/00_recMacSnapBroker2.xml Código en Snap! para saber la MAC] y <!--[https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar la MAC en la placa IoT-02]-->[https://www.binefa.cat/training/iot02/IoT-02_mqtt_upcSchool_broker2.zip firmware para gestionar la MAC en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_03 IoT-02_mqtts_03 en GitHub]
+
[http://extensions.snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/jordibinefa/IoT-02/master/codes/snap/00_reqMACSnapBroker1.xml Acceso directo a 00_reqMAC.xml]<!--[https://www.binefa.cat/training/snap/iot-02/00_reqMAC.xml Código en Snap! para saber la MAC]-->[https://www.binefa.cat/training/iot02/snap/00_recMacSnapBroker2.xml Código en Snap! para saber la MAC] y <!--[https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar la MAC en la placa IoT-02]-->[https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upcSchool_broker1.zip firmware para gestionar la MAC en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_03 IoT-02_mqtts_03 en GitHub]
  
 
== Ejercicio 1 de Snap! con MQTT ==
 
== Ejercicio 1 de Snap! con MQTT ==
Línia 21: Línia 21:
  
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/01_ctrlOutputs.xml Acceso directo a 01_ctrlOutputs.xml][https://www.binefa.cat/training/snap/iot-02/01_ctrlOutputs.xml Código en Snap! para controlar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar las salidas digitales en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_04 IoT-02_mqtts_04 en GitHub]-->
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/01_ctrlOutputs.xml Acceso directo a 01_ctrlOutputs.xml][https://www.binefa.cat/training/snap/iot-02/01_ctrlOutputs.xml Código en Snap! para controlar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar las salidas digitales en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_04 IoT-02_mqtts_04 en GitHub]-->
[http://formacio.things.cat/snap8.2/snap.html#open:../codisSnap/01_ctrlOutputsSnapBroker2.xml Acceso directo a 01_ctrlOutputs.xml][https://www.binefa.cat/training/iot02/snap/01_ctrlOutputsSnapBroker2.xml Código en Snap! para controlar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_upcSchool_broker2.zip firmware para gestionar las salidas digitales en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_04 IoT-02_mqtts_04 en GitHub]
+
[http://extensions.snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/jordibinefa/IoT-02/master/codes/snap/01_ctrlOutputsSnapBroker1.xml Acceso directo a 01_ctrlOutputs.xml][https://www.binefa.cat/training/iot02/snap/01_ctrlOutputsSnapBroker2.xml Código en Snap! para controlar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upcSchool_broker1.zip firmware para gestionar las salidas digitales en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_04 IoT-02_mqtts_04 en GitHub]
  
 
== Ejercicio 2 de Snap! con MQTT ==
 
== Ejercicio 2 de Snap! con MQTT ==
Línia 32: Línia 32:
  
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/02_subButtonsPubOutputs.xml Acceso directo a 02_subButtonsPubOutputs.xml][https://www.binefa.cat/training/snap/iot-02/02_subButtonsPubOutputs.xml Código en Snap! para subscribirse al cambio de los botones y publicar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar la publicación/subscripción en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_05 IoT-02_mqtts_05 en GitHub]-->
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/02_subButtonsPubOutputs.xml Acceso directo a 02_subButtonsPubOutputs.xml][https://www.binefa.cat/training/snap/iot-02/02_subButtonsPubOutputs.xml Código en Snap! para subscribirse al cambio de los botones y publicar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar la publicación/subscripción en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_05 IoT-02_mqtts_05 en GitHub]-->
[http://formacio.things.cat/snap8.2/snap.html#open:../codisSnap/02_subButtonsPubOutputsSnapBroker2.xml Acceso directo a 02_subButtonsPubOutputs.xml][https://www.binefa.cat/training/iot02/snap/02_subButtonsPubOutputsSnapBroker2.xml Código en Snap! para subscribirse al cambio de los botones y publicar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_upcSchool_broker2.zip firmware para gestionar la publicación/subscripción en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_05 IoT-02_mqtts_05 en GitHub]
+
[http://extensions.snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/jordibinefa/IoT-02/master/codes/snap/02_subButtonsPubOutputsSnapBroker1.xml Acceso directo a 02_subButtonsPubOutputs.xml][https://www.binefa.cat/training/iot02/snap/02_subButtonsPubOutputsSnapBroker2.xml Código en Snap! para subscribirse al cambio de los botones y publicar las salidas digitales] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upcSchool_broker1.zip firmware para gestionar la publicación/subscripción en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_05 IoT-02_mqtts_05 en GitHub]
 
== Ejercicio 3 de Snap! con MQTT ==
 
== Ejercicio 3 de Snap! con MQTT ==
 
* Dibujar el nuevo diagrama UML, '''02_subButtonsPubOutputs.uxf''', a partir de [https://www.binefa.cat/training/upcSchool/2022/campanaDigital/01_ctrlOutputs.uxf 01_ctrlOutputs.uxf]
 
* Dibujar el nuevo diagrama UML, '''02_subButtonsPubOutputs.uxf''', a partir de [https://www.binefa.cat/training/upcSchool/2022/campanaDigital/01_ctrlOutputs.uxf 01_ctrlOutputs.uxf]
Línia 42: Línia 42:
  
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/03_requestingDigitalInput.xml Acceso directo a 03_requestingDigitalInput.xml][https://www.binefa.cat/training/snap/iot-02/03_requestingDigitalInput.xml Código en Snap! incorporando la lectura del estado del relé de enclavamiento] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la lectura del estado del relé de enclavamiento en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_06 IoT-02_mqtts_06 en GitHub]-->
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/03_requestingDigitalInput.xml Acceso directo a 03_requestingDigitalInput.xml][https://www.binefa.cat/training/snap/iot-02/03_requestingDigitalInput.xml Código en Snap! incorporando la lectura del estado del relé de enclavamiento] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la lectura del estado del relé de enclavamiento en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_06 IoT-02_mqtts_06 en GitHub]-->
[http://formacio.things.cat/snap8.2/snap.html#open:../codisSnap/03_requestingDigitalInputSnapBroker2.xml Acceso directo a 03_requestingDigitalInput.xml][https://www.binefa.cat/training/iot02/snap/03_requestingDigitalInputSnapBroker2.xml Código en Snap! incorporando la lectura del estado del relé de enclavamiento] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_upcSchool_broker2.zip firmware para gestionar, también, la lectura del estado del relé de enclavamiento en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_06 IoT-02_mqtts_06 en GitHub]
+
[http://extensions.snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/jordibinefa/IoT-02/master/codes/snap/03_requestingDigitalInputSnapBroker1.xml Acceso directo a 03_requestingDigitalInput.xml][https://www.binefa.cat/training/iot02/snap/03_requestingDigitalInputSnapBroker2.xml Código en Snap! incorporando la lectura del estado del relé de enclavamiento] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upcSchool_broker1.zip firmware para gestionar, también, la lectura del estado del relé de enclavamiento en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_06 IoT-02_mqtts_06 en GitHub]
 
== Ejercicio 4 de Snap! con MQTT ==
 
== Ejercicio 4 de Snap! con MQTT ==
 
* Verificar que os funciona el ejemplo añadiendo la petición del estado de los tres botones.
 
* Verificar que os funciona el ejemplo añadiendo la petición del estado de los tres botones.
Línia 54: Línia 54:
  
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/04_requestingAnalogInput.xml Acceso directo a 04_requestingAnalogInput.xml][https://www.binefa.cat/training/snap/iot-02/04_requestingAnalogInput.xml Código en Snap! incorporando la lectura analógica de la LDR] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la lectura analógica de la LDR en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_07 IoT-02_mqtts_07 en GitHub]-->
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/04_requestingAnalogInput.xml Acceso directo a 04_requestingAnalogInput.xml][https://www.binefa.cat/training/snap/iot-02/04_requestingAnalogInput.xml Código en Snap! incorporando la lectura analógica de la LDR] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la lectura analógica de la LDR en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_07 IoT-02_mqtts_07 en GitHub]-->
[http://formacio.things.cat/snap8.2/snap.html#open:../codisSnap/04_requestingAnalogInputSnapBroker2.xml Acceso directo a 04_requestingAnalogInput.xml][https://www.binefa.cat/training/iot02/snap/04_requestingAnalogInputSnapBroker2.xml Código en Snap! incorporando la lectura analógica de la LDR] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_upcSchool_broker2.zip firmware para gestionar, también, la lectura analógica de la LDR en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_07 IoT-02_mqtts_07 en GitHub]
+
[http://extensions.snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/jordibinefa/IoT-02/master/codes/snap/04_requestingAnalogInputSnapBroker1.xml Acceso directo a 04_requestingAnalogInput.xml][https://www.binefa.cat/training/iot02/snap/04_requestingAnalogInputSnapBroker2.xml Código en Snap! incorporando la lectura analógica de la LDR] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upcSchool_broker1.zip firmware para gestionar, también, la lectura analógica de la LDR en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_07 IoT-02_mqtts_07 en GitHub]
 
== Ejercicio 5 de Snap! con MQTT ==
 
== Ejercicio 5 de Snap! con MQTT ==
 
* Verificar que os funciona el ejemplo enseñando el valor de luz leída en tanto por ciento (%). Sabiendo que el convertidor analógico a digital es de 12 bits (valor entre 0 y 4095).
 
* Verificar que os funciona el ejemplo enseñando el valor de luz leída en tanto por ciento (%). Sabiendo que el convertidor analógico a digital es de 12 bits (valor entre 0 y 4095).
Línia 66: Línia 66:
  
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/05_requestingTemperature.xml Acceso directo a 05_requestingTemperature.xml][https://www.binefa.cat/training/snap/iot-02/05_requestingTemperature.xml Código en Snap! incorporando la lectura de temperatura del sensor BME280] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la lectura del sensor mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_08 IoT-02_mqtts_08 en GitHub]-->
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/05_requestingTemperature.xml Acceso directo a 05_requestingTemperature.xml][https://www.binefa.cat/training/snap/iot-02/05_requestingTemperature.xml Código en Snap! incorporando la lectura de temperatura del sensor BME280] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la lectura del sensor mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_08 IoT-02_mqtts_08 en GitHub]-->
[http://formacio.things.cat/snap8.2/snap.html#open:../codisSnap/05_requestingTemperatureSnapBroker2.xml Acceso directo a 05_requestingTemperature.xml][https://www.binefa.cat/training/iot02/snap/05_requestingTemperatureSnapBroker2.xml Código en Snap! incorporando la lectura de temperatura del sensor BME280] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_upcSchool_broker2.zip firmware para gestionar, también, la lectura del sensor mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_08 IoT-02_mqtts_08 en GitHub]
+
[http://extensions.snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/jordibinefa/IoT-02/master/codes/snap/05_requestingTemperatureSnapBroker1.xml Acceso directo a 05_requestingTemperature.xml][https://www.binefa.cat/training/iot02/snap/05_requestingTemperatureSnapBroker2.xml Código en Snap! incorporando la lectura de temperatura del sensor BME280] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upcSchool_broker1.zip firmware para gestionar, también, la lectura del sensor mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_08 IoT-02_mqtts_08 en GitHub]
 
== Ejercicio 6 de Snap! con MQTT ==
 
== Ejercicio 6 de Snap! con MQTT ==
 
* Verificar que os funciona el ejemplo añadiendo la petición de la humedad relativa en %, la presión en hPa.
 
* Verificar que os funciona el ejemplo añadiendo la petición de la humedad relativa en %, la presión en hPa.
Línia 80: Línia 80:
 
[[Image:06publishingOledSnap8MI40Broker2.png|center|06_publishingOled.png]]
 
[[Image:06publishingOledSnap8MI40Broker2.png|center|06_publishingOled.png]]
  
[http://formacio.things.cat/snap8.2/snap.html#open:../codisSnap/06_publishingOledSnapBroker2.xml Acceso directo a 06_publishingOLED.xml][https://www.binefa.cat/training/iot02/snap/06_publishingOledSnapBroker2.xml Código en Snap! incorporando la escritura a la pantalla OLED] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_upcSchool_broker2.zip firmware para gestionar, también, la escritura a la pantalla mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_09 IoT-02_mqtts_09 en GitHub]
+
[http://extensions.snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/jordibinefa/IoT-02/master/codes/snap/06_publishingOledSnapBroker1.xml Acceso directo a 06_publishingOLED.xml][https://www.binefa.cat/training/iot02/snap/06_publishingOledSnapBroker2.xml Código en Snap! incorporando la escritura a la pantalla OLED] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upcSchool_broker1.zip firmware para gestionar, también, la escritura a la pantalla mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_09 IoT-02_mqtts_09 en GitHub]
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/06_publishingOLED.xml Acceso directo a 06_publishingOLED.xml][https://www.binefa.cat/training/snap/iot-02/06_publishingOLED.xml Código en Snap! incorporando la escritura a la pantalla OLED] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la escritura a la pantalla mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_09 IoT-02_mqtts_09 en GitHub]-->
 
<!--[http://vps656540.ovh.net/snap/snap.html#open:../iot/2022/20220326/06_publishingOLED.xml Acceso directo a 06_publishingOLED.xml][https://www.binefa.cat/training/snap/iot-02/06_publishingOLED.xml Código en Snap! incorporando la escritura a la pantalla OLED] y [https://www.binefa.cat/training/iot02/IoT-02_mqtt_json_upc-school.zip firmware para gestionar, también, la escritura a la pantalla mediante el protocolo I2C en la placa IoT-02]. [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_mqtts_09 IoT-02_mqtts_09 en GitHub]-->
 
[[Image:MqttTopics20220326.png|center|thumb|Temas MQTT]]
 
[[Image:MqttTopics20220326.png|center|thumb|Temas MQTT]]

Revisió de 02:25, 15 abr 2024

Saber la MAC del ESP32 de la placa IoT-02[modifica]

Listado de prefijos MAC (3 primeros bytes) pertenecientes a Espressif

00_recMacSnap

La petición de la MAC es genérica. Cualquier placa tiene que poder responder. Para que sólo nos conteste su MAC una placa concreta, el firmware propuesto obliga a apretar el botón IO0 en el momento de hacer la petición desde el Snap!. Cuando se recibe por primera vez la MAC se cancela la subscripción (si no se hace, cada Snap! cambiaría la MAC cada vez que cualquier placa IoT-02 enviase su MAC).

Acceso directo a 00_reqMAC.xmlCódigo en Snap! para saber la MAC y firmware para gestionar la MAC en la placa IoT-02. IoT-02_mqtts_03 en GitHub

Ejercicio 1 de Snap! con MQTT[modifica]

  • Verificar que os funciona el ejemplo

Controlando los 4 leds y el relé de enclavamiento[modifica]

Campana digital 01_ctrlOutputs

01_ctrlOutputs.uxf (Se puede abrir con UMLetino)

01_ctrlOutputs

Acceso directo a 01_ctrlOutputs.xmlCódigo en Snap! para controlar las salidas digitales y firmware para gestionar las salidas digitales en la placa IoT-02. IoT-02_mqtts_04 en GitHub

Ejercicio 2 de Snap! con MQTT[modifica]

  • Verificar que os funciona el ejemplo añadiendo el control de los leds amarillo y rojo.

Subscripción a los 3 botones y publicación a las salidas digitales[modifica]

02_subButtonsPubOutputs

Acceso directo a 02_subButtonsPubOutputs.xmlCódigo en Snap! para subscribirse al cambio de los botones y publicar las salidas digitales y firmware para gestionar la publicación/subscripción en la placa IoT-02. IoT-02_mqtts_05 en GitHub

Ejercicio 3 de Snap! con MQTT[modifica]

  • Dibujar el nuevo diagrama UML, 02_subButtonsPubOutputs.uxf, a partir de 01_ctrlOutputs.uxf

Petición del estado de una entrada digital[modifica]

03_requestingDigitalInput.png

Acceso directo a 03_requestingDigitalInput.xmlCódigo en Snap! incorporando la lectura del estado del relé de enclavamiento y firmware para gestionar, también, la lectura del estado del relé de enclavamiento en la placa IoT-02. IoT-02_mqtts_06 en GitHub

Ejercicio 4 de Snap! con MQTT[modifica]

  • Verificar que os funciona el ejemplo añadiendo la petición del estado de los tres botones.
  • Dibujar el nuevo diagrama UML, 03_requestingDigitalInput.uxf

Petición del valor de una entrada analógica[modifica]

04_requestingAnalogInput.png

Acceso directo a 04_requestingAnalogInput.xmlCódigo en Snap! incorporando la lectura analógica de la LDR y firmware para gestionar, también, la lectura analógica de la LDR en la placa IoT-02. IoT-02_mqtts_07 en GitHub

Ejercicio 5 de Snap! con MQTT[modifica]

  • Verificar que os funciona el ejemplo enseñando el valor de luz leída en tanto por ciento (%). Sabiendo que el convertidor analógico a digital es de 12 bits (valor entre 0 y 4095).
  • Dibujar el nuevo diagrama UML, 04_requestingAnalogInput.uxf

Petición de datos al sensor BME280[modifica]

05_requestingTemp.png

Acceso directo a 05_requestingTemperature.xmlCódigo en Snap! incorporando la lectura de temperatura del sensor BME280 y firmware para gestionar, también, la lectura del sensor mediante el protocolo I2C en la placa IoT-02. IoT-02_mqtts_08 en GitHub

Ejercicio 6 de Snap! con MQTT[modifica]

  • Verificar que os funciona el ejemplo añadiendo la petición de la humedad relativa en %, la presión en hPa.
  • Dibujar el nuevo diagrama UML, 05_requestingTemp.uxf

Escritura a la pantalla OLED[modifica]

Campana digital 06_publishingOled

06_PublishingOLED.uxf (Se puede abrir con UMLetino)

06_publishingOled.png

Acceso directo a 06_publishingOLED.xmlCódigo en Snap! incorporando la escritura a la pantalla OLED y firmware para gestionar, también, la escritura a la pantalla mediante el protocolo I2C en la placa IoT-02. IoT-02_mqtts_09 en GitHub

Temas MQTT

Uso de JSON[modifica]

07_IoT-02_with_JSON

Acceso directo a 07_IoT-02_with_json_Broker1.xmlCódigo en Snap! incorporando el uso de JSON y firmware para gestionar, también, el uso de JSON en la placa IoT-02. Firmware IoT-02_mqtt_json_upcSchool_broker1 en GitHub

Ejercicio de de Snap! con MQTT[modifica]

  • Mediante Snap! hacer que en la pantalla aparezca, de forma infinita y con una cadencia de dos segundos, el porcentaje de luz leída por la LDR y después la temperatura en grados centígrados.