Cómo crear un cliente TCP en un PLC basado en Arduino
17 diciembre, 2018 por
Cómo crear un cliente TCP en un PLC basado en Arduino
Alejandro Jabalquinto


Introducción

En este post te mostramos muestra cómo conectarse a un servidor TCP desde un PLC industrial basado en Arduino. Necesitas solo un controlador M-Duino con conexión Ethernet y un servidor TCP disponible. 


Requisitos


Descripción

Antes de empezar con este post, echa un vistazo a este ejemplo. Consiste en implementar una SERVIDOR TCP EN TOUCHBERRY PI 3 CON NODE.JS

Una vez que el servidor está funcionando, el PLC industrial M-Duino puede conectarse al servidor. En este ejemplo se utiliza un controlador industrial M-Duino para conectarse con el servidor Node.js llamado server.js, el mismo que se utilizó en el ejemplo anterior de enlace.

Para configurar el M-Duino, este post solo sigue el ejemplo TCP del sitio web de Arduino con algunos cambios. Para poder conectarte al servidor, debes conocer la IP del servidor TCP y el puerto donde este servidor está escuchando. 


Ejemplo

A continuación te mostramos el código de Arduino::

#include <Ethernet.h>
#include <SPI.h>

byte mac[] = { 0xBE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 1, 100 };
byte server[] = { 192, 168, 1, 105 }; // Touchberry Pi Server
int tcp_port = 5566;

EthernetClient client;

void setup()
{
  Ethernet.begin(mac, ip);
  Serial.begin(9600);

  delay(1000);

  Serial.println("Connecting...");

  if (client.connect(server, tcp_port)) { // Connection to server.js
    Serial.println("Connected to server.js");
    client.println();
  } else {
    Serial.println("connection failed");
  }
}

void loop()
{
  if (client.available()) {
    if(Serial.available()){
      char s = Serial.read();
      client.write(s); // Send what is reed on serial monitor
      char c = client.read();
      Serial.print(c); // Print on serial monitor the data from server 
    }
  }

  if (!client.connected()) {
    Serial.println();
    Serial.println("disconnecting.");
    client.stop();
    for(;;)
      ;
  }
}

 

Para más información, mira en la web de Arduino las funciones del TCPs Biblioteca Ethernet / Ethernet 2 

Una vez que el esquema se ejecuta en el M-Duino, a través del monitor serial es posible enviar datos al servidor y estos datos son respondidos e impresos también en el monitor serial. En este ejemplo se escribe "Hola servidor.js" al monitor en serie. A continuación, te mostramos dos capturas de pantalla con la respuesta de esta operación, una del server.js en la Raspberry y la segunda del monitor de serie M-Duino::

server.js Raspberry - How to create a TCP Client on an Arduino based PLC


M-Duino Serial Monitor - How to create a TCP Client on an Arduino based PLC

 Consulta nuestro blog para resolver tus dudas técnicas o conocer más sobre nuestros productos.

Cómo crear un cliente TCP en un PLC basado en Arduino
Alejandro Jabalquinto
17 diciembre, 2018
Compartir
Archivar

¿Buscas 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!