07.03.2014 Views

INGENIERÍA ELECTRÓNICA Y AUTOMÁTICA - Área de Ingeniería ...

INGENIERÍA ELECTRÓNICA Y AUTOMÁTICA - Área de Ingeniería ...

INGENIERÍA ELECTRÓNICA Y AUTOMÁTICA - Área de Ingeniería ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

1. REDES DE COMUNICACIONES DE LA FMS-200.<br />

En la FMS200 se han instalado dos re<strong>de</strong>s <strong>de</strong> comunicación: Unitelway y Ethernet. En la<br />

actualidad solo suele estar operativa la segunda, conectándose la primera sólo en ocasiones para<br />

pruebas o prácticas <strong>de</strong> <strong>de</strong>terminadas asignaturas. A<strong>de</strong>más, el autómata TSX Premium cuenta con<br />

un enlace Modbus con uno <strong>de</strong> los PCs <strong>de</strong> la sala para la utilización <strong>de</strong> paquetes SCADA.<br />

1.1. Intercambios con los autómatas.<br />

Para que el software PL7 se comunique con un autómata ha <strong>de</strong> existir un medio <strong>de</strong> conexión<br />

(cable <strong>de</strong> comunicación serie, bus <strong>de</strong> comunicaciones o red <strong>de</strong> comunicaciones) y el PC <strong>de</strong>be<br />

tener instalado un controlador <strong>de</strong> comunicaciones a<strong>de</strong>cuado.<br />

El controlador (driver) <strong>de</strong> comunicaciones por <strong>de</strong>fecto es el Unitelway, que permite la conexión<br />

con el autómata mediante un cable <strong>de</strong> comunicación serie entre un puerto <strong>de</strong> comunicaciones <strong>de</strong>l<br />

PC (COM) y el conector <strong>de</strong> Terminal (TER) <strong>de</strong>l autómata. En el PL7, bajo el menú “Autómata”<br />

habrá que configurar la “Dirección <strong>de</strong>l autómata” <strong>de</strong> la manera indicada en la figura 1.1.<br />

También se pue<strong>de</strong> usar ese controlador en el caso <strong>de</strong> que el autómata forme parte <strong>de</strong> una red<br />

Unitelway y el PC tenga acceso a ella a través <strong>de</strong> uno <strong>de</strong> los puertos <strong>de</strong> comunicación serie. El<br />

autómata se direcciona <strong>de</strong> forma similar a la figura 1.2 <strong>de</strong>pendiendo <strong>de</strong> la estructura <strong>de</strong><br />

direcciones que tenga la red.<br />

Figura 1.1. Figura 1.2. Figura 1.3.<br />

Si el autómata dispone <strong>de</strong> un módulo <strong>de</strong> comunicaciones Ethernet y el PC tiene instalado y<br />

configurado el controlador (driver) XIP, la dirección <strong>de</strong>l autómata en este caso tiene el aspecto<br />

representado en la figura 1.3. En la configuración <strong>de</strong>l controlador XIP se han <strong>de</strong> <strong>de</strong>tallar las<br />

direcciones IP y X-Way <strong>de</strong> cada autómata con el que se va a trabajar como se muestra en el<br />

ejemplo <strong>de</strong> la figura 1.4. La figura 1.5 muestra el aspecto <strong>de</strong> la ventana <strong>de</strong>l controlador XIP que<br />

<strong>de</strong>be permanecer activa (aunque sea minimizada) para que el software PL7 pueda utilizar el<br />

controlador para comunicarse con el autómata.<br />

Figura 1.4. Configuración <strong>de</strong>l driver XIP.<br />

Figura 1.5. Ventana <strong>de</strong>l driver XIP.<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

1.2 Bus Unitelway.<br />

La siguiente figura representa las direcciones <strong>de</strong>l bus Unitelway asignadas a cada una <strong>de</strong><br />

las estaciones:<br />

La construcción <strong>de</strong>l bus Unitelway precisa <strong>de</strong> la incorporación <strong>de</strong> numerosos dispositivos: cajas<br />

<strong>de</strong> conexión (SCA 50), diferentes cables <strong>de</strong> conexión (SCY CU 6030, SCA 100, etc.). El<br />

autómata TSX Premium, que actúa como maestro <strong>de</strong>l bus, se conecta mediante la via 0 <strong>de</strong>l<br />

módulo SCY 21601 conectado en la posición 1 <strong>de</strong> su rack, mientras que los TSX Micro, los<br />

esclavos, se conectan a las cajas <strong>de</strong> conexión <strong>de</strong>s<strong>de</strong> su conector TER.<br />

La comunicación sobre este bus se establece normalmente <strong>de</strong>s<strong>de</strong> el programa <strong>de</strong>l maestro que<br />

mediante funciones READ_VAR() y WRITE_VAR() (cuyo uso se <strong>de</strong>scribe más a<strong>de</strong>lante en el<br />

ejemplo <strong>de</strong> los paneles <strong>de</strong> automatismos) lee o escribe datos en los objetos <strong>de</strong> la memoria <strong>de</strong> los<br />

esclavos. Des<strong>de</strong> el programa <strong>de</strong> los PLCs esclavos se pue<strong>de</strong> también realizar lecturas y escrituras<br />

<strong>de</strong> otros dispositivos (maestros o esclavos <strong>de</strong> la red), pero en este caso es necesario utilizar la<br />

función SEND_REQ() (se <strong>de</strong>scribirá su uso en un ejemplo más a<strong>de</strong>lante) que es más compleja <strong>de</strong><br />

utilizar.<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

1.5 Bus Modbus<br />

El segundo bus <strong>de</strong> campo presente en la célula FMS 200 es una red Modbus, representada<br />

tambien en la figura anterior, compuesta únicamente por dos equipos, un PC supervisor, y el<br />

autómata TSX Premium que gestiona la línea con una tarjeta SCP 111 en el módulo SCY 21601.<br />

Los mensajes Modbus son enviados a través <strong>de</strong> un enlace <strong>de</strong> comunicación asíncrona en serie RS<br />

232. Modbus resulta idóneo para las arquitecturas Maestro/Esclavo y presenta ventajas<br />

sustanciales respecto al bus Unitelway en términos <strong>de</strong> estandarización, compatibilidad,<br />

extensibilidad, velocidad y flujo <strong>de</strong> datos. Su empleo se justificaba por las exigencias <strong>de</strong>l<br />

software SCADA instalado en el PC supervisor.<br />

El bus se compone <strong>de</strong> una estación Maestra y <strong>de</strong> varias estaciones Esclavas. La estación Maestra<br />

es la única que suele tomar la iniciativa <strong>de</strong> intercambio, usando las funciones READ_VAR() y<br />

WRITE_VAR() como en el caso anteriór, mientras que las Esclavas no pue<strong>de</strong>n comunicarse<br />

directamente y lo hacen a través <strong>de</strong>l maestro con la función SEND_REQ(). Existen dos<br />

mecanismos <strong>de</strong> intercambio:<br />

• Pregunta/Respuesta: la Maestra transmite preguntas a una Esclava <strong>de</strong>terminada, que a su<br />

vez transmite una respuesta a la Maestra.<br />

• Difusión: la Maestra transmite un mensaje a todas las estaciones Esclavas <strong>de</strong>l bus, que<br />

ejecutan la or<strong>de</strong>n sin transmitir ninguna respuesta.<br />

Lo conexión Modbus presente en la célula FMS 200 consta <strong>de</strong> un equipo maestro, el PC y un<br />

único esclavo, el autómata Premium maestro <strong>de</strong> la red UNITELWAY.<br />

1.4 Red Ethenet.<br />

La principal ventaja <strong>de</strong> la red Ethernet para los PLCs TSX es que incorpora el servicio IO<br />

Scanning, mediante el cual, el maestro <strong>de</strong> la red realiza cíclicamente imágenes <strong>de</strong> zonas <strong>de</strong> la<br />

memoria <strong>de</strong> los esclavos en el maestro y viceversa, sin la necesidad <strong>de</strong> llamar a ninguna función<br />

<strong>de</strong>s<strong>de</strong> el programa <strong>de</strong> los autómatas. Una tarjeta ETY 510 en el rack <strong>de</strong>l TSX Premiun permite la<br />

configuración y realización <strong>de</strong> este servicio. Los TSX Micro precisan <strong>de</strong> un puente ETZ 410,<br />

conectado a su conector TER para po<strong>de</strong>r unirse a la red Ethernet. Este puente no les permite ser<br />

maestros <strong>de</strong>l servicio IO Scanning.<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

La siguiente figura representa las direcciones asignadas a cada una <strong>de</strong> las estaciones para las<br />

distintas conexiones a través <strong>de</strong> la red Ethernet:<br />

A<strong>de</strong>más <strong>de</strong>l servicio IO Scanning, se pue<strong>de</strong>n usar las funciones READ_VAR(), WRITE_VAR()<br />

y SEND_REQ(), en las mismas condiciones <strong>de</strong> la red Unitelway, es <strong>de</strong>cir, los esclavos TSX<br />

Micro sólo pue<strong>de</strong>n hacer uso <strong>de</strong> la función SEND_REQ(), tal como se <strong>de</strong>scribe en el ejemplo<br />

siguiente.<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

EJEMPLO DE FUNCIONES DE COMUNICACIÓN CON ETHERNET<br />

FUNCIÓN DE ESCRITURA (envío <strong>de</strong> una o varias palabras)<br />

Escritura <strong>de</strong> una palabra con el valor 12 sobre la palabra %MW100 <strong>de</strong>l autómata con dirección XWay 1.5 para el<br />

que <strong>de</strong>be estar <strong>de</strong>finida una conexión Unitelway en la configuración <strong>de</strong>l módulo <strong>de</strong> comunicaciones ETZ410.<br />

%MW11:=16#0501 Dirección 1: Dirección Xway en hexa<strong>de</strong>cimal (ejemplo dirección Unitelway 1.5)<br />

%MW12:=16#0000 Dirección 2: 0<br />

%MW13:=16#0000 Dirección 3: 0<br />

%MW14:=16#0768 Tipo palabra 07; Zona 68<br />

%MW15:=100 Palabra don<strong>de</strong> se va a escribir (%MW100)<br />

%MW16:=1 Longitud en palabras que se van a escribir<br />

%MW17:=12 Valor(es) que se va(n) a escribir (12 en %MW100)<br />

(%MW20)<br />

(%MW30:X1)<br />

(%MW31)<br />

%MW32:=60<br />

%MW33:=14<br />

Palabra reservada para el byte <strong>de</strong> gestión<br />

Bit <strong>de</strong> actividad (permanece a 1 mientras se realiza la operación <strong>de</strong> envío)<br />

Byte bajo = byte <strong>de</strong> comunicación. Byte alto = byte <strong>de</strong> control<br />

Timeout en 0.1 segundos (6 segundos)<br />

Longitud en bytes a tansmitir (<strong>de</strong> %MW11 a %MW17->14 bytes)<br />

(No asignar valores a las palabras %MW20, %MW30 y %MW31, son usadas por el sistema)<br />

