Lenguajes de Programación Plc

33
7/23/2019 Lenguajes de Programación Plc http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 1/33 Ing. Marcelo García Torres M ATERIA : A UTOMATIZACIÓN I NDUSTRIAL I CAPITULO II

Transcript of Lenguajes de Programación Plc

Page 1: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 1/33

Ing. Marcelo García Torres

MATERIA: AUTOMATIZACIÓN INDUSTRIAL ICAPITULO II

Page 2: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 2/33

Scan del PLC

Page 3: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 3/33

Lenguajes de Programación d

Page 4: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 4/33

IE

C11

31-3

• LD: Diagrama a contactos o deescalera (Ladder Diagram).

• IL: Lista de Instrucciones (InstructionList).

• FBD: Diagrama de BloquesFuncionales (Function Block Diagram).

• ST: Texto Estructurado (StructuredText).

• SFC: Carta de FuncionesSecuenciales (Se

quential FunctionChart).

Es una representacióngráfica de expresionesbooleanas,

combinando contactos(condiciones) conbobinas (resultados)similar a un diagramade contactos eléctricos.

Page 5: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 5/33

IE

C11

31-3

• LD: Diagrama a contactos o deescalera (Ladder Diagram).

• IL: Lista de Instrucciones (InstructionList).

• FBD: Diagrama de BloquesFuncionales (Function Block Diagram).

• ST: Texto Estructurado (StructuredText).

• SFC: Carta de FuncionesSecuenciales (Sequential FunctionChart).

Su estructura principal es una listade instrucciones, donde cada

instrucción debe ocupar unanueva línea. Cada línea contieneun operador, que es completadopor modificadores opcionales yuno o más operandos, si laoperación específica lo requiere.

Page 6: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 6/33

IE

C11

31-3

• LD: Diagrama a contactos o deescalera (Ladder Diagram).

• IL: Lista de Instrucciones (InstructionList).

• FBD: Diagrama de BloquesFuncionales (Function Block Diagram).

• ST: Texto Estructurado (StructuredText).

• SFC: Carta de FuncionesSecuenciales (Sequential FunctionChart).

Consiste en una representación gráficade diferentes tipos de ecuaciones. Losoperadores son representados por cajarectangulares de funciones y losoperandos se conectan a sus ladosizquierdo (entradas) y derecho (salidas)

Page 7: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 7/33

IE

C11

31-3

• LD: Diagrama a contactos o deescalera (Ladder Diagram).

• IL: Lista de Instrucciones (InstructionList).

• FBD: Diagrama de BloquesFuncionales (Function Block Diagram).

• ST: Texto Estructurado (StructuredText).

• SFC: Carta de Funciones

Un programa en ST es una lista desentencias ST. Cada sentencia terminaen

un separador “;” y se incluye dentro dunode los tipos básicos de: asignación,selección, iteración, control o especiaLos nombres usados en el código fuen(identificadores de variables, constant

palabras reservadas del lenguaje, ...) sdesagrupan usando separadoresinactivos o activos.

Page 8: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 8/33

IE

C11

31-3

• LD: Diagrama a contactos o deescalera (Ladder Diagram).

• IL: Lista de Instrucciones (InstructionList).

• FBD: Diagrama de BloquesFuncionales (Function Block Diagram).

• ST: Texto Estructurado (StructuredText).

• SFC: Carta de Funciones

Es un conjunto gráfico de

pasos y transicionesenlazados por conexionesorientadas. Cada transiciónes atada a una condiciónbooleana. Las acciones delos pasos son detalladas

usando otros lenguajes (ST, IL,LD, FBD).

Page 9: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 9/33

Nace en U.S. como reflejo de los esquemas eléctricos estándar utilizados en lógica cableada

LADDER (LD)

Barra de alimentación izquierda

(con enlace horizontal acoplado

Contactos

Bobinas

Bloques funcionales

Barra de alimentación izquierda(con enlace horizontal acoplado

Símbolo de salto

Símbolo de retorno

Entrada “EN”

Salida “ENO”

Page 10: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 10/33

Lenguaje LD

Contactos:

Contacto normalmente abierto

Contacto normalmente cerrado

Contacto detector de transiciónpositiva (flanco ascendente)

Contacto detector de transición

negativa (flanco descendente)

Page 11: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 11/33

Lenguaje LD

Bobinas:

Bobina accionamiento directo

Bobina accionamiento inverso

Seteo de una salida (condicionado)Reseteo de una salida (condicionado)

Accionamiento directo frente a deteccde flanco ascendente

Accionamiento directo frente a deteccde flanco descendente

Page 12: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 12/33

Lenguaje LD

Enlaces:

I t ti Li t (IL)

Page 13: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 13/33

Instruction List (IL)

Modelo de ejecución basado en un acumulador (pila) simple, basado en el lenguaje alemán  “ AnweiSolo se permite una operación por línea, cada operación se realiza sobre uno o dos operandos

Una línea de programa esta formada por:

Operador modificadores operandretorno]

opcionalesOperadores de IL:

Operador Modificadores Operando

LD N NOTA 1 Poner el resuigual al

operanST N NOTA 1 Almacenar eactual en

el empoperando

Page 14: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 14/33

Lenguaje IL

Operadores de IL:Operador Modificadores Operando Semánti

AND N,( BOOL AND Booleano

& N,( BOOL AND Booleano

OR N,( BOOL OR Booleano

XOR N,( BOOL OR exclusivo BooleaADD ( WORD Suma

SUB ( WORD Resta

MUL ( WORD Multiplicación

DIV ( WORD División

Page 15: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 15/33

Lenguaje IL

Operadores de IL:

Operador Modificadores Operando Semántic

GT ( WORD Comparación >

GE ( WORD Comparación >=

EQ ( WORD Comparación =

NE ( WORD Comparación <>

LE ( WORD Comparación <=LT ( WORD Comparación <

JMP C, N LABEL Saltar a la etiqueta

CAL C, N NAME Llamar al blofuncional

RET C, N Regresar de la funció

BF que ha sido llama

Page 16: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 16/33

Lenguaje IL

Detector de Flanco

Ascendente

 

BoolBool  R_TRIG

Clk QTTIME

BBool   ***

In Q

Pt EtIntInt

Bool

BoolBool   ***

Cu Q

Pv Cv

Contador (CTU,CTD) Temporizador(TP,TON,TO

VAR VAR VAR  

R_TRIG1 : R_TRIG C10 : CTU T20 : TP

END_VAR END_VAR END_VAR  

LD %IX10 LD 15 LD 150sST R-TRIG1.Clk ST C10.Pv ST T20.Pt

LD R-TRIG1.Q LD %MX10 LD %IX10

ST %MX10 ST C10.Cu ST T20.In

CAL C10 CAL T20

LD C10.Q LD T20.Q

ST %MX11 ST %MX12

LD C10.Cv LD T20.Et

ST %MW1 ST %MW2

Structured Text (ST)

Page 17: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 17/33

Structured Text (ST)

Lenguaje de alto nivel estructurado en bloques, Sintaxis parecida a PascalPosibilidad de utilizar expresiones complejas e instrucciones anidadasSoporte para:

  Bucles (Repeat- Until, While-Do)   Ejecución Condicional (IF-Then-Else, Case)   Funciones (SQRT(), SIN())

Operadores del lenguOperación SímboloPrioridad

Negación -

Complemento NOT

Multiplicar *

Dividir /

Módulo MOD

Sumar, Restar +, -

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

Igualdad, Desigualdad =, <>

AND Booleano &, AND

OR exclusivo Booleano XOROR Booleano OR

Page 18: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 18/33

Lenguaje ST

Sentencias del lenguaje ST

Tipo de sentencia/referencia EjemplosAsignación A:=B; CV := CV+ 1;

Invocación de FB y CMD_TMR(IN := %IX5, PT:=T#300m

utilización de salida FB A := CMD_TMR.Q;

RETURN RETURN;

Page 19: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 19/33

Lenguaje ST

Sentencias del lenguaje ST

Tipo de sentencia/referencia EjemplosIF <expresión booleana> THEN D:= B*B - 4*A*C;

<instrucción>; IF D < 0.0 THNROOTS := 0;

<instrucción>; ELSIF D = 0.0 THEN

... NROOTS := 1 ;

ELSIF <expresión bool.> THEN X1 := -B/ (2.0*A)<instrucción>; ELSE

... NROOTS := 2 ;

ELSE X1 := (-B+SQRT(D))/(2.0*A)

<instrucción>; X2 := (-B-SQRT(D))/(2.0*A)

END_IF; END_IF ;

Page 20: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 20/33

Lenguaje ST

Sentencias del lenguaje ST

Tipo de sentencia/referencia EjemplosREPEAT J := -1 ;

<instrucción>; REPEAT

<instrucción>; J := J+2 ;

UNTIL <expresión booleana> UNTIL J = 101 OR WORDS[J] = “K

END_REPEAT; END_REPEAT ;

EXIT EXIT ;

Sentencia vacío ;

Page 21: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 21/33

Functional Block Diagram (FB

Lenguaje grafico ampliamente usado en Europa

Permite elementos de programa que se unen en forma análoga a puertas lógicaen un circuito electrónico

Se usan en muchas aplicaciones que implican el flujo de información o datosentre componentes de control

Page 22: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 22/33

Lenguaje FBD

Page 23: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 23/33

Diagrama Funcional Secu(SFC)

Potente técnica grafica para describir el comportamiento secuencial de unprograma de control

Se usa para particionar un programa de control

Facilita el rápido diagnostico de problemas en el algoritmo de controllos elementos son etapas con acciones y transicionesPermite secuencias alternativas y paralelas

Page 24: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 24/33

Lenguaje SFC

El lenguaje SFC es usado para describiroperaciones de procesos secuenciales. Utiliza

una simple representación gráfica de diferentespasos de un proceso, y de las condiciones quehabilitan el cambio (transición) de los pasosactivos. Sus principales elementos son:

Paso inicial

PasoTransición

Salto a un paso

Macro paso

Inicio del macro paso

Fin del macro paso

Page 25: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 25/33

Lenguaje SFC

Las representaciones de los pasos tienen dniveles

 Nivel 1: Nivel 2:

Page 26: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 26/33

Lenguaje SFC

(*Programa en SFC con simple divergencia y convergencia*)

Page 27: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 27/33

Lenguaje SFC

(*Programa en SFC con doble divergencia y convergencia*)

Page 28: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 28/33

Lenguaje SFC

Acciones asociadas a los pasos:

 Acciones Booleanas: Directa (N), Inversa (/),Seteo (S), Reseteo (R).

Page 29: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 29/33

Lenguaje SFC

Acciones asociadas a los pasos:

Para asociar funciones analógicas o de cualquiotro tipo a un paso pueden agruparse en unprograma ST que se acopla al paso mediante laacciones P (PULSE) o N (Directa).

A continuación el resultado de una acción no guardada:

Page 30: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 30/33

Lenguaje SFC

Se pueden utilizar las acciones booleanas N, SR para activar programas SFC hijos.

(* Programa SFC usando acciones SFC*)

Page 31: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 31/33

Lenguaje SFC

A las transiciones se le pueden asociaroperaciones en lenguaje:

LD

IL

ST

(* Programa SFC con un programa en IL para la transición*)

(* Programa SFC con un programa en ST para la transición*)

Page 32: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 32/33

PROGRAMACION AVANZADA D

Desarrollo de un proyecto basado en PLC’s

Page 33: Lenguajes de Programación Plc

7/23/2019 Lenguajes de Programación Plc

http://slidepdf.com/reader/full/lenguajes-de-programacion-plc 33/33

PROGRAMACION AVANZADA D

Entorno de  PLC’s