Вы находитесь на странице: 1из 32

Estructura para el diseño de cursos virtuales

Versión 2. Agosto de 2016

MÓDULO N°4: LENGUAJE LADDER

INFORMACIÓN ESPECÍFICA DEL MÓDULO

ESPECIALIZACIÓN TECNOLÓGICA EN
Programa
AUTOMATIZACIÓN INDUSTRIAL

Número y nombre del


MÓDULO 4. LENGUAJE LADDER
módulo

Duración del módulo Dos (2) semanas

LUIS CARLOS MENESES SILVA

luiscarlosmeneses@gmail.com
Autor del diseño Ingeniero en Automatización Industrial, Universidad del
Cauca.
Magister en Ingeniería del Mantenimiento, Universidad
Politécnica de Colombia
Fecha de actualización 16/11/2017
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

TABLA DE CONTENIDO

INTRODUCCIÓN AL MÓDULO N°1 ....................................................................................................... 4


1. UNIDAD TEMÁTICA 1. DEFINICIONES Y CARACTERÍSTICAS .......................................... 6
1.1. INTRODUCCIÓN ........................................................... ¡Error! Marcador no definido.
1.2. MARCO CONCEPTUAL ............................................... ¡Error! Marcador no definido.
1.3. EJEMPLOS ....................................................................... ¡Error! Marcador no definido.
1.4. EJERCICIOS DE REFLEXIÓN .................................... ¡Error! Marcador no definido.
1.5. CONCLUSIONES............................................................ ¡Error! Marcador no definido.
1.6. MATERIAL DE ESTUDIO ......................................................................................................... 6
2. UNIDAD TEMÁTICA 2. ELEMENTOS Y BLOQUES ............................................................... 20
2.1. INTRODUCCIÓN ...................................................................................................................... 20
2.2. MARCO CONCEPTUAL .......................................................................................................... 20
2.3. EJEMPLOS ....................................................................... ¡Error! Marcador no definido.
2.4. EJERCICIOS DE REFLEXIÓN ............................................................................................... 32
2.5. CONCLUSIONES....................................................................................................................... 32
2.6. MATERIAL DE ESTUDIO ...................................................................................................... 32
3. UNIDAD TEMÁTICA 3. METODOLOGÍA PARA EL DISEÑO EN LENGUAJE FUP
¡Error! Marcador no definido.
3.1. INTRODUCCIÓN ........................................................... ¡Error! Marcador no definido.
3.2. MARCO CONCEPTUAL ............................................... ¡Error! Marcador no definido.
3.3. EJEMPLOS ....................................................................... ¡Error! Marcador no definido.
3.4. EJERCICIOS DE REFLEXIÓN .................................... ¡Error! Marcador no definido.
3.5. CONCLUSIONES............................................................ ¡Error! Marcador no definido.
3.6. MATERIAL DE ESTUDIO ........................................... ¡Error! Marcador no definido.
4. OBJETOS DE APRENDIZAJE / RECURSOS DIGITALES SUGERIDOS PARA APOYAR EL
MÓDULO ........................................................................................... ¡Error! Marcador no definido.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

5. ACTIVIDADES DE APRENDIZAJE DEL MÓDULO N° ¡Error! Marcador no definido.


6. PLAN DE EVALUACIÓN DEL MÓDULO N°1 ................ ¡Error! Marcador no definido.
7. REFERENCIAS BIBLIOGRÁFICAS UTILIZADAS EN EL MÓDULO N°1 ............... ¡Error!
Marcador no definido.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

INTRODUCCIÓN AL MÓDULO N°1

Existen distintos tipos de lenguajes para la programación e PLC’s. Como se mencionó


en el módulo 3 existen lenguajes de dos tipos escritos y gráficos. En este módulo se va
a enfatizar en un lenguaje grafico conocido como LADDER, lenguaje de diagramas de
contactos o lenguaje de diagramas de escalera. Uno de los lenguajes más comunes en la
industria autómata.

El lenguaje LADDER como se mencionó anteriormente, es uno de los más populares


dentro de los lenguajes de programación de PLC’s. Esto se debe a que es similar a los
circuitos de control de relés así que es fácil de adaptarse a esta lógica en un entorno
industrial. Por otro lado, y como se mencionó en el módulo anterior es un lenguaje muy
flexible pues permite hacer llamadas a funciones de bloques de función, trabajar con
casi cualquier tipo de dato y cuenta con una amplia variedad de instrucciones. El
lenguaje LADDER permite programar casi cualquier tipo de PLC en el mercado.