SEND_REQ(ADR#0.0.4,16#0037,%MW11:7,%MW20:1,%MW30:4);<br />

(ADR#0.0.4 Dirección <strong>de</strong>l módulo <strong>de</strong> comunicación Ethenet ETZ410)<br />

(16#0037 Comando <strong>de</strong> escritura)<br />

FUNCIÓN DE LECTURA (recepción <strong>de</strong> una o varias palabras)<br />

Lectura <strong>de</strong> la palabra %MW200 <strong>de</strong>l autómata con dirección XWay 1.5 para el que <strong>de</strong>be estar <strong>de</strong>finida una conexión<br />

Unitelway en la configuración <strong>de</strong>l módulo <strong>de</strong> comunicaciones ETZ410.<br />

%MW21:=16#0501 Dirección 1: Dirección Xway en hexa<strong>de</strong>cimal (ejemplo dirección Unitelway 1.5)<br />

%MW22:=16#0000 Dirección 2: 0<br />

%MW23:=16#0000 Dirección 3: 0<br />

%MW24:=16#0768 Tipo palabra 07; Zona 68<br />

%MW25:=200 Palabra que se va a leer (%MW200)<br />

%MW26:=1 Longitud en palabras que se van a leer<br />

(%MW50:2)<br />

(%MW40:X1)<br />

(%MW41)<br />

%MW42:=60<br />

%MW43:=12<br />

Palabras reservada para el byte <strong>de</strong> gestión y la palabra leída (2 palabras)<br />

Bit <strong>de</strong> actividad (permanece a 1 mientras se realiza la operación <strong>de</strong> envío)<br />

Byte bajo = byte <strong>de</strong> comunicación. Byte alto = byte <strong>de</strong> control<br />

Timeout en 0.1 segundos (6 segundos)<br />

Longitud en bytes a transmitir (<strong>de</strong> %MW21 a %MW26->12 bytes)<br />

(No asignar valores a las palabras %MW40, %MW41, %MW50 y %MW51, son usadas por el sistema)<br />

SEND_REQ(ADR#0.0.4,16#0036,%MW21:6,%MW50:2,%MW40:4);<br />

(ADR#0.0.4 Dirección <strong>de</strong>l módulo <strong>de</strong> comunicación Ethenet ETZ410)<br />

(16#0036 Comando <strong>de</strong> lectura)<br />

Los datos se reciben en %MW50 pero el primer byte (el menos significativo) es <strong>de</strong> gestión <strong>de</strong> la comunicación y los<br />

datos leídos empiezan en el segundo byte <strong>de</strong> %MW50 (el más significativo). Habrá que reor<strong>de</strong>nar los bytes. Para<br />

una sola palabra, el primer byte será el segundo <strong>de</strong> %MW50 y el segundo será el primero <strong>de</strong> %MW51. Hay que usar<br />

la función ROR_ABR para rotar a<strong>de</strong>cuadamente los cuatro bytes <strong>de</strong> las palabras %MW50 y %MW51 (4 bytes, <strong>de</strong><br />

%MB100 a %MB104). De esa manera la palabra recibida quedará en %MW50:<br />

ROR1_ARB(%MB100:4);<br />

El programa <strong>de</strong> ejemplo que se <strong>de</strong>scribe en las siguientes figuras se pue<strong>de</strong> cargar en un autómata TSXMicro <strong>de</strong> la<br />

FMS-200 o <strong>de</strong> los paneles <strong>de</strong> automatismos, para escribir o leer datos en la memoria <strong>de</strong> palabras (%MW) <strong>de</strong> otro<br />

autómata que este encendido y conectado a la misma red Ethernet (este pue<strong>de</strong> estar en RUN o en STOP). Es<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

necesario que en la configuración <strong>de</strong> los módulos ETZ-410 <strong>de</strong> cada autómata esté <strong>de</strong>finida la conexión XWay con el<br />

otro autómata. La pantalla <strong>de</strong> explotación permite <strong>de</strong>finir la dirección y posición que se quiere leer o escribir en el<br />

otro autómata.<br />

%M0 %M1<br />

%MW30:X0 OR %X6.T>20<br />

%MW35:X0 OR %X8.T>20<br />

NOT %MW30:X0 OR %X10.T>20<br />

NOT %MW35:X0 OR %X12.T>20<br />

(16#00FF AND %MW31)=0<br />

(16#00FF AND %MW31)0<br />

POST<br />

(*Enviar (escribir) *)<br />

IF X6_inicio_escritura THEN<br />

(* %MW11:=16#6901;(* dirección 1 Xway-Modbus 1.105 *)<br />

(* %MW11:=16#5601;(* dirección 1 Xway-Unitelway 1.5 *)<br />

Direccion2:=16#0000;(* dirección 2 *)<br />

Direccion3:=16#0000;(* dirección 3 *)<br />

Tipo_zona:=16#0768;(* Tipo palabra 07; Zona 68 *)<br />

(* %MW15:=100;(* Palabra don<strong>de</strong> se va a escribir: %MW100 *)<br />

Numero_<strong>de</strong>_posiciones:=1;(* Longitud en palabras que se van a escribir *)<br />

(* %MW16:=12;(* Valores que se van a escribir: 12 en %MW100 *)<br />

Tiempo_espera:=60;(* Timeout en 0.1 segundos: 6 segundos*)<br />

Longitud_telegrama:=14;(* Longitud en bytes a tansmitir %MW11 a 17->14 bytes*)<br />

SEND_REQ(ADR#0.0.4,16#0037,Direccion1:7,Byte_objeto:1,Numero_y_bit_actividad:4);<br />

RESET Or<strong>de</strong>n_<strong>de</strong>_escritura;<br />

END_IF;<br />

(*Recibir (leer) *)<br />

IF X8_inicio_lectura THEN<br />

(* %MW21:=16#6901;(* dirección 1 Xway-Modbus 1.105 *)<br />

(* %MW21:=16#0501;(* dirección 1 Xway-Unitelway 1.5 *)<br />

Direccion2_l:=16#0000;(* dirección 2 *)<br />

Direccion3_l:=16#0000;(* dirección 3 *)<br />

Tipo_zona_l:=16#0768;(* Tipo palabra 07; Zona 68 *)<br />

(* %MW25:=100;(* Palabra don<strong>de</strong> se va a leer: %MW100 *)<br />

Numero_<strong>de</strong>_posiciones_l:=1;(* Longitud en palabras que se van a leer *)<br />

Tiempo_espera_l:=60;(* Timeout en 0.1 segundos: 6 segundos*)<br />

Longitud_telegrama_l:=12;(* longitud en bytes a tansmitir %MW21 a 26->12 bytes*)<br />

SEND_REQ(ADR#0.0.4,16#0036,Direccion1_l:6,Dato_leido:2,Numero_y_bit_actividad_l:4);<br />

RESET Or<strong>de</strong>n_<strong>de</strong>_lectura;<br />

END_IF;<br />

(* Los datos se reciben en %MW27 pero el primer byte (el menos significativo)<br />

es <strong>de</strong> gestión <strong>de</strong> la comunicación y los datos leídos empiezan en el segundo byte<br />

<strong>de</strong> %MW27 (el más significativo). *)<br />

(*Habrá que reor<strong>de</strong>nar los bytes, para una sola palabra, el primer byte será el<br />

segundo <strong>de</strong> %MW27 y el segundo será el primero <strong>de</strong> %MW28. Hay que usar la función<br />

ROR_ABR para rotar a<strong>de</strong>cuadamente los cuatro bytes <strong>de</strong> las palabras %MW27 y %MW28<br />

(%MB54 a %MB57)*)<br />

IF X13_lectura_finalizada THEN<br />

ROR1_ARB(%MB54:4);<br />

END_IF;<br />

(16#00FF AND %MW36)=0<br />

(16#00FF AND %MW36)0<br />

(*Enviar (escribir) *)<br />

IF %X6 THEN<br />

(* %MW11:=16#6901;(* dirección 1 Xway-Modbus 1.105 *)<br />

(* %MW11:=16#5601;(* dirección 1 Xway-Unitelway 1.5 *)<br />

%MW12:=16#0000;(* dirección 2 *)<br />

%MW13:=16#0000;(* dirección 3 *)<br />

%MW14:=16#0768;(* Tipo palabra 07; Zona 68 *)<br />

(* %MW15:=100;(* Palabra don<strong>de</strong> se va a escribir: %MW100 *)<br />

%MW16:=1;(* Longitud en palabras que se van a escribir *)<br />

(* %MW16:=12;(* Valores que se van a escribir: 12 en %MW100 *)<br />

%MW32:=60;(* Timeout en 0.1 segundos: 6 segundos*)<br />

%MW33:=14;(* Longitud en bytes a tansmitir %MW11 a 17->14 bytes*)<br />

SEND_REQ(ADR#0.0.4,16#0037,%MW11:7,%MW20:1,%MW30:4);<br />

RESET %M0;<br />

END_IF;<br />

(*Recibir (leer) *)<br />

IF %X8 THEN<br />

(* %MW21:=16#6901;(* dirección 1 Xway-Modbus 1.105 *)<br />

(* %MW21:=16#0501;(* dirección 1 Xway-Unitelway 1.5 *)<br />

%MW22:=16#0000;(* dirección 2 *)<br />

%MW23:=16#0000;(* dirección 3 *)<br />

%MW24:=16#0768;(* Tipo palabra 07; Zona 68 *)<br />

(* %MW25:=100;(* Palabra don<strong>de</strong> se va a leer: %MW100 *)<br />

%MW26:=1;(* Longitud en palabras que se van a leer *)<br />

%MW37:=60;(* Timeout en 0.1 segundos: 6 segundos*)<br />

%MW38:=12;(* Longitud en bytes a tansmitir %MW21 a 26->12 bytes*)<br />

SEND_REQ(ADR#0.0.4,16#0036,%MW21:6,%MW27:2,%MW35:4);<br />

RESET %M1;<br />

END_IF;<br />

(* Los datos se reciben en %MW27 pero el primer byte (el menos significativo)<br />

es <strong>de</strong> gestión <strong>de</strong> la comunicación y los datos leídos empiezan en el segundo byte<br />

<strong>de</strong> %MW27 (el más significativo). *)<br />

(*Habrá que reor<strong>de</strong>nar los bytes, para una sola palabra, el primer byte será el<br />

segundo <strong>de</strong> %MW27 y el segundo será el primero <strong>de</strong> %MW28. Hay que usar la función<br />

ROR_ABR para rotar a<strong>de</strong>cuadamente los cuatro bytes <strong>de</strong> las palabras %MW27 y %MW28<br />

(%MB54 a %MB57)*)<br />

IF %X13 THEN<br />

ROR1_ARB(%MB54:4);<br />

END_IF;<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

2. REDES DE LOS PANELES DE AUTOMATISMOS.<br />

Los paneles <strong>de</strong> automatismos disponen cada uno <strong>de</strong> un PLC TSX-Micro con su correspondiente<br />

puente Ethernet ETZ-410 y una tarjeta SCP-114 en la ranura <strong>de</strong> su CPU. Esta tarjeta permite<br />

establecer un bus <strong>de</strong> comunicación MODBUS con el Variador <strong>de</strong> Velocidad ATV28 presente en<br />

el panel, en el cual, el PLC actúa como maestro <strong>de</strong>l bus.<br />

PANEL 1<br />

PANEL 6<br />

ETZ-410<br />

SCP 114<br />

Modbus<br />

ATV28<br />

{1.1}<br />

10.0.2.1<br />

PC 1 {1.11}<br />

10.0.2.11<br />

{1.6}<br />

10.0.2.6<br />

PC 6 {1.16}<br />

10.0.2.16<br />

PC 2 {1.12}<br />

10.0.2.12<br />

PC 5 {1.15}<br />

10.0.2.15<br />

Motor<br />

PANEL 2<br />

PANEL 5<br />

2.1 Red Ethernet<br />

La red Ethernet instalada está soportada por un Conmutador<br />

Ethernet 10/100 Mbps al que se conectan los PCs y los PLCs para<br />

permitir la programación y control <strong>de</strong> estos mediante el programa<br />

PL7. La figura representa las direcciónes IP y XWay que se han<br />

asignado a cada equipo según su situación en el Panel y las mesas<br />

<strong>de</strong>l laboratorio correspondientes.<br />

La red Ethernet permite también la comunicación <strong>de</strong> los PLCs<br />

entre si <strong>de</strong> manera similar a como se ha <strong>de</strong>scrito en el caso <strong>de</strong> la<br />

FMS-200.<br />

2.2 Bus MODBUS<br />

{1.2}<br />

10.0.2.2<br />

PC 3 {1.13}<br />

10.0.2.13<br />

PANEL 3<br />

{1.3}<br />

10.0.2.3<br />

{1.5}<br />

10.0.2.5<br />

PC 4 {1.14}<br />

10.0.2.14<br />

Ethenet<br />

Switch 10/100<br />

PANEL 4<br />

{1.4}<br />

10.0.2.4<br />

La tarjeta <strong>de</strong> comunicaciones SCP114 <strong>de</strong>l PLC está conectada a un sistema <strong>de</strong> cableado<br />

Unitelway al que se conecta el ATV28 como esclavo <strong>de</strong>l bus. Una vez configurada<br />

a<strong>de</strong>cuadamente, permite enviar <strong>de</strong>s<strong>de</strong> el programa <strong>de</strong>l autómata ór<strong>de</strong>nes al ATV28, escribiendo y<br />

leyendo datos <strong>de</strong> algunos <strong>de</strong> sus registros <strong>de</strong> manera similar a como se pue<strong>de</strong> escribir o leer datos<br />

en la memoria <strong>de</strong> usuario <strong>de</strong> otro PLC.<br />

Las funciones utilizadas para leer y escribir en los registros <strong>de</strong>l ATV28 son las funciones<br />

READ_VAR() y WRITE_VAR(). Los registros fundamentales para gobernar el ATV28 son el<br />

%MW400 (CMD), don<strong>de</strong> se escriben los comandos que se quiere que ejecute el ATV28 y el<br />

%MW401 (Consigna) don<strong>de</strong> se escribe la consigna <strong>de</strong> velocidad a la que se quiere que gire el<br />

motor. Otros registros documentados en los manuales <strong>de</strong>l ATV28 permiten conocer su estado<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

(mediante su lectura) o cambiar los parámetros <strong>de</strong> configuración <strong>de</strong>l dispositivo (mediante la<br />

escritura sobre ellos).<br />

Configuración <strong>de</strong> la tarjeta <strong>de</strong> comunicaciones SCP 114<br />

<strong>de</strong>s<strong>de</strong> la aplicación PL7:<br />

1º Acce<strong>de</strong>r a la configuración <strong>de</strong> hardware y pinchar en<br />

comunicaciones.<br />

2º Acce<strong>de</strong>r a la pantalla <strong>de</strong> configuración <strong>de</strong> la vía <strong>de</strong><br />

comunicación:<br />

- Seleccionar la vía <strong>de</strong> comunicación en el menú<br />

<strong>de</strong>splegable VÍA 1<br />

- Seleccionar en el menú <strong>de</strong>splegable la tarjeta PCMCIA<br />

“TSX SCP 114 TARJETA PCMCIA RS485 MP”<br />

- Seleccionar el enlace en el menú <strong>de</strong>splegable: “ENLACE<br />

MODBUS /JBUS”<br />

3º Por último en la Pantalla <strong>de</strong> configuración <strong>de</strong> Modbus<br />

- Tipo: Maestro<br />

- Nº <strong>de</strong> reiteraciones: 3<br />

- Tiempo <strong>de</strong> respuesta: 2 (evita un retardo excesivo<br />

cuando se pier<strong>de</strong> un mensaje)<br />

- Velocidad <strong>de</strong> transmisión: 19200 bits/s<br />

- Tiempo entre caracteres: 2<br />

- Datos: RTU (8 bits)<br />

- Parada: 1 bit<br />

- Paridad: Sin<br />

Configuración <strong>de</strong> la tarjeta <strong>de</strong> comunicaciones SCP114<br />

WRITE_VAR(ADR#0.1.1,'%MW',400,2,%MW30:2,%MW40:4)<br />

Posición<br />

Palabras <strong>de</strong> control (4)<br />

Vía<br />

Número <strong>de</strong> objetos<br />

Esclavo<br />

Posición local <strong>de</strong>l objeto<br />

READ_VAR(ADR#0.1.1,'%MW',450,5,%MW50:5,%MW60:4)<br />

Posición 0<br />

Via 0<br />

Via 1<br />

SCP114<br />

Tipo <strong>de</strong> objeto a intercambiar<br />

Posición remota <strong>de</strong>l objeto<br />

Número <strong>de</strong> objetos consecutivos<br />

%MW30<br />

%MW31<br />

%MW50<br />

%MW54<br />

15<br />

…………<br />

…………<br />

0<br />

WRITE<br />

READ<br />

%MW40:X0 Bit <strong>de</strong> actividad: se pone a<br />

uno al inicio <strong>de</strong> la función <strong>de</strong> comunicación<br />

y vuelve a cero cuando esta termina.<br />

%MW400<br />

%MW401<br />

%MW450<br />

…………<br />

…………<br />

ATV28<br />

Maestro<br />

%MW454<br />

Protocolo MODBUS/JBUS<br />

Enlace UNITELWAY RS458 (19.200 bps)<br />

Esclavo 1<br />

15<br />

CMD<br />

Consigna<br />

0<br />

Palabras <strong>de</strong> control en el ATV28:<br />

CMD -> %MW400<br />

Consigna -> %MW401 (en 0.1Hz, <strong>de</strong> -50 a 50Hz)<br />

Secuencia <strong>de</strong> comandos:<br />

• Puesta en marcha <strong>de</strong>s<strong>de</strong> el<br />

encendido (locked):<br />

CMD=H'0006' (paso a standby)<br />

CMD=H'0007' (paso a ready)<br />

CMD=H'000F' (paso a run)<br />

• Paso a parado <strong>de</strong>s<strong>de</strong> "run":<br />

CMD=H'0000' (paso a locked)<br />

Funciones WRITE_VAR() y READ_VAR() sobre los registros <strong>de</strong>l ATV28<br />

El programa <strong>de</strong> ejemplo “ControlVyP.stx”, <strong>de</strong>scrito en las siguientes figuras, utiliza estas<br />

funciones <strong>de</strong> comunicación. Una vez cargado en el autómata permite controlar la velocidad <strong>de</strong><br />

giro <strong>de</strong>l motor y su posición mediante varias pantallas <strong>de</strong> explotación, a través <strong>de</strong> la<br />

comunicación <strong>de</strong> comandos al ATV28.<br />

La primera Pantalla <strong>de</strong> Explotación es un “Menú Principal” para acce<strong>de</strong>r a las otras tres Pantallas<br />

<strong>de</strong> Explotación. Los botones centrales con los triángulos permiten elegir si se quiere realizar un<br />

“Control <strong>de</strong> Velocidad” o un “Control <strong>de</strong> Posición”. Luego se utilizan los botones anexos para<br />

saltar a las ventanas gráficas que permiten visualizar cada uno <strong>de</strong> los modos <strong>de</strong> control. El botón<br />

“Depuración” lleva a una pantalla especial <strong>de</strong>s<strong>de</strong> la que se pue<strong>de</strong>n comprobar el estado <strong>de</strong> las<br />

distintas variables y contadores <strong>de</strong>l sistema en cualquier modo <strong>de</strong> control, pero sin la<br />

visualización <strong>de</strong> gráficos <strong>de</strong> ten<strong>de</strong>ncias. Se pue<strong>de</strong> volver al “Menú Principal” <strong>de</strong>s<strong>de</strong> cualquiera<br />

<strong>de</strong> las otras tres ventanas utilizando el botón correspondiente.<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

La segunda Pantalla <strong>de</strong> Explotación “Ventana <strong>de</strong> Control <strong>de</strong> Velocidad” se utiliza cuando se ha<br />

seleccionado el “Control <strong>de</strong> Velocidad” y permite visualizar gráficamente las variables <strong>de</strong><br />

control. En ella se pue<strong>de</strong> arrancar y parar el control con los botones MARCHA y PARO. Una<br />

vez en marcha, la velocidad <strong>de</strong>l motor se controla moviendo el <strong>de</strong>slizador con el ratón o<br />

introduciendo la velocidad <strong>de</strong>seada, positiva o negativa, en el campo <strong>de</strong> la <strong>de</strong>recha “Ref.<br />

R.P.M.”. Por otro lado, los valores <strong>de</strong> las constantes (Kp, Ki y Kd) <strong>de</strong>l regulador que se tenga<br />

implementado en la tarea FAST-Muestreo <strong>de</strong>l programa <strong>de</strong>l autómata se pue<strong>de</strong>n modificar en la<br />

parte inferior <strong>de</strong>recha. Mediante el botón “Menú Principal” se pue<strong>de</strong> volver a la pantalla anterior.<br />

NOTA: Los valores numéricos a introducir en los campos <strong>de</strong> las Pantallas <strong>de</strong> Explotación o<br />

<strong>de</strong>l programa <strong>de</strong>l autómata son números reales y el programa exige que se escriban con el<br />

punto <strong>de</strong>cimal incluido, aunque no fuese necesario, para interpretarlos correctamente. Por<br />

ejemplo: “450.”, “-234.0”, “1243.78”, etc.<br />

La tercera Pantalla <strong>de</strong> Explotación “Ventana <strong>de</strong> Control <strong>de</strong> Posición” se utiliza cuando se ha<br />

seleccionado el “Control <strong>de</strong> Posición” y permite las mismas funciones que la pantalla anterior<br />

para este modo <strong>de</strong> control.<br />

La Pantalla <strong>de</strong> Explotación “Depuración” dispone también <strong>de</strong> los botones para poner en<br />

MARCHA o PARO el control. Mediante la lectura <strong>de</strong>l contador <strong>de</strong> la señal <strong>de</strong>l enco<strong>de</strong>r, que se<br />

muestrea cada 100 ms, se informa en la pantalla <strong>de</strong> la velocidad (R.P.M.) <strong>de</strong>l motor, el número<br />

<strong>de</strong> vueltas giradas y el número <strong>de</strong> grados girados. Un pulsador permite poner a cero los<br />

contadores <strong>de</strong> vueltas y grados para fijar la posición <strong>de</strong> inicio. Estos contadores también se<br />

resetean si se pasa el control a PARO. Se pue<strong>de</strong> realizar el control <strong>de</strong> velocidad o <strong>de</strong> posición<br />

seleccionándolo con el botón “Selección Control Velocidad Posición”, seleccionar referencia <strong>de</strong><br />

velocidad o posición y modificar los valores <strong>de</strong> las constantes <strong>de</strong>l regulador que se tenga<br />

implementado en la tarea FAST-Muestreo <strong>de</strong>l programa <strong>de</strong>l autómata. Los campos inferiores<br />

informan <strong>de</strong> los comandos y valor <strong>de</strong> consigna enviados al ATV28 por el bus <strong>de</strong><br />

comunicaciones. También está disponible el botón “Menú Principal”.<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

A continuación se muestran el Grafcet y POST <strong>de</strong>l programa, que se encargan básicamente <strong>de</strong> la<br />

puesta en marcha y parada <strong>de</strong>l control y <strong>de</strong> las comunicaciones con el ATV28, y la tarea FAST-<br />

Muestreo, que se ejecuta cada 100 ms e implementa el algoritmo <strong>de</strong> control que pue<strong>de</strong> ser<br />

modificado cambiando las líneas <strong>de</strong> código que se encuentran en la zona señalada como<br />

modificable.<br />

POST<br />

IF(X0_parado OR Reset_contador)THEN (* Reset <strong>de</strong> contadores y consignas *)<br />

Vueltas:=0.0;<br />

Grados:=0.0;<br />

Error:=0.0;<br />

Error_anterior:=0.0;<br />

Integral:=0.0;<br />

Consigna:=0.0;<br />

Consigna_anterior:=0.0;<br />

END_IF;<br />

(*Activación <strong>de</strong>l contador*)<br />

Puesta_a_cero_contador:=(X0_parado OR Reset_contador);(* Puesta a cero *)<br />

IF X0_parado THEN<br />

SET Activacion_contador;(* Activación <strong>de</strong>l contaje *)<br />

SET Habilitacion_paso_min_max;(* Permite el paso <strong>de</strong>l contador <strong>de</strong>l min al max viceversa*)<br />

END_IF;<br />

(* Inicialización *)<br />

IF X1_en_marcha AND Locked AND X5_espera_or<strong>de</strong>n_envio AND NOT Or<strong>de</strong>n_envio_cmd THEN<br />

Cmd_atv28:=6;(* paso a Standby *)<br />

SET Or<strong>de</strong>n_envio_cmd;<br />

RESET Locked;<br />

SET Standby;<br />

END_IF;<br />

IF X1_en_marcha AND Standby AND X5_espera_or<strong>de</strong>n_envio AND NOT Or<strong>de</strong>n_envio_cmd THEN<br />

Cmd_atv28:=7;(* paso a Ready *)<br />

SET Or<strong>de</strong>n_envio_cmd;<br />

RESET Standby;<br />

IF(%X0 OR %M10)THEN (* Reset <strong>de</strong> contadores y consignas *)<br />

%MF8:=0.0;<br />

%MF10:=0.0;<br />

%MF24:=0.0;<br />

%MF26:=0.0;<br />

%MF18:=0.0;<br />

%MF20:=0.0;<br />

%MF22:=0.0;<br />

END_IF;<br />

(*Activación <strong>de</strong>l contador*)<br />

%Q3.0.1:=(%X0 OR %M10);(* Puesta a cero *)<br />

IF %X0 THEN<br />

SET %Q3.0;(* Activación <strong>de</strong>l contaje *)<br />

SET %Q3.0.15;(* Permite el paso <strong>de</strong>l contador <strong>de</strong>l min al max y viceversa*)<br />

END_IF;<br />

(* Inicialización *)<br />

IF %X1 AND %M11 AND %X5 AND NOT %M0 THEN<br />

%MW28:=6;(* paso a Standby *)<br />

SET %M0;<br />

RESET %M11;<br />

SET %M12;<br />

END_IF;<br />

IF %X1 AND %M12 AND %X5 AND NOT %M0 THEN<br />

%MW28:=7;(* paso a Ready *)<br />

SET %M0;<br />

RESET %M12;<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

END_IF;<br />

SET Ready;<br />

END_IF;<br />

SET %M13;<br />

IF X1_en_marcha AND Ready AND X5_espera_or<strong>de</strong>n_envio AND NOT Or<strong>de</strong>n_envio_cmd THEN<br />

Cmd_atv28:=15;(* paso a Run *)<br />

SET Or<strong>de</strong>n_envio_cmd;<br />

RESET Ready;<br />

SET Run;<br />

END_IF;<br />

(* Paso a stop *)<br />

IF X0_parado AND NOT Locked AND X5_espera_or<strong>de</strong>n_envio AND NOT Or<strong>de</strong>n_envio_cmd THEN<br />

Cmd_atv28:=0;(* paso a Locked *)<br />

SET Or<strong>de</strong>n_envio_cmd;<br />

SET Locked;<br />

RESET Run;<br />

END_IF;<br />

(* Comunicaciones *)<br />

(* Envío <strong>de</strong> comando y consigna *)<br />

IF X6_envio_iniciado THEN<br />

WRITE_VAR(ADR#0.1.1,'%MW',400,2,Cmd_atv28:2,Estado_<strong>de</strong>_envio:4);<br />

RESET Or<strong>de</strong>n_envio_cmd;<br />

END_IF;<br />

(* Lectura <strong>de</strong> los parametros <strong>de</strong>l ATV28 *)<br />

IF X8_recepcion_iniciada THEN<br />

READ_VAR(ADR#0.1.1,'%MW',450,9,Referencia_<strong>de</strong>_frecuencia:9,Estado_<strong>de</strong>_recepcion:4);<br />

END_IF;<br />

FAST-Muestreo<br />

(*Muestreo <strong>de</strong>l enco<strong>de</strong>r cada 100ms. Cálculo <strong>de</strong> RPM, Vueltas y Grados girados *)<br />

(* Lectura actual <strong>de</strong>l contador *)<br />

Contador_actual:=Contador;<br />

(* Diferencia con la medida anterior. Cambio <strong>de</strong> signo <strong>de</strong> giro *)<br />

Incremento_<strong>de</strong>l_contador:=-(Contador_actual-Contador_anterior);<br />

Contador_anterior:=Contador_actual;(* VALOR GUARDADO PARA LA PRÓXIMA LECTURA *)<br />

(* Para evitar saltos cuando el contador llega al Max. o al Min. <strong>de</strong> la cuenta *)<br />

IF Incremento_<strong>de</strong>l_contador>8000000 THEN<br />

Incremento_<strong>de</strong>l_contador:=Incremento_<strong>de</strong>l_contador-33554432;<br />

END_IF;<br />

IF Incremento_<strong>de</strong>l_contador500 THEN Consigna_atv28:=500;END_IF;<br />

IF Consigna_atv288000000 THEN<br />

%MD4:=%MD4-33554432;<br />

END_IF;<br />

IF %MD4500 THEN %MW29:=500;END_IF;<br />

IF %MW29


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

3. BUS MODBUS DE LA MESA DE RODILLOS<br />

Al igual que los PLCs <strong>de</strong> los Paneles <strong>de</strong> Automatismos, el PLC <strong>de</strong> la maqueta <strong>de</strong> la mesa <strong>de</strong><br />

rodillos cuenta con una tarjeta <strong>de</strong> comunicaciones SCP114 conectada a un sistema <strong>de</strong> cableado<br />

Unitelway al que se conecta el variador <strong>de</strong> velocidad Altivar 66 (ATV66) como esclavo <strong>de</strong>l bus.<br />

Para po<strong>de</strong>r comunicar los dos dispositivos fueron necesarios los siguientes elementos:<br />

TSX Micro<br />

Panel <strong>de</strong><br />

Control<br />

Altivar 66<br />

Magelis<br />

Alimentación<br />

ATV66<br />

TSX Micro<br />

- Tarjeta PCMCIA <strong>de</strong> conexión al autómata, mo<strong>de</strong>lo TSX SCP 114<br />

para UNITELWAY en comunicación serie RS 485.<br />

- Cable <strong>de</strong> conexión UNITELWAY entre la tarjeta PCMCIA TSX<br />

SCP 114 y la caja TSX SCA 50.<br />

- Caja <strong>de</strong> <strong>de</strong>rivación pasiva TSX SCA 50, que adapta<br />

impedancia. Esta caja contiene una tarjeta <strong>de</strong> circuito<br />

impreso en su interior con tres grupos <strong>de</strong> terminales <strong>de</strong><br />

conexión. Proporciona continuidad <strong>de</strong> las señales<br />

eléctricas y la continuidad en el apantallamiento.<br />

- Toma <strong>de</strong> abonado pasiva con dos vías UNI-TELWAY,<br />

mo<strong>de</strong>lo TSX SCA 62, que codifica la dirección <strong>de</strong> los<br />

equipos conectados y adapta la impedancia <strong>de</strong> la línea.<br />

Contiene una tarjeta interior <strong>de</strong> circuito impreso y dos<br />

bloques terminales para conectores <strong>de</strong> 15 pines, para<br />

conexión al bus UNI-TELWAY <strong>de</strong> dos dispositivos.<br />

- Kit <strong>de</strong> comunicación VW3A66301U, que consiste en un<br />

conector <strong>de</strong> 15 pines para conexión a la caja TSX SCA 62, un<br />

cable <strong>de</strong> 3m, y una tarjeta PCMCIA <strong>de</strong> conexión al ATV66.<br />

El programa instalado en el PLC utiliza las funciones READ_VAR() y WRITE_VAR(),<br />

<strong>de</strong>scritas anteriormente, para leer y escribir en los registros <strong>de</strong>l ATV66 y realizar su a<strong>de</strong>cuada<br />

configuración para realizar las prácticas.<br />

http://www.isa.uniovi.es/docencia/iea


4. BUS ASI DEL PANEL DOMÓTICO<br />

<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

El panel domótico cuenta con un bus ASI que permite comunicar los dispositivos<br />

sensores y actuadores con el PLC a través <strong>de</strong> dos módulos <strong>de</strong> entradas y salidas conectados al<br />

mencionado bus. El PLC cuenta con un módulo SAZ 10 para po<strong>de</strong>r gestionar, como maestro, el<br />

bus ASI.<br />

Fuente <strong>de</strong><br />

alimentación<br />

SAZ 10<br />

Maestro<br />

BUS ASI<br />

Módulo 2E/2S - Perfil 3.0<br />

Esclavo 3<br />

Direcciones:<br />

Entradas<br />

%I\4.0\ 3.0<br />

%I\4.0\ 3.1<br />

Salidas<br />

%Q\4.0\ 3.2<br />

%Q\4.0\ 3.3<br />

Direcciones:<br />

Entradas (0-3)<br />

%I\4.0\ 1.x<br />

Salidas (0-3)<br />

%Q\4.0\ 1.x<br />

Módulo 4E/4S - Perfil 7.0<br />

Esclavo 1<br />

La siguiente figura muestra la configuración <strong>de</strong>l autómata <strong>de</strong>l panel domótico, que incluye la<br />

configuración <strong>de</strong>l módulo <strong>de</strong> comunicación AS-i y <strong>de</strong> los dos módulos <strong>de</strong> periferia conectados<br />

con las direcciones 1 (perfil 7.0) y 3 (perfil 3.0).<br />

1<br />

2<br />

3<br />

4<br />

http://www.isa.uniovi.es/docencia/iea


<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong><br />

5. RED DELA PLANTA DE LOS DEPÓSITOS<br />

El módulo ioControl <strong>de</strong> la planta <strong>de</strong> los <strong>de</strong>pósitos está conectado directamente a la red Ethernet<br />

<strong>de</strong>l edificio, soporta el protocolo TCP/IP y tiene asignada la dirección IP 156.35.152.190. Esto<br />

permite monitorizarla y controlarla mediante el programa <strong>de</strong> monitorización ejecutado en un PC<br />

conectado a Internet en cualquier punto <strong>de</strong>l mundo. Las siguientes figuras muestran la estructura<br />

<strong>de</strong> la red y el ejemplo <strong>de</strong> pantalla <strong>de</strong> monitorización utilizado en las prácticas.<br />

Internet<br />

Cámara<br />

TCP/IP<br />

Red Ethernet<br />

(TCP/IP)<br />

ioControl<br />

E<br />

S<br />

PC <strong>de</strong> <strong>de</strong>sarrollo<br />

y monitorización<br />

Como curiosidad, la planta también pue<strong>de</strong> ser monitorizada a través <strong>de</strong> una cámara IP instalada<br />

en el laboratorio accediendo a ella a través <strong>de</strong> un navegador Web con la dirección<br />

156.35.152.187, el nombre <strong>de</strong> usuario “<strong>de</strong>positos” y la contraseña “maqueta”:<br />

http://www.isa.uniovi.es/docencia/iea


http://www.isa.uniovi.es/docencia/iea<br />

<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong>


http://www.isa.uniovi.es/docencia/iea<br />

<strong>INGENIERÍA</strong> <strong>ELECTRÓNICA</strong> Y<br />

<strong>AUTOMÁTICA</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!