guia codesys ladder

21
CODESYS CoDeSys significa Controller Development System (Sistema de desarrollo de controladores) y es uno de los sistemas de programación del estándar IEC 61131-3 más comunes para PLCs y reguladores industriales. Es desarrollado por la empresa 3S-Smart Software Solutions y permite programar autómatas de diferentes fabricantes, así cómo generar código para algunos microprocesadores y DSPs. Soporta los cinco lenguajes de programación del estándar, dispone de visualización integrada, además de un simulador offline. Se trata de un software de programación abierto y se puede descargar directamente de la página del desarrollador (http://www.codesys.com/support-training/self- help/downloads-updates.html) 1. Pantalla de presentación: Figura 1 La figura 1 muestra todas las partes de la interface de Codesys aunque no todas se muestran al iniciar el programa 2. Arranque del programa. Antes de empezar, si desea usar el idioma español como ambiente de trabajo, vaya a "Proyect/Options/Desktop" y allí configure el idioma español en la opción Language. Codesys permite vincular programas, pero para empezar, cada actividad que realicemos emplearemos únicamente proyectos nuevos Al crear un nuevo proyecto, Codesys le preguntará por el tipo de módulo que se va a generar, esto es sobre qué tipo de PLC va a aplicarse la programación. Para nuestro caso, como sólo vamos a simular, debemos elegir None. Figura 2 Explorador de proyectos u Organizador de proyectos Panel de visualización Panel de declaración de variables globales Editor de programa Panel de resultados o Centro de mensajes Barra de estado Barra de instrucciones Barra de iconos Barra de menús Panel de declaración de variables locales Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 1

Upload: alexm4

Post on 06-Apr-2016

375 views

Category:

Documents


37 download

DESCRIPTION

Guia para desarrollo del programa Codesys en ladder

TRANSCRIPT

Page 1: Guia Codesys Ladder

CODESYS CoDeSys significa Controller Development System (Sistema de desarrollo de controladores) y es uno de los sistemas de programación del estándar IEC 61131-3 más comunes para PLCs y reguladores industriales. Es desarrollado por la empresa 3S-Smart Software Solutions y permite programar autómatas de diferentes fabricantes, así cómo generar código para algunos microprocesadores y DSPs.

Soporta los cinco lenguajes de programación del estándar, dispone de visualización integrada, además de un simulador offline. Se trata de un software de programación abierto y se puede descargar directamente de la página del desarrollador (http://www.codesys.com/support-training/self-help/downloads-updates.html)

1. Pantalla de presentación:

Figura 1

La figura 1 muestra todas las partes de la interface de Codesys aunque no todas se muestran al iniciar el programa

2. Arranque del programa.

Antes de empezar, si desea usar el idioma español como ambiente de trabajo, vaya a "Proyect/Options/Desktop" y allí configure el idioma español en la opción Language.

Codesys permite vincular programas, pero para empezar, cada actividad que realicemos emplearemos únicamente proyectos nuevos Al crear un nuevo proyecto, Codesys le preguntará por el tipo de módulo que se va a generar, esto es sobre qué tipo de PLC va a aplicarse la programación. Para nuestro caso, como sólo vamos a simular, debemos elegir None.

Figura 2

Explorador de proyectos

u Organizador de proyectos

Panel de visualización

Panel de declaración de variables globales

Editor de programa

Panel de resultados o Centro de mensajes

Barra de estado

Barra de instrucciones

Barra de iconos

Barra de menús

Panel de declaración de variables locales

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 1

Page 2: Guia Codesys Ladder

A continuación debe elegirse el lenguaje de programación que vamos a utilizar. Para empezar, nuestro ejemplo será usando Ladder (LD). Note el nombre del módulo PLC_PRG el cual no debe ser modificado ya que garantiza la ejecución cíclica del programa

Figura 3

A continuación junto al panel Explorador de proyectos debe aparecer tres paneles: el panel de declaración de variables locales, el Panel de edición de programas y el Centro de mensajes los que se muestran en la siguiente figura:

Figura 4

3. Programación.

La programación la podemos dividir en partes:

– Construcción del circuito Ladder – Declaración de variables – Asignación de variables al circuito Ladder – Verificación del programa – Simulación

3.1 Construcción del circuito Ladder

Para empezar y con el fin de mostrar sólo el proceso, se construirá el circuito Ladder más sencillo posible, esto es un contacto normalmente abierto (NA) conectado a una bobina.

En el panel de Edición de Programas, haga click sobre el escalón en el que desea añadir el contacto NA:

Panel de Edición de Programas

Centro de mensajes

Panel de declaración de variables locales

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 2

Page 3: Guia Codesys Ladder

Figura 5

Note la presencia, en el margen derecho, de un rectángulo con líneas discontinuas que indica que ese es el escalón seleccionado.

En la Barra de instrucciones haga click sobre el contacto NA, el que inmediatamente se mostrará en el escalón:

Figura 6

Haga click en la línea del escalón a la derecha del contacto NA y repita el procedimiento para la bobina y obtendrá el resultado esperado:

Figura 7

Note que tanto el contacto NA de entrada como la bobina de salida no tienen asociada ninguna variable lo que se denota con ???.

En el caso que desee añadir escalones antes o después del seleccionado, puede ir al menú Insertar

Red (antes) o Red (después) según sea el caso o usar los iconos respectivos:

3.2 Declaración de variables

Antes de declarar las variables veamos algunos conceptos relacionados con el Árbol de Organización del proyecto:

• Módulos POUs (Program Organization Unit): Tanto funciones como bloques de funciones y programas son POUs, los cuales pueden ser complementados por acciones. Cada POU consiste en una parte de declaración y un cuerpo. El cuerpo del programa se escribe en el editor del programa en alguno de los lenguajes de programación del IEC (IL, ST, SFC, FBD, LD o CFC). CoDeSys soporta todos los POUs del estándar IEC. Si se quieren usar estos POUs en el proyecto, se debe incluir la librería standard.lib en éste.

• Tipos de datos: en este apartado el usuario puede definir sus propios tipos de datos. Como por ejemplo: estructuras, tipos de enumeración y referencias.

• Visualizaciones: CoDeSys proporciona visualizaciones de modo que el usuario pueda mostrar las variables de su proyecto. Se pueden dibujar elementos geométricos offline, que en modo online, pueden cambiar su forma/color/texto en respuesta a valores especificados de las variables.

• Recursos: en este apartado se ayuda a configurar y a organizar el proyecto. Es posible entre otras tareas la definición de variables globales las cuales se pueden utilizar en todo el proyecto; la gestión de las librerías; la configuración de un sistema de alarma o la configuración del hardware del PLC.

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 3

Page 4: Guia Codesys Ladder

Figura 8

Puede decirse que existen dos formas de declarar variables. La primera es la más sencilla, puesto que sólo se escribe las variables y su tipo, en cambio, en la segunda, a través de una ventana, se puede declarar, además del nombre y tipo, el valor inicial, la dirección de memoria, comentario, etc. Ambas formas puede llevarse a cabo para las variables locales o para las globales

i. Primera forma:

Como se sabe, se puede trabajar con distintos tipos de variables. Inicialmente se utiliza variables globales ya que puedan ser utilizadas en todos los programas, funciones y bloques funcionales, por lo que se procede de la siguiente manera:

En el Explorador de proyectos haga clic en la pestaña inferior Recursos:

Figura 9

Expanda la carpeta Variables globales y luego haga doble click sobre la opción Variables_globales lo que nos dará acceso la ventana respectiva donde podremos declarar las variables que se requiera.

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 4

Page 5: Guia Codesys Ladder

Figura 10

Haga espacio entre VAR_GLOBAL y END_VAR presionando INTRO y declare todas las variables globales que necesite. Para nuestro ejemplo, declare las variables Entrada y Salida de tipo booleano tal como se muestra en la figura 11:

Figura 11

Cierre la ventana Variables_globales. Ahora puede pasar al punto 3.3 Asignación de las variables al circuito Ladder, si es que no quiere revisar la segunda forma de declarar variables.

ii. Segunda forma:

Para este caso, antes de escribir las variables, haga click derecho en cualquier punto de la ventana Variables_globales y elija Declaración de variables…

Figura 12

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 5

Page 6: Guia Codesys Ladder

A continuación se ha de mostrar la ventana Declaración de variables:

Figura 13

En la casilla Nombre colocamos el nombre de la variable (en nuestro ejemplo, Entrada), en el tipo de variable hay que elegir entre todos los tipos de variables que se usan en este tipo de programación (Bool). El valor inicial de la variable es un dato que ella tomará al momento de iniciar el programa. La dirección de la variable indica la ubicación dentro del PLC utilizada para manejar esta variable. Estas direcciones pueden ser de varios tipos, y está definida por el tipo de dato a emplear los cuales se pueden observar en la siguiente tabla:

Variable a ingresar

Tipo de variables

Longitud de la variable Palabra Bit Descripción

Entrada de un solo BIT %I X 0 .1 %IX0.1, corresponde a una entrada ubicada en el

Bit 1 de la palabra 0 Entrada tipo palabra %I W 1 %IW1, corresponde a una entrada donde se

maneja la palabra 1 completa Salida de un solo BIT %O X 0 .1 %OX0.1, corresponde a una salida ubicada en el

Bit 1 de la palabra 0 Salida tipo palabra %O W 1 %OW1, corresponde a una salida donde se

maneja la palabra 1 completa Memoria de un solo bit %M X 2 .3 %MX2.3, corresponde a una memoria ubicada en

el Bit 3 de la palabra 2 Memoria tipo palabra %M X 2 %MW2 ,corresponde a una memoria donde se

maneja la palabra 2 completa

Tabla 1

Si se rellena los datos de la siguiente manera:

Figura 14

Se tendrá la siguiente declaración de variables:

Figura 15

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 6

Page 7: Guia Codesys Ladder

En este caso, como se trata de una simulación, no es relevante definir las direcciones de entradas y salidas pero en el caso de efectuar la programación para un PLC físico, sí es necesario. Es importante aclarar que para llevar a cabo este paso se hace necesario conocer bien la naturaleza de la variable a utilizar, si es digital o booleana (cero o uno), si es un entero, si es un real, si es una palabra, etc.

3.3 Asignación de las variables al circuito Ladder

Ya declaradas las variables hay que ubicarlas en el circuito Ladder. Haga click sobre el contacto NA y escriba el nombre de la variable anteriormente definida como Entrada y repita el mismo procedimiento con la bobina asignándole el nombre Salida.

Figura 16

3.4 Verificación del programa.

Una vez acabada la programación, se debe comprobar que no tenga errores ya sea de sintaxis o de uso incorrecto de variables. Para verificar un proyecto, acceda al menú Proyecto Compilar todo:

Figura 17

Los posibles errores de programación deben aparecer en el Panel de resultados, que para nuestro caso no existen como se ve en la figura

Figura 18

En el caso de que aparezcan mensajes de error, mediante un doble click sobre el mismo, se accederá directamente a la línea de programación donde se ha producido, en el Editor del programa.

3.5 Simulación.

Debe cumplirse necesariamente el Inicio de Sesión y posterior Inicio de la simulación y opcionalmente la simulación tipo Scada.

3.5.1 Inicio de sesión

Debe acceder al menú En línea Inicio de sesión:

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 7

Page 8: Guia Codesys Ladder

Figura 19

Aproveche verificar que la opción Simulación esté activada. Hecho esto, note como varían los paneles Declaración de variables locales y Editor de programa:

Figura 20

Nota: También puede usar la barra de iconos para iniciar y cerrar sesiones:

Figura 21

3.5.2 Inicio de la Simulación

Para empezar el proceso de simulación, puede hacerlo de tres formas: presionar la tecla F5, acceder al menú En línea Inicio o presionar el ícono Inicio de la barra respectiva:

Figura 22

Ahora debemos determinar qué valores van a asignarse a las entradas, lo que puede hacerse de dos formas:

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 8

Page 9: Guia Codesys Ladder

Primera forma: En el Editor de programa, si hace doble click sobre la Entrada, indicará que dicha entrada ha de tomar el valor “1” para la simulación, tal como se muestra en la figura:

Figura 23

Si nuevamente hace doble click sobre la Entrada, indicará que tomará el valor “0” para la simulación:

Figura 24

Si nuevamente hace doble click, la Entrada regresará a su posición original, es decir, no adoptará ningún valor. Para la simulación, la Entrada debe tomar el valor “1” y a continuación efectuamos la simulación escribiendo los valores asignados a las entradas y esto se hace accediendo al menú En línea Escribir valores o presionando Ctrl+F7:

Figura 25

Note como la habilitación de la Entrada provoca la activación de la Salida.

Para desactivar la Salida, primero debemos determinar que la Entrada debe ir a “0” haciendo doble click sobre ella y luego, para la simulación, presione nuevamente Ctrl+F7.

Segunda forma: En este caso se usa el panel de Declaración de Variables.

Figura 26

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 9

Page 10: Guia Codesys Ladder

Haga doble click sobre la Entrada y note como cambia el valor asignado (de FALSE a TRUE):

Figura 27

Para llevar a cabo la simulación, presione Ctrl+F7:

Figura 28

Para salir de la simulación, cierre la sesión lo que puede hacerlo de tres formas: accediendo al menú En

línea Cierre de sesión, presionando Ctrl+F8 o usando el ícono respectivo ( ):

Figura 29

Es conveniente, antes de empezar una nueva programación, borrar todos los datos anteriores, es decir, eliminar los datos del PLC virtual y para ello acceda al menú Proyecto Limpiar todo.

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 10

Page 11: Guia Codesys Ladder

Figura 30

3.5.3 Simulación con visualización (HMI) tipo Scada

La simulación puede hacerse más entendible si es que se usa una interfaz HMI que Codesys ofrece a modo de un Scada de menor escala.

Usando el mismo ejemplo, en el árbol de Organización del proyecto, seleccione la pestaña Visualizaciones lo que mostrará la siguiente ventana:

Figura 31

Haga click derecho sobre la carpeta Visualizaciones y elija Insertar objeto:

Figura 32

Asigne un nombre a la visualización que va a construir, en este caso, scada y presione Aceptar

Figura 33

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 11

Page 12: Guia Codesys Ladder

Debe presentarse una ventana enrejillada donde se va a construir el Scada. Note en la parte superior la barra de herramientas de dibujo que permite añadir diferentes objetos tales como rectángulos, elipses, polígonos, polilíneas, botones, etc, los cuales usaremos para este proceso.

Figura 34

En nuestro ejemplo, para la Entrada le asignaremos un botón por lo que hacemos click sobre dicho ícono, como lo muestra la figura 34, y en el panel de dibujo lo creamos como muestra la figura 35:

Figura 35

Para la Salida, usaremos un círculo como lámpara piloto

Figura 36

Ahora hay que configurar los parámetros de cada objeto. Para la Entrada, haga doble click sobre el botón y aparece la ventana Configurar elemento, donde en la opción Texto, escriba el texto INICIO como lo muestra la figura

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 12

Page 13: Guia Codesys Ladder

Figura 37

Ahora debemos configurar la variable que va a accionar el botón. Para ello elegimos la opción Entrada lo que muestra la siguiente ventana:

Figura 38

La opción Conmutar variable, permite que la entrada se comporte como un interruptor y la opción Palpar variable que se comporte como un pulsador. En nuestro ejemplo usaremos un interruptor y para ubicar la variable que lo accionará, colocamos un punto (.) en el cuadro de entrada Conmutar variable lo que mostrará un desplegable con todas las opciones de variables globales previamente programadas. En nuestro caso elegiremos Entrada, presionamos Intro y finalmente damos Aceptar.

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 13

Page 14: Guia Codesys Ladder

Figura 39

El procedimiento anterior (colocar un punto) sirve solamente cuando se usan variables globales. Si quiere visualizar todas las variables (globales y locales) coloque el cursor sobre el cuadro Conmutar variable y presione la tecla F2:

Figura 40

Para la lámpara piloto seguimos un procedimiento análogo. En nuestro ejemplo, dicha lámpara ha de mostrar un cambio de color cuando la Salida cambie de estado. Entonces haga doble click sobre el círculo y elija Colores:

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 14

Page 15: Guia Codesys Ladder

Figura 41

En la zona Color opción Interior debe seleccionar el color que aparece por defecto, esto es cuando la variable asignada se encuentre desactivada. En la zona Color de alarma opción Interior debe seleccionar el color cuando la variable se active. Para nuestro caso elegiremos el color verde oscuro para el primer caso y el verde claro para el segundo caso.

Finalmente hay que asignar la variable que va a llevar a cabo esta función. En Categoría elegimos la opción Variables y en el cuadro Entrada desactivar, colocamos un punto (.) lo que desplegará todas las posibles variables globales previamente programadas. Seleccionamos Salida, presionamos Intro y damos a Aceptar.

Figura 42

Para llevar a cabo la simulación efectuamos el mismo proceso anterior, esto es, compilamos, iniciamos sesión y ejecutamos Inicio de simulación.

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 15

Page 16: Guia Codesys Ladder

Figura 43

Presionando el botón INICIO la lámpara cambiará de color. Note además cómo cambia el estado de las variables en la ventana de Declaración de variables y en el Editor de programa Ladder.

Terminado el ejemplo, guárdelo con el nombre ejercicio1.

4. EJERCICIOS:

4.1 Sistema de arranque y paro con enclavamiento (archivo: ejercicio2)

Variables de entrada: – ON: pulsador NA – OFF: pulsador NC

Variables de salida: – LAMPARA: Actuador.

Figura 44

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 16

Page 17: Guia Codesys Ladder

4.2 Lámpara con encendido temporizado. (archivo: ejercicio3)

Variables de entrada: – ON: pulsador NA

Variables de salida: – LAMPARA: Actuador.

Bloque funcional: – TP1: Temporizador de pulsos

Figura 45

Para introducir un temporizador, primero cerciórese de que tiene cargada la librería respectiva. Para ello, en el Árbol de organización del proyecto, pestaña Recursos, haga doble click sobre el Administrador de Bibliotecas:

Figura 46

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 17

Page 18: Guia Codesys Ladder

El Administrador de bibliotecas debe mostrar las librerías disponibles.

Figura 47

En caso no hubiera ninguna librería o no estuviera la que necesite, presione la tecla Insert (Ins) y en la ventana que aparece elija la librería Standard.lib y presione Abrir.

Figura 48

Cierre el Administrador de bibliotecas y ahora para añadir el temporizador, haga click derecho sobre la línea del escalón elegido y elija Bloque de funciones:

Figura 49

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 18

Page 19: Guia Codesys Ladder

En Bloque de funciones estándar despliegue Timer y elija TP (FB):

Figura 50

4.3 Aplicación (archivo: ejercicio4).

En la pantalla del Scada indique qué hace el circuito Ladder

Circuito Ladder:

Figura 51

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 19

Page 20: Guia Codesys Ladder

Declaración de variables

Figura 52

Visualización Scada:

Figura 53

Arranque: Forma: Botón Texto: Arranque. Entrada → Conmutar variable → entrada6

Intermitente Forma: Círculo Texto: Intermitente Colores:

Color → Interior: Gris Color de alarma: → Interior: verde claro

Variables → Entradas desactivar → intermitente

Valor del Contador: Forma: Rectángulo Texto: Contador %s Variables → Mostrar Texto → VALOR_CNT

Barra de desplazamiento del Contador Forma: Rectángulo Colores:

Color Interior: Rojo Marco: Rojo

Movimiento relativo → Borde derecho → VALOR_CNT

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 20

Page 21: Guia Codesys Ladder

5. PROBLEMAS 5.1 Se desea implementar un automatismo que evoluciona en función de tres entradas (A, B y C). Se

debe activar una salida S0 cuando ninguna de las entradas está activa, una salida S1 cuando solamente una de ellas está activa y una salida S2 en cualquier otro caso

5.2 Diseñe un sistema de control con PLC para una lavadora doméstica que conecta una bomba para introducir agua en la máquina durante 100 segundos, se desconecta y conecta un calentador durante 50 segundos para calentar el agua. El calentador se desconecta y otra bomba vacía el agua de la lavadora en 100 segundos

5.3 Tras un pulso momentáneo del interruptor de arranque, las pelotas son empujadas una a una al interior de las cajas mediante un pistón. Cada diez pelotas un segundo pistón cambia la caja llena por una caja vacía en una operación que dura 3 segundos. A las 5 cajas llenas se activa una banda transportadora durante 5 segundos. Una vez transcurrido este tiempo la secuencia se repite Diseñe un programa que lleve a cabo el proceso antes descrito, considerando que si se vuelve a presionar el interruptor de arranque, mientras el proceso está en marcha el sistema no debe alterar su funcionamiento. Incluya un segundo interruptor para detener la secuencia en caso de emergencia (todo debe regresar a su estado inicial sin importar su posición)

Guía 1: Codesys: Ladder - Ing. Mario Urrutia E. 21