Está en la página 1de 52

Actividad 4:

Comunicación entre PLC´s


vía Ethernet
1.- Listado de materiales:

PC con Tarjeta de red 3com o similar.

2 PLC Omrom CJ1M – CPU11 – ETN

Estos autómatas llevan integrada la tarjeta de comunicaciones ethernet.

Sería posible utilizar otros autómatas de la misma serie añadiéndoles a cada


uno su tarjeta de comunicaciones ethernet.
ethernet

Incluirá fuente de alimentación y unidades de entrada y salida.

Software CX-Programmer ver 5.0

Cable cruzado con conector RJ45, para conexión ethernet.

Cable con conector RS232, para conexión serie.

O bien, un switch y tres cables ethernet sin cruzar para PC, PLC1 y PLC2
evitando el cable cruzado y el cable RS232 (conociendo la IP del PLC).

2
2.- Objetivo de la actividad:
Establecer una comunicación ethernet, entre dos PLCs utilizando las
instrucciones SEND (enviar) y RECEIVE (recibir), que posibilite el intercambio de
datos ya que los autómatas formarán parte de un mismo proceso.

3
3.- Configuración de los PLC´s:

El PLC 1 ha sido configurado en la actividad nº 2. Mantendremos los mismos


valores asignados en dicha actividad:

La unidad Ethernet, determinada por la posición de la tarjeta en el bus,


será la nº 0 y el nodo de dicha tarjeta, será el nº 1. Ambos valores están
fijados en el rotoswitch de la unidad.

La dirección IP continúa siendo la definida en la actividad nº 2, es decir


192.10.10.1, con la máscara de subred 255.255.255.0

4
3.- Configuración de los PLC´s:

El PLC 2 se configurará siguiendo el mismo proceso realizado para el PLC 1. A


continuación resumimos los pasos necesarios para dicha configuración, cuyo
desarrollo completo está documentado en la actividad nº 2.

Montar en un nuevo bastidor los elementos de la nueva unidad (PLC 2).

Fijar los rotoswitch de la tarjeta ethernet: Unidad nº 0 y Nodo nº 3.


3

Activar el pin nº 5 de la CPU para comunicación Toolbus con el PC.

Ejecutar CX-PROGRAMMER abriendo nuevo proyecto para CJ1M-CPU11


con el tipo de comunicación Toolbus.

5
3.- Configuración de los PLC´s:

Configurar la tabla de Entradas/Salidas. El método más rápido es leer su


configuración actual y modificar los datos necesarios para nuestro proyecto.

Menús: PLC - Trabajar On Line – PLC - Modo de Operación –Programacion


- Tabla E/S - opciones – Crear(o Transferir del PLC)

La opción Crear restaura y crea una nueva tabla automáticamente con las
tarjetas montadas en el bastidor.
bastidor La opción transferir del PLC lee los valores
del PLC que le hayan sido anteriormente transferidos.

En la configuración de la unidad Ethernet del bastidor principal, clic


derecho, configuración de unidad :
Dirección IP: 192.10.10.3
Máscara de subred: 255.255.255.0

6
4.- Comunicación entre dos PLC´s via Ethernet mediante la
función de enviar “SEND”:
Función SEND.

Esta función envía palabras (datos) desde el PLC


donde está programada, a otro nodo remoto que
pertenezca a la red, que en nuestro caso será otro PLC.

Un PLC dispone de 8 puertos lógicos de


comunicación
i ió por lol que permiteit ejecutar
j t 8
instrucciones de comunicación simultaneas, aunque
solamente una instrucción puede ser ejecutada a la vez
por cada puerto de comunicaciones.
SEND(090) transfiere los datos que empiezan en el canal S a las direcciones
especificadas que comienzan en D en el dispositivo designado a través de la red.
Los canales de control comenzando por C, especifican el número de canales a
enviar, el nodo destino y otros parámetros.

S (Fuente): Canal de inicio de lectura (local).


D (Destino): Canal de inicio de escritura (destino).
C (Control): Primer canal de los datos de control (5canales).
7
4.1.- Canales de Control de la función SEND

Será necesario escribir en el canal C y sucesivos, los


siguientes datos de control:

C+0 Número de palabras a transmitir


C+1 Red de Destino
C+2 Nodo de Destino Unidad de Destino
C+3 Respuesta Nº puerto Nº
reintentos
C+4 Tiempo de espera de respuesta

8
4.1.- Canales de Control de la función SEND

Canal de control C + 0. Numero de canales a enviar.

