App IoT para escritura y lectura de dos canales
Buenas tardes.
A continuación os presento el desarrollo de una nueva App para servicios IoT mas compleja. La App que hemos diseñado es capaz de controlar dos canales IoT tanto en escritura como en lectura (un canal para la apertura de una persiana y otro para el control de un riego).
Diseño de la pantalla de escritura:
Cuando pulsamos los botones ON Y OFF superiores enviamos 1/0 respectivamente al canal de persiana.
Cuando pulsamos los botones ON Y OFF inferiores enviamos 1/0 respectivamente al canal de riego.
El WebViewer_Persiana, mostrará que se ha enviado un dato a DOMOTICS_DRVC_PERSIANAS.
El WebViewer_Riego, mostrará que se ha enviado un dato a DOMOTICS_DRVC_RIEGO.
Programación de la pantalla escritura:
- Cuando se pulsa el botón BUTTON1_ON_PERSIANA, hacemos un WebWiewer sea la dirección de escritura 1 en nuestro canal persiana.
https://api.thingspeak.com/update?api_key=ECWMONTLXITUYA76&field1=1
De esta forma matamos dos pájaros de un tiro, porque marcamos nuestro canal con un 1 al mandar la URL y porque vemos en nuestra pantalla WebWiewer_Persiana.
- Cuando se pulsa el botón BUTTON1_OFF_PERSIANA, hacemos un WebWiewer sea la dirección de escritura 1 en nuestro canal persiana.
https://api.thingspeak.com/update?api_key=ECWMONTLXITUYA76&field1=0
De esta forma matamos dos pájaros de un tiro, porque marcamos nuestro canal con un 0 al mandar la URL y porque vemos en nuestra pantalla WebWiewer_Persiana.
- Cuando se pulsa el botón BUTTON_ON_RIEGO, hacemos un WebWiewer sea la dirección de escritura 1 en nuestro canal riego.
https://api.thingspeak.com/update?api_key=JAWJG0EE3YJFRAZF&field1=1
De esta forma matamos dos pájaros de un tiro, porque marcamos nuestro canal con un 1 al mandar la URL y porque vemos en nuestra pantalla WebWiewer_Riego.
- Cuando se pulsa el botón BUTTON_OFF_RIEGO, hacemos un WebWiewer sea la dirección de escritura 1 en nuestro canal riego.
https://api.thingspeak.com/update?api_key=JAWJG0EE3YJFRAZF&field1=0
De esta forma matamos dos pájaros de un tiro, porque marcamos nuestro canal con un 0 al mandar la URL y porque vemos en nuestra pantalla WebWiewer_Riego.
Cuando pulsemos Screen1
Diseño de la pantalla de lectura:
El botón superior esta diseñado para el cambio a la pantalla de escritura.
El segundo botón se para activar la comprobación d estado actual de la persiana y riego.
Luego tendremos una imagen y una etiqueta para poner si la persiana esta abierta o cerrada.
Por ultimo otra imagen y etiqueta para ver si el riego esta encendido o apagado.
Programación de la pantalla de lectura:
- Asigna Web1 a la URL de lectura de datos de canal persiana:
https://api.thingspeak.com/channels/1892102/feeds/last.json?api_key=6IHZ9KBWPLCA5UJSY luego llama a la Web1 para que consiga el texto de esta Web1, consiguiendo el ultimo dato pero también mas texto:
{"created_at":"2022-10-13T21:21:17Z","entry_id":25,"field1":"0"}- Asigna Web2 a la URL de lectura de datos de canal riego:
https://api.thingspeak.com/channels/1889018/feeds/last.json?api_key=EO07I6QNH3Z6W1SUY luego llama a la Web2 para que consiga el texto del canal de riego.
{"creado_en":"2022-10-13T21:21:15Z","entry_id":36,"field1":"0"}Creamos dos variables
bit_persiana tendrá dos posibles valores: 1 (abierto) 0 (cerrada), inicialmente definimos el valor 2.
bit_riego tendrá dos posibles valores: 1 (abierto) 0 (cerrada), inicialmente definimos el valor 3.
Una vez que pulsando el botón de Ver estados hemos obtenido el texto de Web1 automáticamente programamos que haga lo siguiente:- Coge el texto solo del field1. Es decir el 1 o el 0 y lo guarde en la variable global bit_persiana.
- Si bit_persiana es 1, pone la imagen de persiana abierta y el texto PERSIANA ABIERTA.
- Si bit_persiana es 0, pone la imagen de persiana cerrada y el texto PERSIANA CERRADA.
- Coge el texto solo del field1. Es decir el 1 o el 0 y lo guarde en la variable global bit_riego.
- Si bit_riego es 1, pone la imagen de aspersor encendido y el texto ASPERSORENCENDIDO.
- Si bit_riego es 0, pone la imagen de aspersor apagado y el texto ASPERSORAPAGADO.

Comentarios
Publicar un comentario