2 de diciembre de 2010

Visualización del tiempo ciclo con Step7 + WinCC Flexible

Una de las cosas que, en mi opinión, no debe faltar en una máquina que disponga de panel de visualización, es una pantalla dedicada al tiempo ciclo. Es curioso ver como en muchas inspecciones de máquinas, el ingeniero de métodos y tiempos, cronómetro en mano, comprueba que nuestra máquina dé cadencia. Si en vez de eso, le damos una tabla de tiempos tomados de forma precisa por el PLC, le simplificaremos la labor y seguramente lo agradecerá... y ya sabemos que el ingeniero de métodos y tiempos es un tipo con el que conviene llevarse bien ;)

Nota: entiéndase tiempo de ciclo como el tiempo que transcurre desde que obtenemos una pieza terminada y la siguiente.

Para ello voy a suponer que mi máquina está comandada por un PLC S7-300 y como HMI tengo un panel táctil de Siemens como el MP277, y sobre esta base voy a programar lo que sería una visualización sencilla de los últimos diez tiempos de ciclo.

En este ejemplo el PLC calculará el tiempo ciclo y mediante una variable booleana le indicará al panel que recoja el dato. Luego el panel leerá el dato y lo introducirá en una tabla de valores, los visualizará por orden de recepción (primero el más reciente) y marcará con color verde el menor y con color amarillo el mayor. La visualización quedará tal como se muestra a continuación:


Empecemos con la programación en el PLC.

23 de noviembre de 2010

Recopilación de código de las últimas entradas de Step7

Para hacer más cómodo el acceso al código que he puesto en las últimas entradas sobre Step7, he recopilado los bloques de función (FB) de mis contadores, temporizadores y el control de cilindro de doble efecto y los he agrupado en un proyecto. Así simplemente será necesario copiar y pegar los FB para hacer uso de ellos.


El proyecto te lo puedes bajar de aquí.

Los FB que se incluyen son:

- Contadores de 32 bits (FB5, FB6, FB7 y FB8).
- Contador en un RTM (FB9).
- Temporizador sin usar temporizadores Simatic (FB11).
- Temporización discontinua (FB12).
- Control de cilindro neumático de doble efecto (FB10).

Espero que así resulte más funcional.

20 de noviembre de 2010

Ejemplo de control de un cilindro neumático de doble efecto en Step7

El cilindro neumático de doble efecto es el actuador al que más veces me habré enfrentado; no exagero si digo que el 80% de las salidas digitales que he programado han sido para controlar algún cilindro neumático de este tipo.

Para comandar el cilindro se pueden elegir diversos tipos de electroválvulas, las más habituales son las de dos posiciones (monoestables o biestables) o tres posiciones (centros cerrados o centros a escape).

Su programación casi siempre sigue las mismas pautas, así que he programado un bloque de función (FB) donde está todo el código repetitivo. Aquí cada programador tiene sus propias manías y preferencias, el código que pongo a continuación es el que me resulta más cómodo, pero supongo que para otros no será la mejor solución.

13 de octubre de 2010

Programación de un Sinamics S120 en un PLC S7-300 (parte 2ª y última)

Entrada anterior aquí.

En este ejemplo voy a usar el modo MDI (Manual Data Input), que es la manera más sencilla de posicionar un eje en Sinamics. Los parámetros de posicionamiento (velocidad, posición de destino -modo absoluto- o distancia de desplazamiento -modo relativo- e incluso aceleraciones) se le pasan desde el PLC, y se activan con el comando Start.

Si necesitamos una programación más elaborada, tenemos a nuestra disposición el modo de bloques de desplazamiento (traversing blocks), en el que se pueden programar hasta 64 secuencias de movimiento que se pueden ejecutar secuencialmente o según cualquier otro criterio programable, pero en mi aplicación no es necesario.

Para empezar debemos habilitar el eje (esta señal debe ponerse a cero y luego a uno después de un error en el Sinamics):


Para saber si tenemos el servomotor listo:

10 de octubre de 2010

Programación de un Sinamics S120 en un PLC S7-300 (parte 1ª)

En esta entrada hablé de cómo configurar un Sinamics S120 controlado por un PLC S7-300. Como bien me apuntan en un comentario, falta hablar de cómo hacer la programación en el S7-300, así que voy a ello.

Lo primero es ir a la página de Siemens y descargar el Toolbox SINAMICS S120, que es un fichero en formato zip que incluye un proyecto de Step7 con un interface programado para Sinamics S120; también incluye documentación (en inglés y alemán).

La lectura de la documentación es obligada, porque dependiendo de como queramos manejar nuestro servomotor debemos seguir unos pasos u otros. En esta entrada voy a describir como he hecho la programación para manejar un eje en posicionamiento absoluto. Básicamente, lo que voy a hacer desde el PLC es:
  • puesta en condiciones de funcionamiento
  • referenciado (homing)
  • posicionado a una velocidad dada

7 de septiembre de 2010

Los contadores de horas de funcionamiento (run-time meters) de los S7-300/400

Los PLC de Siemens de las series S7-300 y S7-400 (y también el WinAC) vienen equipados con contadores de horas de funcionamiento (CHF). Se trata de temporizadores con una resolución mínima de una hora, aunque su formato no es como un temporizador Simatic: se almacenan en enteros con signo de 16 ó 32 bits y puede haber uno o varios, dependiendo del modelo de PLC. Por ejemplo, un PLC 313C-2DP viene equipado con uno de 32 bits, el WinAC tiene ocho de 16 bits, etc.

En la información del módulo del PLC 313C-2DP podemos ver su contador de horas de funcionamiento:


Ocho contadores de horas de funcionamiento de un sistema WinAC:


Si los CHF son de 16 bits podemos contabilizar como máximo 32 727 horas, que son unos 3,7 años, lo cual puede quedarse corto, problema que no existe con los de 32 bits. Podemos usarlos para, por ejemplo, contabilizar las horas que está el PLC en funcionamiento, las horas que está funcionando en modo automático o, lo que en mi opinión sería su uso más lógico, saber las horas de trabajo efectivo de la máquina.