Los dispositivos de interfaz Humano-Máquina (HMI) nos permiten el control y monitoreo en los procesos ofreciendo una visualización clara para los usuarios, a estos se les pueden conectar distintos equipos de control como PLCs usando los puertos disponibles y/o mediante algún protocolo de comunicación. Los PLCs de Controllino en sus modelos MAXI y MEGA ofrecen la ventaja de poder ser conectados con paneles HMI usando el protocolo Modbus ya sea a través de su puerto Ethernet (TCP/IP) o con el puerto RS485 (interfaz SN65HVD08) integrado en ellos.

 

 

En este blog les explicaremos cómo conectar el PLC de Controllino con el HMI usando Modbus TCP/IP (Nota: se debe seleccionar la librería correcta buscando en la dirección del menú de Arduino IDE Tools->Board->Controllino MINI/MAXI/MEGA, si no encuentra el archivo deseado puede usar la esta liga para descargarlo, ya que la necesita antes de cargar el código al PLC).

En este caso lo que va a necesitar para la configuración es: 1 equipo PLC de Controllino MAXI ó MEGA, una fuente de alimentación de 12/24 VCD (la cual deberá configurar para que el voltaje que reciban los PLC no exceda los 5 Volts, o se corre el riesgo de dañar permanentemente los equipos), el panel HMI que desea controlar, 2 cables Ethernet y 1 router.

Paso 1: Configuración del HMI

Primeramente se hace la configuración para el HMI desde el software designado de acuerdo con la marca y/o compatibilidad de productos, preferentemente implementa uno que cuente con las versiones y drivers más actuales. Dentro del mismo, vamos a crear los tags analógicos R0, D0, D1 y A0, realizando la configuración mostrada en la imagen debajo:

 

 

Una vez que hayamos creado los tags con las direcciones para Modbus TCP vamos a crear el dispositivo I/O Modbus para que se conecta al PLC de Controllino MAXI ó MEGA, en la opción de su software para dispositivos I/O vamos a crear uno nuevo, después definimos que se a de tipo Ethernet, luego definimos la estación como “0” (en caso de requerirlo) y por último ingresamos la dirección IP asignada al PLC; si desconoce cuál es esta dirección puede usar esta guía, cargar el código al Monitor Serial para que le muestre la IP correspondiente.

 

 

Paso 2: Usar ModbusRTU

Para lograr la conexión necesitamos cargar antes las librerías de Modbus TCP de este enlace, tan solo hace falta descargar el archivo, descomprimir la carpeta y guardarla el “Arduino>Libraries”. Ya con nuestra dirección IP del PLC procedemos a cambiar esta dirección en el siguiente código y subirlo al dispositivo:

#include <Controllino.h>

#include <SPI.h>

#include <Ethernet.h>

#include “Mudbus.h”

Mudbus Mb;

int D0 = CONTROLLINO_D0;

int D1 = CONTROLLINO_D1;

int R0 = CONTROLLINO_R0;

int A0_ = CONTROLLINO_A0;

//Function codes 1(read coils), 3(read registers), 5(write coil), 6(write register)

//signed int Mb.R[0 to 125] and bool Mb.C[0 to 128] MB_N_R MB_N_C

//Port 502 (defined in Mudbus.h) MB_PORT

void setup()

{

uint8_t mac[] = { 0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x02 };

uint8_t ip[] = { 192, 168, 0, 103 }; // CHANGE this to the IP address of your CONTROLLINO

uint8_t gateway[] = { 192, 168, 0, 254 };

uint8_t subnet[] = { 255, 255, 255, 0 };

Ethernet.begin(mac, ip, gateway, subnet);

delay(5000);

Serial.begin(9600);

Serial.println(“Started”);

pinMode(D0, OUTPUT);

pinMode(D1, INPUT);

pinMode(R0, OUTPUT);

pinMode(A0_, INPUT);

}

void loop()

{

Mb.Run();

analogWrite(D0, Mb.R[0]);

digitalWrite(R0, Mb.R[2]);

Mb.R[1] = digitalRead(D1);

Mb.R[3] = analogRead(A0_);

}

 

Finalmente asegurarnos de que los dispositivos están conectados como se muestra en el diagrama de la primera imagen de este blog y realizar la prueba.

 

En Logicbus contamos con información amplia para lograr expandir las aplicaciones en las que puede usar sus PLCs de Controllino. Esperamos con mucho gusto sus dudas y agradecemos su atención.

 

Contáctanos

ventas@logicbus.com | soporte@logicbus.com | 55-5431-67-18 | Iniciar conversación

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *