Está en la página 1de 20

Laboratorio de Automatización de Procesos Industriales

PRÁCTICA #5
Tema: Texto estructurado
1. Objetivos
1.1. Objetivo general
Elaborar programación texto estructurado utilizando el controlador micro850 y el
software Connected Component Workbench para la realización de aplicaciones
industriales.

1.2. Objetivos específicos


1. Analizar el funcionamiento de la programación texto estructurado para la realización
de diferentes instrucciones de programación en el entorno de programación.
2. Utilizar instrucciones de temporizadores, contadores y comparadores para la
familiarización del lenguaje de programación.
3. Aplicar la programación texto estructurado en las aplicaciones industriales
propuesto utilizando el controlador micro850 y el software Connected Components
Workbench.

2. Equipos y herramientas
• Micro850
• Connected Components Workbench
• RsLinx Classic
• Computadora
• Cables Ethernet.
• Switch Stratix
• Botoneras del tablero

3. Marco teórico

Structured Text

Consiste en una serie de instrucciones, donde es determinado como uno de los lenguajes de
programación de alto nivel. En dicho lenguaje pueden ser ejecutados condicionales
("IF..THEN..ELSE") o lazos (“WHILE..DO”).
Ejemplo:

IF value < 7 THEN


WHILE value < 8 DO
value := value + 1;
END_WHILE;
END_IF;
Laboratorio de Automatización de Procesos Industriales

Existen operaciones disponibles en texto estructurado, donde la norma IEC 61131-3


describe todos los operadores estándar.

Operación Símbolo

Función call Function name (parameter list)

Exponenciación EXPT

Negativo -
Construir el NOT
complemento

Multiplicación *
División /
Modulo MOD

Suma +
Resta -

Comparación <,>,<=,>=

Igual que =
No es igual a que <>

Booleano AND AND

Booleano XOR XOR

Booleano OR OR

Único Comentario //
Múltiples comentarios /* start comment*/ or
(* start comment*)

Estado de asignación variable:= expresión;

Estados de selección IF, THEN, ELSE, CASE...

Estados de interacción FOR, WHILE, REPEAT...

Estados de control RETURN, EXIT...


Laboratorio de Automatización de Procesos Industriales

Elementos básicos y sentencias en texto estructurado

1. Asignación

Ítem Descripción
Símbolo :=
Significado Asigna una variable a una expresión
Sintaxis <variable> := <any_expression> ;
Operador La variable deber ser una interna o externa y la
expresión debe tener un mismo tipo de dato.
Ejemplo:

2. IF THEN ELSE

Ítem Descripción
Nombre IF ... THEN ... ELSIF ... THEN ... ELSE ... END_IF
Significado Ejecuta una serie de listas de declaraciones de texto
estructurado.
Una selección es hecho acordando con el valor de una
expresión booleana.
Sintaxis IF <Boolean_expression> THEN
<statement> ;
<statement> ;
...
ELSIF <Boolean_expression> THEN
<statement> ;
<statement> ;
...
ELSE
<statement> ;
<statement> ;
...
Ejemplo:
Laboratorio de Automatización de Procesos Industriales

3. LAZO WHILE

Tipo Descripción
Nombre WHILE ... DO ... END_WHILE
Significado Es la estructura de iteraciones para un grupo de
declaraciones de texto estructurado. La condición o
expresión es evaluada antes de cada iteración.
Sintaxis WHILE <Boolean_expression> DO
<statement> ;
<statement> ;
...
END_WHILE ;

Importante: No iterar dentro un lazo demasiadas veces en un solo escaneo.


El controlador no ejecuta otras instrucciones en la rutina hasta que complete el lazo.
Una falla importante ocurre cuando al completar el ciclo lleva más tiempo que el
watchdog timer para la tarea.
Ejemplo:
Laboratorio de Automatización de Procesos Industriales

4. LAZO FOR

Tipo Descripción
Nombre FOR ... TO ... BY ... DO ... END_FOR

BY es opcional. Si no es especificado, el paso del


incremento es 1.
Significado Ejecuta un número limitado de iteraciones usando un
índice (variable entera).
Sintaxis FOR <index> := <mini> TO <maxi> BY <step> DO
<statement> ;
<statement> ;
END_FOR;
Operando Index: Variable interna (integer) incrementada en cada
iteración.
Mini: Valor inicial (integer) para el índice antes de la
primera iteración.
Maxi: Valor máximo (integer) permitido para Index.
Step: Incremento por cada interacción
Ejemplo:

5. CASE
Tipo Descripción
Nombre CASE ... OF ... ELSE ... END_CASE
Significado Ejecuta una de las condiciones. La selección es
realizada de acuerdo con una expresión de tipo entero.
Sintaxis CASE <integer_expression> OF
<value> : <statement1> ;
<statement2> ;
<statementsN>

<value> : <statements> ;

<value>, <value> : <statements>;


...
ELSE
<statements> ;
END_CASE;
Laboratorio de Automatización de Procesos Industriales

Ejemplo:

Estructura de temporizadores en texto estructurado

• TON

• TOF

• TONOFF
Laboratorio de Automatización de Procesos Industriales

• TP

Estructura de contadores en texto estructurado

• CTD

• CTU
Laboratorio de Automatización de Procesos Industriales

• CTUD

Bloque SCALER
Laboratorio de Automatización de Procesos Industriales

4. Procedimiento
Crear un proyecto en Connected Component Workbench y agregar un controlador
Micro850

1. Abrir el Software Connected Component Workbench (CCW), doble clic al icono en


el escritorio.
2. Clic en New de la pestaña Start Page. Escoger un nombre y localización del proyecto,
luego dar clic en Create.

3. Expandir la carpeta Controlllers, luego seleccionar la carpeta Micro850 y escoger el


número de catálogo 2080-LC50-48QWB cuya versión de firmware del dispositivo debe
coincidir con el controlador físico.
Laboratorio de Automatización de Procesos Industriales

4. Si se desea verificar por software la versión del equipo, abrir RSLinx Classic, seleccionar
RSWho donde aparecerán los dispositivos conectados a la computadora.
5. En este caso a través del puerto USB se ha conectado el equipo, dar clic derecho al
dispositivo.
6. Escoger Module Configuration, en la siguiente ventana que aparezca se puede visualizar
algunas características relevantes del controlador, como por ejemplo el número de
catálogo o la revisión de este.

7. Luego de verificar que tanto el número de catálogo como la revisión sean las correctas,
dar clic Add To Project.

8. Si se creó correctamente el proyecto, el micro850 se muestra en la pestaña Project


Organizer y además una imagen del controlador en la ventana.
Laboratorio de Automatización de Procesos Industriales

9. Configurar Ethernet del controlador, donde se deben escribir los siguientes parámetros
IP Address, Subnet Mask y Gateway Address del controlador correspondiente.

Añadir un programa en texto estructurado

1. Agregar un nuevo programa, el cual puede ser programado en distintos lenguajes de


programación, en este caso seleccionaremos Structured Text. Además, se debe
considerar lo siguiente:
• No se puede cambiar el lenguaje de programación cuando el programa ya fue creado.
• El proyecto puede contener hasta 256 programas.
• Cada programa debe tener un nombre diferente. Estos nombres pueden tener hasta
128 caracteres y deben comenzar por una letra.
• Los controladores Micro800 permiten múltiples programas, así como el uso de
diferentes lenguajes de programación (como FBD o ladder) en la aplicación.
Laboratorio de Automatización de Procesos Industriales

2. Clic derecho en el icono del programa llamado Prog1 y seleccionar Rename.

3. Cambiar el nombre del programa de acuerdo con el número de practica y las iniciales del
practicante tanto el nombre como apellido.
Laboratorio de Automatización de Procesos Industriales

4. Doble clic en el icono del programa Practice5_JC. Luego, el editor del diagrama escalera
aparece en el espacio de trabajo del proyecto principal con un peldaño vacio. Por último,
la opción Theme escoger Logix, con este tema las instrucciones de los símbolos y
terminología será más familiares cuando se utilice el software de programación Studio
5000 Logix Designer.

5. Si se desea el cuadro de herramienta de los símbolos, dirigirse a la barra de herramienta


escoger View y seleccionar Toolbox.

6. Para agregar condiciones en el espacio de trabajo, en Toolbox escoger la opción IF THEN


ELSE y arrastrarlo.

7. En el espacio de trabajo aparecerá una plantilla con el condicional IF THEN ELSE, donde
se podrá buscar el nombre del elemento a añadir en Search. Además, los elementos se
pueden ordenar por categoría como es Logical, Math, Timer, Comparare y entre otros.
Laboratorio de Automatización de Procesos Industriales

8. Clic derecho en la condición de la sentencia IF y seleccionar Variable Selector.

9. La ventana Variable Selector se abre automáticamente. En esta ventana, seleccionar I/O-


Micro850 (entradas y salidas físicas del controlador).
Laboratorio de Automatización de Procesos Industriales

10. En la ventana Variable Selector, en la parte superior de la ventana escribir el nombre de


la variable a crear y el tipo de dato en la sección de Local Variables. Luego, dar clic en
OK.

11. Luego, en un espacio en blanco dar clic derecho y escoger Block Selector.
Laboratorio de Automatización de Procesos Industriales

12. La ventana Instruction Block Selector se abre automáticamente. Buscar TON y en la parte
inferior de la ventana escribir un nombre en la sección de Instance. Por último, dar clic en
OK.

13. Finalmente, se escribe comentarios en el elemento añadido con respecto a la


programación realizada.

Compilar, descargar y comprobar un proyecto de CCW

1. Compilar la aplicación dando clic derecho al controlador Micro850 en Project Organizer,


y seleccionar Build.
Laboratorio de Automatización de Procesos Industriales

2. Cuando la compilación es completada, se observará un mensaje en la esquina inferior


izquierda afirmando si la compilación ha sido exitosa. Si hay errores en la programación,
entonces en el panel Error List dar clic en el error donde automáticamente se direccionara
al error en el proyecto. Caso contrario, descargar el proyecto al controlador.

3. Posteriormente descargar el proyecto al controlador Micro850, dar clic en Download


situado debajo de la ventana Micro850.
Laboratorio de Automatización de Procesos Industriales

4. La ventana Connection Browser emergerá, luego buscar el controlador correspondiente


expandiendo AB_ETHIP-1 y escoger el controlador con la respectiva dirección IP. Por
último, dar clic en OK.

5. La ventana Download Confirmation aparecerá para sobrescribir el proyecto en el


controlador. En este caso, el proyecto no tiene valores asignado todavía por lo tanto dar
clic en Download.

6. La descarga continuara, sin embargo, se presenta el anuncio para colocar el controlador


en modo Run. Clic Yes.

7. El controlador está en modo Connected. Si se quiere desconectar, desplegar las opciones


del mismo icono y seleccionar Disconnected. Además, el color gris como fondo en las
líneas de código muestra que se encuentra en línea
Laboratorio de Automatización de Procesos Industriales

5. Actividades a desarrollar

Ejercicio 1
Implementar un programa que controle el llenado de tres tanques de agua en forma
secuencial como se describe a continuación, que depende de un Switch donde:
Si el switch está encendido, se debe de realizar lo siguiente:

a) Al presionar PB1 se activa la bomba M y se abre la válvula de llenado Sol1 para el


tanque 1.
b) Al llenarse el tanque 1 (s1 este encendido), se cierra Sol1 y se abre Sol2 para llenar
el tanque 2,
c) Al terminar de llenarse el tanque 2 (s2 este encendido), se cierra la válvula Sol2 y
se abre la válvula Sol3 para llenar el tercer tanque.
d) Finalmente, cuando se llena el tanque 3 (s3 este encendido) la bomba se
desactiva.
Laboratorio de Automatización de Procesos Industriales

Si el switch está apagado, se debe de realizar lo siguiente:


a) Al presionar PB1 se activa la bomba M y se abre la válvula de llenado Sol1 para el
tanque 1 por 10 segundos.
b) Al terminar el tiempo establecido, se cierra Sol1 y se abre Sol2 para llenar el
tanque 2.
c) Se terminar de llenar el tanque 2 si el sensor de nivel (4-20 mA, 20 – 200 cm) da
una lectura mayor a 150 cm. Entonces, se cierra la válvula Sol2 y se abre la válvula
Sol3 para llenar el tercer tanque.
d) Finalmente, cuando se llena el tanque 3 (s3 este encendido) la bomba se
desactiva.

También podría gustarte