Cómo controlar las salidas digitales con Arduino Cloud
Control de las salidas digitales mediante el panel de control de Arduino Cloud
12 enero, 2022 por
Cómo controlar las salidas digitales con Arduino Cloud
Boot & Work Corp. S.L., Amil Shrivastava

Este tutorial explicará cómo controlar las salidas digitales de un PLC ESP32 de Industrial Shields con los widgets del panel de control de la nube de Arduino. Vamos a ir directamente al grano.

Como se ha mencionado en anteriores entradas del blog relacionadas, el IDE web de Arduino no tiene todas las caracter√≠sticas del IDE independiente y por ello, no se pueden a√Īadir placas personalizadas al IDE web. Por lo tanto, vamos a configurar la nube y el dispositivo y copiar todos los bocetos creados autom√°ticamente a nuestro IDE independiente. Sigue leyendo para ver c√≥mo lo hacemos.

Pasos:

Una vez que crees una "cosa" para tu dispositivo, serás llevado a la página mostrada. Aquí, tienes que hacer dos cosas.


1) Haz clic en A√Īadir variable y busque "interruptor" en el men√ļ desplegable. Puede que tengas que deseleccionar las etiquetas en el desplegable. Puedes ponerle el nombre que quieras.


2) Una vez creada la variable, puedes configurar la red. Tendr√° que a√Īadir el SSID y el PASSWORD de la red a la que desea conectarse y la clave secreta obtenida en √©ste tutorial.


En el editor web, ver√°s cuatro pesta√Īas: tienes que copiar el contenido de "main.ino".¬†(Puede tener otro nombre para ti)¬†y thingProperties.h a un nuevo proyecto de arduino en tu PC. Tambi√©n necesitar√°s el contenido del archivo Secret.¬†


A partir de aquí, es directo como un proyecto regular de Arduino donde se elige el PLC en la sección de la placa y el código. Los códigos se muestran a continuación:

main.ino

#include "thingProperties.h"
void setup() {
  pinMode(Q0_2, OUTPUT);
  // Initialize serial and wait for port to open:
  Serial.begin(9600);
  // This delay gives the chance to wait for a Serial Monitor without blocking if none is found
  delay(1500);
  // Defined in thingProperties.h
  initProperties();
  // Connect to Arduino IoT Cloud
  ArduinoCloud.begin(ArduinoIoTPreferredConnection);
  /*
     The following function allows you to obtain more information
     related to the state of network and IoT Cloud connection and errors
     the higher number the more granular information you’ll get.
     The default is 0 (only errors).
     Maximum is 4
  */
  setDebugMessageLevel(2);
  ArduinoCloud.printDebugInfo();
}
void loop() {
  ArduinoCloud.update();
  // Your code here
  onQ2Change();
}
/*
  Since Q2 is READ_WRITE variable, onQ2Change() is
  executed every time a new value is received from IoT Cloud.
*/
void onQ2Change()  { ///DIGITAL OUTPUT ON OFF SWITCH
  if (q2 == true) {
    digitalWrite(Q0_2, HIGH);
  }
  else {
    digitalWrite(Q0_2, LOW);
  }
  // Add your code here to act upon Q2 change
}

thingProperties.h

// Code generated by Arduino IoT Cloud, DO NOT EDIT.
#include <ArduinoIoTCloud.h>
#include <Arduino_ConnectionHandler.h>

const char THING_ID[]           = "07c3f5db-b24b-4619-8781-0ce4cc386f24";
const char DEVICE_LOGIN_NAME[]  = "9947c851-3bdb-4eff-84d7-401788196951";
const char SSID[]               = SECRET_SSID;    // Network SSID (name)
const char PASS[]               = SECRET_PASS;    // Network password (use for WPA, or use as key for WEP)
const char DEVICE_KEY[]  = SECRET_DEVICE_KEY;    // Secret device password
void onQ2Change();
CloudSwitch q2;
void initProperties(){
  ArduinoCloud.setBoardId(DEVICE_LOGIN_NAME);
  ArduinoCloud.setSecretDeviceKey(DEVICE_KEY);
  ArduinoCloud.setThingId(THING_ID);
  ArduinoCloud.addProperty(q2, READWRITE, ON_CHANGE, onQ2Change);
}
WiFiConnectionHandler ArduinoIoTPreferredConnection(SSID, PASS);

El cuadro de mandos

En esta sección, se mostrará un tablero muy simple con un solo interruptor de encendido y apagado para controlar el PLC. 

Vaya a la pesta√Īa del tablero de mandos y haga clic en "BUILD DASHBOARD"


Haz clic en A√ĎADIR y selecciona el interruptor.


Aparecerá una ventana para editar la configuración. Aquí tienes que hacer clic en el botón de la Variable de Enlace.


Y luego vincular la variable que se creó en los pasos anteriores.



Despu√©s de esto, estamos listos. Lo √ļnico que tenemos que hacer es subir el c√≥digo al PLC y asegurarnos de que se conecta a la wifi configurada. Puedes comprobar el estado de la conexi√≥n en el terminal serie.

Una vez hecho esto, puedes controlar la salida digital del PLC con el interruptor creado en el tablero de la nube de Arduino.

En el siguiente tutorial, veremos cómo podemos llevar los datos de un sensor a la nube y visualizarlos. 

 Introducción a Arduino Cloud

Encuentra lo que buscas. ¬°Busca en nuestro Blog!

Cómo controlar las salidas digitales con Arduino Cloud
Boot & Work Corp. S.L., Amil Shrivastava
12 enero, 2022
Compartir
Archivar

¬ŅEst√°s buscando tu Controlador L√≥gico Programable ideal?

Echa un vistazo a esta comparativa de producto de varios controladores industriales basados en Arduino.

Comparamos entradas, salidas, comunicaciones y otras especificaciones con las de los equipos de otras marcas destacadas.


Comparación PLC industrial >>>

¬ŅQuieres m√°s informaci√≥n?

¬°Rellena el formulario!

¬°Cu√©ntame m√°s!