martes, 29 de octubre de 2013

Buses de campo


  1. ¿Cuál es la función de las comunicaciones industriales?

  2. Su función es la de permitir el intercambio de información (o de control) entre dispositivos remotos. Este intercambio puede realizarse mediante distintas tecnologías.
    Intercambio de datos on-line y, en los niveles inferiores de la pirámide (sensores, actuadores, máquinas, células de fabricación, etc.), se exige el requisito de tiempo real.
    Intercambio de datos eficiente y de bajo coste temporal y económico.





  3. ¿Qué tipo de alternativas de comunicación existen para comunicar los diferentes dispositivos que forman un sistema industrial?

    • Cableado mediante bases precableadas
    • Entradas y salidas distribuidas
    • Buses de campo





  4. ¿Qué problemas presenta el cableado clásico?

  5. El problema más evidente es que necesitamos un cable que conecte los diferentes dispositivos y si los dispositivos se encuentran a varios metros de distancia, y ademas son varios los dispositivos que queremos conectar, el coste en metros de cableado puede ser considerable y esto en los tiempo actuales es un gran inconveniente, a parte de la telaraña de cables que habría que desplegar de un punto a otro.







  6. ¿Qué ventajas presentan los buses de campo respecto a los otros métodos de cableado?

    • Diseñados para transmitir pequeñas cantidades de datos
    • Cubrir necesidades de tiempo real
    • Tener gran compatibilidad electromagnética
    • Número reducido de estaciones
    • Fácil configuración
    • Protocolos simples y limitados
    • Bajos costes de conexión
    • Pseudoconsistente con el modelo OSI de ISO
    • Reducir coste de cableado de la instalación
    • Facilita la ampliación o reducción de elementos
    • Permite integrar los dispositivos menos inteligentes






  7. ¿Qué niveles jerárquicos presenta la pirámide CIM? Nómbralos







  8. ¿Qué tipo de bus se utilizaría en el nivel de proceso de la pirámide CIM?


  9. El bus AS-i: La idea original fue crear una red simple para sensores y actuadores binarios, capaz de transmitir datos y alimentación a través del mismo bus, manteniendo una gran variedad de topologías que faciliten la instalación de los sensores y actuadores en cualquier punto del proceso con el menor esfuerzo posible. Las especificaciones de AS-i se encuentran actualmente en su versión 3.0. Éstas son de carácter abierto, lo que significa que cualquier fabricante puede obtener una copia de las mismas para elaborar sus productos.





  10. ¿Qué peculiaridad tiene el cableado del bus AS-i respecto a los demás?


  11. El cable usa un sistema "poka-yoke" que es el reborde que sobresale del cable para evitar que se pueda conectar al revés, es de color amarillo y es autocicatrizante, ya que los conectores usan un sistema "vampiro" para morder el cable y al retirar la conexión en el cable no quedan marcs. Sólo posee dos cables, uno para alimentación y otro para datos, se puede emplear cualquier cable bifilar de 2 x 1.5 mm2 no trenzado ni apantallado.





  12. ¿Cuál es el futuro de las comunicaciones industriales?

  13. La tendencia para el futuro en el campo de las comunicaciones industriales son las tecnologías inalámbricas (wireless), es decir aquellas tecnologías que no utilizan el cableado físico y se comunican por ondas a través del aire. Este tipo de tecnologías se van introduciendo en nuestras vidas de manera muy visible en los últimos años. Desde la telefonía móvil hasta las salas VIP de los aeropuertos españoles. Por tanto era de esperar que la industria no se hiciera esperar, aunque de momento no existe una uniformidad entre los diferentes sistemas existentes, hay muchos estándares que están en continua evolución.
    Algunos ejemplos de esta tecnología son: Bluetooth, Wi-fi, UWB,... Esta tecnología permitirá llegar a velocidades mucho más importantes, con un transporte mucho mayor de información y sin los problemas de espacio ni interferencias. 






  14. ¿Qué diferencias existen entre los buses propietarios y los buses abiertos?

    • BUS propietario:

    • Son aquellos sistemas que se caracterizan por su restricción de componentes a los productos de un solo fabricante, por lo tanto, no existe compatibilidad con productos de otros fabricantes. Una de las ventajas principales de estos buses de campo cerrados o propietarios es que tienen bajos requisitos de configuración y puesta a punto, ya que todos los componentes se obtienen de un solo fabricante y por lo tanto están estandarizados. La desventaja es la dependencia de los productos y precios a un fabricante.

    • BUS abierto:

    • Los buses de campo abiertos son todo lo contrario. Son sistemas que facilitan la comunicación entre dispositivos de diferentes fabricantes sin necesidad de adaptaciones adicionales. En pocas palabras, los usuarios podrán usar o desarrollar productos basados en estos buses de campo abiertos a un costo razonable y sin mucho esfuerzo. Existe una completa disponibilidad de herramientas y componentes hardware y software.






  15. Elabora una tabla que recoja las siguientes características (técnicas de transmisión de datos, interfaces y elementos de conexión, técnicas de control de flujo, de detección de errores y de acceso al medio en la transmisión de datos.) de los distintos buses de campo vistos en los apuntes.


