Vous êtes sur la page 1sur 13

Ing.CIP Julio Vacas Llanque julio.vacasl@ciplima.org.

pe

Programacin lineal Las tareas de automatizacin pequeas pueden solucionarse escribiendo todo el programa de usuario linealmente en un OB de ciclo. Recomendable slo para programas sencillos. El OB de ciclo "Main1" contiene todo el programa de usuario.

Ing.CIP.Julio Vacas Llanque

Programacin estructurada La realizacin y el mantenimiento de tareas de automatizacin complejas son ms fciles si se subdividen en tareas parciales ms pequeas que se correspondan con las funciones tecnolgicas del proceso de automatizacin o que deban utilizarse varias veces. Estas tareas parciales se representan en el programa de usuario mediante secciones de programa correspondientes, es decir, los bloques. Cada bloque es una seccin independiente del programa de usuario.
Ing.CIP.Julio Vacas Llanque

Los programas grandes pueden programarse de forma clara. Las distintas secciones del programa se pueden estandarizar. La organizacin del programa se simplifica. El programa se puede modificar ms fcilmente. La comprobacin del programa se simplifica, puesto que puede realizarse por secciones. La puesta en marcha se simplifica.

Ing.CIP.Julio Vacas Llanque

Ing.CIP.Julio Vacas Llanque

Las funciones son bloques lgicos sin memoria. Una funcin ofrece la posibilidad de transferir parmetros en el programa de usuario. Por ello, las funciones son adecuadas para programar funciones complejas que se repiten con frecuencia, p. ej. clculos. ) (FCs) son bloques lgicos sin memoria. Los datos de las variables temporales se pierden tras haberse procesado la funcin. Para almacenar los datos de forma permanente, las funciones disponen de bloque de datos (rea de datos del programa de usuario que contiene datos de usuario. Existen bloques de datos globales, a los que se puede acceder desde todos los bloques lgicos, as como bloques de datos instancia asignados a una determinada llamada de FB.) globales. Campo de aplicacin Una funcin contiene un programa que se ejecuta cada vez que la funcin es llamada por otro bloque lgico. Las funciones se pueden utilizar p. ej. para los siguientes fines: Devolver valores de funcin al bloque invocante, p. ej. en funciones matemticas Ejecutar funciones tecnolgicas, p. ej. controles individuales con operaciones lgicas binarias Una funcin tambin se puede llamar varias veces en diferentes puntos de un programa. Esto facilita la programacin de funciones complejas que se repiten con frecuencia.
Ing.CIP.Julio Vacas Llanque

Los bloques de funcin son bloques lgicos que depositan sus valores de forma permanente en bloques de datos instancia, de modo que siguen disponibles tras procesar el bloque. Los parmetros de entrada, salida y entrada/salida se depositan de forma permanente en bloques de datos instancia. Gracias a ello, continan disponibles tras el procesamiento del bloque. Por este motivo, se conocen tambin como bloques con "memoria". Campo de aplicacin Los bloques de funcin contienen subprogramas que se ejecutan cada vez que un bloque de funcin es llamado por otro bloque lgico. Un bloque de funcin tambin se puede llamar varias veces en diferentes puntos de un programa. Esto facilita la programacin de funciones complejas que se repiten con frecuencia. Instancias de bloques de funcin La llamada de un bloque de funcin se denomina instancia. A cada instancia de un bloque de funcin se asigna un bloque de datos instancia que contiene los datos que utiliza el bloque de funcin.
Ing.CIP.Julio Vacas Llanque

La llamada de un bloque de funcin se denomina instancia. A cada llamada de un bloque de funcin que transfiere parmetros se asigna un bloque de datos instancia que sirve de memoria de datos. En ella se depositan los parmetros actuales y los datos estticos del bloque de funcin. El tamao mximo de los bloques de datos instancia vara en funcin de la CPU. Las variables declaradas en el bloque de funcin determinan la estructura del bloque de datos instancia.

Ing.CIP.Julio Vacas Llanque

Al contrario que los bloques lgicos, los bloques de datos no contienen instrucciones, sino que sirven para almacenar datos de usuario. Por tanto, los bloques de datos contienen datos variables, con los que trabaja el programa de usuario. Los bloques de datos globales almacenan datos de usuario utilizables desde todos los dems bloques. Todo bloque de funcin, toda funcin o todo bloque de organizacin puede leer datos de un bloque de datos global o escribir datos en ste. Estos datos se conservan en el bloque de datos incluso al cerrarlo. Un bloque de datos global y un bloque de datos instancia pueden estar abiertos simultneamente.
Ing.CIP.Julio Vacas Llanque

Por jerarqua de llamada se entiende el orden y la profundidad de anidamiento de las llamadas de bloque. La profundidad de anidamiento permitida depende de la CPU.

Ing.CIP.Julio Vacas Llanque

Los bloques de funcin (FBs) depositan sus datos en bloques de datos de instancia. Cuando se programa una llamada de un bloque de funcin, se asigna a ste un bloque de datos instancia. En el bloque de datos instancia asignado se depositan los valores de los parmetros del bloque y los datos locales estticos. Los bloques de datos instancia pueden asignarse como: Instancia individual: Un bloque de datos instancia por cada instancia de un bloque de funcin multiinstancia: -Un bloque de datos instancia para varias instancias de un bloque de funcin -Un bloque de datos instancia para varias instancias de distintos bloques de funcin

Ing.CIP.Julio Vacas Llanque

Ejem. Un bloque de funcin para controlar varios motores. A este efecto, se asigna a cada llamada del bloque de funcin un bloque de datos instancia diferente para el control del motor. Los diferentes datos de cada uno de los motores (p. ej. nmero de revoluciones, tiempo de aceleracin, tiempo total de servicio) se almacenan en los distintos bloques de datos instancia. En funcin del bloque de datos instancia asignado se controla un motor diferente. :

Ing.CIP.Julio Vacas Llanque

Se muestra cmo varios bloques de funcin diferentes depositan sus datos en un bloque invocante. El FB 10 llama consecutivamente FB 4, FB 5 y FB 2. Los bloques llamados depositan sus datos en el DB 10, es decir, el bloque de datos del bloque que llama.

Ing.CIP.Julio Vacas Llanque

Vous aimerez peut-être aussi