9
4.1.- Canales de Control de la función SEND

Canal de control C + 1. Numero de red destino.

10
4.1.- Canales de Control de la función SEND
Canal de control C + 2. Número de nodo destino y número de unidad
destino.

El nº de nodo de la unidad de destino se corresponde con el


Rotoswitch de la tarjeta a la cual deseamos enviar los datos.

El nº de la unidad de destino indicará el tipo de equipo a quien se


envía
í ell dato.
d t Normalmente
N l t será
á la
l CPU (00) que distribuirá
di t ib i á ell dato
d t
según la red y el nodo, al lugar adecuado.

11
4.1.- Canales de Control de la función SEND
Canal de control C + 3: Respuesta requerida. Puerto Lógico de
Comunicaciones. Número de reintentos.

Los bits de 00 a 03 indican el nº de reintentos y pueden programarse de 0 a F


(es decir 15 intentos máximo).
Los bits de 04 a 07 no se utilizan y los fijamos a 0.
Los bits 08 a 11 indican el número de puerto lógico de comunicaciones. Como
sólo es posible para esta CPU 8 puertos lógicos el valor máximo será 0111 (7). Si
se programa 1111 le estamos indicando localización automática del puerto de
comunicaciones.
El bit 15 indica requerimiento de respuesta.

12
4.1.- Canales de Control de la función SEND

Canal de control C + 4: Tiempo de espera de respuesta

13
4.2.- Flag de Comunicaciones
Existen varios flags indicativos de diversos aspectos en las comunicaciones de los
puertos del PLC. Se indican a continuación algunos de los más significativos.

-Flag de puerto de comunicaciones habilitado: es puesto a 0 cuando se esta


realizando una comunicación, y puesto a 1 cuando las comunicaciones han sido
terminadas.
Un contacto normalmente abierto de uno de estos flag puede colocarse en serie con
la instrucción de comunicaciones, con el fin de impedir su ejecución hasta que el
puerto esté libre.
libre

14
4.2.- Flag de Comunicaciones

Existen varios flags indicativos de diversos aspectos en las comunicaciones de los


puertos del PLC. Se indican a continuación algunos de los más significativos.

–Flag de error en el puerto de comunicaciones: se pone a 0 cuando se inicia la


transmisión o recepción, y se pondrá a 1 si ocurriera algún error en la operación.

15
4.3.- Ejercicio de comunicación ethernet entre dos autómatas
programables utilizando la Función enviar SEND.
Condiciones de funcionamiento:

El autómata PLC2 debe programarse para que transmita su canal de entradas CIO
000, al canal de salidas CIO 001 del autómata PLC1.

Este envío del dato, se realiza solamente cada vez que se modifique el valor de
dicho canal de entradas. La prueba la observaremos fácilmente activando o
desactivando cualquier bit de entrada del canal 000 del PLC2 que envía, lo cual
provocará la comunicación (lucen los leds de las dos unidades) y se modificará el
valor del canal de salida del otro autómata PLC1.

Se realizará con la instrucción SEND a través de las tarjetas ethernet anteriormente


configuradas.

16
4.3.- Ejercicio de comunicación ethernet entre dos autómatas
programables utilizando la Función enviar SEND.

Programación de los autómatas.

El proceso de programación de los autómatas desde CX-Programmer puede


hacerse estableciendo la comunicación entre el PC y los equipos en modo Toolbus.
En este caso después de programar un PLC, cambiamos el cable de su puerto serie
al del otro autómata para conectarnos con él y de esta forma igualmente poderlo
programar.

Pero también es posible que la comunicación entre el PC y los PLCs de cara a la


programación se establezca en modo ETHERNET. El proceso se ha desarrollado en la
unidad didáctica nº 3. La programación la realizamos también de equipo en equipo y
cambiando el cable que en este caso es cruzado con conector RJ45.

17
4.3.- Ejercicio de comunicación ethernet entre dos autómatas
programables utilizando la Función enviar SEND.

Programación del autómata PLC1 (Nodo 1).

Este autómata solamente va a recibir datos. En esta sencilla prueba de


comunicación estos datos no se utilizan para realizar ningún proceso por lo que en
su programa es suficiente
fi i con que se incluya
i l l instrucción
la i ió END.
END Los
L d
datos l
los
recibirá de igual forma en modo STOP o RUN.

18
19
Programación del autómata PLC2 (Nodo 3).

20
Programación del autómata PLC2 (Nodo 3).

En la línea de programa 0, observamos que se compara el canal de entradas


