20__las_interrupciones_en_e
Post on 07-Apr-2018
213 Views
Preview:
TRANSCRIPT
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
1/9
Las Interrupciones en el S7-200Las Interrupciones en el S7Las Interrupciones en el S7--200200
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
Ejecucin de rutina rpida en respuesta a unainterrupcin
Autmatas Programables
Lectura delestado
de las entradas
Lectura delestado
de las entradas
Comprobaciones
y chequeos
Comprobaciones
y chequeos
Ejecucin delprogramadel usuario
Ejecucin delprogramadel usuario
Actualizacin delestado de las
salidas
Actualizacin del
estado de lassalidas
Conexin conunidad de
programacin
Conexin conunidad de
programacin
Lectura delestado de
entradas rpidas
Lectura delestado de
entradas rpidas
Ejecucin de larutina rpida
Ejecucin de larutina rpida
Actualizacin delestado de las
salidas rpidas
Actualizacin delestado de las
salidas rpidas
interrupcininterrupcin
CICLO NORMALCICLO NORMAL
CICLO RPIDOCICLO RPIDO
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
2/9
Reglas para utilizar interrupcionesReglas para utilizar interrupcionesReglas para utilizar interrupciones
El procesamiento de interrupciones permite reaccionarEl procesamiento de interrupciones permite reaccionar
rrpidamente ante determinados eventos internos opidamente ante determinados eventos internos oexternos.externos. Las rutinas de interrupciLas rutinas de interrupcin se deben estructurar den se deben estructurar de
forma queforma que -- una vez ejecutadas determinadas tareasuna vez ejecutadas determinadas tareas --devuelvan el control al programa principal. Para ello esdevuelvan el control al programa principal. Para ello esconveniente crear rutinas de interrupciconveniente crear rutinas de interrupcin cortas conn cortas conindicaciones precisas, de manera que se puedan ejecutarindicaciones precisas, de manera que se puedan ejecutarrrpidamente sin interrumpir otros procesos durantepidamente sin interrumpir otros procesos duranteperperodos demasiado largos.odos demasiado largos.
Si no se observan estas medidas, es posible que seSi no se observan estas medidas, es posible que seproduzcan estados imprevistos que pueden afectar a laproduzcan estados imprevistos que pueden afectar a lainstalaciinstalacin controlada por el programa principal.n controlada por el programa principal.
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
Autmatas Programables
INTERRUPCIONES EN UN PLCINTERRUPCIONES EN UN PLC
CONTADOR RAPIDO
GENERADOR DEPULSOS
CONTADOR RAPIDO
GENERADOR DEPULSOS
POR UNA ENTRADA
POR PUERTO DECOMUNICACIN
POR UNA ENTRADA
POR PUERTO DECOMUNICACIN
EXTERNASEXTERNAS INTERNASINTERNAS
POR HARDWAREO ASNCRONAS
POR HARDWAREO ASNCRONAS
SNCRONASO CCLICAS
SNCRONASO CCLICAS
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
3/9
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
Interrupciones del puerto de comunicacin:Interrupciones del puerto de comunicaciInterrupciones del puerto de comunicacin:n:
El programa puede controlar el puerto serie deEl programa puede controlar el puerto serie de
comunicacicomunicacin del S7n del S7--200.200.
La comunicacin a travs de este puerto sedenomina modo Freeport (comunicacin programable
por el usuario).
En modo Freeport, el programa define la velocidad
de transferencia, los bits por carcter, la paridad y el
protocolo.
Las interrupciones de transmisin y recepcin
permiten controlar la comunicacin mediante el
programa.
Interrupciones de E/SInterrupciones de E/SInterrupciones de E/S
Las interrupciones de E/S abarcan: interrupciones al producirse flancos positivos y negativos.
interrupciones de los contadores rpidos, as como Interrupciones de salidas de impulsos.
El S7-200 puede generar una interrupcin en los flancospositivos y/o negativos de una entrada (bien sea I0.0, I0.1,I0.2, o bien I0.3).
Los eventos Flanco positivo y Flanco negativo se puedencapturar para cada una de esas entradas. Estos eventostambin sirven para indicar una condicin que requieraatencin inmediata en cuanto se produzca el evento.
Autmatas Programables
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
4/9
Interrupciones de E/SInterrupciones de E/SInterrupciones de E/S
Las interrupciones de los contadores rLas interrupciones de los contadores rpidos permiten responderpidos permiten responderrrpidamente a condiciones tales como:pidamente a condiciones tales como:
a) el valor actual ha alcanzado el valor predeterminado,a) el valor actual ha alcanzado el valor predeterminado,
b) el sentido deb) el sentido de
contajecontaje
ha cambiado de forma inversa al sentido de giroha cambiado de forma inversa al sentido de giro
deldel rbol de accionamiento yrbol de accionamiento yc) el contador se ha puesto ac) el contador se ha puesto a 0" externamente0" externamente..
Todos estos eventos de los contadores rTodos estos eventos de los contadores rpidos permiten reaccionarpidos permiten reaccionarante eventos que no se puedan controlar durante el tiempo de cicante eventos que no se puedan controlar durante el tiempo de ciclolodel sistema de automatizacidel sistema de automatizacinn..
Las interrupciones de salida de impulsos avisan inmediatamenteLas interrupciones de salida de impulsos avisan inmediatamentecucundo ha finalizado la salida del nndo ha finalizado la salida del nmero indicado de impulsos. Pormero indicado de impulsos. Porlo general, las salidas de impulsos se utilizan para controlar mlo general, las salidas de impulsos se utilizan para controlar motoresotorespaso a paso.paso a paso.
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
Autmatas Programables
CLK
RESET
UP/DOWN
RUN
CPUCPUCONTADOR
RPIDO
CONTADORRPIDO
GENERADORDE PULSOS
( PTOY
PWM )
GENERADORDE PULSOS
( PTOY
PWM )
Tren de pulsos
PWM
intint intint
Interrupciones generadas por hardware interno
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
5/9
Interrupciones temporizadasInterrupciones temporizadasInterrupciones temporizadas Una vez habilitada, la interrupcin temporizada funciona de forma
continua, ejecutando la rutina asociada cada vez que transcurre elintervalo de tiempo indicado. La interrupcin temporizada se inhibesaliendo del modo RUN o desasocindola de la rutinacorrespondiente.
Si se ejecuta la operacin Inhibir todos los eventos de interrupcin,se siguen generando interrupciones temporizadas, pero se ponenen cola de espera (hasta que se habiliten nuevamente o hastallenarse la cola).
Las interrupciones de los temporizadores T32 y T96 permitenreaccionar una vez transcurrido un determinado intervalo de tiempo.Estas interrupciones se soportan nicamente en T32 y T96, siendostos temporizadores como retardo a la conexin (TON) y a ladesconexin (TOF) con resolucin de 1 ms. Por lo dems, elcomportamiento de T32 y T96 es normal.
Una vez habilitada la interrupcin, la rutina asociada se ejecutarcuando el valor actual del temporizador activo sea igual a su valorde preseleccin al actualizar el S7-200 el temporizador de 1 ms.Estas interrupciones se habilitan asociando las correspondientesrutinas de interrupcin a los eventos de temporizacin T32/T96.
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
Interrupciones temporizadasInterrupciones temporizadasInterrupciones temporizadas Las interrupciones temporizadas comprenden tambin las de los
temporizadores T32/T96. Estas interrupciones se utilizan para indicartareas que deban ejecutarse cclicamente. El tiempo de ciclo se incrementaen intervalos de 1 ms, abarcando desde 1 ms hasta 255 ms.
El tiempo de ciclo de la interrupcin temporizada 0 se debe escribir enSMB34, y el de la interrupcin temporizada 1, en SMB35.
Cada vez que termina la temporizacin, el evento de interrupcintemporizado transfiere el control a la rutina de interrupcin correspondiente
. Por lo general, las interrupciones temporizadas se utilizan para controlar elmuestreo de las entradas analgicas o para ejecutar un bucle PID enintervalos regulares.
Asociando un evento de interrupcin temporizado a una rutina deinterrupcin, se habilita el evento e inmediatamente se empieza atemporizar. Durante ese proceso, el sistema captura el valor del tiempo deciclo, de forma que los cambios siguientes en SMB34 y SMB35 no lopueden alterar. Para poder modificar el tiempo de ciclo se deber cambiarel valor del mismo y reasociar luego la rutina de interrupcin al evento de lainterrupcin temporizada. Al reasociar la rutina de interrupcin, la funcinborra los tiempos acumulados de la asociacin anterior, con lo cual sevuelve a temporizar a partir del nuevo valor.
Autmatas Programables
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
6/9
OPERACIONES DE INTERRUPCIN
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
La operacin Habilitar/Deshabilitar todos los
eventos de interrupcin
((ENI) habilita la ejecuciENI) habilita la ejecucin de todos los eventosn de todos los eventos
asociados.asociados. La operaciLa operacin Inhibir todos los eventos den Inhibir todos los eventos de
interrupciinterrupcin (DISI) inhibe la ejecucin (DISI) inhibe la ejecucin de todosn de todoslos eventos asociados.los eventos asociados.
Cuando la CPU pasa a modo RUN, lasCuando la CPU pasa a modo RUN, lasinterrupciones se inhiben.interrupciones se inhiben.
En modo RUN es posible habilitar elEn modo RUN es posible habilitar elprocesamiento de las interrupciones con laprocesamiento de las interrupciones con laoperacioperacin Habilitar todos los eventos den Habilitar todos los eventos de
interrupciinterrupcin.n. Ejecutando la operaciEjecutando la operacin Inhibir todos losn Inhibir todos loseventos de interrupcieventos de interrupcin se inhibe eln se inhibe elprocesamiento de las interrupciones. Noprocesamiento de las interrupciones. Noobstante, los eventos de interrupciobstante, los eventos de interrupcin activos sen activos sesiguen poniendo en la cola de espera.siguen poniendo en la cola de espera.
Autmatas Programables
ENI
DISI
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
7/9
La operaciLa operacin Asociar interrupcin Asociar interrupcin (ATCH)n (ATCH)
asocia el nasocia el nmero de una rutina de interrupcimero de una rutina de interrupcin (INT)n (INT)a un evento de interrupcia un evento de interrupcin (EVNT), habilitando asn (EVNT), habilitando assteste ltimo.ltimo.
Antes de poder llamar a una rutina de interrupciAntes de poder llamar a una rutina de interrupcinnes preciso establecer un enlace entre el evento dees preciso establecer un enlace entre el evento deinterrupciinterrupcin y la parte del programa que se deseen y la parte del programa que se deseeejecutar cuando se presente el evento.ejecutar cuando se presente el evento.
La operaciLa operacin Asociar interrupcin Asociar interrupcin sirve para asignarn sirve para asignarel evento de interrupciel evento de interrupcin (indicado por el nn (indicado por el nmero demero deevento) a una parte del programa (indicada por elevento) a una parte del programa (indicada por elnnmero de la rutina de interrupcimero de la rutina de interrupcin).n).
TambiTambin es posible asociar varios eventos den es posible asociar varios eventos deinterrupciinterrupcin a unan a una nica rutina de interrupcinica rutina de interrupcin.n. Por el contrario, no se puede asociar un sPor el contrario, no se puede asociar un slo eventolo evento
a distintas rutinas.a distintas rutinas.
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
ATCH
EN
INT
EVENT
DTCH
EN
EVENT
Si se inhiben todos los eventos de interrupciSi se inhiben todos los eventos de interrupcin, cada vezn, cada vez
que se presente la interrupcique se presente la interrupcin se pondrn se pondr en cola deen cola deespera hasta que las interrupciones se habiliten deespera hasta que las interrupciones se habiliten denuevo (utilizando para ello la operacinuevo (utilizando para ello la operacin Habilitar todosn Habilitar todoslos eventos de interrupcilos eventos de interrupcin), o bien hasta que sen), o bien hasta que sedesborde la cola de espera de interrupcionesdesborde la cola de espera de interrupciones..
TambiTambin es posible inhibir ciertos eventos den es posible inhibir ciertos eventos deinterrupciinterrupcin, eliminando la asociacin, eliminando la asociacin entre el evento yn entre el evento y
la correspondiente rutina mediante la operacila correspondiente rutina mediante la operacinnDesasociar interrupciDesasociar interrupcin (DTCH).n (DTCH).
Esta operaciEsta operacin retorna la interrupcin retorna la interrupcin a un estadon a un estadoinactivo o ignorado.inactivo o ignorado.
Autmatas Programables
La operaciLa operacin Asociar interrupcin Asociar interrupcin (ATCH)n (ATCH)
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
8/9
Descripcin de los eventos de interrupcinDescripciDescripcin de los eventos de interrupcin de los eventos de interrupcinn
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
Autmatas Programables
en el primer ciclo, definir que la rutina de interrupcin INT_0sea una interrupcin de flanco negativo en I0.0 y habilitar
todas las interrupciones.
Si se detecta un error de E/S, inhibir la interrupcin de flanconegativo en I0.0. (Este segmento es opcional)
Si M5.0 est activada, inhibir todas las interrupciones.
Rutina de interrupcin 0Rutina de interrupcin de flanco negativo en I0.0.Retorno condicionado debido a un error de E/S
1er. Ejemplo de una rutina de interrupci1er. Ejemplo de una rutina de interrupcin :n :
I0.0 disparo por flancoI0.0 disparo por flanco
-
8/6/2019 20__LAS_INTERRUPCIONES_EN_E
9/9
Carlos Canto Q.Facultad de Ciencias / UASLP
Autmatas Programables
2 Ejemplo de una rutina de interrupcin:
interrupcin temporizada de 100 ms
22 Ejemplo de una rutina de interrupciEjemplo de una rutina de interrupcin:n:
interrupciinterrupcin temporizada de 100n temporizada de 100 msms
Programa principalEn el primer ciclo, llamar a la subrutina 0
Subrutina 0Ajustar de 0 a 100 ms el intervalo de tiempo de la
interrupcin temporizada
Asociar la interrupcin temporizada 0 (evento 10) a INT_0.
Habilitar todos los eventos de interrupcin
Rutina de interrupcin 0Leer el valor de AIW4 cada 100 ms
Autmatas Programables
top related