Post on 03-Apr-2018
7/28/2019 Conceptos Codesys
1/5
CODESYS
1. IntroduccinCoDeSys significa Controller Development System (Sistema de Desarrollo para Controladores)
CoDeSys es un ambiente completo de desarrollo:
Software de programacin Herramienta de prueba Herramienta de depuracin Herramienta de simulacin Herramienta de documentacin Ambiente de desarrollo de visualizacin
2. PartesCoDeSys consta de dos partes importantes:
El ambiente de desarrollo Editor, compilador y depurador para proyectos IEC Soporta los cinco lenguajes de programacin IEC:
Instruction List (IL) Structured Text (ST) Sequential Function Chart (SFC) Function Block Diagram (FBD) Ladder Diagram (LD)
Genera cdigo nativo para una amplia gama de tipos de CPU El sistema de ejecucin
Ejecuta el ciclo con la actualizacin de E/S Se comunica con el ambiente de desarrollo Arranca la aplicacin cuando la fuente de alimentacin se enciende
3. ProyectoCaractersticas
Est contenido en un solo archivo (nombre.pro) Es ejecutado cclicamente Consiste de Unidades de Organizacin de Programa (Program Organization Units). A las
Funciones, bloques de funcin y programas se les conoce como POUs. La POU con el nombre reservado PLC_PRG es llamada automticamente por el sistema.
Estructura de un proyecto
Figura 1: Estructura de un proyecto
Proyecto
POUs
Declaraciones
Cdigo
Tipos de datos Visualizaciones Recursos
Variables Globales
Libreras
. 1Conceptos de Codesys - Ing. Mario Urrutia E
7/28/2019 Conceptos Codesys
2/5
4. POU (Unidad de Organizacin de Programa)Son pequeas unidades independientes de software que contienen cdigo de programacin.
En IEC 61131-3 se definen tres tipos de POUs:
Programas Bloques de funcin Funciones
4.1 Programa
Un programa es una POU que regresa varios valores durante su operacin. Los programas son
reconocidos globalmente en todo el proyecto. Todos sus valores son retenidos desde la ltima vez
que se ejecut el programa hasta la siguiente.
Los programas pueden ser llamados. Una llamada a un programa desde una funcin no est
permitida. No existen instancias de programas.
Si una POU llama a un programa, y sus valores son cambiados, estos cambios permanecen hasta la
siguiente vez que sea llamado, aun cuando el programa sea llamado por otra POU.
4.2 Bloque de funcin
Un bloque de funcin es una POU que entrega uno o ms valores durante su ejecucin. Contrario a
una funcin, un bloque de funcin no regresa valores. El llamado a un bloque de funcin se realiza
mediante una instancia de dicho bloque de funcin.
Instancia: Una instancia es una copia de un bloque de funcin o estructura. Cuando uno agrega un
bloque de funcin o una estructura a un programa, en realidad est creando una estructura de
datos que contiene las entradas, salidas y variables internas de dicho objeto con un identificador
propio. Dicha instancia heredar las propiedades del objeto original.
Una instancia es declarada como una variable local o global con un tipo de dato correspondiente al
nombre del objeto que copiar, lo que permite tener varias instancias de un mismo objeto
trabajando independientemente, cada uno con sus parmetros propios.
Ejemplo de instancia
Crearemos una estructura de tipo Futbolista que contar con las siguientes propiedades:
Equipo : string Nombre: string Nmero: usint Pierna dominante: bool Rcord (partidos ganados partidos perdidos): int goles anotados / tiros a gol: real
Futbolista sera el molde del que podemos crear a Messi, Ronaldo, Guerrero, Neymar, etc.
Cada uno de ellos sera una instancia de Futbolista, con sus caractersticas heredadas de dicha
estructura, pero con valores propios para cada uno de ellos.
4.3 Funcin
Una funcin es una POU que regresa exactamente un dato (el cual puede consistir de varios
elementos, como campos o estructuras) cuando es procesado, y que su llamado en lenguajes
textuales puede ocurrir como operador en expresiones. Cuando se declara una funcin, sta debe
de recibir un tipo de dato.
. 2Conceptos de Codesys - Ing. Mario Urrutia E
7/28/2019 Conceptos Codesys
3/5
5. Procesamiento de la aplicacinEl programa principal PLC_PRG es llamado por el sistema de ejecucin cada 10 ms.
Figura 2: Proceso de ejecucin en Codesys
5.1 Variables (local y global)
Variables locales
Una variable local slo puede ser usada en la POU en que fue declarada Las variables locales son declaradas en dicha POU
Variables globales
Una variable global puede ser usada en cualquier POU Las variables globales deben ser declaradas por separado en la pestaa Recursos bajo
Variables Globales.
Las variables de E/S de hardware que son declaradas mediante un identificador va el configurador
de PLC son visibles como variables de sistema.
5.2 Reglas para nombrar un identificador
Debe comenzar con letra Puede usarse letras y nmeros y como carcter especial slo guin bajo sencillo El uso de maysculas/minsculas es indistinto pero no se admite espacios. No se pueden usar palabras u operandos reservados de IEC.Ejemplos:
Llave, llave, LLAVE
Valvula1, valvula1, VALVULA1
Un_nombre_largo
. 3Conceptos de Codesys - Ing. Mario Urrutia E
7/28/2019 Conceptos Codesys
4/5
5.3 Palabras reservadas
Figura 3: Palabras reservadas:
En el programa:PROGRAM VarExampl eVAR
Star t Number : REAL;END_VARVAR_I NPUT
St art : BOOL;END_VARVAR_OUTPUT
Lamp: BOOL;END_VAR
Las palabras reservadas son:
PROGRAMVARVAR_I NPUTVAR_OUTPUTVAR_I N_OUTREALBOOLEND_VAR
Las variables locales se declaran entre VAR y END_VAR. Las variables locales que pueden ser usadas
en otros programas como entradas o salidas de dichos programas aparecen entre VAR_INPUT y
END_VAR o VAR_OUTPUT y END VAR.
5.4 Configuracin de E/S e identificadores
Direccionamiento directo
Ejemplo: %QX0.7 := ( %IX0.3 AND %IX3.7 ) OR %IX3.0;
Asignacin de identificadores
Ejemplo: xInput AT %IX0.7 : BOOL;
Modificando la configuracin del PLC
Ejemplo: MyByte0 AT %IB0: BYTE;
6. TargetCoDeSys tiene la capacidad de crear cdigo nativo para cientos de controladores de ms de 250fabricantes. Para esto, es necesario que CoDeSys cuente con informacin del controlador especfico
que se va a programar.
. 4Conceptos de Codesys - Ing. Mario Urrutia E
7/28/2019 Conceptos Codesys
5/5
Antes de poder utilizar CoDeSys para programar un controlador dado es necesario instalar el
software del controlador que generalmente se proporciona en un archivo comprimido por parte del
fabricante.
Para instalar un target, una vez que se cuenta con el software, debe ejecutarse la aplicacin
InstallTarget que se encuentra en la misma carpeta del ejecutable de CoDeSys., luego debemos
buscar el archivo con extensin tnfy proceder con los pasos exigidos para la instalacin.
Figura 4: Instalacin de un target
. 5Conceptos de Codesys - Ing. Mario Urrutia E