CIO 000 del PLC2 con el canal de memoria D000. Esto supone que si las
entradas no han variado, los dos datos CIO 000 y D000 serán idénticos porque
la instrucción MOV que está más adelante, habrá copiado el valor de las
entradas en el canal de memoria en la ejecución anterior del programa
(anterior ciclo de SCAN).

Cuando se produzca una modificación de cualquier bit del canal de


entradas, provocará que se active el bit de trabajo W0.0 durante un ciclo de
programa o SCAN, porque en la comparación, serán diferentes el canal de
entrada que acabamos de cambiar y el canal D000 que tiene el dato anterior
del canal de entradas.

Cada activación del bit W0.0 se ejecuta la instrucción (SEND) enviar el canal
de entradas 000 (PLC2) al canal de salidas 001 (PLC1).

21
Programación del autómata PLC2 (Nodo 3).
Datos de los Canales de Control.

En los canales de control D100 y sucesivos indicaremos:

Canal de Definición Dato binario Dato


control hexadecimal

D100 Nº de canales o palabras a 0000 0000 0000 0001 0001


transmitir
D101 Nº de red de destino 0000 0000 0000 0000 0000

D102 Nº de nodo destino y Nº de unidad 0000 0001 0000 0000 0100


de destino
D103 Respuesta requerida. Puerto 1000 1111 0000 0001 8F01
Lógico de Comunicaciones.
Número de reintentos.
D104 Tiempo de espera de respuesta 0000 0000 0000 0000
0000

22
Programación del autómata PLC2 (Nodo 3).

Edición de los datos de los Canales de Control en el proyecto


realizado y su transferencia al PLC2.

La escritura de estos datos de control en el PLC2 hay que hacerlo on line en


modo programa o monitor.

Si deseamos que estos datos, además de transferirlos al PLC, queden


guardados en el proyecto, en vez de realizar el proceso de su escritura desde
la ventana de monitorización, lo realizaremos desde CX-Programmer en
memoria. En las siguientes figuras se ven los pasos a seguir.

23
PLC2 (Nodo 3).
1º paso: Abrir el menú de la memoria del PLC.

24
PLC2 (Nodo 3).
2º paso: Escoger el área de memoria D (anteriormente DM)

25
PLC2 (Nodo 3).
3º paso: Escribir los datos necesarios en cada uno de los D definidos
como canales de control.

26
PLC2 (Nodo 3).
4º paso: Transferir los datos a la memoria del autómata.

27
PLC2 (Nodo 3).
5º paso: Guardar el proyecto en un disco. De esta forma, podremos
recuperar el proyecto desde cualquier PC para retocarlo o transferirlo a
un PLC.

28
Prueba del ejercicio desarrollado
Una vez transferidos los dos programas y los datos de control a los
autómatas, el PLC2 que es quien transmite, lo cambiamos a modo RUN o
MONITOR para que ejecute la instrucción.

El PLC1 puede estar en cualquier modo para recibir datos.

Cada vez que modifiquemos el valor del canal de entradas 000 del PLC2
porque cambiemos uno de sus interruptores, se ejecutará la instrucción de
enviar y observaremos que también cambia de valor el canal de salidas 001
1 del
PLC1.

Además, podemos comprobar que cuando hay comunicación, el led de


transmitir de la unidad ethernet del PLC2 luce, así como el led de recibir de la
tarjeta ethernet del PLC1.

El programa realizado en CX-Programmer, puede consultarse en:


prueba-send-8-4-05.cxp

29
5.- Comunicación ethernet entre dos autómatas programables
utilizando la Función de recibir RECV.
Función RECV.
Esta función solicita canales (palabras) para que se
transfieran desde el dispositivo designado al PLC local
donde se ejecuta la instrucción. Los datos se reciben a
través de la red y se escriben en el área de datos
indicada
Un PLC dispone de 8 puertos lógicos de
comunicación por lo que permite ejecutar 8
instrucciones de comunicación simultaneas, aunque
solamente una instrucción puede ser ejecutada a la vez
por cada puerto de comunicaciones.
RECV(098) solicita el número de canales especificado en C comenzando por el
canal S para transferirlo del dispositivo designado al PC local. Los datos se
reciben a través del bus de CPU del PC o a través de la red y se escriben en el
área de datos del PC que empieza por D.
S (Fuente): Canal de inicio de lectura (remoto).
D (Destino): Canal de inicio de escritura (local).
C (Control): Primer canal de los datos de control (5 canales).
30
5.1.- Canales de Control de la función RECV

