Multiinstancia Step 7

download Multiinstancia Step 7

of 2

description

PLC multiinstancia

Transcript of Multiinstancia Step 7

Multiinstancia Step 7

Automatizacin industrialEs posible que, debido a los datos caractersticos (p.ej. capacidad de memoria) de las CPUS S7 utilizadas, slo pueda o desee utilizar una cantidad limitada de DBs para los datos de instancia. Si en un FB de su programa de usuario se invocan otros bloques de funcin ya existentes (jerarqua de llamada de FBs), stos ltimos se pueden llamar sin DBs de instancia propios (es decir, adicionales). Para ello existe la siguiente solucin: * Incorpore los FBs a llamar en forma de variables estticas en la declaracin de variables del FB invocante. * En este ltimo FB se llaman otros bloques de funcin sin DBs de instancia propios (es decir, adicionales). * Ello permite concentrar los datos de instancia en un solo bloque de datos de instancia, pudindose aprovechar mejor el nmero disponible de DBs.

Un DB de instancia para varias instancias de un FB (multiinstancias)A un FB se pueden transferir conjuntamente en un DB de instancia los datos de instancia para diferentes motores. A tal efecto, la llamada de los controles de motores se ha de efectuar en otro FB y en el rea de declaracin del FB invocante se deben declarar las variables estticas con el tipo de datos de un FB para las diferentes instancias. Utilizando un DB de instancia para varias instancias de un FB se ahorra capacidad de memoria y optimiza el uso de los bloques de datos. En el caso ejemplificado por la figura siguiente, el bloque invocante es el FB 21 "Proceso de motor", las variables son del tipo de datos FB 22 y las instancias son designadas con motor_1, motor_2 y motor_3.

Un DB de instancia para varias instancias de FB diferentes (multiinstancias)En un bloque de funcin se pueden llamar a instancias de otros FBs ya existentes. Los datos de instancia necesarios al respecto se pueden asignar al bloque de datos de instancia del FB invocante, es decir que en este caso no se necesitan bloques de datos adicionales para los FBs que se han llamado. Para dichas multiinstancias de un DB de instancia deber declarar, en la tabla del FB invocante, variables estticas del mismo tipo de datos del FB llamado, hacindolo para cada una de las instancias. La llamada en el FB se efecta entonces slo con el nombre de la variable, es decir, sin indicar un DB de instancia. En el ejemplo de la figura, los datos de instancia asignados se memorizan conjuntamente en un DB de instancia.

Es posible que, debido a los datos caractersticos (p.ej. capacidad de memoria) de las CPUS S7 utilizadas, slo pueda o desee utilizar una cantidad limitada de DBs para los datos de instancia. Si en un FB de su programa de usuario se invocan otros bloques de funcin ya existentes (jerarqua de llamada de FBs), stos ltimos se pueden llamar sin DBs de instancia propios (es decir, adicionales)Reglas para declarar multiinstancias 1) Las multiinstancias slo se pueden declarar en bloques de funcin creados a partir de la versin 2 de STEP 7 (v. el atributo de bloque en las propiedades del FB). 2) Para poder declarar las multiinstancias, el bloque de funcin se deber haber creado como FB apto para multiinstancias (pre ajuste a partir de la versin x.x de STEP 7; deseleccionable en el editor mediante el comando de menHerramientas >Preferencias). 3) Al bloque de funcin en el que se declara una multiinstancia debe asociarse un DB de instancia. 4) Una multiinstancia slo se puede declarar como variable esttica (tipo de declaracin "stat").