BUS Tecnicas de transmision Interfaces y elementos de conexión Técnicas de control de flujo Detección de errores Acceso al medio
AS-i Transmisión en serie asincrona Conectores de pinza - Algunos esclavos incorporan un vigilante que revisa continuamente la comunicación con el maestro y actua en caso de que ésta sea interrumpida o se produzca la detección de errores (paridad, reenvio, etc...) Sistema con solo un maestro y sondeo cíclico
CAN Transmisión en serie asincrona Conectores de pinza - CSMA/CD+CR o "Carrier Sense, Múltiple Acces/Collision Detection + Collision Resolution" Paso de testigo, cada equipo está siempre a la escucha y las transmisiones se realizan bajo el control de un equipo especial (arbitro de bus)
CANopen Transmisión en serie, ciclica y sincrona Conectores de pinza - CSMA/CD+CR o "Carrier Sense, Múltiple Acces/Collision Detection + Collision Resolution" Paso de testigo, cada equipo está siempre a la escucha y las transmisiones se realizan bajo el control de un equipo especial (arbitro de bus)
Profibus Emplea una topología de bus con terminación en ambos extremos, lo que asegura el acoplamiento y desacoplamiento durante la operación normal sin afectar al resto RS-485 o IEC 1158-2 - Profibus-Token Ring, maestro-esclavo
Interbus Anillo cableado RS-485 Maestro-esclavo
Ethernet Transmisión en serie asíncrona RJ-45

A continuación una tabla que refleja mejor lo que he tratado de ilustrar con la mia:

Practica 1, Comunicación MPI Siemenes

La interface multipunto MPI (Multi Point Interface) es un protocolo serie, propio de siemens integrado en cada autómata programable SIMATIC S7. Se puede utilizar para interconexiones en red sencillas, permitiendo conectar varios PG’s o autómatas programables.

El método de acceso es de bus token.

La comunicación MPI se realiza a través del puerto integrado del PLC.  Si queremos conectar un PC con software de programación Step7 y el PLC, se deberá realizar a través del puerto MPI pero por medio de un adaptador. Este adaptador convertirá la señal RS-232 al interface MPI.

Si queremos realizar una conexión de varios equipos con un solo PC, deberemos conectar un equipo al PC a través del puerto integrado mediante el adaptador, y mediante un cable de Profibus realizar la conexión entre el resto de los equipos De esa forma, podremos accede a cualquiera de ellos.






Para la realización de la práctica hemos utilizado:

  • 2 PLC Siemens IFM314
  • 1 cable de comunicación PROFIBUS

Una vez los tenemos conectados tal y como muestra la figura anterior abriremos el programa Step 7 para realizar la configuración de la comunicación, ya que es importante resaltar que la comunicación no se programa, se configura.

A continuación voy a detallar paso por paso mediante capturas de pantalla los pasos a realizar:


