This article is the second in a series on using the Industrial Shields ESP32 PLC with Arduino Cloud. It shows how to add a cloud variable, configure the network, upload the sketch, and build a dashboard to control a digital output remotely. Make sure you have completed the first part before continuing.
Primeros pasos con el ESP32 PLC y Arduino Cloud
Paso 1: añadir una variable en la nube
Dentro de tu thing, haz clic en Add Variable y selecciona el tipo CloudSwitch del menú desplegable. Asigna un nombre según la salida que quieras controlar. En este ejemplo la variable se llama q2 y controlará la salida Q0_2.
Paso 2: configurar la red
Una vez creada la variable, ve a la sección Network de tu thing. Introduce el SSID y la contraseña de la red WiFi a la que se conectará el ESP32 PLC, y la Secret Key que guardaste al registrar el dispositivo.
Paso 3: obtener el sketch y subirlo
Ve a la pestaña Sketch de tu thing y haz clic en Open Full Editor. El editor web muestra cuatro archivos. Necesitas dos de ellos: main.ino (o como se llame tu sketch) y thingProperties.h. Copia el contenido de ambos archivos en un nuevo proyecto de Arduino en tu ordenador. También necesitarás los valores del archivo Secret.
Selecciona tu modelo de ESP32 PLC en Herramientas > Placa, añade Q0_2 como salida y sube el sketch. Los archivos quedarán así:
main.ino
#include "thingProperties.h"
void setup() {
pinMode(Q0_2, OUTPUT);
Serial.begin(9600);
delay(1500);
initProperties();
ArduinoCloud.begin(ArduinoIoTPreferredConnection);
setDebugMessageLevel(2);
ArduinoCloud.printDebugInfo();
}
void loop() {
ArduinoCloud.update();
onQ2Change();
}
void onQ2Change() {
if (q2 == true) {
digitalWrite(Q0_2, HIGH);
} else {
digitalWrite(Q0_2, LOW);
}
}thingProperties.h
// Código generado por Arduino IoT Cloud, NO EDITAR.
#include <ArduinoIoTCloud.h>
#include <Arduino_ConnectionHandler.h>
const char THING_ID[] = "YOUR_THING_ID";
const char DEVICE_LOGIN_NAME[] = "YOUR_DEVICE_ID";
const char SSID[] = SECRET_SSID;
const char PASS[] = SECRET_PASS;
const char DEVICE_KEY[] = SECRET_DEVICE_KEY;
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);Sustituye YOUR_THING_ID y YOUR_DEVICE_ID por los valores reales de la página de tu dispositivo en Arduino Cloud. Los valores SECRET_SSID, SECRET_PASS y SECRET_DEVICE_KEY provienen de la pestaña Secret del editor web.
Paso 4: construir el dashboard
Ve a la pestaña Dashboards de Arduino Cloud y haz clic en Build Dashboard (o Create Dashboard).
Haz clic en Add y selecciona el widget Switch.
En la configuración del widget, haz clic en Link Variable y selecciona la variable q2 que creaste en el paso 1.
Prueba del sistema
Sube el sketch al ESP32 PLC y abre el monitor serie. Una vez que el PLC se conecte a la red WiFi y se sincronice con Arduino Cloud, puedes activar el switch en el dashboard para encender y apagar Q0_2. El estado de la conexión es visible en la salida del monitor serie.
El siguiente artículo de la serie mostrará cómo leer un valor de sensor desde el ESP32 PLC y visualizarlo como gráfico en el dashboard de Arduino Cloud.

Control de salidas digitales del ESP32 PLC con Arduino Cloud