martes, 4 de marzo de 2014

Profinet, Práctica I

PRÁCTICA I

El objetivo de esta actividad es realizar, mediante una conexión de PROFINET una transferencia de datos entre dos equipos, uno (Siemens S7-314) y una ET200S (ET200S_1).

  1. Cuando activemos la entrada E124.0 del S7, queremos enviar el valor de las entradas EB124 a las distintas salidas de la  ET200S_1.
  2. Cuando activemos la entrada E124.1 del S7, activaremos las dos salidas del primer módulo de la  ET200S_1.
  3. Cuando activemos la entrada E124.2 del S7, activaremos las dos salidas del segundo módulo de la  ET200S_1.
  4. Cuando activemos la entrada E124.1 del S7, activaremos las dos salidas del tercer módulo de la  ET200S_1.
  5. Cuando activemos la Entrada 1 en la ET200S_1 enviaremos el estado de sus entradas al byte de salida AB124 del S7314.
  6. Cuando activemos la Entrada 2 en la ET200S_1 enviaremos el estado de sus entradas al byte de salida AB125 del S7314.




ELEMENTOS

ET200S


Tiene la misma función que la ET200L, es la base de la periferia descentralizada. Si el cableado esta a mucha distancia del autómata se pueden producir interferencias, usando este módulo las entradas y salidas se pueden distribuir cerca de lo que se quiere controlar mientras que el autómata se puede colocar en el punto central de las comunicaciones.

Es un elemento modular, se pueden ir añadiendo módulos en función de la cantidad de E/S que se necesiten. Los módulos los hay de diferentes tipos, en nuestro caso los módulos de los que disponemos sólo tienen 2 entradas o salidas, pero los hay que pueden albergar hasta 8 entradas o salidas por módulo.

Esto se traduce en que a la hora de intercambiar información se envían y reciben Bytes de datos (un Byte por cada módulo) que realmente solo tienen ocupados 2 bits (los dos de menor peso) que es donde se refleja el estado de las entradas o salidas. Si en lugar de módulos con 2 entradas o salidas tuviésemos un módulo con 8 entradas el Byte que enviásemos tendría todos sus bits con información del estado de las entradas.

En nuestro montaje hemos usado una ET200S formada por (de izquierda a derecha):
  • La propia ET200S.
  • El módulo de potencia.
  • 3x Módulos de entradas digitales con 2 entradas por módulo.
  • 3x Módulos de salida digitales con 2 salidas por módulo.
Para que funcione correctamente hace falta una fuente de alimentación externa que va conectada al módulo principal de la ET200S y le proporciona 24V de CC.



SCALANCE X200


Es un switch de uso industrial, nos permite conectar más dispositivos a nuestro PLC 314IFM, ya que dispone de 8 puertos.

También requiere de una fuente de alimentación externa que le proporcione la corriente para funcionar y una tensión de +24V de corriente continua.














ESQUEMA DE TRANSMISIÓN ENTRE EQUIPOS


Al utilizar profinet como estándar de comunicación debemos de asignar una dirección IP única a cada dispositivo que esté conectado a la red.

A pesar de que cada módulo de la ET200S sólo dispone de 2 entradas o 2 salidas, según si el módulo es de entrada o de salida, se envían bytes enteros de datos aunque de ese byte solo se utilicen dos bits de datos.


FLUJO DE TRANSMISIÓN DE DATOS


DISTRIBUCIÓN DE DATOS EN LA MEMORIA DEL MAESTRO

Es importante tener claro donde tenemos que ir a buscar o depositar la información que estamos manejando para que el módulo CP343-1 pueda realizar la comunicación eficientemente con el resto de componentes de la red, para ello asignamos donde van a ser colocados los datos para el envío y donde hay que leer para ver lo que nos ha llegado:


Empieza la asignación en el MB10 porque lo hemos elegido así, de querer empezar en otro valor es posible siempre respetando el número de Bytes que envía y recibe cada elemento de la red.