PASO 1
Esta es la pantalla principal del Step 7 una vez hemos decidido crear un proyecto nuevo y le hemos dado un nombre, en este caso el proyecto se llama "MPI".


PASO 2
En el panel de la izquierda haremos click con el botón derecho y seleccionaremos "Insertar nuevo objeto" y "Simatic 300" para añadir nuestro autómata al entorno de programación.


PASO 3
Una vez añadido el autómata deberemos configurar su hardware, para ello haremos doble click sobre el nombre del autómata para acceder a la opción de hardware.


PASO 4
Volvemos a hacer doble click en la opción "Hardware" para configurarlo


PASO 5
En esta ventana, en el panel de navegación de la derecha, seleccionaremos de la serie SIMATIC 300 el perfil de soporte. Haremos doble click sobre el elemento y se añadirá a la ventana de hardware.


PASO 6
Una vez cargado el bastidor procederemos a montar el propio PLC en el.


PASO 7
Seleccionamos el slot 2 del bastidor y en el menú lateral de la derecha vamos a seleccionar nuestra CPU, la 314 IFM v1.2, hacemos doble click sobre ella y se cargará en el bastidor en el segundo slot.


PASO 8
 Automaticamente se carga nuestro PLC y ya lo tenemos listo para usarlo.


PASO 9
 Cerramos la ventana y le decimos "SI" cuando nos pregunte si deseamos guardar las modificaciones.


PASO 10
 Repetimos los pasos 2 a 9 para insertar el segundo autómata.


PASO 11
 Ahora ya tenemos nuestros dos PLC listos para configurar.


PASO 12
 Para poder distinguirlos con mayor facilidad vamos a cambiarles el nombre, para ello haremos click derecho sobre cada uno de ellos y seleccionaremos la opción "Cambiar nombre".


PASO 13
 Una vez los tenemos correctamente identificados los PLC haremos click en el icono de "Configurar red" para hacer lo que su nombre indica.


PASO 14
 En esta nueva ventana vemos los dos autómatas. Observamos que ninguno esta conectado a la red MPI.


PASO 15
  Podemos comprobar que ademas los dos tienen asignada la dirección 2 en su interfaz, esto es debido a que se asigna por defecto cada vez que se crea un autómata. Esto debemos de modificarlo porque no podemos tener varios autómatas conectados a la misma red con la misma dirección, ya que no sabriamos a cual dirigir la información si los dos tienen la misma dirección. Así que cambiaremos la dirección del Equipo B.


PASO 16
 Para ello sobre el cuadrado rojo haremos click derecho y seleccionaremos "Propiedades del objeto". Y en la pestaña "Parametros" cambiaremos la dirección a una que no este en eso, por ejemplo, y para usar valores consecutivos le asignaremos la dirección 3.


PASO 17
 Para conectar los autómatas a la red MPI, arrastraremos el autómata desde el cuadrado rojo hasta la linea MPI. Repetiremos el proceso para los dos autómatas.


PASO 18
 Una vez los tenemos conectados a la misma red MPI, procederemos a ir al menú "Herramientas" y seleccionar la opción "Definir datos globales". Si vemos que esta opción esta en gris y no deja seleccionarla nos aseguraremos de tener seleccionada la red MPI habiendo hecho click previamente en la linea roja superior.


PASO 19
 Esta es la ventana de "GD", es decir, datos globales. Aquí es donde definiremos los datos que se transferirán de un autómata a los restantes.
Para ello seleccionaremos la primera columna disponible y haremos click derecho en la cabecera de la misma para asignarle una CPU.


PASO 20
 Aquí asignaremos la CPU del Equipo A y aceptamos.


PASO 21
 Vemos que una vez aceptado se ha cargado en esa columna la CPU del Equipo A.
Repetimos el paso 20 para asignarla en la columna contigua la CPU del Equipo B.


PASO 22
 Una vez tenemos configurada la tabla de datos globales vamos a proceder a definir en cada linea lo que queremos transmitir de una autómata al otro.


PASO 23
 Cada fila de la tabla es una transferencia. Los que están sombreados en verde son los emisores, y por tanto los que estan en blanco los receptores.
