Vous êtes sur la page 1sur 1

EJEMPLO DE DECLARACIÓN DE VARIABLES

El ejemplo 2.1 muestra la parte de declaración de variable de una POU. Se declara una variable entera con signo (16 bits
incl. Signo) con el nombre MotorNr y un texto de longitud 10 con el nombre MotorName. La variable binaria EmStop (parada
de emergencia) se asigna a la entrada de señal de E / S 2.0 (usando la palabra clave "AT"). Estas tres variables se conocen
solo dentro de la POU correspondiente, es decir, son "locales". Solo pueden ser leídas y alteradas por este POU. Durante
un corte de energía, conservan su valor, como lo indica el calificador "RETENCIÓN". El valor para la variable de entrada
ValidFlag será establecido por la POU de la llamada y tendrá los valores booleanos VERDADERO o FALSO. El parámetro
de salida devuelto por la POU en este ejemplo es el valor de punto flotante RevPM

GRAFICO DE FUNCIONES SECUENCIALES (SFC)

La Figura 2.2 muestra un ejemplo de SFC: los pasos S0, S1 y S3 se procesan secuencialmente. S2 se puede ejecutar
alternativamente a S1. Las transiciones t1 a t5 son las condiciones que deben cumplirse antes de pasar de un paso al
siguiente.

EJEMPLO DE INICIACIÓN ESCRITO EN IL

FIG 1
Llamando a la jerarquía de POUs en el ejemplo.

FIG 2. La representación de IL equivalente se muestra en el Ejemplo 2.2.

Ejemplo 2.2. Declaración del programa MotorControl de la Figura 2.3 junto con las partes de código correspondientes en
IL. Los comentarios se representan mediante el uso de corchetes: "(* ... *)".

SUBPROGRAMAS

MotorControl es el programa principal. Cuando se inicia este programa, a la variable RPM se le asigna un valor inicial
pasado con la llamada (como se verá más adelante). Este POU luego llama al inicio de bloque (MotStart). Esta POU, a su
vez, llama a la función REAL MotAccel con dos parámetros de entrada (RPM y 100.0). A continuación, se llama LOG: la
función estándar IEC 61131 "Logaritmo". Después de procesar Inicio (MotStart), MotorControl se activa de nuevo, evalúa
el resultado en ejecución y luego llama Frenado, (MotBrake). Como se muestra en el Ejemplo 2.2, los bloques de funciones
MotStart y MotBrake no se llaman directamente con estos nombres, sino con los llamados "nombres de instancia" Inicio y
Frenado, respectivamente.

PLC

Antes de poder cargar el programa descrito en los Ejemplos 2.2 y 2.3 en el PLC, se necesita más información para
garantizar que la tarea asociada tenga las propiedades deseadas

- ¿En qué tipo de PLC y en qué recurso se ejecutará el programa?


- ¿Cómo se ejecutará el programa y qué prioridad debería tener?
- ¿Las variables necesitan ser asignadas a direcciones físicas de PLC?
- ¿Hay referencias de variables globales o externas a otros programas para ser declarados?
FIG 24

La figura 2.4 continúa con el ejemplo 2.3. El programa MotorControl se ejecuta junto con sus FUN y FB en el recurso
CPU001. La tarea asociada especifica que MotorControl debe ejecutarse cíclicamente con baja prioridad. El programa
MotorProg se ejecuta aquí en la CPU002, pero también podría ejecutarse en la CPU001 si esta CPU admite la multitarea.
La configuración también se utiliza para asignar variables a las E / S y para administrar variables globales y de
comunicación. Esto también es posible dentro de un PROGRAMA. Un proyecto de PLC consta de POU que envía el
fabricante del PLC o que crea el usuario. Los programas de usuario se pueden usar para crear bibliotecas de POU probadas
que se pueden usar de nuevo en nuevos proyectos. IEC 61131-3 admite este aspecto de la reutilización del software al
estipular que las funciones y los bloques de funciones deben permanecer "universales", es decir, independientes del
hardware, en la medida de lo posible.

Vous aimerez peut-être aussi