Lenguajes de Programación Plc

of 33 /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

Embed Size (px)

Transcript of Lenguajes de Programación Plc

  • 7/23/2019 Lenguajes de Programacin Plc

    1/33

    Ing. Marcelo Garca Torres

    MATERIA: AUTOMATIZACIN INDUSTRIAL ICAPITULO II

  • 7/23/2019 Lenguajes de Programacin Plc

    2/33

    Scan del PLC

  • 7/23/2019 Lenguajes de Programacin Plc

    3/33

    Lenguajes de Programacin d

  • 7/23/2019 Lenguajes de Programacin 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 representacingrfica de expresionesbooleanas,

    combinando contactos(condiciones) conbobinas (resultados)similar a un diagramade contactos elctricos.

  • 7/23/2019 Lenguajes de Programacin 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

    instruccin debe ocupar unanueva lnea. Cada lnea contieneun operador, que es completadopor modificadores opcionales yuno o ms operandos, si laoperacin especfica lo requiere.

  • 7/23/2019 Lenguajes de Programacin 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 representacin grficade diferentes tipos de ecuaciones. Losoperadores son representados por cajarectangulares de funciones y losoperandos se conectan a sus ladosizquierdo (entradas) y derecho (salidas)

  • 7/23/2019 Lenguajes de Programacin 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 bsicos de: asignacin,seleccin, iteracin, control o especiaLos nombres usados en el cdigo fuen(identificadores de variables, constant

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

  • 7/23/2019 Lenguajes de Programacin 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 grfico de

    pasos y transicionesenlazados por conexionesorientadas. Cada transicines atada a una condicinbooleana. Las acciones delos pasos son detalladas

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

  • 7/23/2019 Lenguajes de Programacin Plc

    9/33

    Nace en U.S. como reflejo de los esquemas elctricos estndar utilizados en lgica cableada

    LADDER (LD)

    Barra de alimentacin izquierda

    (con enlace horizontal acoplado

    Contactos

    Bobinas

    Bloques funcionales

    Barra de alimentacin izquierda(con enlace horizontal acoplado

    Smbolo de salto

    Smbolo de retorno

    Entrada EN

    Salida ENO

  • 7/23/2019 Lenguajes de Programacin Plc

    10/33

    Lenguaje LD

    Contactos:

    Contacto normalmente abierto

    Contacto normalmente cerrado

    Contacto detector de transicinpositiva (flanco ascendente)

    Contacto detector de transicin

    negativa (flanco descendente)

  • 7/23/2019 Lenguajes de Programacin 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

  • 7/23/2019 Lenguajes de Programacin Plc

    12/33

    Lenguaje LD

    Enlaces:

    I t ti Li t (IL)

  • 7/23/2019 Lenguajes de Programacin Plc

    13/33

    Instruction List (IL)

    Modelo de ejecucin basado en un acumulador (pila) simple, basado en el lenguaje alemn AnweiSolo se permite una operacin por lnea, cada operacin se realiza sobre uno o dos operandos

    Una lnea 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

  • 7/23/2019 Lenguajes de Programacin Plc

    14/33

    Lenguaje IL

    Operadores de IL:Operador Modificadores Operando Semnti

    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 Multiplicacin

    DIV ( WORD Divisin

  • 7/23/2019 Lenguajes de Programacin Plc

    15/33

    Lenguaje IL

    Operadores de IL:

    Operador Modificadores Operando Semntic

    GT ( WORD Comparacin >

    GE ( WORD Comparacin >=

    EQ ( WORD Comparacin =

    NE ( WORD Comparacin

    LE ( WORD Comparacin

  • 7/23/2019 Lenguajes de Programacin Plc

    16/33

    Lenguaje IL

    Detector de Flanco

    Ascendente

    BoolBool R_TRIG

    Clk QTTIME

    BBool ***

    In Q

    Pt EtIntInt

    Bool

    BoolBool ***

    Cu Q

    R

    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)

  • 7/23/2019 Lenguajes de Programacin 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) Ejecucin Condicional (IF-Then-Else, Case) Funciones (SQRT(), SIN())

    Operadores del lenguOperacin SmboloPrioridad

    Negacin -

    Complemento NOT

    Multiplicar *

    Dividir /

    Mdulo MOD

    Sumar, Restar +, -

    Comparacin , =

    Igualdad, Desigualdad =,

    AND Booleano &, AND

    OR exclusivo Booleano XOROR Booleano OR

  • 7/23/2019 Lenguajes de Programacin Plc

    18/33

    Lenguaje ST

    Sentencias del lenguaje ST

    Tipo de sentencia/referencia EjemplosAsignacin A:=B; CV := CV+ 1;

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

    utilizacin de salida FB A := CMD_TMR.Q;

    RETURN RETURN;

  • 7/23/2019 Lenguajes de Programacin Plc

    19/33

    Lenguaje ST

    Sentencias del lenguaje ST

    Tipo de sentencia/referencia EjemplosIF THEN D:= B*B - 4*A*C;

    ; IF D < 0.0 THNROOTS := 0;

    ; ELSIF D = 0.0 THEN

    ... NROOTS := 1 ;

    ELSIF THEN X1 := -B/ (2.0*A); ELSE

    ... NROOTS := 2 ;

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

    ; X2 := (-B-SQRT(D))/(2.0*A)

    END_IF; END_IF ;

  • 7/23/2019 Lenguajes de Programacin Plc

    20/33

    Lenguaje ST

    Sentencias del lenguaje ST

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

    ; REPEAT

    ; J := J+2 ;

    UNTIL UNTIL J = 101 OR WORDS[J] = K

    END_REPEAT; END_REPEAT ;

    EXIT EXIT ;

    Sentencia vaco ;

  • 7/23/2019 Lenguajes de Programacin Plc

    21/33

    Functional Block Diagram (FB

    Lenguaje grafico ampliamente usado en Europa

    Permite elementos de programa que se unen en forma anloga a puertas lgicaen un circuito electrnico

    Se usan en muchas aplicaciones que implican el flujo de informacin o datosentre componentes de control

  • 7/23/2019 Lenguajes de Programacin Plc

    22/33

    Lenguaje FBD

  • 7/23/2019 Lenguajes de Programacin Plc

    23/33

    Diagrama Funcional Secu(SFC)

    Potente tcnica grafica para describir el comportamiento secuencial de unprograma de control

    Se usa para particionar un programa de control

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

  • 7/23/2019 Lenguajes de Programacin Plc

    24/33

    Lenguaje SFC

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

    una simple representacin grfica de diferentespasos de un proceso, y de las condiciones quehabilitan el cambio (transicin) de los pasosactivos. Sus principales elementos son:

    Paso inicial

    PasoTransicin

    Salto a un paso

    Macro paso

    Inicio del macro paso

    Fin del macro paso

  • 7/23/2019 Lenguajes de Programacin Plc

    25/33

    Lenguaje SFC

    Las representaciones de los pasos tienen dniveles

    Nivel 1: Nivel 2:

  • 7/23/2019 Lenguajes de Programacin Plc

    26/33

    Lenguaje SFC

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

  • 7/23/2019 Lenguajes de Programacin Plc

    27/33

    Lenguaje SFC

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

  • 7/23/2019 Lenguajes de Programacin Plc

    28/33

    Lenguaje SFC

    Acciones asociadas a los pasos:

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

  • 7/23/2019 Lenguajes de Programacin Plc

    29/33

    Lenguaje SFC

    Acciones asociadas a los pasos:

    Para asociar funciones analgicas 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 continuacin el resultado de una accin no guardada:

  • 7/23/2019 Lenguajes de Programacin Plc

    30/33

    Lenguaje SFC

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

    (* Programa SFC usando acciones SFC*)

  • 7/23/2019 Lenguajes de Programacin 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 transicin*)

    (* Programa SFC con un programa en ST para la transicin*)

  • 7/23/2019 Lenguajes de Programacin Plc

    32/33

    PROGRAMACION AVANZADA D

    Desarrollo de un proyecto basado enPLCs

  • 7/23/2019 Lenguajes de Programacin Plc

    33/33

    PROGRAMACION AVANZADA D

    Entorno de PLCs