Será necesario escribir en el canal C y sucesivos los


datos de control:

C+0 Número de canales a recibir


C+1 Red fuente
C+2 Nodo fuente Unidad fuente
C+3 Respuesta Nº puerto Nº reintentos
C+4 Tiempo de espera de respuesta

31
5.1.- Canales de Control de la función RECV

Canal de control C + 0. Número de canales a recibir

32
5.1.- Canales de Control de la función RECV

Canal de control C + 1. Número de red fuente:

33
5.1.- Canales de Control de la función RECV
Canal de control C + 2. Número de nodo fuente y número de unidad
fuente:
L El nº de nodo de la unidad fuente se corresponde con el Rotoswitch
de la tarjeta de la cual deseamos recibir los datos.

El nº de la unidad fuente indicará el tipo de equipo a quien se envía


el dato. Normalmente será la CPU (00) que distribuirá el dato según la
red y el nodo al lugar adecuado.

34
5.1.- Canales de Control de la función RECV
Canal de control C + 3. Respuesta requerida. Puerto lógico de
comunicaciones. Número de reintentos:
L Los bits de 00 a 03 indican el nº de reintentos y pueden programarse de
0 a F (es decir 15 intentos máximo).
Los bits de 04 a 07 no se utilizan y los fijamos a 0.
Los bits 08 a 11 indican el número de puerto lógico de comunicaciones.
Como sólo es posible para esta CPU 8 puertos lógicos el valor máximo será 0111
(7) Si se programa 1111 le estamos indicando localización automática del puerto de
(7).
comunicaciones.
El bit 15 hay que fijarlo a 0 porque se requiere respuesta para poder
recibir los datos.

35
5.1.- Canales de Control de la función RECV

Canal de control C + 4. Tiempo de espera de respuesta:

36
5.2.- Flag de Comunicaciones
Existen varios flags indicativos de diversos aspectos en las comunicaciones de los
puertos del PLC. Se indican a continuación algunos de los más significativos.

-Flag de puerto de comunicaciones habilitado: es puesto a 0 cuando se esta


realizando una comunicación, y puesto a 1 cuando las comunicaciones han sido
terminadas.
Un contacto normalmente abierto de uno de estos flag puede colocarse en serie con
la instrucción de comunicaciones, con el fin de impedir su ejecución hasta que el
puerto esté libre.
libre

37
5.2.- Flag de Comunicaciones

Existen varios flags indicativos de diversos aspectos en las comunicaciones de los


puertos del PLC. Se indican a continuación algunos de los más significativos.

–Flag de error en el puerto de comunicaciones: se pone a 0 cuando se inicia la


transmisión o recepción, y se pondrá a 1 si ocurriera algún error en la operación.

38
5.3.- Ejercicio de comunicación ethernet entre dos autómatas
programables utilizando la Función de recibir RECV.
El autómata PLC1 simula un proceso de fabricación de piezas (hasta 16) de forma
repetitiva. El número de unidades producidas se simula visualizando la acumulación de
bit (leds encendidos) en el canal de salidas CIO 001.

El autómata PLC2 simula un etiquetado de las piezas producidas por el PLC1. Cada
vez que termina un lote de piezas etiquetadas, solicita al PLC1 una lectura con las que
en ese momento tengag fabricadas. Este número de p piezas leídas aparecerá
p como leds
del canal de salida CIO001 del PLC2 encendidos y su proceso de etiquetado lo
simulamos visualizando el apagado bit a bit de ese canal de salidas CIO 001 del PLC2.

La lectura de las piezas debería de borrar del PLC1 las que se han tomado para
etiquetar comenzando este PLC1 un nuevo lote. Al tratarse de un ejercicio de lectura y
simulación prescindimos de borrar del PLC1 las piezas leídas.

El autómata PLC2 debe programarse para recibir el canal de salidas CIO 001 del PLC1
que es donde tiene las piezas acumuladas, a su canal CIO 001 que es donde se
empaquetan .

Solamente se recibe el dato si el PLC2 lo requiere, y esto ocurrirá cada vez que su
canal de salidas CIO 001 esté vacío.
39
5.3.- Ejercicio de comunicación ethernet entre dos autómatas
programables utilizando la Función de recibir RECV.

Programación de los autómatas.

El proceso de programación de los autómatas desde CX-Programmer puede


hacerse estableciendo la comunicación entre el PC y los equipos en modo
Toolbus. En este caso después de programar un PLC, cambiamos el cable de
su puerto serie al del otro autómata para conectarnos con él y de esta forma
igualmente poderlo programar.