DESCRIPCIÓN DEL PROCESO DE COMUNICACIÓN

  • En la primera parte de la práctica al activar la entrada E124.0 del S7, queremos enviar el valor de las entradas EB124 a las distintas salidas de la  ET200S.

    Como no es posible mandar el Byte de entradas EB124 directamente a un módulo de salida de la ET200S sin perder información, recordemos que sólo tiene 2 salidas que equivalen a 2 bits por lo que el resto de bits no serían reflejados, deberemos de enviar 2 bits del Byte EB124 a cada uno de los tres módulos de salida disponibles, lo que nos da un total de 6 bits posibles, aún y a pesar de todo habrá dos bits de ese Byte de entradas que no podremos reflejar.


  • Cuando activemos la entrada E124.1 del S7, activaremos las dos salidas del primer módulo de la  ET200S_1.
    Cuando activemos la entrada E124.2 del S7, activaremos las dos salidas del segundo módulo de la  ET200S_1.
    Cuando activemos la entrada E124.3 del S7, activaremos las dos salidas del tercer módulo de la  ET200S_1.

    Para realizar esto sólo deberemos de mandar el valor numérico 3 a cada uno de los módulos en función de que entrada sea la que se active. Mandamos un 3 en decimal ya que en binario es la combinación 11, lo que resulta en que se activen los dos bits de salida del módulo que lo recibe ya que cada uno equivale al bit de salida en ON.



  • Cuando activemos la Entrada 1 en la ET200S_1 enviaremos el estado de sus entradas al byte de salida AB124 del S7314.

  • Para esto simplemente hay que detectar que se ha actuado sobre la entrada 1 del primer módulo para enviar todas las entradas a la salida AB124, de nuevo deberemos de ver que bits están activos en cada uno de los módulos de entrada, que conforman 3 Bytes al haber tres módulos instalados en la ET200S, y colocarlos en el mismo Byte de salida AB124, no basta con mover Bytes a la AB124, ya que se machacará la información y solo se reflejarán 2 bits por lo explicado anteriormente.

    Si se activa la segunda entrada del primer módulo se repetirá el proceso pero ahora las entradas se reflejarán en la salida AB125 del S7.