A la hora de seleccionar lo que vamos a transferir hay que tener mucho cuidado, ya que puede ser que no transfiramos lo que queramos. Lo explicaré más adelante cuando definamos los datos globales. De momento fijemonos que queremos mover 3 datos del Equipo A al B y el valor de las entradas del autómata B a una marca interna del autómata A.


PASO 24












Una vez tenemos la tabla completa hacemos click en "Compilar" y aparecerá una ventana que nos indica si hay o no errores en la tabla. Si no lo hay cerramos la ventana emergente.


PASO 25



Hacemos click en "Cargar" y elegimos si queremos cargar ambos equipos a la vez o de uno en uno.
Ahora lo siguiente será definir los DB que hemos mencionado anteriormente.


PASO 26
 Para definir los bloques de datos del programa deberemos hacer click en la ventana de bloques del Equipo A y haciendo click derecho "Insertar nuevo objero --> Bloque de datos"


PASO 27
 Se abrira una nueva ventana, nos aseguramos que estamos definiendo DB de tipo global y aceptamos.


PASO 28
 Una vez creado el nuevo bloque hacemos doble click sobre "DB1".


PASO 29
 Esta es la ventana para la definición del bloque de datos para el Equipo A.


PASO 30

 Como vamos a transferir 3 valores numéricos necesitaremos definir 3 variables de tipo INT y les pondremos los valores a transferir (31, 210, 89). Vemos que la dirección va creciendo de dos en dos, esto es porque cada INT está definido por dos bytes.
Esto es muy importante ya que la lógica nos indica que si para representar el número 31 solo necesitamos 8 bits y estamos ocupando 16 pondra la información en el byte inferior (db1.dbb0) y el superior lo rellenerá a 0's (db1.dbb1). Pero esto no es así, es justo al contrario, por eso en la configuración de los datos globales hemos transferido los db1.dbb1, db1.dbb3 y db1.dbb5 que es donde realmente se ha almacenado la información que nos interesa, si cogiesemos los bytes pares nos encontrariamos con que esta a 0 todos.
Una vez que tenemos el bloque de datos cerramos esta ventana.


PASO 31

Repetimos la operación para añadir el bloque de datos en el Equipo B.


PASO 32
En este caso solo definiremos la memoria que vamos a utilizar para la recepción de los datos desde el equipo A. Esto es necesario ya que la memoria no se puede crear de forma dinámica, la tenemos que definir a la hora de carga el bloque en el autómata.


PASO 33
Programamos el equipo A para que cuando en la marca intermedia M40.5 encuentre un 1, ponga todas las salidas del canal 124 a 1 durante 5 segundos. Recordemos que la marca intermedia M40 la recibe del Equipo B mediante la conexión MPI.


PASO 34
Programamos el equipo B para que refleje en su canal de salida A124 el último valor transferido mediante los datos globales cuando actuamos sobre su entrada E124.0


PASO 35

Una vez realizados todos los pasos anteriores sólo nos falta carga en cada equipo sus valores correspondientes mediante el botón de cargar en el autómata y comprobar que funciona tal y como esperamos. Esto lo podemos hacer seleccionando el equipo que queremos monitorizar y hacer click en el menú en la opción "Sistema de destino --> Oberservar/forzar variable"


PASO 36
En esta ventana podemos seleccionar el operando que queremos monitorizar en el autómata seleccionado y haciendo click en el icono de las gafas "Observar variable" podemos ver en tiempo real que hay en esa variable y ver el correcto funcionamiento del MPI.

Y con esto, si hemos seguido todos los pasos correctamente, ya tendremos dos autómatas Siemens conectados mediante MPI.

A continuación un vídeo resumen de lo explicado:


Practica 1, comunicación PCLink Omron

