Lenguajes de Programacion Con PS501

Embed Size (px)

Citation preview

  • 7/21/2019 Lenguajes de Programacion Con PS501

    1/30

    ABBAutomationProducts

    TrainingPage

    -1-

    24/04/15

    /V2

    Insert

    imagehere

    Control builder

    PS501

    IEC 61131-3

    Advant Controller 500 (AC500)

  • 7/21/2019 Lenguajes de Programacion Con PS501

    2/30

    ABBAutomationProductsTrainingPage

    -2-

    ControlBuilderPS501

    Informacin !"ica "obre el PS501

    #o" len$ua%e" de &ro$ramacin

    P'" ti&o" de dato" #a e"tructura de un &ro$rama

    #a" diferente" librer*a"

    El Control uilder PS501

    Empecemos

  • 7/21/2019 Lenguajes de Programacion Con PS501

    3/30

    ABBAutomationProductsTrainingPage

    -3-

    ControlBuilderPS501

    PS501 cum&le con la IEC 6 1131-3+

    E"te e"t!ndar internacional define,

    - la e"tructura de un &ro$rama

    - la declaracin de dato"

    - la "inta.i" "em!ntica de 5 len$ua%e" de &ro$ramacindiferente",

    Informacin !"ica "obre el PS501

    In"truction #i"t (I#) / #i"ta de In"truccione"

    Structured te.t (S) / e.to e"tructurado

    unction bloc2 dia$ram () - ia$rama" de lo4ue" de uncin

    Continuous function chart (CFC) Grficos de Funcin Contnuas

    #adder ia$ram (#) - Contacto"

    Se4uencial flo cart (SC) / 7r!fico" de lu%o Secuenciale"

  • 7/21/2019 Lenguajes de Programacion Con PS501

    4/30

    ABBAutomationProductsTrainingPage

    -4-

    ControlBuilderPS501

    El "oftare de &ro$ramacinPS501e"t! ba"ado en CoeS"

    &ara,

    Pro$ramar

    e"teo

    e&uracin

    In$enier*aocumentacin

    de &ro$rama" &ara el AC500 - 8ardare &or A+

    Informacin !"ica "obre el PS501

  • 7/21/2019 Lenguajes de Programacion Con PS501

    5/30

    ABBAutomationProdu

    ctsTrainingPage

    -5-

    ControlBuilderPS501

    CoeS" e" un &roducto de la em&re"a

    3S - Smart Softare Solution" 7mb8

    Informacin !"ica "obre el PS501

    Some 3S - customers Some 3S - customers

  • 7/21/2019 Lenguajes de Programacion Con PS501

    6/30

    ABBAutomationProdu

    ctsTrainingPage

    --

    ControlBuilderPS501

    Informacin !"ica "obre el PS501

    #o" len$ua%e" de &ro$ramacin

    P'" ti&o" de dato"

    #a e"tructura de un &ro$rama

    #a" diferente" librer*a"

    #o" len$ua%e" de &ro$ramacin

    Coming up

  • 7/21/2019 Lenguajes de Programacion Con PS501

    7/30

    ABBAutomationProdu

    ctsTrainingPage

    -!-

    ControlBuilderPS501

    #o" len$ua%e" de &ro$ramacin, #i"ta de In"truccione" I#

    En te.to

    #en$ua%e A""embler

    #o" o&eradore" funcionan con un

    re$i"tro e"&ecial (accumulator # S)

    #o" &ro$rama" &e4ue9o" "on mu

    f!cile" de entender

    :o "o&orta &ro$ramacin e"tructurada

  • 7/21/2019 Lenguajes de Programacion Con PS501

    8/30

    ABBAutomationProdu

    ctsTrainingPage

    -"-

    ControlBuilderPS501

    #o" len$ua%e" de &ro$ramacin, e.to E"tructurado S

    ##en$ua%e ti&o e.to

    ##en$ua%e de alto nivel, "imilar al PASCA#

    #e todo" lo" len$ua%e" e" el m!"

    ada&table &ara &ro$ramacin condicional

    &ro$rama" ti&o ;loo&"< (e"&iral)

    #E" &&o"ible &ro$ramac*one" mu

    &otente",

    #E"criba "u" &ro&ia" funcione" o lo4ue"de uncione" en te.to e"tructurado mu

    &=tente ll!melo" de"de un &ro$rama

    e"crito en CC o #

  • 7/21/2019 Lenguajes de Programacion Con PS501

    9/30

    ABBAutomationProdu

    ctsTrainingPage

    -$-

    ControlBuilderPS501

    #o" len$ua%e" de &ro$ramacin, unction loc2 ia$ram

    ##en$ua%e $r!fico

    #!cil de entender

    #E"tructura determinada &ara blo4ue" o&eradore"

  • 7/21/2019 Lenguajes de Programacion Con PS501

    10/30

    ABBAutomationProdu

    ctsTrainingPage

    -10-

    ControlBuilderPS501

    #o" len$ua%e" de &ro$ramacin, Continuou" function cart CC

    Lenguaje grfico, similar al FBD

    Fcil de entender

    Libre estructura para bloques yoperadores

    #El retorno &uede conectar"edir>ctamente

  • 7/21/2019 Lenguajes de Programacion Con PS501

    11/30

    ABBAutomationProdu

    ctsTrainingPage

    -11-

    ControlBuilderPS501

    #o" len$ua%e" de &ro$ramacin, #adder dia$ram # (contacto")

    #en$ua%e $r!fico orientado a rede"

    i"&onible en ca"i todo" lo" "i"tema" de P#C"

    E"&ecialmente ada&tado &ara &ro$ramar en t>rmino"booleano"

  • 7/21/2019 Lenguajes de Programacion Con PS501

    12/30

    ABBAutomationProdu

    ctsTrainingPage

    -12-

    ControlBuilderPS501

    #o" len$ua%e" de &ro$ramacin, SC (Se4uencial unction Cart)

    E"te &ro$rama e"ta formado de Pa"o"

    SC no &uede reem&la@ar otro" len$ua%e"+

    #en$ua%e $r!fico con"i$ue un&ro$rama mu bien e"tructurado

    Contiene Pa"o" ran"icione"

  • 7/21/2019 Lenguajes de Programacion Con PS501

    13/30

    ABBAutomationProdu

    ctsTrainingPage

    -13-

    ControlBuilderPS501

    Informacin !"ica "obre el PS501

    #o" len$ua%e" de &ro$ramacin

    P'" ti&o" de dato"

    #a e"tructura de un &ro$rama

    #a" diferente" librer*a"

    #o" P'" ti&o" de dato"

    Coming up

  • 7/21/2019 Lenguajes de Programacion Con PS501

    14/30

    ABBAutomationProdu

    ctsTrainingPage

    -14-

    ControlBuilderPS501

    Entrada" Salida" Con"tante" Indirecta" Pa"o"(Ste&") ?arca"(la$")

    Son a4uello" ti&o" de direccione" 4ue "e an de ada&tar al ardare

    n P'e" una "ecuencia de l*nea" de &ro$rama la cual &uede

    "er llamada &or otro P'

    #a &ro$ramacin "e &uede elaborar en uno de lo" cinco len$ua%e"

    de &ro$ramacin

    El P' re"ervado P#CPB7arranca c*clicamente &or el &ro&io

    "i"tema

    #o" dato" &ueden "er validado" localmenteo $lobalmente &ueden

    Ser declarado" a &riori &ro$ramado" en una tabla o autom!ticamentemientra" "e e"t! &ro$ramando+

    ireccione" P'" i&o" de dato", Introduccin

  • 7/21/2019 Lenguajes de Programacion Con PS501

    15/30

    ABBAutomationProductsTrainingPage

    -15-

    ControlBuilderPS501

    uncin, :

    Entrada un re"ultado no memoria+

    E%em&lo, o&erador A: (todo" lo" o&eradore")

    lo4ue de uncin,

    Entrada" Salida" memoria+

    E" &o"ible crear diferente" in"tancia" (co&ia") de un lo4uede uncin

    E%em&lo, ': (': retra"ado))

    Pro$rama, PB7

    Como un lo4ue de uncin &ero "lo una in"tancia $lobal+

    E%em&lo, n &ro$rama llama a otro+

    ireccione" P'" i&o de ato", El Pro$ram'r$ani@ation nit"

  • 7/21/2019 Lenguajes de Programacion Con PS501

    16/30

    ABBAutomationProductsTrainingPage

    -1-

    ControlBuilderPS501

    ireccione" P'" i&o de ato", i&o" de dato" E"t!ndar (1)

    ool, BE o A#SE

    ato" ti&o Inte$er (Entero"),

    Ti%o &'mite (n)erior &'miteSu%erior

    *emoria+e,uerida

    BT. 0 255 " /it

    + 0 5535 1 /it

    + 0 42$4$!2$5 32 /it

    S(T -12" 12! " /it

    S(T 0 255 " /it

    (T -32!" 32!! 1 /it

    (T 0 5535 1 /it

    (T -214!4"34" 214!4"34! 32 /it

    (T 0 42$4$!2$5 32 /it

  • 7/21/2019 Lenguajes de Programacion Con PS501

    17/30

    ABBAutomationProductsTrainingPage

    -1!-

    ControlBuilderPS501

    ireccione" P'" i&o de ato", i&o" de dato" E"t!ndar ()

    BEA# D #BEA#

    BEA# #BEA#6long real7 son de ti%o coma )lotante8 Se a%lican %ara n9meros racionales8 cu%anun rango de memoria de 32 /its %ara +.A& 4 /its %ara &+.A&8

    SBI:7

    na :aria/le de ti%o SBI:7 %uede tener cual,uier car;cter uno tras otro8 &a de)inici >ace re)erencia a los car;cteres %uede estar de)inido dentro de ? 6887 o [88888]8

    &a lon$itud &or defecto e"08

    .@em%lo %ara una declaracian de de)inir en milisegundos 6ms7 8 T est; calculado desde 0000 >rs 8

    AT. T an de estar de)inidos en segundos 6s78 .stos est;n calculados desde

    .l 1 de .nero de 1$!0F 0000>rs8

  • 7/21/2019 Lenguajes de Programacion Con PS501

    18/30

    ABBAutomationProductsTrainingPage

    -1"-

    ControlBuilderPS501

    Informacin !"ica "obre el PS501

    #o" len$ua%e" de &ro$ramacin

    P'" ti&o" de dato"

    #a e"tructura de un &ro$rama

    #a" diferente" librer*a"

    #a e"tructura de un &ro$rama

    Coming up

  • 7/21/2019 Lenguajes de Programacion Con PS501

    19/30

    ABBAutomationProductsTrainingPage

    -1$-

    ControlBuilderPS501

    Pro%ect(Proecto)

    P' 7lobal variable"(Gariable" 7lobale") ata t&e"(i&o de dato")

    eclaracin

    (variable" locale") Codi$o

    #a e"tructura de un &ro$rama (1)

    7rabado en arcivo,

    name+&ro

    n &roecto contiene

    un am&lio ran$o de

    P Pro$ramm -

    ' 'r$ani"ation -

    nit"

    En la &o"icin inicial a un &ro$rama

    #lamado P#CPB7 (Pro$rama Princi&al)

    e" e%ecutado c*clicamente

  • 7/21/2019 Lenguajes de Programacion Con PS501

    20/30

    ABBAutomationProductsTrainingPage

    -20-

    ControlBuilderPS501

    #a e"tructura de un &ro$rama (3)

    Pro$ram PB7

    :

    unction :

    :

    PB7

    :

    unction bloc2

  • 7/21/2019 Lenguajes de Programacion Con PS501

    21/30

    ABBAutomationProd

    uctsTrainingPage

    -21-

    ControlBuilderPS501

    :orma" Im&ortante",

    #o" P'" llamado" "iem&re vuelven al 4ue llama(&ro$rama "u" mdulo" e"t!n enla@ado")

    en$a en cuenta el ciclo del &ro$rama (ccle time)

    Proecto" e%ecutado" dentro del ciclo an de "er

    "iem&re un &ro$rama definido con el nombreP#CPB7

    #a e"tructura de un &ro$rama , :orma" &ara e"cribir un &ro$rama de u"uario

    efinicin, Se$Hn e" Standar IEC 61131-3

    P#CPB7 e" el nombre de un P' c*clico

  • 7/21/2019 Lenguajes de Programacion Con PS501

    22/30

    ABBAutomationProd

    uctsTrainingPage

    -22-

    ControlBuilderPS501

    #a e"tructura de un &ro$rama , #lamada de P'" (1)

    P',#lamada de"de el editor

    P',#lamada de"de el &ro$rama

  • 7/21/2019 Lenguajes de Programacion Con PS501

    23/30

    ABBAutomationProd

    uctsTrainingPage

    -23-

    ControlBuilderPS501

    #a e"tructura de un &ro$rama , #lamada de P'" ()

    #lamada de &ro$rama"

    dentro del &ro$rama &&al,

    P#CPB7

  • 7/21/2019 Lenguajes de Programacion Con PS501

    24/30

    ABBAutomationProd

    uctsTrainingPage

    -24-

    ControlBuilderPS501

    #a e"tructura de un &ro$rama , #a" funcione" lo" o&eradore"

    A"i$nadore"

    '&eradore" ooleano"

    '&eradore" Anal$ico"+

    Com&aradore"

    Selectore" '&erador Beal

    '&erador Sift

    Convertidor de i&o

    Su re&re"entacin de&ende del

    len$ua%e de &ro$ramacin e"co$ido+#a e.&re"in OPERATOR no

    e.i"te en el St!ndar+ En el e"t!ndar

    IEC 61131-3 lo" o&eradore" e"t!n

    definido" ba%o funciones estndar+

    Pero 3S cre una li"ta de o&eradore"

    &ara "im&lificar la o&eracin,

    8a diferente" $ru&o" de o&eradore",

    '&erador

    uncione"

  • 7/21/2019 Lenguajes de Programacion Con PS501

    25/30

    ABBAutomationProd

    uctsTrainingPage

    -25-

    ControlBuilderPS501

    #a e"tructura de un &ro$rama , #a" funcione" lo4ue" de uncione"

    uncione" Strin$#E: #E BI78 ?I C':CA I:SEB E#EE BEP#ACE I:

    eteccin de ram&aBBI7 etecta ram&a &o"itiva

    BI7 etecta ram&a ne$ativa

    Contador

    C Incrementa &or cada ram&a (u&- counter)C ecrementa &or cada ram&a (don - counter)

    C Incrementa D decrementa en cada ram&a (u&-Ddon

    counter)

    em&ori@adorP Pul"o

    ': em&ori@ador Activar con Betra"o' em&ori@ador e"activar con Betra"o

    uncione"

    lo4ue" de uncione"

  • 7/21/2019 Lenguajes de Programacion Con PS501

    26/30

    ABBAutomationProd

    uctsTrainingPage

    -2-

    ControlBuilderPS501

    Informacin !"ica "obre el PS501

    #o" len$ua%e" de &ro$ramacin

    P'" ti&o" de dato"

    #a e"tructura de un &ro$rama

    #a" diferente" librer*a"

    #a" #ibrer*a"

    Coming up

    f * * C

  • 7/21/2019 Lenguajes de Programacion Con PS501

    27/30

    ABBAutomationProd

    uctsTrainingPage

    -2!-

    ControlBuilderPS501

    #a" diferente" librer*a", #ibrer*a E"tandar, &+e%+ C

    # dif t lib * #ib * d l b i t % P?

  • 7/21/2019 Lenguajes de Programacion Con PS501

    28/30

    ABBAutomationProd

    uctsTrainingPage

    -2"-

    ControlBuilderPS501

    #a" diferente" librer*a", #ibrer*a del abricante, &+e%+ P?

    # dif t lib * #ib * d i

  • 7/21/2019 Lenguajes de Programacion Con PS501

    29/30

    ABBAutomationProd

    uctsTrainingPage

    -2$-

    ControlBuilderPS501

    #a" diferente" librer*a", #ibrer*a de u"uario

    e different librarie", Creando una librer*a de u"uario,

  • 7/21/2019 Lenguajes de Programacion Con PS501

    30/30

    ABBAutomationProd

    uctsTrainingPage

    -30-

    ControlBuilderPS501

    e different librarie", Creando una librer*a de u"uario,

    1+ Crear el o : , &ro$rame com&ile te"tee e.&orte,

    + Abrir un nuevo Proecto e im&orte "u" " o :" 4ue 4uiera car$ar en la nueva librer

    ;Bebuild all