Programación en el editor CFC
Nota
Al crear el POU, se compromete con el lenguaje de implementación. Posteriormente, no es posible cambiar entre Diagrama de función continua (CFC) y Diagrama de función continua (CFC) - orientado a páginas lenguajes de implementación.
Inserción de elementos y cableado con líneas de conexión
Arrastre un Módulo elemento y un Salida elemento en el editor.
Haga clic en la salida del Módulo elemento.
La salida está marcada con un módulo rojo.
Arrastre una línea de conexión desde el pin de salida del Módulo elemento al pin de entrada del Salida elemento.
El símbolo del cursor cambia cuando llega al pin de entrada .
Suelte el botón izquierdo del ratón.
El pin de salida de la módulo está conectado al pin de entrada de la salida.
También puedes mantener presionada la tecla Control tecla, seleccione cada pin y luego haga clic derecho Pins seleccionados conectados.
Llamada de instancias
Cree un nuevo proyecto utilizando la plantilla estándar y especifique el nombre
First
Por ejemplo.El proyecto
First.project
se crea.Amplíe la aplicación con el bloque de funciones
FB_DoIt
en el ST Lenguaje de implementación con entradas y salidas.Ejemplo:
FUNCTION_BLOCK FB_DoIt VAR_INPUT iAlfa : INT; iBravo: INT; sCharlie : STRING := 'Charlie'; xItem : BOOL; END_VAR VAR_OUTPUT iResult : INT; sResult : STRING; xResult : BOOL; END_VAR VAR END_VAR iResult := iAlfa + iBravo; IF xItem = TRUE THEN xResult := TRUE; END_IF
Seleccione la aplicación y haga clic Agregar objeto → POU Seleccione el Diagrama de función continua (CFC) lenguaje de implementación y el tipo
Program
. Especifique el nombrePrgFirst
Por ejemplo.Hacer clic DE ACUERDO para confirmar el diálogo.
El
PrgFirst
Se crea el programa y se abre en el editor. Sigue vacío.Crear instancias de bloques de funciones y declarar variables.
PROGRAM PrgFirst VAR iCounter: INT; fbDoIt_1 : FB_DoIt; fbDoIt_2 : FB_DoIt; iOut : INT; sOut: STRING; xOut: BOOL; END_VAR
Arrastre un Módulo elemento de la Caja de instrumento Ver en el editor.
Haga clic en el
???
campo y tipo enADD
como el nombre de la módulo .El tipo de módulo es
ADD
La módulo actúa como un sumador.Haga clic en la línea 3 en el editor de declaraciones.
La línea de declaración de
iCounter
está seleccionadoHaga clic en la selección y arrastre la variable seleccionada a la implementación. Allí, enfoque una entrada de la
ADD
módulo.Se ha creado, declarado y conectado una entrada al módulo.
Haga clic nuevamente en la selección y arrastre la variable a la salida del
ADD
módulo.Se ha creado, declarado y conectado una salida al módulo.
Arrastre un Entrada elemento de la Caja de instrumento Vista de la implementación. Haga clic en su
???
campo y tipo en1
.Conectar el
1
entrada a una entrada delADD
módulo.Se programa una red. En tiempo de ejecución, la red cuenta los ciclos del bus y almacena el resultado en
iCounter
.Haga clic en la línea 5 en el editor de declaraciones.
La línea está seleccionada.
Haga clic en la selección y arrastre la instancia seleccionada a la implementación.
La instancia aparece como un módulo en el editor. El tipo, el nombre y los pines del módulo se muestran como corresponde.
Arrastre el
fbDoIt_2
Instancia al editor. Interconectar las instancias entre sí y con las entradas y salidas.Ejemplo:
Un programa en ST con la misma funcionalidad podría verse así:
PROGRAM PrgFirstInSt VAR iCounter: INT; fbDoIt_1 : FB_DoIt; fbDoIt_2 : FB_DoIt; iOut : INT; sOut: STRING; xOut: BOOL; END_VAR iCounter := iCounter + 1; fbDoIt_1(iAlfa := 16, iBravo := 32, sCharlie := 'First', xItem := TRUE, iDelta := 2, iResult => fbDoIt_2.iAlfa, xResult => fbDoIt_2.xItem); fbDoIt_2(iBravo := fbDoIt_1.iResult, sCharlie := 'Second', iDelta := 2, iResult => iOut , sResult=> sOut, xResult => xOut);
Creación de marcas de conexión
Requisito: Una POU CFC tiene elementos conectados.
Seleccione una línea de conexión entre dos elementos.
La línea de conexión se muestra como seleccionada. Los extremos de la línea de conexión están marcados con
cajas rojas.
Hacer clic CFC → Marca de conexión.
La conexión se separa en una Marca de conexión – Fuente y un Marca de conexión – Fregadero El nombre de la marca se genera automáticamente.
Haga clic en las marcas de conexión de fuente .
Puedes editar el nombre.
Especifique el nombre
SimpleMark
Para la marca de conexión de fuente .La marca de conexión de fuente y la marca de conexión de sink tienen el mismo nombre.
Resolución de colisiones y fijación de líneas de conexión mediante puntos de control
El siguiente ejemplo muestra cómo utilizar el Enrutar todas las conexiones Comando con puntos de control.
Posicione el Entrada y Salida Elementos. Conecta los elementos.
Posición dos Módulo elementos en la línea.
La línea de conexión y las cajas están marcadas en rojo debido a la colisión.
Hacer clic CFC → Enrutamiento → Enrutar todas las conexiones.
La colisión está resuelta.
Cambie las líneas de conexión gradualmente.
La línea de conexión se ha modificado manualmente y ahora está bloqueada para el enrutamiento automático. Esto se indica con un símbolo de candado al final de la conexión.
Seleccione la línea de conexión y haga clic CFC → Enrutamiento → Crear punto de control.
Se crea un punto de control en la línea de conexión. Esta se fija al punto de control.
También puede arrastrar un punto de control desde el Caja de instrumento vista a una línea.
Cambie la línea de conexión como se ve en el siguiente ejemplo.
Utilice el punto de control para cambiar la línea de conexión según sus necesidades. Puede configurar cualquier número de puntos de control.
En el menú contextual, haga clic en CFC → Enrutamiento → Eliminar punto de control para eliminar el punto de control.
Hacer clic Soltar conexión o haga clic en el símbolo de candado para desbloquear la conexión.
Seleccione la línea de conexión y haga clic Enrutar todas las conexiones.
La línea de conexión se enruta automáticamente como se ve en el paso 3.
Importante
Las conexiones en un grupo no se enrutan automáticamente.
Reducir la visualización de un módulo
Requisito: Hay una POU de CFC abierta. En el editor, se muestran sus cuadros con todos los pines declarados.
Seleccione una módulo cuyos pines estén parcialmente desconectados.
Ejemplo:
fb_DoIt_1
La módulo necesita espacio para todos los pines.
Hacer clic CFC → Pins → Eliminar las conexiones sin enlace.
Ahora la módulo necesita menos espacio y se muestra solo con los pines funcionalmente relevantes.