Durante este documento se lleva a cabo la explicación del lenguaje LADDER desde su
estructura hasta las instrucciones que pueden implementarse en este mismo lenguaje.
Se habla acerca de las entradas y salidas, los símbolos de las mismas, instrucciones
lógicas y su implementación, entre otras. De tal manera que mediante el desarrollo de
ejemplos en CODESYS 3.5 se brinden las herramientas necesarias para implementar el
uso de este software y del lenguaje en específico. Ampliando la visión hacia un
conocimiento más aplicado para enfrentarse a una realidad más industrial.

Los estándares de programación son los asignados por la norma IEC 61131 que también
serán abarcados dentro de la temática de este módulo. Se implementó un programa de
ejemplo de una maquina industrial utilizando este estándar en el software CODESYS
3.5. Con la finalidad de familiarizar mejor los conceptos de la norma aplicados a
LADDER.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

COMPETENCIAS DEL MÓDULO N°4 Y ESTRUCTURA TEMÁTICA

Competencias del módulo Estructura temática a abordar en el módulo

Indique la competencia 1 Indique la estructura temática que soporta la


del módulo competencia 1 del módulo

Competencia 1 1. Unidad temática 1: Nombre


1.1. Tema secundario
1.2. Tema secundario:
1.3. Tema secundario:

Indique la competencia 2 Indique la estructura temática que soporta la


del módulo competencia 1 del módulo

Competencia 2 2. Unidad temática 1: Nombre


2.1. Tema secundario
2.2. Tema secundario:
2.3. Tema secundario:
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

CONTENIDO DEL MÓDULO N°4

1. UNIDAD TEMÁTICA 1. DEFINICIONES Y CARACTERÍSTICAS DEL LENGUAJE


LADDER

1.1. INTRODUCCIÓN

El lenguaje Ladder es uno de los muchos tipos de lenguajes de programación utilizados


para la programación de PLC’s para varios campos de la automatización, existen
muchos lenguajes tales como Texto Estructurado (ST), del cual se habla e implementa
a lo largo del desarrollo del módulo 2, Lista de instrucciones (IL), Diagramas de Bloques
de Funciones (FBD), entre otras. Dichos tipos de programación tienen ventajas y
desventajas al ser usadas para la creación de un programa, pero en este caso se hablara
de Ladder y sus ventajas frente a los demás.

Destacando una de sus características y por la cual es tan cómodo programar con este
es su similitud a una red, es decir es un lenguaje grafico el cual lleva la programación a
una lógica de circuitos eléctricos, en la cual se utilizan contactos y bobinas; es decir si
se está familiarizado con el mundo de la electrónica será muy fácil comprender la lógica
usada por este lenguaje.

1.2. MARCO CONCEPTUAL

1.2.1. Generalidades del lenguaje Ladder.


Siendo uno de los lenguajes más usados debido a su base gráfica es necesario
comprender dichas características, como es el uso y posicionamiento adecuado de
contactos bobinas, redes, contactos en serie y paralelo (figura1), y de este modo darle
sentido a lo que se desea programar. Así mismo tiene una lógica condicional con lo que
se puede organizar cada valor usado como condición para posteriormente las
activaciones de una o varias salidas contenidas en cada una de las líneas o redes que
componen un programa.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 1. Lógica grafica de Ladder.


Fuente: http://www.rocatek.com/forum_programacion_ladder.php

Como se evidencia anteriormente en la figura, este lenguaje de programación es sencillo


tanto en su implementación como su entendimiento, ya se puede comprender cada uno
de los “Rungs” como redes o líneas en las cuales se encuentran las instrucciones tanto
de entrada como de salida, siendo los contactos las de entrada y las bobinas las de
salida. Del mismo modo se observa cómo se mencionó anteriormente que tiene una
lógica condicional, es decir, en la red “Rung 0” podemos encontrar contactos en serie
los cuales determinan las condiciones necesarias para poder generar la activación de la
bobina definida a su derecha.

Cabe acarar que se pueden definir tantas cantidades de contactos como sean necesarios
teniendo en cuenta que solo pueden ser definidos a la izquierda de cada red; así mismo
se pueden definir la misma cantidad de bobinas siempre y cuando sean definidas a la
derecha de las ya nombradas líneas o redes.

1.2.2. Contactos o condiciones


Hace referencia a una variable comúnmente de tipo booleana, dicha variable al ser
utilizada en una red hará parte de una condición para la activación de una salida, esto
solo si se energiza dicha red y el contacto es activado teniendo en cuenta que esta
variable es única presente en dicha red. Del mismo modo se puede condicionar su
activación cuando dicha variable este o no presente.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 2. Contactos en Codesys V3.5


Tomado de: Software Codesys V3.5.

1.2.3. Bobinas
Son las salidas de cada una de las redes al ser cumplidas todas las condiciones o
contactos que componen estas. Se debe tener en cuenta que a la salida de una red
pueden existir tantas bobinas como se deseen al final de una red, permitiendo con una
secuencia de condiciones la activación de múltiples salidas. Así mismo se encuentran
bobinas definidas como bobinas en set o reset lo cual indica que al ser activadas
quedaran ancladas o deshabilitaran una anteriormente anclada respectivamente.

Figura 3. Bobinas en Codesys V3.5


Tomado de: Software Codesys V3.5.

1.2.4. Operadores LÓGICOS


En diferentes lenguajes de programación se encuentran operadores los cuales permiten
la comparación y condición de distintas variables; se definirán algunos operadores de
bit teniendo en cuenta que en lenguaje Ladder se manejan de forma gráfica, a
continuaciones se definieran algunas de las más comunes en dicho lenguaje.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

a. Operador Lógico AND

Figura 4. Operador lógico AND de 2 entradas Codesys V3.5


Tomado de: Software Codesys V3.5.

En la figura anterior se encuentra un operador lógico por bit AND el cual permite la
activación o cambio de estado de una variable (salida del operador), según sea el valor
o estado de las variables de entrada de este (entradas del operador). En este caso se
observa que este operador está definido por dos entradas y una salida, esto quiere decir
que en cuanto las variables de entrada sean 1 y solo si las dos están activas, se activara
la salida (en este caso la variable E) permitiendo condicionar dos entradas para generar
una salida.

Para este operador el software Codesys V3.5 permite realizarlo entre dos o tres
entradas y una salida, esto se puede generar mediante el menú de operadores lógicos o
mediante la barra de herramienta evidenciada en la siguiente figura.

Figura 5. Barra de inserción de entrada a módulo Codesys V3.5


Tomado de: Software Codesys V3.5.

Figura 6. Menú de Operadores Lógicos Codesys V3.5


Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Tomado de: Software Codesys V3.5.

b. Operador Lógico OR
A diferencia del operador anterior este discrimina la dependencia de las entradas para
que la salida sea activada, es decir, solo consta con tener una de las entradas activas
poder generar la salida.

Figura 7. Operador lógico OR de 2 entradas Codesys V3.5


Tomado de: Software Codesys V3.5.

En contraste al anterior se puede realizar la adición de una entrada en el software


Codesys V3.5 mediante la misma barra de herramientas vista en la figura 3.

c. Operador lógico XOR


Este operador permite que la salida sea activada cuando ambas entradas sean
activadas, de lo contrario, si solo una de ellas o ninguna está presente, la salida
permanecerá inactiva.

Figura 8. Operador lógico XOR de 2 entradas Codesys V3.5


Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Tomado de: Software Codesys V3.5.

Este operador también puede tomar uso de la barra de herramientas mostrada en la


figura 3.

1.2.5. Operadores Aritméticos o matemátcicos


Estos operadores permiten realizar operaciones entre variables tales como adición,
multiplicación, entre otras.

a. Operador ADD
Permite la suma de dos o más variables, en el caso del software Codesys V3.5 se puede
realizar la suma hasta de 3 variables.

Figura 9. Operador lógico ADD de 2 entradas Codesys V3.5


Tomado de: Software Codesys V3.5.

En este caso es lo mismo que tener definida una suma en lenguaje de Texto
Estructurado, es decir, como si la variable H contuviera la suma de la variable F sumada
a la variable G.

b. Operador MUL
Este operador permite realizar a multiplicación entre variables de entrada
almacenadas en una de salida como se observa en la figura a continuación.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 10. Operador lógico MUL de 2 entradas Codesys V3.5


Tomado de: Software Codesys V3.5.

c. Operador DIV
El operador DIV permite realizar divisiones entre las variables de entrada para su
visualización posterior en una variable de salida.

Figura 11. Operador lógico DIV de 2 entradas Codesys V3.5


Tomado de: Software Codesys V3.5.

Como se puede evidenciar este tipo de operadores permiten la operación entre las
variables para ulteriormente visualizar los mismos, por obviedad existen operaciones
para cada una de las operaciones básicas y así mismo para igualdades y comparaciones
si se basa el estudio de los mismos en el software Codesys V3.5
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 12. Menú de Operadores Matemáticos Codesys V3.5


Tomado de: Software Codesys V3.5.

NOMBRE DEFINICION
SUB Substracción
EQ Igualdad
NE Desigualdad
LT Menor que
LE Menor o igual que
GT Mayor que
GE Mayor o igual que
Figura 13. Tabla significado abreviaciones Operadores Matemáticos Descripción Codesys V3.5
Tomado de: Software Codesys V3.5.

1.3. EJEMPLO DE APLICACIÓN

A continuación, se realizará un ejemplo básico para la utilización de un programa en


lenguaje Ladder con visualización de lámparas y palancas en Codesys V3.5

Inicialmente se realizará un programa basado en el comportamiento de contactos, Set


y Reset de variables.

Se procede a realizar la declaración de las variables que se manejarán en el programa.


Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 14. Declaración de variables Codesys V3.5


Tomado de: Software Codesys V3.5.

Ulteriormente se procede a programar las redes, se tendrá en cuenta que este programa
consiste en la demostración visual de comportamiento de condicionales por medio de
palancas, en este caso se usaran dos y sus combinaciones de estado permitirán la
visualización de lámparas como testigos de funcionamiento en el software Codesys V3.5

En este caso se tiene un condicional en el cual permite hacer set a un valor en alto de la
lámpara 1 y un Reset de la lámpara dos con el fin de que si se encuentra encendida en
un estado anterior y al ser accionada solamente la primera palanca, solo sea encendida
la primera lámpara.

Figura 15. Primera red ejemplo en Codesys V3.5


Tomado de: Software Codesys V3.5.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Luego se realiza la condición contraria, en la que al activar la segunda palanca la


lámpara uno se activara y se reseteará la segunda respectivamente.

Figura 16. Segunda red ejemplo en Codesys V3.5


Tomado de: Software Codesys V3.5.

Posteriormente se realizara una red cuya programación será el evidenciar si los dos
interruptores se encuentran apagados y se apagaran las lámparas para que solo se
muestre dicho testigo cuando esto ocurra.

Figura 17. Tercera red ejemplo en Codesys V3.5


Tomado de: Software Codesys V3.5.

Finalmente se realizara una red la cual tenga un condicional opuesto al visto e la figura
anterior, donde al estar los dos interruptores activos se encenderá un testigo
evidenciando esto y apagara las lámparas en set si alguna lo está.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 18. Cuarta red ejemplo en Codesys V3.5


Tomado de: Software Codesys V3.5.

Para poder visualizar dicha programación se realizará por medio de un panel mediante
el software Codesys V3.5

Figura 19. Panel de visualización en Codesys V3.5


Tomado de: Software Codesys V3.5.

Con esto se podrá visualizar cada una de las redes al ser cumplidas las condiciones para
cada una de las palancas de la siguiente manera.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

 Red N°1 Palanca 1 activa y Palanca 2 inactiva

Figura 20. Visualización primera red en Codesys V3.5


Tomado de: Software Codesys V3.5.

 Red N°2 Palanca 2 activa y 1 inactiva

Figura 21. Visualización segunda red en Codesys V3.5


Tomado de: Software Codesys V3.5.

 Red N°2 Palanca 1 y 2 activas

Figura 22. Visualización tercera red en Codesys V3.5


Tomado de: Software Codesys V3.5.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

 Red N°3 Palanca 1 y 2 inactivas

Figura 23. Visualización cuarta red en Codesys V3.5


Tomado de: Software Codesys V3.5.

Finalmente es posible afirmar que la programación grafica que presenta el lenguaje


Ladder es sencillo de manejar y que las visualizaciones son de gran utilidad a la hora de
mostrar de forma gráfica lo que se está programando.

1.4. EJERCICIOS DE REFLEXIÓN

Se propone un proyecto en el cual se desea optimizar un proceso en una empresa y se


ha pensado en recurrir a la utilización de un PLC, para ello se necesita realizar una
programación en cualquier lenguaje el cual permita su entendimiento a las personas
que vayan a realizar cualquier modificación a futuro.

Preguntas de reflexión:

 ¿Cree usted que un lenguaje de programación es más entendible si está basado


en instrucciones o gráficos?
 ¿Cree usted que si en la empresa se encuentran personas que tengan
conocimientos básicos en electrónica se les facilitará entender la programación
en Ladder que en otro tipo de lenguaje?

1.5. CONCLUSIONES

 El lenguaje de programación Ladder es un lenguaje de fácil comprensión y


grafico lo que permite de manera empírica el entendimiento y programación con
contactos y funciones
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

 El lenguaje de programación Ladder se le facilita a las personas que tienen


conocimientos básicos en electrónica debido a su similitud con circuito ya que
se basa en contactos y redes.
 Codesys V3.5 es un software indicado tanto para realizar programación en
Ladder como para realizar su visualización debido a su interfaz amigable con el
usuario y su bien trabajada visualización de programas.

1.6. MATERIAL DE ESTUDIO

Temas que Ubicación (el link web o la


Referencia bibliográfica (APA)
abordan base de datos)

Introducción (Rocatek, 2010) https://goo.gl/grQBqj


a lenguaje
Ladder

Ejercicio de (Ylaquita, 2016) https://goo.gl/8zi1Bw


programación
en Ladder
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

2. UNIDAD TEMÁTICA 2. DESARROLLO DE PROGRAMAS EN LADDER BAJO EL


ESTÁNDAR IEC 61131-3

2.1. INTRODUCCIÓN

En este documento se lleva a cabo la explicación del lenguaje LADDER en el software


CODESYS 3.5. Un software basado en los estándares de la norma IEC 61131-3 razón por
la cual en los módulos anteriores se ha venido utilizando e ilustrando mediante
ejemplos las herramientas que ofrece.

Como se mencionó anteriormente en los módulos 2 y 3 se ha venido familiarizando con


respecto al entorno de CODESYS 3.5. Este apartado estará más enfocado a el contenido
del programa explicando mediante 3 ejemplos la correcta utilización de contactos y
bobinas, la utilización de bloques de función, operadores lógicos y el desarrollo de
secuencias aplicadas a la industria según la norma IEC 61131-3.

Parea esta temática el principal objetivo es brindar una visión del lenguaje LD según los
estándares de la norma IEC 61131-3 explicando el paso a paso de tres ejemplos
sencillos que ilustran la utilización de las herramientas básicas y de esta manera el
lector pueda familiarizarse con este lenguaje.

2.2. MARCO CONCEPTUAL

2.2.1. Contactos y bobinas en Codesys


Para realizar un nuevo proyecto en CODESYSS 3.5 utilizando el lenguaje de
programación LADDER lo único que varía con respecto a los módulos 2 y 3 es la
configuración del lenguaje como se muestra en la figura 24.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 24. Configuración LADDER en CODESYS 3.5.


Fuente: El autor.

Para empezar y sabiendo que en CODESYS 3.5 las líneas horizontales o escaleras
mediante las cuales se desarrolla una instrucción en lenguaje LD se denominan redes.
Lo primero es insertar una nueva red con clic derecho sobre el editor se desplegará un
menú como se muestra en la figura 25.

Figura 25. Menú editor CODESYS 3.5.


Fuente: El autor.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Para insertar un nuevo contacto de cualquier tipo también se puede hacer desde el
mismo menú mencionado anteriormente en la opción de insertar contacto ya sea
cerrado o abierto, también se pueden insertar bobinas, etiquetas, módulos entre otros.
Otra manera de insertar cualquiera de estos componentes es a través de la barra
superior que tiene a la mano los componentes más comunes y como se puede observar
a continuación en la figura 26.

Figura 26. Barra de componentes comunes CODESYS 3.5.


Fuente: El autor.

Por último, se tiene una opción un poco más completa que es la barra de herramientas
en donde se puede encontrar cualquier componente o función como se muestra a
continuación en la figura 27.

Figura 27. Barra de herramientas CODESYS 3.5.


Fuente: El autor.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Después de insertar el contacto que para este ejemplo fue un contacto normalmente
abierto, se puede observar cómo se empieza a dar forma a la primera instrucción en la
figura 28.

Figura 28. Contacto normalmente abierto CODESYS 3.5.


Fuente: El autor.

Generalmente estos contactos son sensores que indican la posición de un actuador por
ejemplo o también botones de arranque, rearme o emergencias. Para este caso se asume
que es u botón llamado S1 asignado como una variable de tipo BOOL como se puede
observar a continuación en la figura 29.

Figura 29. Ejemplo operaciones aritméticas CODESYS 3.5.


Fuente: El autor

De la misma manera mediante cualquiera de los tres métodos ilustrados anteriormente


se inserta una bobina o salida llamada Y0 como se puede observar en la figura 30.
Normalmente estas son las salidas del PLC que se pueden asignar a actuadores, pilotos,
motores, sopladores, etc. En este caso se asume como un piloto que enciende cuando S1
es TRUE.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 30. Instrucción CODESYS 3.5.


Fuente: El autor.

El siguiente paso será poner en línea el proyecto para probarlo y se observa que Y0
inicia con un valor de FALSE debido a que no se ha activado el botón S1 y que luego al
estar en TRUE se enciende el piloto como se muestra a continuación.es importante
recordar que ara probar es necesario configurar el modo de simulación.

Figura 31. En línea ejemplo piloto CODESYS 3.5.


Fuente: El autor.

2.2.2. Bloques de función y comparaciones en Codesys


Para explicar las maneras de utilizar las variables de un bloque de función, en este caso
un temporizador tipo TON, se desarrolló el siguiente ejemplo en el cual se encienden
tres pilotos de tres maneras diferentes, pero todas dependiendo de los parámetros del
temporizador.

A continuación, se explica mejor en la figura 32 donde podemos observar que ya están


declaradas todas las variables y tenemos un botón de arranque llamado START, el
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

TIMER una variable tipa TIME llamada VTIME a la cual asignaremos los valores de le
parámetro ET del temporizador y las salidas (pilotos): Y1, Y2, Y3.

Figura 32. Ejemplo TIMER CODESYS 3.5.


Fuente: El autor.

En el ejemplo anterior se puede observar cómo se hace un retardo a la conexión con un


TIMER de 6 segundos, en el primer caso para el piloto Y1 se tiene una salida directa es
decir que al pasar los 6 segundos de presionado el botón de inicio START se encenderá
el piloto.

Siguiendo con la instrucción dos se tiene una salida mediante un contacto que se asigna
como TIMER.Q refiriéndose a un parámetro de tipo BOOL del contador que es TRUE
cuando acaba el tiempo. Es decir que el piloto Y2 se activara al tiempo que el piloto Y1
debido a que son dos maneras de generar la misma instrucción.

Por último, se tiene un operador matemático (mayor que) el cual estará siempre
encendido debido al contacto TRUE. este operador va a comparar en tiempo real los
segundos que han pasado del TIMER en la simulación mediante la variable VTIME y si
esta excede dos segundos se activara el piloto tres Y3.

En la figura 33 se observa que se implementó una pequeña visualización para mostrar


de una manera más clara la secuencia. Entonces con el proyecto en línea tenemos el
estado inicial en el cual todos los pilotos están apagados y el botón START intacto.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 33. Panel pilotos en línea CODESYS 3.5.


Fuente: El autor.

Al presionar el boto START se observa en la figura 34 que a los 2 segundos se enciende


el piloto Y3 como se mencionó anteriormente y el tiempo del TIMER sigue corriendo.

Figura 34. Panel Y3 enciende CODESYS 3.5.


Fuente: El autor.

Finalmente, y después de transcurridos los 6 segundos de retardo se encienden los


pilotos Y1 y Y2 como se mencionaba anteriormente. Esto se puede evidenciar en la
figura 35 a continuación.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 35. Panel Y1 y Y2 encienden CODESYS 3.5.


Fuente: El autor

2.2.3. Secuencia de tres actuadores (biestables y monoestables)


Para este apartado se pretendió implementar un ejemplo con actuadores con válvulas
monoestables y biestables debido a que es habitual encontrar montajes de este tipo a
nivel industrial. El ejemplo de desarrollo en CODESYS 3.5 y se diseñó un pequeño panel
que permite visualizar de una manera más clara cada instrucción. Dicho esto, el
ejercicio es el siguiente:

 Se tienen los actuadores A, B y C de los cuales A y C son controlados con válvulas


biestables y B con una válvula monoestable. Se requiere implementar la
siguiente secuencia:

𝑨+𝑩+𝑪+𝑨−𝑩−𝑪−

 La secuencia debe iniciar únicamente si los tres actuadores se encuentran en


posiciones iniciales y se presiona el botón de inicio.

En primer lugar se declararon las variables donde se tienen dos sensores de posicion
para cada actuador, cinco salidas para las valvulas y un boton de inicio llamado START.
Todas las nombradas anteriormente son de tipo BOOL como se muestra a continuacion
en la figura 36. El programa esta compuesto por siete instrucciones las cuales se
interpretan como escaleras o redes en este caso. En cada una de las redes tenemos
contactos de los sensores que indican la posicion de los actuadores y asi mismo que
bobina activar.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Figura 36. Condiciones iniciales ejemplo actuadores en CODESYS 3.5.


Fuente: El autor.

Como se mencionó anteriormente se tienen dos sensores en cada actuador sin embargo
para la simulación estos sensores serán botones que se pueden observar a continuación
en la figura 37 en PANEL DE CONTROL y se accionaran manualmente. En la primera
instrucción se programaron las condiciones iniciales. Es decir, tres contactos que
representan los sensores que indican la posición de cada actuador, para este caso son
A0, B0, C0. Esta condición activa una bobina llamada READY, sin embargo, no empezó
la secuencia pues START esta en FALSE.

Figura 37. Ejemplo READY en CODESYS 3.5.


Fuente: El autor.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Al estar en READY y activando el botón de inicio se ejecuta A+ que es la primera


instrucción de la secuencia. Como se puede observar en la figura 38 la salida Y1 está
activa es decir que en esa cavidad de la válvula pasa aire y por ende el actuador sale.

Figura 38. Ejemplo actuador (A+) en CODESYS 3.5.


Fuente: El autor.

Al salir (A) las posiciones en los sensores ahora son A1, B0, C0. Lo que podemos
evidenciar en la red numero 3 donde se insertaron tres contactos normalmente
abiertos para estas respectivas posiciones y que activan el paso B+. En esta red se puede
ver que la bobina Y3 es un SET. Esto quiere decir que quedara enclavada hasta que se
declare su RESET. Esta bobina es activada con SET y RESET pues es una válvula
monoestable.

Figura 39. Ejemplo actuador (B+) en CODESYS 3.5.


Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

Fuente: El autor.

Al salir el actuador (B) las posiciones son las que se observan en la red cuatro en la
figura 40 y se activa la bobina Y5 realizando el paso C+ sin embargo, B+ o Y3 continúa
enclavados.

Figura 40. Ejemplo actuador (C+) en CODESYS 3.5.


Fuente: El autor.

La instrucción (A-) se lleva a cabo mediante la bobina Y2 que tomara un valor de TRUE
cuando los contactos A1, B1, C1 estén activos como se muestra a continuación en la
figura 41 en la instrucción cinco. Por otro lado, B sigue enclavado.

Figura 41. Ejemplo actuador (A-) CODESYS 3.5.


Fuente: El autor.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

La instrucción (B-) se ejecuta mediante un RESET de la bobina Y3 cuando están activos


los sensores A0, B1, C1 como se muestra a continuación en la figura 42.

Figura 42. Ejemplo actuador (B-) en CODESYS 3.5.


Fuente: El autor.

Finalmente, la instrucción (C-) se ejecuta cuando están activos los contactos B0,C1,A0
como se muestra en la instrucción 7 de la figura 43 siguiente.

Figura 43. Ejemplo actuador (C-) en CODESYS 3.5.


Fuente: El autor.
Estructura para el diseño de cursos virtuales
Versión 2. Agosto de 2016

2.3. EJERCICIOS DE REFLEXIÓN

 Se tienen los actuadores A, B y C de los cuales A y B son controlados con válvulas


biestables y C con una válvula monoestable. Se requiere implementar la
siguiente secuencia:

𝑨+𝑪+𝑪−𝑩+𝑪+𝑪−

 La secuencia debe iniciar únicamente si los tres actuadores se encuentran en


posiciones iniciales y se presiona el botón de inicio.

2.4. CONCLUSIONES

 CODESYS v3.5 es una herramienta basada en los estándares de la norma IEC


61131-3 y permite programar en lenguaje LD brindando todas las herramientas
necesarias y permite simular la utilización de sensores y actuadores.
 En la industria es usual encontrar la implementación del lenguaje LD debido a
que su estructura se asemeja a los circuitos de control de relés siendo un
lenguaje grafico fácil de entender.
 LADDER es un lenguaje que facilita la programación de secuencias cíclicas de
actuadores, motores y cualquier tipo de componente industrial.

Вам также может понравиться