CONFIGURACIÓN DE LA CPU 314IFM

  • Comenzaremos haciendo click derecho sobre el nombre del proyecto (1), en el menú que se abrirá elegimos "Insertar nuevo objeto" (2) y del siguiente menú elegimos "SIMATIC 300" (3).

  • Hacemos doble click en el objeto "Simatic 300(1)".

  • Una vez abierto el objeto volvemos a hacer doble click en "Hardware" para proceder a la configuración del mismo.
  • Insertamos el bastidor donde insertaremos los componentes que forman nuestro PLC

  • Elegimos la CPU correspondiente a la que disponemos en el equipo de prácticas y lo colocamos en el slot 2 que es el único sitio donde está permitido.

  • Añadiemos el módulo de comunicaciones CP342-5 v2.0. Vemos que se nos permite colocarlo en varias posiciones a partir de la 4 en adelante lo colocaremos en el slot 4. Como no vamos a utilizar la red Profibus saldremos de esta ventana pulsando sobre "Aceptar". Es MUY importante colocar este módulo aunque no se vaya a utilizar ya que el hardware debe representar fielmente el que vamos a usar en la realidad ya que si no se producirán errores de configuración.

  • En el slot 5 añadiremos el módulo de comunicación para Profinet, se trata del módulo CP343-1 GX30 version 1. Este módulo es el que nos permite la conexión a la red Ethernet.


  • Al colocar el módulo en el slot 5 se nos abrirá la ventana de propiedades, le asignamos la IP 192.168.0.1 y pulsamos sobre nueva para crear la red de Ethernet Industrial.

  • En la ventana de creación de la subred podemos asignarle un nombre. Una vez concluido procedemos a hacer click sobre "Aceptar".

  • Vemos que ya aparece la nueva red, la seleccionamos y salimos de esta ventana pulsando en "Aceptar".

  • Una vez configurado el módulo CP343-1 Advanced vemos como ya aparece en el bastidor y podemos ver dos zonas diferenciadas, ya que el módulo dispone de 2 interfaces:
    • El rectángulo verde nos muestra la interfaz Gigabit, que tiene 1 puerto.
    • El rectángulo azul nos muestra la interfaz Profinet, que tiene 2 puertos. Nosotros utilizaremos uno de estos dos puertos para conectarnos al Scalance.

  • Deberemos insertar un sistema Profinet IO para poder conectar la ET200S. Para ello haremos click derecho en la interfaz PN-IO y en el menú desplegable elegir la opción "Insertar sistema PROFINET IO"

  • Nos aparece un mensaje recordándonos que para poder utilizar este módulo de comunicaciones deberemos de hacer uso de las funciones PNIO_SEND (FC11) y PNIO_RECV (FC12) dentro de nuestro OB1. Sin más cerramos la ventana.

  • Vemos como ya aparece la red Ethernet donde colocaremos la ET200S.

  • En la lista de dispositivos de la derecha, bajo el epígrafe "PROFINET IO" buscaremos en la carpeta de I/O (input/output) el módulo ET200S y elegiremos justamente el modelo que disponemos en clase IM151-3 PN HF v6.0 pincharemos en el y lo arrastraremos a la red para conectarlo.

  • La estación se añade sin problemas, y si hacemos doble click sobre su icono veremos las propiedades.

  • En las propiedades vemos la dirección IP que le ha sido asignada, si quisiesemos cambiarla haríamos click en "Ethernet..." y le daríamos una nueva.

  • Ahora deberemos de colocar los distintos módulos que componen nuestra ET200S, tienen que estar en el mismo orden y ser los mismos que tenemos en la ET200S porque sino a la hora de cargar el HW nos dará un error. Los módulos se colocan de izquierda a derecha. Al ser el módulo de potencia el primero por la izquierda será el primero que coloquemos seleccionandolo de la carpeta "PM" y es el PM-E DC24..48V. Lo arrastramos y soltamos en el slot 1 por ser el primero (en verde vemos todos los slots disponibles donde se podría colocar).

  • Después del módulo de potencia nos encontramos con 3 módulos de entradas digitales, con dos entradas cada uno. Este módulo lo podemos encontrar en la capeta DI y es el modelo 2DI DC24V HF (2DI indica que dispone de dos entradas digitales de 24V DC en ese módulo), de los dos que se llaman igual cogemos el de abajo, que como podemos leer en la descripción corresponde al modelo 6ES7 131-4BB01-0AB0, que es una versión más moderna. Arrastramos este modulo al slot 2, 3 y 4 por haber tres módulos de este tipo. 

    • Una vez colocados los tres módulos de entradas debería de quedar la configuración de esta manera.


    • Ahora en la carpeta DO (Digital Output) buscaremos el módulo correspondiente a las salidas, 2DO DC24V/0.5A HF, y lo arrastraremos tres veces para añadirlos a los slots 5, 6 y 7. Hay que fijarse que de los dos modelos que se llaman igual sea la revisión más moderna.

    • Una vez tenemos insertados el módulo de potencia, los tres módulos de entrada y los tres de salida ya podemos hacer click en "Guardar y compilar" en la parte superior de la barra de herramientas y pasar a crear el programa. En el rectángulo verde inferior vemos las direcciones que se le ha asignado a cada módulo, muy importante a la hora de usar las funciones FC11 y FC12 para saber donde estamos leyendo o escribiendo. Por ejemplo podemos ver como el primer módulo de entradas tiene la dirección 0.0 y la 0.1, esto nos indica que el primer Byte que recibamos en la FC12 será el de este módulo, pero que solo habrá información en el bit 0 y en el 1. Muy importante echar un vistazo a esto si se tienen dudas de donde leer o escribir la información en el programa pricipal.
    • El switch Scanlance no hace falta añadirlo como dispositvo ya que es transparente al sistema, funciona de forma autónoma reenviando tramas al equipo destino.


    Una vez tenemos todo el Hardware correctamente configurado ya podemos pasar a escribir el programa en KOP:
    • Comenzamos por parametrizar de forma correcta la FC11 y la FC12 que son fundamentales para poder mandar y recibir información a los dispositivos conectados a la red Ethernet.
      • Podemos ver como el valor para CPLADDR es 110 ya que el módulo de comunicaciones CP343-1 ocupa la posición 5 del bastidor.
      • El campo MODE tiene como valor 0 que indica que se trata de una red Profinet IO
      • El campo LEN indica los bytes que vamos a enviar/recibir.
      • El campo SEND indica en que Byte va a comenzar el puntero a buscar los Bytes a enviar y cuantos Bytes son los que se envian.
      • El campo RECV indica en que Byte va a comenzar el puntero a buscar los Bytes recibidos y cuantos Bytes son los que se reciben.
      • El resto de campos son flags de funcionamiento y buffer de errores.

    EJERCICIO 1

    • Cuando se actúa sobre la entrada E124.0 se transmite el estado de las entradas a las salidas de la ET200S.
      • Como no podemos enviar el Byte de entradas EB124 directamente a ningún módulo de salida, ya que estos módulos sólo tienen 2 bits, perderíamos 6 bits de datos, hemos desglosado las distintas entradas en grupos de dos y enviadas a cada módulo. De esta forma no perdemos información. Codificamos en binario estos pares de entradas y lo mandamos al módulo correspondiente, así si mandamos un 1 al módulo de salidas 1 (MB10), se encenderá la primera salida de este módulo, si mandamos un 2 se encenderá la segunda salida y si mandásemos un 3 se encenderían las dos salidas de ese modulo a la vez. Si mandamos un 0 se desconectan todas las salidas.

    EJERCICIO 2

    • La E124.0 activará todas las salidas del primer módulo de la ET200S, la E124.1 activará todas las salidas del segundo módulo de la ET200S y la E124.1 activará todas las salidas del segundo módulo de la ET200S.
      • Según la entrada que se active cargaremos un 3, 11 en binario, para que se activen las dos salidas del módulo correspondiente de salidas en la ET200S.


    EJERCICIO 3

    • La entrada 1 en la ET200S hara que se envie el estado de sus entradas al byte de salida AB124 del S7314 y la entrada 2 que se envien al byte de salida AB125.
      • Al actuar sobre la primera o segunda entrada de la ET200S se envía el valor de sus entradas al primer o segundo byte, respectivamente, del S7 314IFM.

    Si no hay errores de comunicación entre los diferentes elementos de la red, no hay ninguna luz roja encendida la comunicación de datos se hará de forma ininterrumpida y podremos ver como fluye la información de la ET200S al S7 314IFM.


    CONFIGURACIÓN INTERFAZ PG/PC

    Importante recordar que la primera carga deberemos hacerla a través de la conexión MPI del S7 314IFM, ya que hasta que no carguemos el hardware podrá utilizar el módulo de comunicaciones CP 343-1 advanced y no podrá utilizar la red Ethernet.

    Una vez cargado tanto el HW como el programa podremos cambiar la comunicación con el PLC para utilizar la red Ethernet a la que deberemos de conectar nuestro PC.


    • Para cambiar la forma de comunicarnos con el PLC iremos a la opción "Ajustar interface PG/PC".

    • Elegiremos nuestra tarjeta de red de esta lista y pincharemos sobre el botón "Aceptar".
    Ahora solo nos falta asignarle una dirección manualmente a nuestro PC que se encuentre dentro de la red local que hemos creado con una dirección del tipo 192.168.0.X y conectar un cable Ethternet con conector RJ-45 al switch Scalance.

    A partir de ahora ya podremos cargar a través de la red Ethernet los cambios y programas que hagamos y prescindir de la conexión MPI, muy útil si el autómata se encuentra a mucha distancia.



    RESOLUCIÓN DE PROBLEMAS


    Es MUY IMPORTANTE verificar que el nombre de los elementos de la red, así como su IP realmente coincide con lo que hemos cargado en la ventana de Hardware.

    • Para verificar esto, así como ver realmente que equipos hay conectados a la red Ethernet y sus propiedades, del menú "Sistema destino" seleccionaremos la opción "Editar estaciones Ethernet..."

    • En esta venta que se nos abre podemos:

      • Primero hacer click en "Examinar" para ver todas las estaciones de la red, ver sus direcciones IP y sus nombres. En caso de querer cambiar alguna de las estaciones bastará con seleccionarla de la venta que se nos abrirá, aceptar y volveremos a esta ventana.

      • Una vez seleccionada la estación a editar podremos cambiar su dirección IP y su máscara de red, para nuestra red deberá ser 255.255.255.0. para validar este cambio habrá que hacer click en "Asignar configuración IP"

      • Podremos cambiar su "Nombre de equipo", muy importante que el nombre de la estación coincida con el nombre que le pusimos en la venta de Hardware ya que sino se producirán errores en la comunicación y se encenderán las temidas luces rojas de error. Validaremos el cambio de nombre haciendo click en "Asignar nombre.

    • Una vez todos los cambios sean correctos bastará con cerrar la ventana.

    Y con todo esto ya deberíamos de tenerlo todo funcionando perfectamente.

    Saludos y hasta el siguiente capítulo!!

    2 comentarios:

    1. "Muy buen post, con todo lo necesario, es decir, esquema de lo que tienes conectado, esquema del flujo de transmisión, las direcciones de memoria y luego una explicación muy detallada de como lo has configurado y como lo has programado.

      Muy buen trabajo.

      Antonio Alhambra"

      ResponderEliminar
    2. Buenas, muy buen post. ¡Fantástico!.

      Tengo una duda, por ejemplo desde hardware le asigno la ip 19.168.0.101. Pero no sé si tengo que asignar FISICAMENTE a la ET200s.

      ResponderEliminar