Arduino Uno R4 WiFi controla el relé vía web

En este tutorial aprenderemos a controlar un relé mediante una interfaz web accesible a través de un navegador en una PC o en un teléfono inteligente. Utilizaremos la placa Arduino Uno R4 WiFi, que será programada para funcionar como un servidor web. Supondremos que la dirección IP del Arduino Uno R4 WiFi es 192.168.0.2. Así es como funciona:

Arduino Uno R4 relé navegador web

Conectando un relé a dispositivos como una cerradura de solenoide, una bombilla, una tira de LED, un motor o un actuador, podemos controlarlos a través de una interfaz web.

El tutorial ofrece una base que puedes personalizar de forma fácil y creativa para lograr lo siguiente:

Acerca de Relé y Arduino Uno R4

Si no conoces Arduino Uno R4 y un relé (disposición de pines, cómo funciona, cómo programar ...), aprende sobre ellos en los siguientes tutoriales:

Diagrama de Cableado

Diagrama de cableado del relé Arduino Uno R4 WiFi

This image is created using Fritzing. Click to enlarge image

Código de Arduino

/* * Este código de Arduino fue desarrollado por es.newbiely.com * Este código de Arduino se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino/arduino-uno-r4-wifi-controls-relay-via-web */ #include <UnoR4WiFi_WebServer.h> // WiFi credentials const char WIFI_SSID[] = "YOUR_WIFI_SSID"; const char WIFI_PASSWORD[] = "YOUR_WIFI_PASSWORD"; #define RELAY_PIN 7 // Arduino pin connected to relay's pin const char* HTML_CONTENT = "<!DOCTYPE HTML>\n" "<html>\n" "<head>\n" "<link rel=\"icon\" href=\"data:,\">\n" "</head>\n" "<body>\n" "<a href=\"/relay1/on\">RELAY ON</a>\n" "<br><br>\n" "<a href=\"/relay1/off\">RELAY OFF</a>\n" "</body>\n" "</html>\n"; // Create web server instance UnoR4WiFi_WebServer server; // Page handlers void handleHome(WiFiClient& client, const String& method, const String& request, const QueryParams& params, const String& jsonData) { server.sendResponse(client, HTML_CONTENT); } void handleRelayOn(WiFiClient& client, const String& method, const String& request, const QueryParams& params, const String& jsonData) { digitalWrite(RELAY_PIN, HIGH); Serial.println("Turned relay ON"); server.sendResponse(client, HTML_CONTENT); } void handleRelayOff(WiFiClient& client, const String& method, const String& request, const QueryParams& params, const String& jsonData) { digitalWrite(RELAY_PIN, LOW); Serial.println("Turned relay OFF"); server.sendResponse(client, HTML_CONTENT); } void setup() { Serial.begin(9600); delay(1000); // Initialize relay pin pinMode(RELAY_PIN, OUTPUT); digitalWrite(RELAY_PIN, LOW); // Connect to WiFi Serial.print("Connecting to "); Serial.println(WIFI_SSID); WiFi.begin(WIFI_SSID, WIFI_PASSWORD); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("connected!"); Serial.print("IP address: "); Serial.println(WiFi.localIP()); // Configure routes server.addRoute("/", handleHome); server.addRoute("/relay1/on", handleRelayOn); server.addRoute("/relay1/off", handleRelayOff); // Start server server.begin(); Serial.println("\n=== Web Server Ready! ==="); Serial.print("Visit: http://"); Serial.println(WiFi.localIP()); } void loop() { server.handleClient(); }

Pasos R\u00e1pidos

  • Si es la primera vez que usas Arduino Uno R4, consulta cómo configurar el entorno para Arduino Uno R4 en Arduino IDE.
  • Abre el Administrador de Bibliotecas haciendo clic en el icono Administrador de Bibliotecas en el lado izquierdo del IDE de Arduino.
  • Busca Servidor Web para Arduino Uno R4 WiFi y localiza la biblioteca Web Server creada por DIYables.
  • Haz clic en el botón Instalar para añadir la biblioteca Web Server.
Biblioteca de servidor web para Arduino UNO R4
  • Copia el código anterior y ábrelo con Arduino IDE
  • Cambia la información de wifi (SSID y contraseña) en el código por la tuya
  • Haz clic en el botón Subir de Arduino IDE para subir el código al Arduino
  • Abre el Monitor Serial
  • Revisa el resultado en el Monitor Serial
COM6
Send
Attempting to connect to SSID: YOUR_WIFI IP Address: 192.168.0.2 signal strength (RSSI):-39 dBm
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Verás una dirección IP, por ejemplo: 192.168.0.2. Esta es la dirección IP del servidor web de Arduino.
  • Abre un navegador web y escribe uno de los tres formatos que se muestran a continuación en la barra de direcciones:
192.168.0.2
192.168.0.2/relay1/on
192.168.0.2/relay1/off
  • Tenga en cuenta que la dirección IP puede ser diferente. Asegúrese de verificar el valor actual en el Monitor Serial.
  • Además, verá la siguiente salida en el Monitor Serial.
COM6
Send
Connecting to YOUR_WIFI_SSID connected! IP address: 0.0.0.0 Starting web server on IP: 192.168.0.254 === Web Server Ready! === Visit: http://192.168.0.254 Method: GET Requested path: / Client disconnected Method: GET Requested path: /relay1/on Turned relay on Client disconnected
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Verificar el estado del relé
  • Verá la página web de la placa Arduino en el navegador web como se muestra a continuación:
Arduino Uno R4 relé navegador web

Ahora tienes la capacidad de controlar el estado de encendido y apagado del relé a través de la interfaz web. También puedes personalizar el código de forma fácil y creativa para lograr lo siguiente:

  • Controlar varios relés a través de una interfaz web.
  • Rediseñar la interfaz web (UI) para adaptarla a sus preferencias.

Si deseas mejorar la apariencia de la página web con una impresionante interfaz gráfica de usuario (UI), puedes consultar el tutorial Arduino - Servidor Web para inspirarte y obtener orientación.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!