Conexión Ethernet con un ESP32 PLC o un M-Duino PLC

Cómo configurar y probar la conectividad Ethernet en PLCs de Industrial Shields con la librería Ethernet de Arduino
12 de junio de 2026 por
Conexión Ethernet con un ESP32 PLC o un M-Duino PLC
Boot & Work Corp. S.L, Queralt del Águila Munté

En este artículo explicamos cómo configurar y probar la conectividad Ethernet en cualquier ESP32 PLC o M-Duino PLC de Industrial Shields, usando la librería Ethernet de Arduino.

El sketch de ejemplo conecta el PLC a internet mediante DHCP, identifica el chip de hardware Ethernet, verifica la dirección IP local e intenta una conexión TCP a un host remoto. Una vez subido a través de Arduino IDE, puedes confirmar que el puerto Ethernet funciona correctamente.

Conexión del puerto Ethernet

Conecta un cable Ethernet desde el PLC a cualquier puerto Ethernet de tu red (switch, router o PC). No se requiere ningún cableado adicional.

Para el pinout del conector y los detalles de hardware, consulta la Ficha técnica para tu modelo.

Sketch de prueba Ethernet para Arduino IDE

El sketch usa la Ethernet.h librería. Descarga el siguiente código como archivo test_ethernet.ino, verifica la placa y el modelo, selecciona el puerto correcto y súbelo con Arduino IDE.

#include <Ethernet.h>

#define REMOTE "www.google.com"

const uint16_t port = 80;
uint8_t mac[] = {0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0x01};

EthernetClient c;

void setup() {
  Serial.begin(9600L);
  Serial.println("ethernet started");
  test();
}

void loop() {
  if (!c.connected()) {
    Serial.println("Disconnected");
    test();
  }
  delay(1000);
}

void test() {
  Ethernet.begin(mac);

  switch (Ethernet.hardwareStatus()) {
    case EthernetW5100: Serial.println("W5100 found"); break;
    case EthernetW5200: Serial.println("W5200 found"); break;
    case EthernetW5500: Serial.println("W5500 found"); break;
    default: Serial.println("Unknown hardware"); break;
  }

  uint8_t MAC[6];
  Ethernet.MACAddress(MAC);
  for (int i = 0; i < 6; ++i) {
    if (i > 0) Serial.print(':');
    Serial.print(MAC[i], HEX);
  }
  Serial.println();

  Serial.println(Ethernet.localIP());
  if (Ethernet.localIP() == IPAddress({0,0,0,0})) {
    Serial.println("Local IP FAIL");
  } else {
    Serial.println("Local IP OK");
    if (c.connect(REMOTE, port)) {
      Serial.println("Remote connection OK");
    } else {
      Serial.println("Remote connection FAIL");
    }
  }
}

Verificación de la conexión Ethernet

Tras subir el código, abre el Monitor Serie. Si el puerto Ethernet funciona correctamente, verás una salida similar a esta:

ethernet started
W5500 found
AA:BB:CC:DD:EE:1
10.42.0.226
Local IP OK
Remote connection OK

Buscar en nuestro blog

Conexión Ethernet con un ESP32 PLC o un M-Duino PLC
Boot & Work Corp. S.L, Queralt del Águila Munté 12 de junio de 2026
Compartir esta publicación
Etiquetas

¿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.

Comparativa de PLCs