Si dos PLC´s están conectados entre sí vía puertos RS-232C, se dice que tienen un sistema data link 1:1. Estos PLC´s pueden compartir una cantidad de canales de comunicación dependiendo del modelo de autómata. Uno de los PLC actuará como esclavo y el otro actuará como maestro. Se puede generar un sistema de comunicaciones Data Link entre un CQM1H y CQM1H, entre un CPM1A y CPM1A y entre un CQM1H y un CPM1A (en este caso, el CQM1H actuará como maestro y el CPM1A como esclavo).


La comunicación se realizará a través del área de datos LR. Este área se emplea para poder mandar y recibir datos. Todos los datos que “viajan” se almacenan en el área LR.

En el CMP1A, el área LR va desde el canal LR00 hasta el LR15, empleándose los 8 primeros canales para escribir desde el maestro hasta el esclavo, (LR00 a LR07) y los ocho siguientes (LR08 a LR15) para escribir desde el esclavo al maestro.

En el CQM1H, podemos transmitir 64 canales. El área LR va desde el canal LR00 hasta el LR63, empleándose los 32 primeros canales para escribir desde el maestro hasta el esclavo, (LR00 a LR31) y los 32 siguientes (LR32 a LR63) para escribir desde el esclavo al maestro.

El área de enlace será siempre LR00 a LR15 (16 canales) para comunicaciones Data Link 1:1 con CPM1A., con lo cual tendríamos que modificar tamaño del área de comunicaciones en el CQM1H para adaptarlo al CPM1A.


Para la realización de la practica hemos utilizado:

  • 2 Autómatas Omron CQM1H
  • Cable RS-232C


PASO 1
Una vez abierto el CX-Programmer deberemos ir a "Archivo-->Nuevo..." para agregar los autómatas que vamos a necesitar.


PASO 2
 Elegimos el nombre del PLC que en este caso será "Maestro" y el tipo de dispositivo "CQM1H" y hacemos click en "Configuraciones".


PASO 3
 En esta pestaña elegiremos el tipo correcto de CPU, en nuestro caso CPU51. Haremos click en aceptar y cerraremos ambas ventanas.


PASO 4
 Repetimos los pasos anteriores para añadir el segundo PLC que tendrá las mismas características que el anterior salvo que se llamará "Esclavo".


PASO 5

 Si hacemos click en el apartado "Memoria" en la barra de navegación de la izquierda podemos ver los datos que hay en la memoria del autómata seleccionado como podemos ver en la siguiente captura:


PASO 6
 En el apartado "Configuración" de cada autómata, en la barra de navegación de la izquierda, debemos elegir la pestaña "Tarjeta de comun. A" y en el modo: "PC Link unidireccional (maestro)". Al ser el maestro es el encargado de seleccionar el rango de memoría a utilizar, ya que si no fuesen autómatas de la misma generación habría que configurar el rango a utilizar como hemos visto en la introducción.

En el esclavo repetimos la operación pero en el modo seleccionamos "PC Link unidireccional (esclavo)" y vemos que no nos permite modificar los "Canales de vínculo" al ser el esclavo, ya que esto sólo lo puede modificar el Maestro para evitar problemas.



PASO 7
 Ya solo nos queda programar en el Maestro el movimiento de los valores a transferir (31, 210, 89) a los LR correspondientes (LR0, LR1, LR2) mediante una instrucción MOV. Para activar el MOV utilizaremos el contacto P_On que esta siempre activo por defecto.
 Así mismo programaremos mediante otra instrucción MOV que el valor que recibamos del Esclavo la pasaremos directamente al canal 100 (salida) del Maestro, activaremos un temporizador que a los 5 segundos pondrá de nuevo las salidas a 0 (ya que se trata que el Esclavo encienda todas las salidas del Maestro durante 5 segundos).


PASO 8
 En el Esclavo programaremos que se muestre por la salida del canal 100 el último valor recibido en la transferencia (LR3) y que mueva el valor #FFFF a su zona de transmisión (LR32) para activar todas las salidas del Maestro. Esto lo hacemos de nuevo mediante instrucciones MOV.


PASO 9




Ya solo nos queda transferir sendos programas al PLC y listo, ya tenemos la comunicación lista y funcionando!!

Ahora os dejo con un vídeo resumen para lo anterior: