Está en la página 1de 56

Programación y simulación

con PC Worx Parte 2/2

Phoenix Contact Argentina / Webinar


Phoenix Contact Argentina

¡Seguinos en nuestras redes sociales!

@phoenixcontactar @Phoenix Contact


Phoenix Contact Argentina

Personas de contacto

Agustín Solana José María Suárez Samanta Reyes Hernán López


Field Application Engineer Field Application Engineer Application Developer Business Area Manager
+54 9 11 2160 9053 +54 9 11 2160 9085 +54 11 3220 6400 +54 9 11 2160-9077
asolana@phoenixcontact.com jsuarez@phoenixcontact.com sreyes@phoenixcontact.com hlopez@phoenixcontact.com
Programación y simulación con PC Worx Parte 2/2

Agenda

➢ Repaso
➢ Lenguaje ST (Texto Estructurado)
➢ Funciones y bloques de función
➢ Planteo de ejercicio
Mind the gap
Narrowing the distance between control learning and industrial
control practice (in Argentina)
Guido Di Ciancia – Hernán López
REPASO UTN FRBA
11
The GAP

Academy Industry

• Needs
• Enviroment
• Focus
12
Industry needs vs. Topics Taught

13
The GAP
Industry:
Academia: Solve Problems with old and new
Mathematical Approach to Problems technology

14
The GAP
Academia: Industry:
Components needed Systems needed

15
The GAP
Academia: Industry:
Components needed Systems needed

16
The GAP
Academia: Industry:
Components needed Systems needed

17
Gap Consequences?

18
Gap Consequences?

Source: Walter Driedger.


http://www.driedger.ca
19
Gap Consequences?

Source: Walter Driedger.


http://www.driedger.ca
20
Gap Consequences?

Source: Walter Driedger.


http://www.driedger.ca
21
Bridging the gap: Teaching Strategies
• Connect Theory with Practice.
• Change from “indoctrination” to heuristic method.
• Dilute mathematical proof and stress practical application.
• Engage students with technology, real life industries and processes.
• Connect industries with universities and vice versa

22
23
Programación y simulación con PC Worx Parte 1/2

Introducción al mundo industrial


¿Qué podemos encontrar en las industrias?

▪ Temperaturas extremas
▪ Vibraciones y golpes
▪ Polvillo y limadura de distintos materiales
▪ Productos químicos corrosivos y/o peligrosos
▪ No puede detenerse
▪ Ambientes peligrosos
▪ Se requiere medir y tener un historial de lo que sucede
▪ Repetitividad
▪ Máxima producción con menor cantidad de recursos

REPASO
Programación y simulación con PC Worx Parte 1/2

Interfaces de usuario con el controlador


Web Server
HTTP
▪ HTTP es un protocolo de nivel de
aplicación distribuida, colaborativa de
sistemas de informática. Es usada para
recolectar fuentes enlazadas, llamadas
documentos hipertexto.

REPASO
Programación y simulación con PC Worx Parte 1/2

Comunicación Modbus TCP

Modbus/TCP
▪ Modbus es un protocolo de
comunicación muy utilizado en la
industrial
▪ Modbus permite la comunicación
entre varios dispositivos conectados
en la misma red, por ejemplo
sistemas de medición de energía,
variadores de velocidad, cabeceras
de entradas/salidas remota.
▪ Modbus es usualmente utilizado a
sistemas de supervisión con
unidades terminales remotas (RTU)
y sistemas de adquisición de datos
(SCADA).

REPASO
Programación y simulación con PC Worx Parte 1/2

Comunicación Profinet

PROFINET es el estándar abierto de


Ethernet Industrial de la asociación
PROFIBUS Internacional (PI) según
IEC 61784-2.
Es uno de los estándares de
comunicación más utilizados en
redes de automatización.
Entre sus características destaca
que es Ethernet en tiempo real

REPASO
Programación y simulación con PC Worx Parte 1/2

Intercambio de datos con FTP

FTP
▪ File Transfers Protocol (FTP)
es un protocolo estándar
Data access usado para intercambio y
manejo de archivos sobre
redes TCP/IP, como Internet.
▪ FTP esta constituido en una
arquitectura servidor/ cliente.
▪ Acceso desde el programa del
controlador con bloques de
funciones.

PLC
REPASO
Programación y simulación con PC Worx Parte 1/2

Acceso a bases de datos SQL

SQL
▪ Structured Query Language
(SQL) es una base de datos en
idioma de computadora
diseñado para administrar
Driver: sistemas de bases de datos.
▪ Alcanza consulta, actualización,
PLC creación de esquemas,
modificación de datos y control
MS SQL de los mismos.
MY SQL SQL ▪ Bloques de funciones permiten
library la transferencia de datos desde
o hacia la base SQL.

REPASO
Programación y simulación con PC Worx Parte 1/2

Lenguajes de programación

REPASO
Programación y simulación con PC Worx Parte 1/2

IEC 61131

REPASO
Programación y simulación con PC Worx Parte 1/2

Lenguaje de programación FBD (Function Block Diagram)

REPASO
Programación y simulación con PC Worx Parte 1/2

Lenguaje de programación LD (Ladder)

REPASO
Programación y simulación con PC Worx Parte 1/2

Lenguaje de programación ST (Structured Text)

REPASO
Programación y simulación con PC Worx Parte 1/2

Lenguaje de programación IL (Instruction List)

REPASO
Programación y simulación con PC Worx Parte 1/2

Lenguaje de programación SFC (Sequential Function Chart)


Características:
• Programas secuenciales
• Programas estructurados Step 1 Action 1
• Rápido diagnóstico
Transition 1

Elementos básicos:
Step 2 Action 2
• Etapas
• Acciones
Transition 2
• Transiciones
Step 3
Soporta ramas alternativas y paralelas

REPASO
Introducción a la Automatización Industrial

Tipos de datos

REAL INT

TIME BOOL

REPASO
Programación y simulación con PC Worx Parte 1/2

Tipos de datos elementales


Tipo de datos Descripción Tamaño Rango Valor inicial
BOOL Booleano 1 0...1 0
SINT Entero corto 8 -128...127 0
INT Entero 16 -32.768...32.767 0
DINT Entero doble 32 -2.147.483.648 hasta 2.147.483.647 0
USINT Entero corto sin signo 8 0 hasta 255 0
UINT Entero sin signo 16 0 hasta 65.535 0
UDINT Entero doble sin signo 32 0 hasta 4.294.967.295 0
-3.402823466 E+38 (aprox. 7 dígitos)
REAL Números reales 32 hasta 0,0
+3,402823466 E+38 (aprox. 7 dígitos)
~ -1.798 E+308 (aprox. 15 dígitos)
LREAL Números reales largos 64 hasta 0,0
~ +1.798 E+308 (aprox. 15 dígitos)
TIME Duración 32 0... 4.294.967.295 ms t#0s
Cadena de bits con 0...255
BYTE 8 0
longitud 8 (16#00...16#FF)
Cadena de bits con 0...65.535
WORD 16 0
longitud 16 (16#00...16#FFFF)
Cadena de bits con 0...4.294.967.295
DWORD 32 0
longitud 32 (16#00....16#FFFFFFFF)

REPASO
Programación y simulación con PC Worx Parte 1/2

Propuesta de resolución de ejercicios

REPASO
Resolución

Ejercicio 3
Crear un programa que maneje el arranque y la parada de dos bombas que encenderán siempre de a una de
manera alterna.
Con la llave en manual el arranque y parada se realizará con los botones de marcha y parada.
Con la llave en automático el arranque de la bomba sucederá cuando el sensor de nivel analógico sea menor al
20% y se detendrá de manera automática cuando el nivel supere el 90%.
Además se deberá encender un LED cuando el sistema se encuentre llenando el tanque.

Variables entrada:
xPulsadorMarcha
xPulsadorParada
AUTO 0 MAN
MARCHA PARADA xAutomatico
xManual
iSensorNivel
Variables Salida:
xBomba1
xBomba2
xIndicacionLlenado

REPASO
Lenguaje de programación Texto Estructurado (ST)
Programación y simulación con PC Worx Parte 2/2

Texto Estructurado
ST (Structured Text)
▪ Está compuesto por sentencias y expresiones.

▪ Cada línea de código debe terminar con punto y coma.


▪ Las expresiones consisten en operandos y operadores (variables
o literales).
▪ (*Se pueden insertar comentarios para mejorar la comprensión
del código*)
Programación y simulación con PC Worx Parte 2/2

Operadores en ST
Programación y simulación con PC Worx Parte 2/2

Palabras clave en ST
Programación y simulación con PC Worx Parte 2/2

Asistente de Edición
Programación y simulación con PC Worx Parte 2/2

Asistente de Edición

Seleccionar y arrastrar
Programación y simulación con PC Worx Parte 2/2

Lenguaje de programación ST
Programación y simulación con PC Worx Parte 2/2

Lenguaje de programación ST

¿Y en FBD?
Funciones y bloques de función
Funciones y bloques de función

Tipos de POU
Funciones y bloques de función

Tipos de POU
Funciones “FU” Bloques de función “FB”

▪ Múltiples entradas ▪ Múltiples entradas / salidas


▪ No llevan instanciamiento ▪ Llevan memoria de instanciamiento
▪ No tienen memoria interna ▪ Memoria interna
▪ No conservan valores ▪ Conserva valores
▪ El valor de retorno se asigna al nombre de la ▪ Los valores de retorno se pueden asignar a
función VAR_OUTPUT
Funciones y bloques de función

Creación de bloque de función

Nombre

Tipo Lenguaje de
programación
Funciones y bloques de función

Creación de bloque de función

Descripción
de la variable
Tipo de datos (comentarios)

Nombre de la variable Utilización:


VAR_INPUT, OUTPUT
VAR_IN_OUT
VAR,
VAR_EXTERNAL
Funciones y bloques de función

Creación de bloque de función


▪ Programa del FB

Variables de entradas Variable de salida


Funciones y bloques de función

Uso del bloque de función

Variable de salida

Variables de entradas
Funciones y bloques de función

Creación de función

Nombre

Tipo
Lenguaje de
programación

Tipos de datos del


valor de retorno
Funciones y bloques de función

Creación de función
Descripción
▪ Declaración de variables dentro de la función Tipo de de la variable
datos (comentarios)

Nombre Utilización
VAR_INPUT VAR
Funciones y bloques de función
Variables de entradas
Creación de función (1, 2, 3, 4)

Valor de retorno
Funciones y bloques de función

Uso de la función

Valor de retorno

Variables de entradas
Propuesta de ejercicios

Ejercicio 5
Se debe leer la temperatura de un sensor mediante Modbus. El fabricante aclara en la hoja de datos lo
siguiente:
Holding Register 0: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Bit 15: Alarma de falla Valor de temperatura en Kelvin
A DO3 DO2 DO1 DO0
Bit 4 al 14: Temperatura en Kelvin
Bit 0 a 3: Estado de salidas digitales
El estado de las salidas digitales del sensor no son relevantes en este caso
Crear un FB o FU de manera que si sucede una falla, al cabo de tres segundos, se deberá activar una salida
digital en el PLC.
Crear un FB o FU que entregue el valor de temperatura en una variable cuya unidad sea grados centígrados

Ejercicio 6
De esa medición de temperatura se desea guardar en un vector de 60 posiciones los valores del último minuto
(1 posición por cada segundo). Cada cambio de minuto (segundos = 0) se deberá calcular cuál fue el valor
máximo del minuto anterior.
Programación y simulación
con PC Worx Parte 1/2

Seguí nuestra playlist y agregá


tus canciones favoritas.

Phoenix Contact Argentina / Webinar

También podría gustarte