Pero también es posible que la comunicación entre el PC y los PLCs de cara


a la programación se establezca en modo ETHERNET. El proceso se ha
desarrollado en la unidad didáctica nº 3. La programación la realizamos
también de equipo en equipo y cambiando el cable que en este caso es cruzado
con conector RJ45.

40
Programación del autómata PLC1 (Nodo 1)

Este autómata solamente simula la acumulación de piezas


producidas mediante en encendido de los leds del canal de
salidas CIO 001.

Aunque
q este autómata le va a responder
p enviando los datos
cuando se lo requieran, no es necesario realizar ninguna
programación de comunicaciones al respecto

41
PLC1 (Nodo 1)

42
Programación del autómata PLC2 (Nodo 3)

En la línea de programa 1, observamos que se compara el canal de


salidas CIO 001 del PLC2, donde se simula el empaquetado, con la
constante 0, de esta manera sabremos cuando ha finalizado un lote. En
ese momento se activará el bit de trabajo W0.00 y se ejecutará la
instrucción de recibir.

El autómata PLC2 solicita respuesta


p y el PLC1 enviará el canal CIO
001, cuyo dato se transmitirá al canal CIO 001 del PLC2.

El PLC2 comenzará a apagar los led del canal de salidas CIO001, con
el intervalo de tiempo fijado en el TIM 0000, que simulan el
empaquetado pieza a pieza. (Se indican 1,8 segundos para que no
coincida el tiempo de empaquetado con el de producción del PLC1)
Cuando el canal vuelve a estar a cero vuelve a solicitar otro dato al
PLC1.

43
PLC2 (Nodo 3)

44
Programación del autómata PLC2 (Nodo 3)

Datos de los Canales de Control.

En los canales de control D100 y sucesivos indicaremos:

Canal de Definición Dato binario Dato


control hexadecimal
D100 Nº de
d canales
l o palabras
l b a 0000 0000 0000 0001 0001
transmitir
D101 Nº de red de fuente 0000 0000 0000 0000 0000

D102 Nº de nodo fuente y Nº de 0000 0001 0000 0000 0100


unidad de fuente
D103 Respuesta requerida. Puerto 0000 1111 0000 0001 0F01
Lógico de Comunicaciones.
Número de reintentos.
D104 Tiempo de espera de 0000 0000 0000 0000 0000
respuesta
45
Programación del autómata PLC2 (Nodo 3)

Edición de los datos de los Canales de Control en el proyecto


realizado y su transferencia al PLC2.

La escritura de estos datos de control en el PLC2 hay que hacerlo on line


en modo programa o monitor.

Si deseamos que estos datos, además de transferirlos al PLC, queden


guardados en el proyecto, en vez de realizar el proceso de su escritura
desde la ventana de monitorización, lo realizaremos desde CX-Programmer
en memoria.

En las siguientes figuras se ven los pasos a seguir.

46
PLC2 (Nodo 3).
1º paso: Abrir el menú de la memoria del PLC.

47
PLC2 (Nodo 3).
2º paso: Escoger el área de memoria D (anteriormente DM).

48
PLC2 (Nodo 3).
3º paso: Escribir los datos necesarios en cada uno de los D
definidos como canales de control.

49
PLC2 (Nodo 3).
4º paso: Transferir los datos a la memoria del autómata.

50
PLC2 (Nodo 3).
5º paso: Guardar el proyecto. De esta forma, podremos
recuperar el proyecto para retocarlo o transferirlo a un PLC.

51
Prueba del ejercicio desarrollado

Una vez transferidos los dos programas y los datos de control a los
autómatas, observaremos como los led de salida del PLC1 simulan con su
encendido la fabricación de piezas.

Cada vez que el canal de salidas del autómata PLC2 finaliza el empaquetado
(todos los led se han apagado), solita la recepción del dato del canal CIO 001 del
PLC1. En ese momento veremos cómo se carga g el canal de salidas CIO 001 del
PLC2 con el mismo valor que en ese instante tiene el canal CIO 001 del PLC 1.

Además, podemos comprobar que cuando hay comunicación, el led de


transmitir de la unidad ethernet del PLC2 luce, así como el led de recibir de la
tarjeta ethernet del PLC1 y viceversa porque le devuelve el dato.

El programa realizado en CX-Programmer, puede consultarse en:


Programas-PLC-Actividad4\prueba-receive-8-4-05.cxp

52

También podría gustarte