Mg. Ing. Julio Martin Romero Morante
PROGRAMACIÓN CON TEMPORIZADORES EN SIMATIC SIMATIC STEP STEP 7
Mg. Julio Martin Romero Morante
Índice gene g eneral ral INTRODUCCIÓN 1. CONCEPTOS PREVIOS ........................................................................... 1
1.1. BLOQUES DE PROGRAMACIÓN ........... ...................... ...................... ...................... ...................... ............. ..1 1.2. EJECUCIÓN DE UN PROGRAMA EN UN CPU S7-300........... ...................... ............. ..2 2. TEMPORIZADORES EN SIMATIC SIMA TIC STEP 7 .......................... ............ .......................... .................... ........ 4
2.1. TEMPORIZADORES S5 ........... ...................... ...................... ...................... ...................... ....................... ................. .....4 2.1.1. Formato S5Time S5T ime ............. ........................... ........................... .......................... ......................... .......................... ................. ...5 2.1.2. Temporizador S_PULSE ..................................................................... 6 2.1.3. Temporizador S_PEXT........... ...................... ...................... ...................... ...................... ....................... ................. .....8 2.1.4. Temporizador S_ODT ......................................................................... 9 2.1.5. Temporizador S_ODT ....................................................................... 11 2.1.6. Temporizador S_OFFDT ................................................................... 14 2.2. TEMPORIZADORES TEMPORIZA DORES IEC ............. ........................... ........................... .......................... ......................... ................ ....18 2.2.1. TP ...................................................................................................... 19 2.2.2. TON ................................................................................................... 20 2.2.3. TOF ................................................................................................... 21 2.3. TEMPORIZADOR BASADO EN FUNCIÓN ........... ...................... ....................... ................... .......21
i
Mg. Ing. Julio Martin Romero Morante
1. CONCEPTOS PREVIOS Antes de programar con temporizadores es necesario tener en cuenta algunos conceptos previos sobre el funcionamiento de bloques de programación, en SIMATIC STEP 7.
1.1. BLOQUES DE PROGRAMACIÓN Al realizar un programa en SIMATIC STEP 7 se pueden utilizar diversos tipos de bloques, los cuales pueden ser lógicos (contienen parte del programa) o de datos (almacenan datos de programación), ver Tabla 1. Tabla 1. Bloques en SIMATIC STEP 7. Bloque
Descripci ón de la función
Constituyen la interface entre el sistema operativo y el programa de usuario. Son llamados por el sistema operativo y Bloques de organización (OB) controlan el procesamiento cíclico y controlado por las alarmas del programa, el comportamiento de arranque del sistema y el tratamiento de errores. Son bloques programables sin “memoria”, Las variables temporales de este bloque se almacenan en la pila de datos locales. Estos datos se pierden tras la ejecución de la función.
Funciones (FC)
Son bloques programables con “memoria”,
Las variables temporales de este bloque se almacenan en la pila de datos locales. Las variables estáticas se memorizan en el bloque de datos de instancia.
Bloques de función (FB)
Funciones del sistema (SFC) Bloques de función sistema (SFB)
Permiten acceder a funciones preprogramadas, integradas a la CPU. Son bloques sin memoria.
del Es un bloque de función integrado a la CPU. Son bloques con memoria.
Bloques de datos (DB global)
Son áreas de datos para almacenar los datos de usuario. Se puede acceder a estos bloques desde otros bloques lógicos.
Bloques de datos de instancia Son áreas de datos asignadas solo a los FB (DB de instancia) o SFB. 1
Mg. Ing. Julio Martin Romero Morante El número permitido de bloques de cada tipo dependen de la CPU que se va a programar.
1.2. EJECUCIÓN DE UN PROGRAMA EN UN CPU S7-300 Todo programa cargado en un CPU S7-300 tiene un tiempo de ejecución, que dependen de parámetros cómo:
Cantidad de instrucciones. Cantidad de entradas y salidas. Tiempo utilizado en las comunicaciones, etc.
El tiempo máximo de ejecución es de 150ms por defecto, pero se puede cambiar al realizar la configuración de hardware (Figura 1).
Figura 1. Diagrama del pro ceso de estampado.
El CPU es un sistema electrónico que trabaja con una señal de reloj interna. Para el programador es posible aprovechar esta señal de reloj, pues, al realizar la configuración de hardware, es posible habilitar una memoria de reloj, la cual ocupa un byte ( Figura 2). Cada bit de la memoria de reloj cambia su estado binario con diferentes periodos ( Tabla 2). Tabla 2. Periodos de memoria de reloj. Bit
7
6
5
4
3
2
1
0
T (s)
2
1.6
1
0.8
0.5
0.4
0.2
0.1
F (Hz)
0.5
0.625
1
1.25
2
2.5
5
10
2
Mg. Ing. Julio Martin Romero Morante
Figura 2. Memoria de reloj c onfi gurada como MB100.
3
Mg. Ing. Julio Martin Romero Morante
2. TEMPORIZADORES EN SIMATIC STEP 7 Los temporizadores son instrucciones que permiten realizar acciones bajo condiciones de tiempo. En SIMATIC STEP 7 se pueden encontrar hasta 9 tipos de temporizadores: 5 basados en el formato S5 3 basados en el formato IEC y uno desarrollado en una función.
2.1. TEMPORIZADORES S5 Los temporizadores S5 comparten el formato utilizado en el antiguo Step 5, los cuales tienen las siguientes características:
Están implementados en el hardware, por lo que el número de temporizadores se relaciona con el modelo de CPU. La temporización depende de la señal de reloj interno (reloj físico) y no del tiempo de scan (sujeto a condiciones del programa).
Existen cinco tipos de temporizadores S5 ( Tabla 3). Tabla 3. Periodos de memoria de reloj . INSTRUCCIÓN (ING)
DESCRIPCIÓN
INGLÉS
ALEMÁN
S_PULSE
S_IMPLUSE
Temporizador de impulso
S_PEXT
S_VIMP
Temporizador de impulso prolongado
S_ODT
S_EVERS
Temporizador de retardo a la conexión
S_ODTS
S_SEVERZ
Temporizador de retardo a la conexión con memoria
S_OFFDT
S_AVERZ
Temporizador de retardo a la desconexión
Estos cinco temporizadores funcionan de forma diferente, pero tienen los mismos parámetros (Figura 3). 1 5 2
6
3
7
4
8 Figura 3. Temporizador S5.
4
Mg. Ing. Julio Martin Romero Morante Tabla 4. Temporizador S5. Nº
DESCRIPCIÓN
1
Número de temporizador
2
Entrada de inicio del temporizador
3
Tiempo en formato S5Time (0 a 9990 segundos)
4
Entrada de reinicio del temporizador
5
Nombre del temporizador
6
Estado del temporizador
7
Valor de temporización en formato entero
8
Valor de temporización en formato BCD
2.1.1. Formato S5Time
El valor de tiempo S5Time tiene el siguiente formato: S5T#aH_bM_cS_dMS
Donde a, b, c y d los define el usuario:
a: cantidad de horas. b: cantidad de minutos. c: cantidad de segundos. d: cantidad de milisegundos.
El valor máximo que puede introducir el usuario es: S5T#2H_46M_30S (9990 segundos)
S5Time ocupa una palabra, cuya distribución se muestra en la Figura 4.
Figura 4. Distri buci ón del form ato S5Time.
5
Mg. Ing. Julio Martin Romero Morante En la distribución del formato S5Time se tienen dos bits para la base de tiempo, esta define con qué escala de tiempo va funcionar el temporizador (ver Tabla 5). Tabla 5. Base de ti empo f ormato S5Time. Código de bits
Base de tiempo
00
10ms
01
100ms
10
1s
11
10s
2.1.2. Temporizador S_PULSE
Este temporizador genera un pulso en la salida “Q”, con periodo igual a “TV”, al generar un cambio de 0 a 1 en la entrada S. Para que el temporizador pueda cumplir su función es necesario que la entrada S permanezca en 1 luego de producir el cambio en la entrada S (Figuras 5 y 6 ).
Figura 5. Instrucción S_PULSE.
Figura 6. Operación del t emporizador S_PULSE.
6
Mg. Ing. Julio Martin Romero Morante Ejemplo La Figura 7 representa un proceso de mezcla. Este proceso es controlado por un PLC.
Al inicio el tanque está totalmente vacío. Luego de presionar un pulsador de inicio “START” (I0.0), se abre la válvula “V1” (Q0.0), durante 10 segundos. Si se presiona el pulsador de parada “STOP” (I0.1), se debe detener el proceso y se debe cerrar la válvula “V1”.
Figura 7. Proceso de Mezcla.
Desarrollar el programa para esta etapa del proceso. Desarrollo
Figura 8. Programa para el contr ol d e V1.
7
Mg. Ing. Julio Martin Romero Morante 2.1.3. Temporizador S_PEXT Este temporizador genera un pulso en la salida “Q”, con periodo igual a “TV”,
al generar un cambio de 0 a 1 en la entrada S. Para que el temporizador pueda cumplir su función no es necesario que la entrada S permanezca en 1 luego de producir el cambio en la entrada S (Figuras 9 y 10 ).
Figura 9. Instrucción S_PEXT.
Figura 10. Operación del temporizador S_PEXT.
Ejemplo La Figura 7 representa un proceso de mezcla. Este proceso es controlado por un PLC.
Al inicio el tanque está totalmente vacío. Luego de presionar un pulsador de inicio “START” (I0.0), se ab re la válvula “V1” (Q0.0), durante 10 segundos. Si se presiona el pulsador de parada “STOP” (I0.1), se debe detener el proceso y se debe cerrar la válvula “V1”.
Desarrollar el programa para esta etapa del proceso.
8
Mg. Ing. Julio Martin Romero Morante Desarrollo
Figura 11. Progr ama para el c ontr ol de V1. 2.1.4. Temporizador S_ODT Este temporizador activa la salida “Q”, luego de un tiempo igual a “TV”, al
generar un cambio de 0 a 1 en la entrada S. Para que el temporizador pueda cumplir su función es necesario que la entrada S permanezca en 1 luego de producir el cambio en la entrada S (Figuras 12 y 13).
Figura 12. Instrucción S_ODT.
Figura 13. Operación del temporizador S_ODT.
9
Mg. Ing. Julio Martin Romero Morante La Figura 7 representa un proceso de mezcla. Este proceso es controlado por un PLC.
Al inicio el tanque está totalmente vacío. Luego de presionar un pulsador de inicio “START” (I0.0), se abren las válvulas “V1” (Q0.0) y “V2” (Q0.1). Al transcurrir 10 segundos se cierra “V1” 10 segundos luego de cerrar “V1” se debe cerrar “V2” Si se presiona el pulsador de parada “STOP” (I0.1), se debe detener el proceso y se deben cerrar las válvulas “V1” y “V2”.
Desarrollar el programa para esta etapa del proceso. Desarrollo
Figura 14. Progr ama para el control de V1 y V2.
10
Mg. Ing. Julio Martin Romero Morante 2.1.5. Temporizador S_ODT Este temporizador activa la salida “Q”, luego de un tiempo igual a “TV”, al
generar un cambio de 0 a 1 en la entrada S. Para que el temporizador pueda cumplir su función no es necesario que la entrada S permanezca en 1 luego de producir el cambio en la entrada S (Figuras 15 y 16).
Figura 17. Instrucción S_ODTS.
Figura 18. Operación del temporizador S_ODTS.
Ejemplo Se tienen tres motores (M1, M2 y M3), que mueven un sector de transportadores de botellas de vidrio. Además, se cuenta con un sensor fotoeléctrico (S1), que detecta el paso de botellas ( Figura 19). El sistema de transportadores es controlado por un PLC, a este va conectado el sensor fotoeléctrico y los contactores K1, K2 y K3, los cuales encienden los motores M1, M2 y M3. Cuando el sensor no detecta ninguna botella, envía 24VDC al PLC. Cuando el sensor detecta una botella, envía 0VDC al PLC. Cuando las botellas se juntan y bloquean el sensor fotoeléctrico continuamente por más de 5 segundos, los motores M1, M2 y M3 son apagados en secuencia. 11
Mg. Ing. Julio Martin Romero Morante
Figura 19. Sector de transportadores.
Secuencia.
El motor M1 se apaga 1 segundo luego de bloquearse el sensor. El motor M2 se apaga 1 segundo luego de apagar M1. El motor M3 se apaga 1 segundo luego de apagar M2.
Desarrollo
12
Mg. Ing. Julio Martin Romero Morante
Figura 20. Programa para apagar tr es moto res en secuencia.
13
Mg. Ing. Julio Martin Romero Morante
2.1.6. Temporizador S_OFFDT Este temporizador desactiva la salida “Q”, luego de un tiempo igual a “TV”, al
generar un cambio de 1 a 0 en la entrada S. Para que el temporizador pueda cumplir su función es necesario que la entrada S permanezca en 0 luego de producir el cambio en la entrada S (Figuras 21 y 22).
Figura 21. Instrucción S_OFFDT.
Figura 22. Operación del temporizador S_OFFDT.
Ejemplo Se tienen tres motores (M1, M2 y M3), que mueven un sector de transportadores de botellas de vidrio. Además, se cuenta con un sensor fotoeléctrico (S1), que detecta el paso de botellas ( Figura 19). El sistema de transportadores es controlado por un PLC, a este va conectado el sensor fotoeléctrico y los contactores K1, K2 y K3, los cuales encienden los motores M1, M2 y M3.
14
Mg. Ing. Julio Martin Romero Morante Cuando el sensor no detecta ninguna botella, envía 24VDC al PLC. Cuando el sensor detecta una botella, envía 0VDC al PLC. Cuando las botellas se juntan y bloquean el sensor fotoeléctrico continuamente por más de un minuto, los motores M1, M2 y M3 son apagados en secuencia. Cuando el sensor fotoeléctrico se desbloquea, los motores M1, M2 y M3 se encienden en secuencia. Secuencia.
El motor M1 se enciende 3 segundos luego de encender el motor M2. El motor M2 se enciende 3 segundos luego de encender M3. El motor M3 se enciende 1 segundo luego de desbloquear el sensor.
Desarrollo
15
Mg. Ing. Julio Martin Romero Morante
16
Mg. Ing. Julio Martin Romero Morante
Figura 23. Programa de arranque y parada secuencial.
17
Mg. Ing. Julio Martin Romero Morante
2.2. TEMPORIZADORES IEC Los temporizadores IEC tienen características diferentes a los S5:
Están implementados en el software, por lo que el número de temporizadores va a depender de la capacidad de memoria del CPU. La temporización depende del ciclo de ejecución. Estos temporizadores están basados en SFB, por lo que cada uno debe tener asignado en DB de instancia
Existen dos tipos de temporizadores IEC ( Tabla 6). Tabla 6. Periodos de memoria de reloj . INSTRUCCIÓN
DESCRIPCIÓN
TOP
Temporizador de impulso
TON
Temporizador de retardo a la conexión
TOFF
Temporizador de retardo a la desconexión
Estos 3 temporizadores funcionan de forma diferente, pero tienen los mismos parámetros (Figura 24). 1 5 2
6
3
7
4
8 Figura 24. Temporizador IEC. Tabla 7. Temporizador IEC.
Nº
DESCRIPCIÓN
1
Número de DB de instancia asignado
2
Habilitar temporizador 18
Mg. Ing. Julio Martin Romero Morante 3
Entrada de inicio del temporizador
4
Tiempo en formato Time
5
Nombre del temporizador
6
Temporizador habilitado
7
Estado del temporizador
8
Valor de temporización en formato Time
2.2.1. TP Este temporizador genera un pulso en la salida “Q”, con periodo igual a “PT”,
al generar un cambio de 0 a 1 en la entrada IN. Para que el temporizador pueda cumplir su función no es necesario que la entrada IN permanezca en 1 luego de producir el cambio en la entrada IN (Figuras 25 y 26 ).
Figura 25. Temporizador IEC TP.
19
Mg. Ing. Julio Martin Romero Morante
Figura 26. Temporizador IEC TP. 2.2.2. TON Este temporizador activa la salida “Q”, luego de un tiempo igual a “PT”, al
generar un cambio de 0 a 1 en la entrada IN. Para que el temporizador pueda cumplir su función es necesario que la entrada IN permanezca en 1 luego de producir el cambio en la entrada IN (Figuras 27 y 28 ).
Figura 27. Tempor izador IEC TON.
20
Mg. Ing. Julio Martin Romero Morante Figura 28. Tempo rizador IEC TON. 2.2.3. TOF Este temporizador activa la salida “Q”, luego de un tiempo igual a “PT”, al
generar un cambio de 0 a 1 en la entrada IN. Para que el temporizador pueda cumplir su función es necesario que la entrada IN permanezca en 1 luego de producir el cambio en la entrada IN (Figuras 29 y 30 ).
Figur a 29. Tempo rizador IEC TOF.
Figur a 30. Tempo rizador IEC TOF.
2.3. TEMPORIZADOR BASADO EN FUNCIÓN Este temporizador es diferente a los temporizadores S5 y a los IEC:
Están implementados en el software, por lo que el número de temporizadores va a depender de la capacidad de memoria del CPU. La temporización depende de la señal de reloj que determine el usuario. Estos temporizadores están basados en FC, por lo que los parámetros deben ser almacenados en datos adicionales.
Existe un tipo de temporizador basado en función ( Tabla 8). 21
Mg. Ing. Julio Martin Romero Morante
Tabla 8. Tempori zador basado en func ión. INSTRUCCIÓN
DESCRIPCIÓN
TONR
Temporizador de retardo a la conexión retentivo
Este temporizador funciona diferente a laos temporizadores S5 y IEC, también tiene otros parámetros (Figura 24). 1
Figura 24. Temporizador IEC. 2
8
3
9
4 5 6 7 Figura 31. Tempori zador basado en funci ón.
Tabla 9. Tempori zador basado en func ión. Nº
DESCRIPCIÓN
1
Nombre del temporizador
2
Habilitar temporizador
3
Entrada de inicio del temporizador
4
Entrada de reinicio del temporizador 22
Mg. Ing. Julio Martin Romero Morante 5
Tiempo en formato DINT (ms)
6
Señal de reloj o ciclo de escaneo
7
Tiempo actual de la cuenta
8
Temporizador habilitado
9
Estado del temporizador
Este temporizador activa la salida “Q”, luego de un tiempo igual a “PV”, al generar un cambio de 0 a 1 en la entrada “TMR_EN”. Si la entrada “TMR_IN” cambia de 1 a 0, el temporizador se detiene, pero no
se reinicia. Si la entrada “TMR_IN” vuelve a cambiar de 0 a 1, el temporizador continúa el
proceso de temporización, el tiempo que le restaba. El temporizador solo reiniciar la cuenta cuando la entrada “RESET” está a 1.
Figura 32. Tempori zador basado en funci ón.
23