curso st prog1

Upload: cjutp86

Post on 04-Apr-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 Curso St Prog1

    1/80

    s

    ST PROG1 Nro # i

    ST-PROG1

    PROGRAMACIN DE PLCs CON SIMATIC STEP7NIVEL BSICO

    Contenido del curso

    1 MONTAJE Y CONEXIN1.1 MONTAJE MECNICO1.2 TENDIDO DE CABLES

    2 PRINCIPIOS DE PROGRAMACIN2.1 DEFINICIONES BSICAS2.2 SISTEMAS DE NUMERACIN

    3 DIRECCIONAMIENTO Y ACCESO A LA PERIFERIA3.1 IDENTIFICACIN DE SEALES3.2 DESIGNACIN DE ENTRADAS Y SALIDAS DIGITALES3.3 DESIGNACIN DE SEALES INTERMEDIAS3.4 DIRECCIONAMIENTO DE LAS TARJETAS ANALGICAS3.5 TIPOS DE DIRECCIONAMIENTO3.6 IMAGEN DEL PROCESO3.7 DIRECCIONAMIENTO DE LOS MDULOS S7-300

    4 INTRODUCCIN AL LENGUAJE DE PROGRAMACIN STEP74.1 FORMAS DE REPRESENTAR UN PROGRAMA EN STEP74.2 OPERANDOS4.3 ESTRUCTURA DEL PROGRAMA4.4 FORMAS DE PROGRAMACIN

    5 OPERACIONES LGICAS CON BITs5.1 DESCRIPCIN5.2 CONTACTO NORMALMENTE ABIERTO5.3 CONTACTO NORMALMENTE CERRADO5.4 XOR O-EXLUSIVA5.5 INVERTIR RESULTADO LGICO5.6 BOBINA DE REL5.7 CONECTOR5.8 DESACTIVAR SALIDA

    5.9 ACTIVAR SALIDA5.10 ACTIVAR FLIP-FLOP

  • 7/29/2019 Curso St Prog1

    2/80

    s

    ST PROG1 Nro # ii

    5.11 DESACTIVAR FLIP-FLOP5.12 DETECTAR FLANCO DECRECIENTE

    5.13 DETECTAR FLANCO CRECIENTE5.14 CARGAR RLO EN REGISTRO RB5.15 DETECTAR FLANCO DE SEAL NEGATIVO5.16 DETECTAR FLANCO DE SEAL POSITIVO

    6 OPERACIONES DE TEMPORIZACIN6.1 DESCRIPCIN6.2 REA DE MEMORIA Y COMPONENTES6.3 TEMPORIZADOR TIPO IMPULSO6.4 TEMPORIZADOR TIPO IMPULSO PROLONGADO

    6.5 TEMPORIZADOR TIPO RETARDO A LA CONEXIN6.6 TEMPORIZADOR TIPO RETARDO A LA CONEXIN CON MEMORIA6.7 TEMPORIZADOR TIPO RETARDO A LA DESCONEXIN

    7 OPERACIONES DE CONTAJE7.1 CONCEPTOS7.2 PARAMETRIZAR E INCREMENTAR/DECREMENTAR CONTADOR7.3 PARAMETRIZAR E INCREMENTAR CONTADOR7.4 PARAMETRIZAR Y DECREMENTAR CONTADOR7.5 PONER CONTADOR AL VALOR INICIAL7.6 INCREMENTAR CONTADOR7.7 DECREMENTAR CONTADOR

    8 OPERACIONES DE COMPARACIN8.1 LISTA DE OPERACIONES8.2 COMPARAR ENTEROS8.3 COMPARAR ENTEROS DOBLES8.4 COMPARAR NMEROS DE COMA FLOTANTE

  • 7/29/2019 Curso St Prog1

    3/80

    s

    ST PROG1 Nro # 1

    1. MONTAJE Y CONEXIN DE LOS PLCs SIMATIC S7

    1.1 MONTAJE MECNICO

    1.1.1 Montaje del PLC S7-300

    1.1.2 Montaje del PLC S7-400

  • 7/29/2019 Curso St Prog1

    4/80

    s

    1.2 TENDIDO DE CABLES

    1.2.1 Tendidos de las lneas

    1.2.1.1 Tendido dentro de un armario

    A la hora de cablear un armario, la disposicin de las lneas juega unpapel esencial a la hora de dar inmunidad al sistema (compatibilidadelectromagntica). Por ello, durante la fase de planificacin conviene dividir laslneas en los 3 grupos siguientes

    Grupo de lneas 1:Lneas apantalladas para datos (para PG, OP, SINEC L1,....)

    Lneas analgicas apantalladasLneas sin pantalla para tensiones continuas y alternas 60VLneas apantalladas para tensiones continuas y alternas 230 V

    Grupos de lneas 2:Lneas sin pantalla para tensiones continuas y alternas > 60V y 230 V

    Grupo de lneas 3:Lneas sin pantalla para tensiones continuas y alternas > 230V y 1KV

    Dentro del armario es preciso tender cada grupo de lneas porseparado; es decir, las lneas se tendern: por canaletas diferenciadas en mazos diferenciados

    NOTAEntre lneas de seal y cables de energa de mas 500 V debe mantenerse unaseparacin mnima de 10 cm.

    Si se tienden lneas apantalladas, su pantalla deber conectarse en unabarra colectora de pantallas. La pantalla deber llevarse hasta la tarjeta, pero

    sin conectarse en ella.

    1.2.1.2 Tendido fuera del armario

    Las lneas fuera de armarios (pero dentro de edificios) se tendern sobresoportes metlicos. Las juntas de los portacables debern unirsegalvnicamente entre s y conectarse cada 2 a 30 m con la tierra local.

    Para lneas de seales analgicas deben utilizarse por principio cablesapantallados!

    Por las mismas vas de cables (trazas, bandejas, canales, tubos) pueden

    tenderse en comn:

    ST PROG1 Nro # 2

  • 7/29/2019 Curso St Prog1

    5/80

    s

    lneas digitales lneas de datos y analgicas apantalladas as como

    lneas de seal apantalladas con hasta 230 V Las lneas que conduzcan tensiones mayores de 230V debern tenderse

    por vas separadas (canales, tubos).

    1.2.1.3 Tendido de lneas fuera de edificios

    Cuando deba tender una lnea entre edificios, para la transmisin deseales digitales y analgicas deber utilizarse siempre un cable conpantalla doble.

    Forma de tender cables con pantalla doble: La pantalla externa se conectar en ambos extremos con la tierra del

    edificio. La pantalla interna solo se conectar en uno de los extremos, en el

    lado receptor.

    Procure lograr las mejores condiciones de equipotencialidad posible.Para ello tienda una lnea equipotencial que tenga una impedancia 10% de la impedancia de la pantalla de la lnea.

    A la hora de tender lneas fuera de edificios debern observarse los

    reglamentos de puesta tierra y de proteccin contra rayoscorrespondientes.

    1.2.1.4 Recomendaciones para el tendido de lneas.

    No tender cables de seal cerca de cables de potencia paralelos.

    Los cables sensibles a interferencias se tendern con una separacinmayor de 1m de las fuentes perturbadoras (contactor, transformador,motor, equipo de soldadura elctrica).

    Si dos componentes del PLC estn unidos a travs de varios cables deseal, procurar que estn separados lo menos posibles.

    Tender lo ms cerca posible los cables de seal y su lnea equipotencialasociada. Tender por el camino ms corto los cables de seal y lneaequipotencial.

    Tender lo ms cerca posible o retorcerlos los cables individualesasociados funcionalmente (lnea de ida y retorno, cable de alimentacin).

    Tender todas las lneas siempre muy prximas a superficies de masa.

    ST PROG1 Nro # 3

  • 7/29/2019 Curso St Prog1

    6/80

    s

    Evitar prolongar cables o lneas por intermedio de bornes o similares.

    Tender por canaletas y cajas separadas los cables de potencia y cablesde seal.

    Contactar las pantallas deforma superficial (No puntual!)!

    1.2.2 Medidas contra interferencias

    A menudo, las medidas para suprimir interferencias slo se tomancuando ya est funcionando el PLC y est perturbada la recepcin correcta deuna seal til. Con frecuencia, los gastos para tales medidas (p. ej. contactosespeciales) pueden reducirse de forma considerable si ya durante laconfiguracin del PLC se observan los puntos siguientes.

    Entre ellos cabe mencionar: Separacin espacial entre equipos y lneas Puesta a masa de todas las piezas metlicas inactivas Filtrado de lneas de red seal Apantallamiento de los equipos y lneas Medidas supresoras especiales

    1.2.2.1 Separacin especial entre equipos y lneas

    Los campos magnticos o alternos de baja frecuencia (p. ej. 50 Hz) solopueden atenuarse sensiblemente a un costo elevado. Este problemas se puederesolver con frecuencia sin mas que dejar una separacin lo mayor posibleentre la fuente y el receptor de interferencia.

    1.2.2.2 Puesta a masa de las piezas metlicas inactivas

    Otro factor importante para lograr una instalacin inmune es una buenapuesta a masa.

    Baja puesta a masa se entiende la interconexin galvnica de todas laspiezas metlicas inactivas (VDE 0160) Bsicamente se utilizar el principio dela puesta a masa superficial.

    NOTATodas las piezas metlicas inactivas y capaces de conducir debern ponerse atierra!

    Instrucciones para realizar esta puesta a masa:

    Todas las conexiones de masa debern realizarse con baja impedancia.

    ST PROG1 Nro # 4

  • 7/29/2019 Curso St Prog1

    7/80

    s

    Todas las piezas metlicas debern conectarse a lo largo de una gransuperficie. Para establecer las conexiones utilice siempre bandas de

    masa especialmente anchas. Lo decisivo no es la seccin de la lnea deconexin, sino la superficie de la conexin de masa. Las uniones atornilladas debern llevar siempre arandelas Grower o de

    abanico.

    1.2.2.3 Filtros para lneas de red y de sealEl filtrado de las lneas de red y de seal constituyen una medida para

    reducir las interferencias propagadas por las lneas dentro del armario nodebern aparecer en las lneas de alimentacin y en las lneas de seal ningntipo de sobretensiones.

    Las sobretensiones se evitan tomando las medidas siguientes: Desparasitaje de lneas de redSi el armario se alimenta desde la red de 230 V, en la lnea de entrada

    deber incorporarse un filtro de red. Este filtro se colocar por principio ala entrada del armario. Al instalarlo, atender a que el filtro de red estunido a la masa del armario a lo largo de una gran superficie y con lamnima impedancia posible (las superficies de contacto debern tenerbrillo metlico)

    Condensadores de derivacin en caso de alimentacin con corriente

    continuaCuando un armario se conecta a una alimentacin central de 24V, en elautmata pueden aparecer interferencias inyectadas a travs de dichaalimentacin.Por ello se recomienda incorporar condensadores de derivacin en elpunto de entrada en el armario de la lnea de 24 V. Los condensadoresse montarn en la masa del armario o en la barra de pantalla (Fig. 1-1).

    1.2.3 Apantallamiento de equipos y lneas

    El apantallamiento (blindaje), constituye una medida para debilitar

    (atenuar) campos perturbadores de origen magntico elctrico oelectromagntico. Esta medida puede dividirse en: apantallamiento de equipos, apantallamiento de lneas.

    ST PROG1 Nro # 5

  • 7/29/2019 Curso St Prog1

    8/80

    s

    ST PROG1 Nro # 6

    Fig. 1-1 Disposicin de los condensadores de derivacin

    1.2.3.1 Apantallamiento de equipos

    Cuando se utilizan armarios o cajas para apantallar el autmata,observar las instrucciones siguientes:

    Si estn solapadas las tapas del armario tales como piezas laterales,paredes posteriores, chapas de techo y suelo, todas estas piezas secontactarn a distancias suficientes (p. ej. 50mm).

    Las puertas deben unirse a la masa del armario a travs de conexionessuplementarias; utilice para ello varias bandas de masa.

    Las lneas que salen de la caja de pantalla debern ir apantalladas o

    llevadas a travs de filtros. Si dentro del armario se encuentran fuentes perturbadoras fuertes(transformadores, cables, a motores, etc), stas debern separarse dereas electrnicas sensibles mediante chapas. Dichas chapas seatornillarn en varios puntos a la masa del armario, minimizando laimpedancia.

    Las tensiones perturbadoras inyectadas en el PLC a travs de las lneasde seal y de alimentacin se derivan en el punto central de tierra(carrilnormalizado). El punto central de tierra deber unirse con un conductor decobre lo ms corto posible y con una seccin 10 mm2 con el conductor de

    proteccin PE (carril de tierra).

    +24V 0V

    p.ej. 0,6 Masa del0,2 F

    0,6 F 0,6 F

    p.ej. 0,2

    0 V+24 V

    Esquema de Principio

  • 7/29/2019 Curso St Prog1

    9/80

    s

    ST PROG1 Nro # 7

    1.2.3.2 Apantallamiento de lneas

    Generalmente las lneas apantalladas se contactarn con el potencial delarmario siempre en ambos extremos. Solo as es posible suprimiradecuadamente todas las frecuencias interferentes inyectadas. Contacte lapantalla en la pantalla en la barra colectora de pantallas; la pantalla debercontinuar acompaando al cable hasta la tarjeta (pero no se contactar enesta).

    NOTAEn caso de fluctuaciones en el potencial de tierra, a travs de la pantallacontactada en ambos extremos puede circular una corriente de equilibrio. Paraevitarlo, una con una lnea equipotencial los componentes interconectados.

    En los PLCs SIMATIC, las corrientes perturbadoras que circulan por laspantallas de cables se derivan a tierra a travs de la barra de pantalla y la lneaequipotencial. Para evitar que estas corrientes derivadas constituyan por si otrafuente perturbadora, procurar que circulen adecuadamente por un conductor debaja impedancia hacia tierra; para ello:

    Apretar fuertemente los tornillos de fijacin de conectores de cables,tarjetas y lneas equipotencial.

    Proteger de la corrosin las superficies de contacto de las lneasequipotencial.

    1.2.4 Uso de medidas supresoras especiales

    1.2.4.1 Supresin en inductancias

    Las inductancias montadas en el mismo armario y que no sean atacadasdirectamente por salidas SIMATIC (p. Ej. Bobinas de contactores y rels)debern llevar elementos supresores (p. Ej. Elementos RC).

    Supresin en bobinas de c.c. Supresin en bobinas de c.a.

    con diodo con diodo Zener con varistor con elemento RC

    Fig. 1-2 Supresin de bobinas

  • 7/29/2019 Curso St Prog1

    10/80

    s

    ST PROG1 Nro # 8

    1.2.4.2 Blindajes de inductancias

    Conviene separar del resto del armario usando chapas las reas delmismo que incluyan grandes inductancias como transformadores o contactores.

    1.2.4.3 Proteccin contra cargas electrotsticas

    Para proteger los equipos y las tarjetas o mdulos contra cargaselectrotsticas conviene usar cajas o armarios metlicos que tengan una buenaconexin galvnica con el punto de puesta a tierra en el lugar deemplazamiento.

    Si desea instalar su PLC dentro de una caja, utilice preferentemente

    cajas de fundicin o de chapa. Las cajas de plstico debern tener siempre unasuperficie metalizada.

    Las puertas o tapas de las cajas debern estar unidas con el cuerpo dela misma, puesto a tierra, a travs de bandas de masa o resortes de contacto.

    Cuando efecte trabajos estando abierto el armario o la caja, observe lasdirectrices para la proteccin de componentes y mdulos sensibles a las cargaselectrostticas.

    1.2.5 Medidas de seguridad

    Al proyectar instalaciones con PLCs lo mismo que ocurre con mandosde contactores es necesario observar las normas en vigor (p. Ej. VDE 0100,VDE 0113, VDE 0160). Puntos importantes:

    Se evitarn los estados que puedan poner en peligro las personas o losvalores materiales.

    Al retornar la tensin de red tras un corte, o rearmar el dispositivo dePARADA DE EMERGENCIA no debern arrancar automticamente la

    mquinas. En caso de avera en el PLC, no debern entorpecerse en ningn caso

    las rdenes procedentes de dispositivos de PARADA DE EMERGENCIAy de interruptores de disposicin de seguridad. Estos dispositivos deproteccin deben influir directamente sobre la parte de potencia de losactuadores.

    Al accionar los dispositivos de PARADA DE EMERGENCIA deberalcanzarse un estado no peligroso para las personas y la instalacin: Debern desconectarse todos los actuadores y accionamientos que

    puedan ser peligrosos (p. ej., accionamientos de cabezal enmquinas herramientas)

  • 7/29/2019 Curso St Prog1

    11/80

    s

    ST PROG1 Nro # 9

    En cambio, los actuadores y accionamientos cuya desconexinpueda poner en peligro a personas e instalaciones (p. Ej.,

    dispositivos de fijacin de piezas) no debern poderse desconectardesde el dispositivo de PARADA DE EMERGENCIA.

    La actuacin del dispositivo de PARADA DE EMERGENCIA debe serdetectada por el PLC, y evaluada por el programa de mando.

    1.2.5.1 Proteccin contra contactos indirectos

    Las piezas conductoras accesibles no debern quedar sometidas a unatensin peligrosa en caso de defecto. Por ello debern incluirse en una medidade proteccin contra tensiones de contacto excesivas.

    Esto se cumple si todas las piezas metlicas accesibles p. ej., carriles,montantes, as como el armario que puedan quedar sometidas a tensin encaso de defecto de aislamiento se unen elctricamente de forma perfecta conel conductor de proteccin (PE). La resistencia mxima admisible entre elterminal del conductor de proteccin y la pieza a proteger es de 0,5 .

  • 7/29/2019 Curso St Prog1

    12/80

    s

    ST PROG1 Nro # 10

    2. PRINCIPIOS DE PROGRAMACIN

    2.1 DEFINICIONES BSICAS

    2.1.1 Seales analgicas y digitales

    2.1.1.1 Seales analgicas

    La transmisin de informacin analgica est caracterizada por uncambio continuo de la amplitud de la seal. Los humanos, por ejemplo,

    registran la informacin ptica, acstica y sensorial esencialmente en la formade seales analgicas.

    En la ingeniera de procesos, la seal 420 mA es transmitida en unaforma puramente analgica. Una corriente proporcional al valor medido fluyeentre el transmisor y el instrumento indicador o la tarjeta de entrada de un PLC.Si la corriente cambia, el cambio es inmediatamente registrado por todos losdispositivos presentes en el circuito.

    2.1.1.2 Seales digitales

    Una seal digital no cambia continuamente si no que es transmitida enpaquetes discretos. No es inmediatamente interpretable, en cambio, necesitaser primero decodificada por el receptor. Hay muchas maneras por las cualesuna seal digital puede ser transmitida: como pulsos elctricos que saltan entredos o ms niveles de voltaje o como cdigo Morse. Incluso las seales dehumo o los golpes de un tambor pueden ser clasificadas como una sealdigital.

    2.1.2 Seales binarias

    Para el PLC las seales digitales de entrada solo pueden adquirir los

    estados de: existe tensin o no existe tensin, nunca un estado intermedio.De la misma manera las seales digitales de salida solo pueden estarconectadas o desconectadas. Este tipo de seales que solo pueden tomardos estados definidos se les conoce como seales binarias. En este sentido,las seales digitales de entrada y salida del PLC descritas hasta ahora, sonseales binarias.

    2.1.2.1 Estado de seal

    A los 2 estados posibles de una seal binaria se les asocia, para efectos

    de procesamiento, el estado de seal 0 y 1. En el PLC, la correspondencia

  • 7/29/2019 Curso St Prog1

    13/80

    s

    ST PROG1 Nro # 11

    entre los estados fsicos de las seales de entrada/salida y los estados deseal 0y 1 es la que se muestra en la Fig.2-1.

    Para una seal de entrada, por ejemplo, el estado de seal toma el valorde 1 cuando se detecta el 100% del voltaje en el canal de entrada. El estadode seal es 0 cuando existe el 0% del voltaje. El 0% y 100% del voltaje sedeterminan segn criterios de tolerancia.

    Estado deSeal

    LamparaEncendida

    LamparaApagada

    "0" "1"

    CPU

    Fuentede

    Alimentacion

    Estado deSeal Entradas Salidas

    Exite tensin+24V

    No existe Tensin0v

    #

    Estado deSeal

    0

    1

    No ExisteTensinExiste

    Tensin

    Desconexin

    Conexin

    "1" "0"

    1L+

    1L

    2L+

    2L-

    Fig. 2-1 Estados de seal 0 y 1

    Los niveles de voltaje de dos seales de entrada pueden ser distintos.La determinacin del estado de seal se hace respecto al 0% y 100% delvoltaje que se maneja y no respecto a un nivel de voltaje determinado. Ver Fig.2-2.

    VOLTAJE

    ESTADO DE SENAL "1"(POR EJEMP : +24v)

    A B C

    +230V +115V +24V

    0V 0V 0V

    CASO :

    0

    Fig. 2-2 Seal binaria

    2.1.2.2 Tipos de contactos y su estado de seal

  • 7/29/2019 Curso St Prog1

    14/80

    s

    ST PROG1 Nro # 12

    Hemos visto que el PLC asocia el estado de seal 0 a las entradasdonde no existe tensin y asocia el estado de seal 1 a las entradas donde

    existe tensin. Sin embargo, el PLC no es capaz de determinar de estosunos y ceros la situacin fsica que los produce. Por ejemplo, tener unaentrada con estado de seal 1 puede ser el resultado de dos situacionesfsicas distintas. Analicemos la Tabla 2-1.

    Vemos que un estado de seal 1 lo produce un contacto normalmenteabierto accionado, o un contacto normalmente cerrado no accionado. De lamisma manera, el estado de seal 0 lo produce un contacto normalmenteabierto no accionado o un contacto normalmente cerrado accionado. Es claroentonces que el PLC no puede determinar a partir del estado, el tipo decontacto asociado a la entrada.

    TIPO DE CONTACTO ESTADO DELCONTACTO

    TENSIN DEENTRADA

    ESTADO DE SEALA LA ENTRADA

    Contacto NO ACCIONADO EXISTE 1

    (normalmente abierto) NOACCIONADO

    NO EXISTE 0

    Contacto NC ACCIONADO NO EXISTE 0

    (normalmente cerrado) NOACCIONADO

    EXISTE 1

    Tabla 2-1 Tipos de contacto y su estado de seal

    Esta situacin debe tomarse muy en cuenta, sobre todo en el momentode la programacin. El que elabora el programa de control debe tener muyclaro lo que representan los unos y ceros que se manejan; especialmentecuando se trata de seales relacionadas con la seguridad de la instalacin(rotura de cable, derivacin a tierra, parada de emergencia, )

    2.1.2 Concepto de bit, byte y palabra

    Analicemos las siguientes definiciones en conjunto con el diagramaadjunto.

    BIT Estado de seal 0 1

    7 6 5 4 3 2 1 0

    BYTE Longitud = 8 bits

  • 7/29/2019 Curso St Prog1

    15/80

    s

    ST PROG1 Nro # 13

    15 8 7 0

    WORD Longitud = 16 bitsByte alto (MSB) Byte bajo (LSB)

    2.1.2.1 Bit

    El bit es la unidad de informacin ms pequea. Solo puede tomar losvalores 0 y 1. Un bit es suficiente para representar una seal binaria.

    2.1.2.2 Byte

    El byte es una unidad compuesta de 8 bits. Los bits se agrupan dederecha a izquierda tomando como nmero de bit de 0 al 7. En un byte sepuede representar el estado de hasta 8 seales binarias (1 por cada bit).

    2.1.2.3 Word o palabra

    La palabra es una unidad mayor, compuesta de 16 bits = 2 bytes. Losbits se agrupan de derecha a izquierda tomando un nmero de bit del 0 al 15.En una palabra se pueden representar hasta 16 seales binarias.

    2.2 SISTEMAS DE NUMERACIN

    2.2.1 Formas de representar los nmeros

    Veamos el siguiente ejemplo: Un contador tiene la tarea de contarbalones. El estado actual del contador es 11, indicado en un visualizador.Cuantos balones hay?

    ) )

    )

    La solucin que usted probablemente ha seleccionado es la alternativaa), porque los usuarios estn usando la representacin de los valoresnumricos en el sistema decimal. El sistema decimal es solo de muchossistemas de numeracin existentes.

    El procesador de un Controlador Programable puede procesarsolamente los estados de seal 0 y 1. Esto requiere un sistema denumeracin que usa solo estos dgitos. El sistema binario usa slo 0 y 1. Eneste sistema de numeracin, la secuencia de dgitos 11 es la representacin

    para la solucin b) (3 en sistema decimal).

  • 7/29/2019 Curso St Prog1

    16/80

    s

    ST PROG1 Nro # 14

    Los nmeros binarios necesitan mas espacios que sus equivalentesdecimales, esto los hace difciles de usar. Es difcil recordar nmeros largos

    que consisten de ceros y unos. La dificultad para leer y convertir nmerosbinarios motiva el uso de un sistema hexadecimal. En este sistema, 11representa la solucin c) (17 en sistema decimal)

    2.2.2 Caractersticas de un sistema de numeracin

    Actualmente todos los sistemas de numeracin tienen la mismaestructura que el sistema decimal. Ellos pueden ser descritos usando trescaractersticas bsicas:

    Los dgitos La base o raz Los pesos

    La contribucin de cada uno de lo dgitos a todo el nmero depende dela posicin de estos dentro del nmero. Cada posicin tiene cierto peso que esigual a la potencia de la base escogida. El valor del nmero es obtenido almultiplicar cada dgito por el peso de su posicin y sumando los resultados.

    La tabla 2-2 muestra las caractersticas y un ejemplo para los sistemasbinario y decimal. Estos sistemas sern usados posteriormente durante el

    aprendizaje del lenguaje STEP 7.CARACTERSTICA SISTEMA BINARIO SISTEMA HEXADECIMALDgitos

    Base

    Pesos

    0,1

    2

    20 =1,21 =2,22 =4,23 =8, ..

    0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

    16

    160 = 1,161 = 16,162 = 256,163 = 4096,

    Ejemplo 11020 x 1 = 01 x 2 = 11 x 4 = 4 1102 = 0 + 2 + 4 = 5

    CDH13 x 1 = 1312 x 16 = 192 CDH = 13 + 192 = 205

    Tabla 2-2 Caractersticas de los sistemas binario y hexadecimal

    2.2.3 El cdigo BCD

    Los PLCs solamente pueden procesar nmeros en representacinbinaria. Estos son difciles de usar por los usuarios y por lo tanto no son

  • 7/29/2019 Curso St Prog1

    17/80

    s

    ST PROG1 Nro # 15

    prcticos para el ingreso o salida de valores numricos de un PLC. El uso denmeros hexadecimales tampoco es de gran ayuda; en su lugar, otro tipo de

    representacin es usada: el cdigo BCD (binary-coded decimal).

    Los nmeros en BCD son otro sistema de numeracin, pero uno en elcual los nmeros decimales han sido convertidos en un nmero binario, demodo que el PLC pueda procesarlo fcilmente.

    Los dgitos individuales del nmero decimal estn codificados en cuatrobits (dgitos binarios). Esta representacin con cuatro bits aparece por que elmayo dgito decimal, el 9, requiere como mnimo esta cantidad de dgitos en surepresentacin binaria (10012).

    La tabla 2-3 muestra la representacin de diversos nmeros en los

    sistemas de numeracin vistos.

    DECIMAL BINARIO HEXADECIMAL BCD01234

    556789

    10111213141516

    126127128

    510511512

    01

    101110010111011110001001101010111100110111101111

    1 0000

    111 1110111 11111 0000 0000

    1 1111 11101 1111 1111

    10 0000 0000

    0123456789ABCDEF10

    7E7F80

    1FE1FF200

    0000000100100011010001010110011110001001

    0001 00000001 00010001 00100001 01110001 01000001 01010001 0110

    0001 0010 01100001 0010 01110001 0010 1000

    0101 0001 00000101 0001 00010101 0001 0010

    Tabla 2-3 Nmeros en diferentes representaciones

  • 7/29/2019 Curso St Prog1

    18/80

    s

    ST PROG1 Nro # 16

    3. DIRECCIONAMIENTO Y ACCESO A LA PERIFERIA

    3.1 IDENTIFICACIN DE SEALES

    Al PLC llegan diversas seales de campo procedentes de los emisores,y salen otras seales hacia lmparas y elementos finales de control. Asmismo, al ejecutarse el programa contenido en la memoria se generan unaserie de seales internas auxiliares en la elaboracin de la lgica de control.Cmo se manejan sin confusin todas estas seales?

    Para identificar claramente las seales que se manejan en el PLC esnecesario darles un nombre o designacin. Cada vez que se hace referencia auna seal, se hace a travs de este nombre o designacin.

    La designacin de las seales puede hacerse considerando una nicaseal (1 bit) o un grupo de ellas (byte o palabra). Veamos como se lleva a caboesta designacin en cada caso.

    3.2 DESIGNACIN DE ENTRADAS Y SALIDAS DIGITALES

    Las seales de entrada y salida llegan y salen fsicamente de los bornesde conexin de las tarjetas de entrada y salida (Fig. 3-1).

    7 6 5 4 3 2 1 0

    0 0 1 0 1 1 0 0

    EJEMPLOS:

    E 0.3 INPUT BIT

    AB 5 OUPUT BYTE

    EW 2 INPUT WORD

    TIPO DE DIRECCIONSEAL

    BYTE 3

    13.5 ESTADO DE SEAL "1"

    BYTE 4

    No DELBIT

    E3.7 E3.5 E3.3 E3.1E3.0E3.2E3.4E3.6

    EMISORES

    +24V

    Fig. 3-1 Designacin de entradas y salidas

  • 7/29/2019 Curso St Prog1

    19/80

    s

    ST PROG1 Nro # 17

    Para efectos de identificacin, todas las seales que manejan lastarjetas se agrupan en conjuntos de 8, es decir por bytes. Y se les asigna un

    nmero byte (0..n); cada byte contiene a su vez 8 elementos: una seal porcada uno de sus 8 bits.

    Cualquier seal en las tarjetas queda definida mediante el nmero delgrupo al que pertenecen (nmero byte) y el nmero de elemento en el grupo(nmero bit). A esta informacin se le conoce como direccinde la seal.

    3.2.1 Designacin de seales bit

    La designacin de seales bit(una nica seal) se hace como sigue:

    Se da distintivo del tipo de seal:

    E EntradaA Salida

    Luego se indica la direccin de la seal, separando con un punto elnmero byte y el nmero bit:

    No. Byte No. Bit

    As por ejemplo, la designacin de la seal que llega a una tarjeta deentrada, en el grupo byte 0, elemento 3, es la siguiente:

    E 0 . 3

    Tipo de seal Nmero de bit

    Nmero de byte

    3.2.2 Designacin de seales byte y palabra

    Para hacer referencia a un grupo de seales es necesario aadir aldistintivo del tipo de seal, el tipo de grupo de que se trata: B para gruposbyte (8 elementos) y W para grupos palabra (en Ingls Word, 16 elementos).Esto es:

    EB Entrada ByteAB Salida ByteEW Entrada WordAW Salida Word

    La direccin de un grupo de seales queda determinada por la direccin

    byte de inicio del grupo. En este caso la direccin bit carece de sentido.

  • 7/29/2019 Curso St Prog1

    20/80

    s

    ST PROG1 Nro # 18

    As, por ejemplo:

    Al grupo de las 8 seales de salida pertenecientes al byte 5 se ledesigna:

    AB 5

    A la palabra que contiene los bytes 2 y 3 de entrada se le designa:

    EW 2

    Tipo de seal Nmero de byte

    Tipo de seal Nmero de byte

    (byte de inicio)

    Las seales E0.0, E0.1, , E0.7 forman el grupo EB0.

    Los grupos byte AB4 y AB5 forman el grupo palabra AW4.

    3.3 DESIGNACIN DE SEALES INTERMEDIAS

    Adems de las seales de entrada y salida existen otro tipo de seales

    en el PLC. Tal es el caso de las seales bandera, flags o marcas quesirven para guardar resultados intermedios en la lgica de control. Estasseales hacen las veces de los rels auxiliares en control convencional.

    Las marcas, as las llamaremos en adelante, son seales internas, noentran ni salen del PLC. Por tanto, no es posible asociarles el borne deconexin de alguna tarjeta. Estas seales se encuentran en una reginespecial de la memoria del CPU. Reservada especialmente para ellas.

    La designacin de las marcas se hace en forma similar a la designacinde entradas y salidas, con la diferencia de que estas seales no llegan ni

    salen de bornes de conexin, sino de localidades de memoria, y sudistintivo de seal es M(marca).

    3.4 DIRECCIONES DE LAS TARJETAS ANALGICAS

    Para cada canal de una tarjeta analgica son precisos dos bytes (unapalabra). Por ello, la direccin de un canal analgico est representada por elnmero de byte alto.

  • 7/29/2019 Curso St Prog1

    21/80

    s

    ST PROG1 Nro # 19

    3.5 TIPOS DE DIRECCIONAMIENTO

    Cada una de las seales de las tarjetas de entrada y salida tienen unadireccin. Como lo mencionramos anteriormente, las seales que maneja unatarjeta se agrupan en conjuntos de 8 (bytes) para efectos de direccionamiento.La direccin de una seal se hace dando el conjunto byte al que pertenece, y elnmero de elemento o nmero bit dentro de ese byte.

    Existe la posibilidad de manejar:

    Direccionamiento FIJO, y Direccionamiento VARIABLE.

    3.5.1 Direccionamiento fijo

    Cuando se trabaja direccionamiento fijo, la direccin de cada sealdepende de la posicin o puesto de enchufe de la tarjeta a la que pertenece.

    A cada puesto de enchufe se le asignan 4 direcciones bytes, (seenchufen o no tarjetas en el puesto). Se reservan 4 direcciones bytes porpuesto considerando que las tarjetas que manejan mayor nmero de sealesson aquellas de 32 puntos (4 bytes). En el caso de insertar una tarjeta de 16puntos, las 2 ltimas direcciones bytes que le corresponden al puesto deenchufe se pierden. As por ejemplo las seales que maneja la tarjeta en elpuesto de enchufe 0 corresponden a los bytes 0, 1, 2, 3. Los bytes 4,5, 6, 7 se encuentran en la tarjeta del puesto d enchufe 1 y assucesivamente.

    3.5.2 Direccionamiento variable

    La direccin de una seal puede ser independiente de la posicin opuesto de enchufe de la tarjeta a la que pertenece. As por ejemplo es posiblehacer que los bytes 0, 1, 2 y 3no correspondan a la tarjeta enchufada enel puesto 0, sino que correspondan a la tarjeta ubicada en el puesto de

    enchufe 3; A este tipo de direccionamiento se le conoce como direccionamientovariable.

    El direccionamiento variable es posible nicamente insertando unatarjeta IM (Interface Module) en el ltimo puesto de enchufe del bastidor. Lasdirecciones byte de inicio deseadas para cada uno de los puestos de enchufese fijan ajustando los micro-switchs (DIL) que tiene la tarjeta IM en la partelateral.

  • 7/29/2019 Curso St Prog1

    22/80

    s

    ST PROG1 Nro # 20

    3.6 IMAGEN DEL PROCESO

    Antes de comenzar la elaboracin propiamente del programa, y una vezque se ha iniciado la vigilancia del tiempo de ciclo, se realiza la carga de laImagen de Proceso de las Entradas. Esto consiste en vaciar el estado detodas las seales de entrada procedentes de las tarjetas, en una regin de lamemoria, especialmente destinada para ello, conocida como PAE (imagen deproceso de entrada). Ver fig. 3-2.

    Durante la elaboracin del programa, todas las consultas a los estadosde seal de las entradas se hace de la Imagen de Proceso de Entradas (PAE)y no directamente de las tarjetas.

    Los resultados del programa, producidos por la asignacin a las salidas,se escriben en otra regin de la memoria conocida como Imagen de Procesode Salidas (PAA). Al finalizar el programa despus de la ltima instruccin, setransmiten los estados de seal contenidos en la PAA a las tarjetas de salida.Hasta entonces se actualiza fsicamente el estado de conexin y desconexinde las salidas.

    ESTADOS DE SEAL

    ESTADOS DE SEAL

    DIRECCION ABSOLUTA DIRECCIONES DE BYTERELATIVAS

    EF00

    EF7FEF80

    EFFF

    0

    127

    0

    127

    PAA

    PAE

    IPE = IMAGEN DE PROCESO DE ENTRADAS

    IPS = IMAGEN DE PROCESO DE SALIDAS

    ENTRADAS SALIDAS

    H

    H

    H

    H

    DE LAS SALIDAS

    DE LAS ENTRADAS

    Fig. 3-2 Imgenes de proceso

  • 7/29/2019 Curso St Prog1

    23/80

    s

    ST PROG1 Nro # 21

    3.7 DIRECCIONAMIENTO DE LOS MDULOS S7-300

    3.7.1 Asignacin de direcciones en funcin del puesto de enchufe

    N puesto IM 3 4 5 6 7 8 9 10 11

    N puesto IM 3 4 5 6 7 8 9 10 11

    N puesto IM 3 4 5 6 7 8 9 10 11

    N puesto 2 3 4 5 6 7 8 9 10 11

  • 7/29/2019 Curso St Prog1

    24/80

    s

    ST PROG1 Nro # 22

    3.7.2 Correspondencia y direcciones para fila 0

    N puesto 2 3 4 5 6 7 8 9 10 11Direccin digital 0 4 8 12 16 20 24 28Direccin analgica 256 272 288 304 320 336 352 368

    3.7.3 Correspondencia y direcciones para fila 1

    N puesto 3 4 5 6 7 8 9 10 11Direccin digital 32 36 40 44 48 52 56 60Direccin analgica 384 400 416 432 448 464 480 496

    3.7.4 Correspondencia y direcciones para fila 2

    N puesto 3 4 5 6 7 8 9 10 11Direccin digital 64 68 72 76 80 84 88 92Direccin analgica 512 528 544 560 576 592 608 624

  • 7/29/2019 Curso St Prog1

    25/80

    s

    ST PROG1 Nro # 23

    3.7.5 Correspondencia y direcciones para fila 3

    N puesto 3 4 5 6 7 8 9 10 11Direccin digital 96 100 104 108 112 116 120 124Direccin analgica 640 656 672 688 704 720 736 752

  • 7/29/2019 Curso St Prog1

    26/80

    s

    ST PROG1 Nro # 24

    4.INTRODUCCIN AL LENGUAJE DE PROGRAMACIN

    STEP 7

    El STEP 7 es un lenguaje de programacin con el que se generan lasfunciones de automatizacin que sern ejecutadas por los PLCs SIMATIC S7.Estas funciones as generadas constituyen el programa de usuario, en el seencuentran las instrucciones precisas Cmo el PLC debe mandar o regularuna instalacin. STEP 7 es el software para configurar y programar lossistemas de automatizacin SIMATIC S7-300/400 y SIMATIC M7 300/400, ascomo los equipos completos SIMATIC C7. Por lo que respecta a la

    programacin y a la configuracin, un C7 es similar a un SIMATIC S7-300.

    4.1 FORMAS DE REPRESENTAR UN PROGRAMA EN STEP 7

    El lenguaje de programacin STEP 7 utiliza tres mtodos para larepresentacin de un programa:

    Lista de instrucciones (AWL)Representa el programa de usuario como una sucesin de abreviaturas

    de instrucciones. Es un lenguaje de programacin textual orientado a

    la mquina. En un programa creado en AWL, las diversasinstrucciones equivalen en gran medida a los pasos en los que laCPU ejecuta el programa. Una instruccin representa en AWL tienela siguiente estructura.

    Con quien realizamos laoperacin?

    ParmetroDiferencia operandos con elmismo identificador

    Identificador

    Qu tipo de operando es?

    Operando

    DireccinIndica la posicin relativa de unainstruccin dentro de un mdulo

    OperacinQu es lo que se desearealizar?

    002: U E 0.1

  • 7/29/2019 Curso St Prog1

    27/80

    s

    ST PROG1 Nro # 25

    Esquema de funciones (FUP)Es un lenguaje de programacin grfico que utiliza los cuadros de

    lgebra booleana para representar la lgica. En FUP se utilizansmbolos normalizados para representar las operaciones. El smbolodentro del rectngulo indica la operacin realizada.

    Esquema de contactos (KOP)Este tipo de representacin tambin es conocida como Diagrama

    Escalera o Ladder, las instrucciones son representadas consmbolos elctricos. KOP permite observar fcilmente el sentido dela circulacin de la corriente a travs de contactos, elementoscomplejos y bobinas.

    La Fig 4-1 muestra un ejemplo de estas dos ltimas representaciones.

    Opcionalmente para programar los sistemas de automatizacin SIMATICS7-300/400 se dispone de los siguientes lenguajes suministrablesopcionalmente:

    SCL para S7Es un lenguaje textual de alto nivel conforme a la norma DIN EN 61131-

    3. Contiene estructuras similares a las de los lenguajes deprogramacin Pascal y C. Por lo tanto, S7 SCL, es adecuado sobre

    todo para los usuarios ya acostumbrados a trabajar con lenguajes dealto nivel. S7 SCL se puede emplear para programar funcionesfrecuentes o muy complejas.

    GRAPH para S7Es un lenguaje de programacin que permite describir controles

    secuenciales (programacin de cadenas secuenciales) A tal efecto,el proceso se divide en etapas. Estas ltimas contienen sobre todoacciones para controlar las salidas. El paso de una etapa a otra secontrola mediante condiciones de transicin.

    HI GRAPH para S7Es un lenguaje de programacin que permite describir cmodamente losprocesos asincrnicos y no secuenciales en forma de grafos deestado. A tal efecto, la instalacin se divide en unidades funcionalesque pueden adoptar diversos estados. Las unidades funcionales sepueden sincronizar mediante el intercambio de mensajes.

    CFC para S7 y M7Es un lenguaje de programacin para interconectar grficamente las

    funciones existentes. Estas ltimas abarcan una amplia gama queincluye desde combinaciones lgicas sencillas hasta regulaciones y

    controles complejos. Se dispone de un gran nmero de funciones enforma de bloques contenidos en una librera. La programacin se

  • 7/29/2019 Curso St Prog1

    28/80

    s

    ST PROG1 Nro # 26

    lleva a cabo copiando lo bloques en un plano y contactndose entres mediante lneas

    FUPEsquema de Funciones

    KOPEsquema de Contactos

    E 1.0 E 1.1 E 1.2 A 4.0

    1

    &

    &

    E 1.0

    E 1.1

    E 1.2

    E 1.3E 1 3 E 1 4

    A4.0

    Fig. 4-1 Representaciones FUP y KOP

    Cada forma de representacin tiene sus propias caractersticas. Por estarazn, un mdulo de programa escrito en AWL, no puede convertirse a KOP oFUP en todos los casos. De la misma manera, las formas de representacingrfica tampoco son compatibles entre s. Sin embargo, todo programa escritoen KOP o FUP tiene su equivalente en AWL. La Fig. 4-2 resume lo

    anteriormente expuesto.

    AWL

    Fig. 4-2 Compatibilidad entre las formas de representacin

    FUP KOP

    AWL

  • 7/29/2019 Curso St Prog1

    29/80

    s

    ST PROG1 Nro # 27

    4.2 OPERANDOS

    La tabla 4-1 muestra los operandos disponibles en STEP 7:

    OPERANDO TIPO FUNCINE Entradas Interfases del proceso al PLCA Salidas Interfases del PLC al procesoM Marcas Memoria para resultados binarios

    intermediosD Datos Memoria para resultado digitales

    intermediosT Temporizadores Memorias para la realizacin de

    temporizaciones

    Z Contadores Memorias para la realizacin decontadores

    P Periferia Interfase del proceso al PLCB# Constante, 2 4 bytes Valor numrico fijoD# Constante de fecha IEC Valor numrico fijoL# Constante entera (32 bits) Valor numrico fijoP# Constante puntero Valor numrico fijo

    S5T# Constante de tiempo S5 (16 bits) Valor numrico fijo

    T# Constante de tiempo (16/32 bits) Valor numrico fijoTOD# Constante de hora IEC (32 bits) Valor numrico fijoC# Constante de contador (16/32

    bits)Valor numrico fijo

    2# Constante binaria (16/32 bits) Valor numrico fijo16# Constante hexadecimal (16/32

    bits)Valor numrico fijo

    OB,FC, FB, DB Mdulos de programa Auxiliares para estructurar elprograma

    Tabla 4-1 Zonas de operandos disponibles en STEP 7

    4.3 ESTRUCTURA DEL PROGRAMA

    El programa de la CPU consta de dos programas: el del sistema y el deusuario.

    El programa del sistema es la suma de todas las instrucciones ydeclaraciones involucradas en la ejecucin de las funciones internas; como elrespaldo de datos en caso de falla de tensin, la organizacin de diversas

    funciones anidadas en cada bloque y otros. El programa del sistema se

  • 7/29/2019 Curso St Prog1

    30/80

    s

    ST PROG1 Nro # 28

    encuentra almacenado en una PROM no voltil y en una EPROM. El usuariono tiene acceso a este programa.

    El programa de usuario es la suma de todas las instrucciones ydeclaraciones para procesar las seales que controlarn la mquina o proceso.Este programa es estructurado y est subdividido en varias secciones llamadasbloques.

    Los Bloques de organizacin forman la interfase entre el programa deusuario y el programa del sistema. Este llama a estos bloques cuando ocurrecierto evento. Tambin estn disponibles bloques de funciones estndarpara aplicaciones generales. A pesar de que estos bloques son parte delprograma del sistema, pueden ser llamados por el programa de usuario.

    La Fig. 4-3 resume lo explicado anteriormente

    Integrado en la CPU

    Funcionesespecialesintegradas

    Programa

    DeUsuario

    Programa

    DelSistema Bloque de

    Funcionesestndar

    Bloques deorganizacin

    En mdulo de memoria usuario

    Fig. 4.-3 Programas en la CPU

  • 7/29/2019 Curso St Prog1

    31/80

    s

    ST PROG1 Nro # 29

    4.4 FORMAS DE PROGRAMACIN

    Al momento de realizar el programa que gobernar determinada mquinao secuencia podemos escoger entre dos formas para estructurar un programaSTEP 7:

    Programacin lineal. Programacin estructurada.

    4.4.1 Programacin lineal

    Este tipo de estructura es usado cuando se tienen tareas simples deautomatizacin, consiste en programar todas las instrucciones en una sola

    seccin o mdulo.

    Para los PLCs SIEMENS (Series S5 y S7) esta seccin es el Mdulo deOrganizacin 1, ms conocido como OB1. Este mdulo se procesacclicamente, es decir, tras la ltima instruccin se vuelve a ejecutar la primera.

    4.4.2 Programacin estructurada

    Es la forma de programacin utilizada para resolver tareas complejas yconsiste en dividir el programa global en secciones (mdulos) que realizantareas especficas.

    Las ventajas que se obtienen con la programacin estructurada son:

    Programacin ms simple y clara. Posibilidad de normalizar partes del programa. Facilidad para efectuar modificaciones Prueba del programa ms sencilla de realizar. Facilidad para la puesta en marcha del sistema automatizado.

    STEP 7 pone a disposicin del programador los siguientes mdulos:

  • 7/29/2019 Curso St Prog1

    32/80

    s

    ST PROG1 Nro # 30

    FB

    FCOB

    DB

    FB BLOQUE DE FUNCIONES

    FC FUNCIONES

    OB BLOQUE DE ORGANIZACIN

    BLOQUES DEPROCESAMIIENTO

    DB BLOQUE DE DATOS

    BLOQUES DEALMACENAMIENTO

    PROGRAMA

    DEAPLICACIN

    Mdulos de Organizacin (OB)Encargados de gestionar el programa de mando.

    Funciones (FC)Son mdulos de programa sin memoria. Incluyen el programa de usuario

    dividido segn aspectos funcionales o tecnolgicos.

    Mdulos de Funcin (FB)Son mdulos de programa con memoria. En ellos se programan partes

    del programa; como por ejemplo: valores de consigna, constantes,temporizaciones, textos, ......

    Usando llamadas es posible abandonar un mdulo y saltar a otro. Estopermite anidar hasta 32 niveles en mdulos de programa, funcionales y depaso. Si el anidado supera los 32 niveles el PLC pasa a STOP generando elsiguiente mensaje de error: "Desbordamiento en pila de mdulos STUEB".

  • 7/29/2019 Curso St Prog1

    33/80

    s

    ST PROG1 Nro # 31

    4.4.3 Estructura de un mdulo

    Cada mdulo se compone de: Encabezamiento con los datos relativos a tipo, nmero y longitud del

    mdulo. Cuerpo, incluye el programa STEP 7 o los datos.

    4.4.4 Mdulos de Organizacin (OB)

    Como se mencion anteriormente, estos mdulos constituyen lainterfase entre el sistema operativo (programa del sistema) y el programa demando (programa de usuario). Cada uno de los distintos bloques deorganizacin se hace cargo de una determinada tarea parcial. Cada bloque de

    organizacin puede crear un programa estructurado, creando funciones (FC) ybloques de funcin (FB) y llamndolas en el rea de instrucciones. Al llamar aun bloque tiene que asignar datos a los parmetros declarados.

    En el caso ms sencillo de programacin usted necesitar bloques deorganizacin para lo siguiente:

    Mdulo de organizacin que lo llama cclicamente el sistema operativo(OB1)

    Mdulos de organizacin para arranque (OB100, OB101)

    Mdulos de organizacin para tratamiento de errores (OB80 a OB87,OB121 a OB122), si es que su CPU no debe pasar a STOP en casode producirse un error.

    Otros ofrecen funciones operativas (del mismo modo que los mdulosfuncionales integrados), llamados desde el programa de mando:modificar las alarmas de la CPU y del proceso

    La Fig. 3-4 muestra la forma de construir un programa de mandoestructurado. Adems pone de relieve la importancia de los mdulos deorganizacin.

    4.4.5 Funciones (FC)

    Una funcin (FC) es un bloque lgico sin memoria. Tras la ejecucin dela FC, los parmetros de salida contienen los valores de la funcin que se hancalculado. En este caso, es el usuario quien decide cmo y dnde se utilizarny guardarn los parmetros actuales despus de llamar una FC.

    La FC contiene un programa, que se ejecuta siempre cuando la FC esllamada por otro bloque lgico. Las funciones se pueden utilizar para:

    Devolver un valor de funcin al bloque invocante (ej.: funcionesmatemticas)

    Ejecutar una funcin tecnolgica (ej.: control individual concombinacin binaria)

  • 7/29/2019 Curso St Prog1

    34/80

    s

    ST PROG1 Nro # 32

    OB1 FC1 FC11

    FB2 FC200

    OB100/101

    Programa del sistema Programa de mando

    Fig. 4-4 Ejemplo del uso de mdulos de organizacin

    FC ELECCION DE FORMA DE OPERACION FC 10 OPERACIONMANUAL

    FC OPERACION AUTOMATICA

    FC 250 PARO ESCALONADOFC 37SUPERVICION

    FC 45 TAREAPRINCIPAL

  • 7/29/2019 Curso St Prog1

    35/80

    s

    ST PROG1 Nro # 33

    Fig. 4-5 Funcionamiento de los mdulos de programa

    Los mdulos de programa se activan con las llamadas CALL y CC. Estasoperaciones pueden programarse en todos los tipos de mdulos, excepto enlos de datos.

    4.4.6 Mdulos de Funcin (FB)

    Los bloques de funcin son bloques programables. Un FB es un bloque"con memoria". Dispone de un bloque de datos asignado como memoria(bloque de datos de instancia). Los parmetros que se transfieren al FB, ascomo las variables estticas, se memorizan en el DB de instancia. Lasvariables temporales se memorizan en la pila de datos locales.

    Los datos memorizados en el DB de instancia, no se pierden al concluirel tratamiento del FB. Los datos memorizados en la pila de datos locales sepierden al concluir el tratamiento del FB.

    FB1

    FB4

    FC 3 "MULTIPLICAR"

    FB3

    FB11

    FC 80 "REGULACION"

    Fig. 4-6 Funcionamiento de los mdulos funcionales

    Entre sus principales particularidades tenemos:

    Son parametrizables; es decir al llamar al mdulo podemostransferirles parmetros actuales.

    Disponen de funciones complementarias que no pueden serprogramadas en otros mdulos.

    Solamente pueden ser representados en AWL.

  • 7/29/2019 Curso St Prog1

    36/80

    s

    ST PROG1 Nro # 34

    4.4.7 Mdulos de datos (DB)

    Aqu se guardan los datos que sern procesados durante la ejecucindel programa. Los bloques de datos guardan los datos del programa deusuario. Se distinguen entre bloques de datos globales y bloques de datos deinstancia.

    Bloque de datos de instancia define la llamada de un bloque defuncin, que transfiere parmetros, est asignado un bloque de datosde instancia. En el DB de instancia estn depositados los parmetrosactuales y los datos estticos del FB. Las variables declaradas en elFB determinan la estructura del bloque de datos de instancia. Lainstancia define la llamada de un bloque de funcin, Si por ejemplo,en un programa de usuario S7 se llama 5 veces un bloque de funcin,

    entonces existen 5 instancias de dicho bloque Bloque de datos globales: Al contrario de los bloques de datos no

    contienen instrucciones STEP7. Sirven para depositar datos deusuario, es decir, dichos bloques contienen datos variables con loscuales puede trabajar el programa de usuario. Los bloques de datosglobales contienen datos de usuario utilizables desde otros bloques.El tamao de los DBs puede variar.

    OB1 FC1

    DB0

    DB4

    DB255

    FC17

    TDW255

    DW0DW1DW2DW3DW4

    DW255

    Fig 4-7 Funcionamiento de los mdulos de datos

    Se admiten los siguientes tipos de datos: Configuraciones binarias (representacin de estados de

    instalaciones),

    Nmeros en hexadecimal, binario o decimal (temporizaciones,resultado de clculos,.)

  • 7/29/2019 Curso St Prog1

    37/80

    s

    ST PROG1 Nro # 35

    Caracteres alfanumricos (mensajes)

    4.4.7.1 Programacin de mdulos de datos

    El primer paso consiste en asignar un nmero al mdulo que deberestar comprendido entre 2 y 255. Los datos se almacenan palabra por palabra.Si la informacin es inferior a 16 bits, los bits ms significativos se rellenan conceros. Un mdulo de datos permite almacenar hasta 2042 palabras de datos.

    Estos mdulos tambin pueden crearse o borrarse desde el programa demando.

    4.4.7.2 Ejecucin de un programa con mdulos de datos

    Un DB debe llamarse en el programa con la instruccin AUF (or OPN)db N (n = 0255)

    Dentro de un mdulo, un DB mantiene su validez hasta que se llame aotro mdulo de datos.

    Al retornar al mdulo primario, es nuevamente vlido el DB que tenadicha propiedad antes de la llamada.

    En todos los OBs los DBs utilizados por el programa de usuario debenabrirse con la instruccin AUF (or OPN) DB n.

    FC 20DB

    vlido

    FC7DBVlido DB 10

    AUF DB 10

    DB10

    CALL FC 20 AUF DB 11

    DB10 DB 11

    Fig. 4-8 Mrgenes de validez de mdulos de datos

  • 7/29/2019 Curso St Prog1

    38/80

    s

    ST PROG1 Nro # 36

    5.OPERACIONES LGICAS CON BITs

    5.1 DESCRIPCIN

    Las operaciones lgicas con bits interpretan los estados de seal 1 y 0, ylos combinan de acuerdo con la lgica de Boole. Estas combinacionesproducen un 1 un 0 como resultado y se denominan resultado lgico(RLO). Las operaciones lgicas con bits permiten ejecutar las ms diversasfunciones.

    Se dispone de las siguientes operaciones lgicas con bits:

    Las siguientes operaciones reaccionan ante un RLO de 1:

    Otras operaciones reaccionan ante un cambio de flanco positivo onegativo para ejecutar las siguientes funciones:

    Palabra de estado

  • 7/29/2019 Curso St Prog1

    39/80

    s

    ST PROG1 Nro # 37

    Es un registro de la memoria de la CPU que contiene 16 bits que puedendireccionarse en el operando de las operaciones lgicas con bits y con

    palabras. Solo nos sern de utilidad los 9 primeros bits, estando reservados eluso de los 7 ltimos. A continuacin pasaremos a describir cada bit:

    BIT 0 (ER): 0 indica que la siguiente lnea se ejecuta como nuevaconsulta (inhibida). En este estado la consulta se almacenadirectamente en RLO.

    BIT 1 (RLO): resultado lgico. Aqu se realizan las operaciones a nivel

    de bit (como AND, OR, etc.). BIT 2 (STA): bit de estado. Solo sirve en el test de programa. BIT 3 (OR): se requiere para el proceso Y delante de O. Este bit indica

    que una operacin Y ha dado valor 1, en las restantes operaciones es0.

    BIT 4 (OV): bit de desbordamiento. Se activa (1) por una operacinaritmtica o de comparacin de coma flotante tras producirse un error(desbordamiento, operacin no admisible, o relacin incorrecta).

    BIT 5 (OS): bit de desbordamiento memorizado. Se activa junto conOV e indica que previamente se ha producido un error. Solo puedecambiar a cero con la instruccin de salto, una operacin de llamada amdulo, o porque se ha alcanzado el fin del mdulo.

    BITS 6 (A0) y 7 (A1): cdigos de condicin. Dan informacin sobre losresultados o bits siguientes: resultado de una operacin aritmtica. resultado de una comparacin. resultado de una operacin digital. bits desplazados por una instruccin de desplazamiento o rotacin.

    BIT 8 (RB): resultado binario. Permite interpretar el resultado de unaoperacin de palabras como resultado binario e integrarlo en lacadena de combinaciones lgicas binarias.

    5.2 CONTACTO NORMALMENTE ABIERTO

    5.2.1 Smbolo

    ---| |---

  • 7/29/2019 Curso St Prog1

    40/80

    s

    ST PROG1 Nro # 38

    5.2.2 Descripcin

    Se cierra si el valor del bit consultado, que se almacena en el indicado, es "1". Si el contacto est cerrado, la corriente fluye atravs del contacto y el resultado lgico (RLO) es "1".

    De lo contrario, si el estado de seal en el indicado es "0",el contacto est abierto. Si el contacto est abierto no hay flujo de corriente y elresultado lgico de la operacin (RLO) es "0".

    5.2.3 Palabra de estado

    5.2.4 Ejemplo

    La corriente puede fluir si: el estadoen las entradas E 0.0 Y E 0.1 es "1"O el estado en la entrada E 0.2 es"1".

    5.3 CONTACTO NORMALMENTE CERRADO

    5.3.1 Smbolo

    ---| /|---

    5.3.2 Descripcin

    Se abre si el valor del bit consultado, que se almacena en el indicado, es "0". Si el contacto est cerrado, la corriente fluye atravs del contacto y el resultado lgico (RLO) es "1".

    De lo contrario, si el estado de seal en el indicado es "1",

    el contacto est abierto. Si el contacto est abierto no hay flujo de corriente y elresultado lgico de la operacin (RLO) es "0".

  • 7/29/2019 Curso St Prog1

    41/80

    s

    ST PROG1 Nro # 39

    5.3.3 Palabra de estado

    5.3.4 Ejemplo

    La corriente puede fluir si:el estadoen las entradas E 0.0 Y E 0.1 es "1"O el estado en la entrada E 0.2 es"1".

    5.4 XOR O-EXCLUSIVA

    5.4.1 Smbolo

    5.4.2 Descripcin

    Genera un RLO de "1" si el estado de seal de los dos bits indicados esdistinto.

    5.4.3 Ejemplo

  • 7/29/2019 Curso St Prog1

    42/80

    s

    ST PROG1 Nro # 40

    La salida A 4.0 es "1" si (E 0.0 es 0Y E 0.1 es 1) O (E 0.0 es 1 Y E 0.1

    es 0).

    5.5 INVERTIR RESULTADO LGICO (RLO)

    5.5.1 Smbolo

    ---| NOT |---

    5.5.2 Descripcin

    Invierte el bit RLO.

    5.5.3 Palabra de estado

    5.5.4 Ejemplo

    La salida A 4.0 es "0" si:El estado en la entrada E 0.0 es "1"O el estado en E 0.1. Y E 0.2 es "1".

    5.6 BOBINA DE REL

    5.6.1 Smbolo

    ---( )

  • 7/29/2019 Curso St Prog1

    43/80

    s

    ST PROG1 Nro # 41

    5.6.2 Descripcin

    Opera como una bobina en un esquema de circuitos. Si la corriente fluyehasta la bobina (RLO = 1), el bit en el se pone a "1". Si no fluyecorriente hasta la bobina (RLO = 0), el bit en el se pone a "0". Unabobina de salida slo puede colocarse dentro de un esquema de contactos enel extremo derecho de un circuito. Como mximo puede haber 16 salidasmltiples. Se puede crear una salida negada anteponiendo a la bobina desalida la operacin ---|NOT|--- (invertir el resultado lgico).

    5.6.3 Palabra de estado

    5.6.4 Ejemplo

    La salida A 4.0 es "1" si:

    (el estado de la entrada E 0.0 Y E0.1 es "1") O el estado de la entradaE 0.2 es "0".La salida A 4.1 es "1"si:(el estado de la entrada E 0.0 Y E0.1 es "1" O el estado de la entradaE 0.2 es "0") Y el estado de la

    entrada E 0.3 es "1".

    5.7 CONECTOR

    5.7.1 Smbolo

    ---( # )---

    5.7.2 Descripcin

    Es un elemento intercalado que cumple una funcin de asignacin; elconector almacena el RLO actual (el estado de seal del flujo de corriente) enel que se haya especificado. Este elemento de asignacinmemoriza la combinacin lgica de bits de la ltima rama abierta que estantes que l. Si se conecta en serie con otros elementos, la operacin ---( # )---se inserta igual que un contacto. El elemento ---( # )--- nunca debe conectarse

  • 7/29/2019 Curso St Prog1

    44/80

    s

    ST PROG1 Nro # 42

    a una barra de alimentacin, ni colocarse directamente detrs de una rama, ytampoco debe emplearse como final de una rama. Se puede crear la negacin

    del elemento ---( # )--- anteponindole el elemento ---|NOT|--- (invertir elresultado lgico).

    5.7.3 Palabra de estado

    5.7.4 Ejemplo

    5.8 DESACTIVAR SALIDA

    5.8.1 Smbolo

    ---( R )

    5.8.2 Descripcin

    Slo se ejecuta si el RLO de las operaciones anteriores es "1" (flujo decorriente en la bobina). Si fluye corriente a la bobina (RLO es "1"), el indicado del elemento se pone a "0". Un RLO de "0" (= no hayflujo de corriente en la bobina) no tiene efecto alguno, de forma que el estado

    de seal del operando indicado del elemento no vara. El tambin

  • 7/29/2019 Curso St Prog1

    45/80

    s

    ST PROG1 Nro # 43

    puede ser un temporizador (N. de T) cuyo valor de temporizacin se pone a"0", o un contador (N. de Z) cuyo valor de contaje se pone a "0".

    5.8.3 Palabra de estado

    5.8.4 Ejemplo

    La salida A 4.0 slo se pone a "0" si:(el estado en la entrada E 0.0 Y en

    la entrada E 0.1 es "1") O el estadoen la entrada E 0.2 es "0".El temporizador T1 slo se pone a 0si:el estado de seal en la entrada E0.3 es "1".El contador Z1 slo se pone a 0 si:el estado de seal en la entrada E0.3 es "1".

    5.9 ACTIVAR SALIDA

    5.9.1 Smbolo

    ---( S )

    5.9.2 Descripcin

    Slo se ejecuta si el RLO de las operaciones anteriores es "1" (flujo decorriente en la bobina). Si el RLO es "1", el indicado del elementose pone a "1".

    Un RLO = 0 no tiene efecto alguno, de forma que el estado de sealactual del operando indicado del elemento no se altera.

  • 7/29/2019 Curso St Prog1

    46/80

    s

    ST PROG1 Nro # 44

    5.9.3 Palabra de estado

    5.9.4 Ejemplo

    La salida A 4.0 slo se pone a "1" si:

    (el estado en la entrada E 0.0 Y enE 0.1 es "1") O el estado en laentrada E 0.2 es "1".Si el RLO es "0", el estado de sealde la salida A 4.0 no vara.

    5.10 ACTIVAR FLIP-FLOP DE DESACTIVACIN

    5.10.1 Smbolo

    5.10.2 Descripcin

    Se desactiva si el estado en la entrada R es "1" y si el estado en la

    entrada S es "0". De no ser as, cuando el estado en la entrada R es "0" y elestado en la entrada S es "1", se activa el flip-flop. Si el RLO es "1" en ambasentradas, la operacin Desactivar flip-flop de activacin ejecuta en el indicado primero la operacin Desactivar y seguidamente laoperacin Activar, de modo que la direccin permanece activada para el restodel ciclo de programa.

    Las operaciones S (Activar) y R (Desactivar) slo se ejecutan si el RLOes 1. Si el RLO es 0 estas operaciones no se ven afectadas y el operandoindicado no vara.

  • 7/29/2019 Curso St Prog1

    47/80

    s

    ST PROG1 Nro # 45

    5.10.3 Palabra de estado

    5.10.4 Ejemplo

    Si el estado en la entrada E 0.0 es"1" y en la entrada E 0.1 es "0", seactiva la marca M 0.0 y la salida A4.0 es "0". De no ser as, cuando elestado de seal en la entrada E 0.0

    es 0 y en E 0.1 es 1, se activa lamarca M 0.0 y la salida A 4.0 es "1".Si ambos estados de seal son "0",no cambia nada. Si ambos estadosde seal son "1" domina la

    operacin Activar, debido al ordenen que estn dispuestas lasoperaciones. M 0.0 se activa y lasalida A 4.0 es "1".

    5.11 DESACTIVAR FLIP-FLOP DE DESACTIVACIN

    5.11.1 Smbolo

    5.11.2 Descripcin

    Se activa si el estado en la entrada S es "1" y si el estado de la entradaR es "0". De no ser as, cuando el estado en la entrada S es "0" y el estado dela entrada R es "1", se desactiva el flip-flop. Si el RLO es "1" en ambasentradas, la operacin Desactivar flip-flop de activacin ejecuta en el indicado primero la operacin Activar y seguidamente laoperacin Desactivar, de modo que la direccin permanece desactivada para elresto del ciclo de programa.

  • 7/29/2019 Curso St Prog1

    48/80

    s

    ST PROG1 Nro # 46

    5.11.3 Palabra de estado

    5.11.4 Ejemplo

    Si el estado en la entrada E 0.0 es"1" y en la entrada E 0.1 es elestado es "0", se activa la marca M0.0, y la salida A 4.0 es "1". De noser as, cuando el estado de seal

    en la entrada E 0.0 es 0 y en E 0.1es 1, se desactiva la marca M 0.0 yla salida A 4.0 es "0". Si ambosestados de seal son "0", no cambianada. Si ambos estados de seal

    son "1", domina la operacinDesactivar debido al orden en queestn dispuestas las operaciones. M0.0 se desactiva y la salida A 4.0 es"0".

    5.12 DETECTAR FLANCO DECRECIENTE

    5.12.1 Smbolo

    ---( N )

    5.12.2 Descripcin

    Detecta un cambio del estado de seal en el operando de "1" a "0", eindica este cambio tras la operacin con RLO = 1. El estado de seal del RLOse compara con el estado de seal del operando, es decir, con la marca deflancos. Si el estado de seal del operando es "1" y el RLO anterior a laoperacin es "0", el RLO posterior a la operacin ser "1" (impulso); en todoslos otros casos ser "0". El RLO anterior a la operacin se almacena en eloperando.

    5.12.3 Palabra de estado

  • 7/29/2019 Curso St Prog1

    49/80

    s

    ST PROG1 Nro # 47

    5.12.4 Ejemplo

    La marca de flancos M 0.0almacena el estado de seal delRLO de la combinacin de bits ensu conjunto. Si el estado de sealdel RLO cambia de "1" a "0" seejecuta el salto a la meta CAS1.

    5.13 DETECTAR FLANCO CRECIENTE

    5.13.1 Smbolo

    ---( P )

    5.13.2 Descripcin

    Detecta un cambio del estado de seal en el operando, de "0" a "1", eindica este cambio tras la operacin mediante RLO = 1. El estado de sealactual del RLO se compara con el estado de seal del operando, es decir, conla marca de flancos. Si el estado de seal del operando es "0" y el RLO anteriora la operacin es "1", el RLO detrs de la operacin ser "1" (impulso); entodos los dems casos ser "0". El RLO anterior a la operacin se almacena en

    el operando.

    5.13.3 Palabra de estado

    5.13.4 Ejemplo

  • 7/29/2019 Curso St Prog1

    50/80

    s

    ST PROG1 Nro # 48

    La marca de flancos M 0.0almacena el estado del RLO de toda

    la combinacin de bits. Si el estadode seal del RLO cambia de "0" a"1", se ejecuta el salto a la metaCAS1.

    5.14 CARGAR RESULTADO LGICO (RLO) EN EL REGISTRO RB

    5.14.1 Smbolo

    ---( SAVE )

    5.14.2 Descripcin

    Almacena el RLO en el bit del resultado binario (RB) de la palabra deestado. Pero el bit de primera consulta /ER no se pone a cero. Por esta razn,en una combinacin lgica Y en el prximo segmento se combinar el estadodel bit RB.

    El uso de SAVE con una consulta del bit RB en el mismo bloque o enbloques subordinados no es recomendable, puesto que el bit RB puede sermodificado por numerosas operaciones intercaladas. La operacin SAVEresulta especialmente til antes de salir de un bloque, puesto que con ella lasalida ENO (bit RB) se pone al valor del bit RLO, lo cual permite aadir untratamiento de error a continuacin del bloque.

    5.14.3 Palabra de estado

    5.14.4 Ejemplo

    El estado del segmento (= RLO) sealmacena en el bit RB.

  • 7/29/2019 Curso St Prog1

    51/80

    s

    ST PROG1 Nro # 49

    5.15 DETECTAR FLANCO DE SEAL NEGATIVO

    5.15.1 Smbolo

    5.15.2 Descripcin

    Compara el estado de seal de con el estado de seal dela consulta anterior, que esta almacenada en el . Si el estadoactual del RLO es "0" y el estado anterior era "1" (deteccin de un flancodecreciente), la salida Q despus de esta funcin es "1", en todos los otros

    casos es "0".

    5.15.3 Palabra de estado

    5.15.4 Ejemplo

    La salida A 4.0 es "1", si:(el estado en E 0.0 Y en E 0.1 Y enE 0.2 es "1") Y E 0.3 tiene un flancodecreciente Y el estado en E 0.4 es"1".

    5.16 DETECTAR FLANCO DE SEAL POSITIVO

    5.16.1 Smbolo

  • 7/29/2019 Curso St Prog1

    52/80

    s

    ST PROG1 Nro # 50

    5.16.2 Descripcin

    Compara el estado de seal de con el estado de seal dela consulta anterior que est almacenado en . Si el estado actualdel RLO es "1" y el estado anterior era "0" (Deteccin de un flanco creciente), lasalida Q despus de esta operacin es "1"; en todos los otros casos es "0".

    5.16.3 Palabra de estado

    5.16.4 Ejemplo

    La salida A 4.0 es "1", si:(el estado en E 0.0 Y en E 0.1 Y enE 0.2 es "1") Y E 0.3 tiene un flancocreciente Y el estado en E 0.4 es"1".

  • 7/29/2019 Curso St Prog1

    53/80

    s

    ST PROG1 Nro # 51

    6.OPERACIONES DE TEMPORIZACIN

    6.1 DESCRIPCIN

    Se dispone de las siguientes operaciones de temporizacin.

    6.2 REA DE MEMORIA Y COMPONENTES

    6.2.1 rea de memoria

    Los temporizadores tienen un rea reservada en la memoria de la CPU.Esta rea de memoria reserva una palabra de 16 bits para cada operando detemporizador. La programacin con KOP asiste 256 temporizadores.

    Las siguientes funciones tienen acceso al rea de memoria de

    temporizadores: Operaciones de temporizacin Actualizacin por reloj de palabras de temporizacin. Esta funcin de

    la CPU en el estado RUN decrementa en una unidad un valor detemporizacin dado en el intervalo indicado por la base de tiempohasta alcanzar el valor 0.

    6.2.2 Valor de temporizacin

    Los bits 0 a 9 de la palabra de temporizacin contienen el valor detemporizacin en cdigo binario. Este valor indica un nmero de unidades. Laactualizacin decrementa el valor de temporizacin en una unidad y en el

  • 7/29/2019 Curso St Prog1

    54/80

    s

    ST PROG1 Nro # 52

    intervalo indicado por la base de tiempo hasta alcanzar el valor 0. El valor detemporizacin se puede cargar en los formatos binario, hexadecimal o decimal

    codificado en binario (BCD). El rea de temporizacin va de 0 a 9 990segundos.

    Para cargar un valor de temporizacin redefinido, se observarn lassiguientes reglas sintcticas.

    El valor de temporizacin se puede cargar en cualesquiera de lossiguientes formatos:

    w#16#wxyz siendo: w= la base de tiempo (es decir, intervalo de tiempo o

    resolucin) xyz = el valor de temporizacin en formato BCD

    S5T#aH_bM_cS_dMS siendo: H (horas), M (minutos), S (segundos), MS (milisegundos);

    a, b, c, d los define el usuario La base de tiempo se selecciona automticamente y el valor de

    temporizacin se redondea al prximo nmero inferior con esabase de tiempo.

    El valor de temporizacin mximo que puede introducirse es de 9 900segundos 2H_46M_30S. Ejemplos:

    S5TIME#4S --> 4 segundoss5t#2h_15m --> 2 horas y 15 minutosS5T#1H_12M_18S --> 1 hora 12 minutos y 18 segundos

    6.2.3 Base de tiempo

    Los bits 12 y 13 de la palabra de temporizacin contienen la base detiempo en cdigo binario. La base de tiempo define el intervalo en que sedecrementa en una unidad el valor de temporizacin. La base de tiempo mspequea es 10 ms, la ms grande 10 s.

    Los valores no deben exceder 2H_46M_30S. Los valores con un margeno una resolucin demasiado grandes (p. ej. 2H_10MS) se redondean de talforma que correspondan a la tabla para el margen y la resolucin.

  • 7/29/2019 Curso St Prog1

    55/80

    s

    ST PROG1 Nro # 53

    El formato general para el tipo de datos S5TIME tiene los siguientesvalores lmite para el margen y la resolucin:

    6.2.4 Configuracin binaria

    Cuando se dispara un temporizador, el contenido de la palabra detemporizacin 1 se utiliza como valor de temporizacin. Los bits 0 a 11 de lapalabra de temporizacin almacenan el valor de temporizacin en formatodecimal codificado en binario (formato BCD: cada grupo de cuatro bits contieneel cdigo binario de un valor decimal). Los bits 12 a 13 almacenan la base detiempo en cdigo binario.

    La figura muestra el contenido de la palabra de temporizacin cargadocon el valor 127 y una base de tiempo de 1 segundo.

    6.2.5 Leer el temporizador y la base de tiempo

    Todos los cuadros de temporizadores tienen dos salidas, DUAL y DEZ,para las que se puede indicar una direccin de palabra. La salida DUAL indicael valor de temporizacin en formato binario. La salida DEZ indica la base detiempo y el valor de temporizacin en formato decimal codificado en binario(BCD).

    6.2.6 Tipos de temporizadores

  • 7/29/2019 Curso St Prog1

    56/80

    s

    ST PROG1 Nro # 54

    El resumen breve de los cinco tipos de temporizadores sirve de ayudapara la eleccin del temporizador que se adapte mejor a sus necesidades.

  • 7/29/2019 Curso St Prog1

    57/80

    s

    ST PROG1 Nro # 55

    6.3 TEMPORIZADOR TIPO IMPULSO

    6.3.1 Smbolo

    ingls alemn

    6.3.2 Descripcin

    El temporizador funciona mientras que el estado de seal en la entradaS sea "1", pero como mximo durante el tiempo indicado por el valor detemporizacin en la entrada TV/TW. El estado de seal en la salida Q es "1"mientras que funcione el temporizador. Si el estado de seal en la entrada Scambia de "1" a "0" antes de transcurrir el intervalo de tiempo, el temporizadorse para. En este caso el estado de seal en la salida Q es "0".

    El temporizador se pone a 0 si la entrada de desactivacin R deltemporizador se pone a "1" mientras funciona el temporizador. El valor detemporizacin actual y la base de tiempo tambin se ponen a 0. Un "1" en laentrada R del temporizador no tiene efecto alguno si el temporizador no est enmarcha.

    El valor de temporizacin actual queda depositado en las salidasBI/DUAL y BCD/DEZ. El valor de temporizacin actual equivale al valor inicialde TV/TW menos el valor de temporizacin que ha transcurrido desde elarranque del temporizador.

    6.3.3 Diagrama

  • 7/29/2019 Curso St Prog1

    58/80

    s

    ST PROG1 Nro # 56

    6.3.4 Ejemplo

    Si el estado de seal de la entradaE 0.0 cambia de "0" a "1" (flancocreciente en el RLO), se activa eltemporizador T5. El temporizadorcontina en marcha con el valor detemporizacin indicado de 2segundos (2 s) mientras la entradaE 0.0 sea 1. Si el estado de sealde la entrada E 0.0 cambia de "1" a"0" antes de transcurrir el tiempo, eltemporizador se para.

    La salida A 4.0 es "1" mientras esten marcha el temporizador, y "0" siel tiempo ha transcurrido o si el

    temporizador fue puesto a 0.

  • 7/29/2019 Curso St Prog1

    59/80

    s

    ST PROG1 Nro # 57

    6.4 TEMPORIZADOR TIPO IMPULSO PROLONGADO

    6.4.1 Smbolo

    ingls alemn

    6.4.2 Descripcin

    El temporizador contina en marcha durante el tiempo predeterminado -indicado en la entrada TV/TW-, aunque el estado de seal en la entrada S seponga a "0" antes de haber transcurrido el intervalo de tiempo. El estado deseal en la salida Q es "1" mientras el temporizador est en marcha. Eltemporizador vuelve a arrancar con el valor de temporizacin predeterminado siel estado de seal en la entrada S cambia de "0" a "1" mientras est en marchael temporizador.

    El temporizador se pone a 0 si la entrada de desactivacin R deltemporizador se pone a "1" mientras el temporizador est funcionando. El valorde temporizacin actual y la base de tiempo se ponen a 0.

    6.4.3 Diagrama

  • 7/29/2019 Curso St Prog1

    60/80

    s

    ST PROG1 Nro # 58

    6.4.4 Ejemplo

    Si el estado de seal de la entradaE 0.0 cambia de "0" a "1" (flanco

    creciente en el RLO), se activa eltemporizador T5. El temporizadorcontina en marcha con el valor detemporizacin indicado de dossegundos sin ser afectado por unflanco decreciente en la entrada S.

    Si el estado de seal de la entradaE 0.0 cambia de "0" a "1" antes detranscurrir el tiempo, eltemporizador vuelve a arrancar. Siel estado de seal de la entrada E0.1 cambia de "0" a "1" mientras eltemporizador est en marcha, stese pone a 0. La salida A 4.0 es "1"mientras est en marcha eltemporizador.

  • 7/29/2019 Curso St Prog1

    61/80

    s

    ST PROG1 Nro # 59

    6.5 TEMPORIZADOR TIPO RETARDO A LA CONEXIN

    6.5.1 Smbolo

    ingls alemn

    6.5.2 Descripcin

    El temporizador contina en marcha con el valor de temporizacinindicado en la entrada TV/TW mientras el estado de seal en la entrada S seapositivo. El estado de seal en la salida Q ser "1" si el tiempo ha transcurridosin que se produjeran errores y si el estado de seal en la entrada S es "1". Siel estado de seal en la entrada S cambia de "1" a "0" mientras est en marchael temporizador, ste se para. En este caso, el estado de seal en la salida Qser "0".

    El temporizador se pone a 0 si la entrada de desactivacin R deltemporizador se pone a "1" mientras funciona el temporizador. El valor detemporizacin y la base de tiempo se ponen a 0. Entonces el estado de sealen la salida Q es "0". El temporizador tambin se pone a 0 si en la entrada dedesactivacin R el valor es "1", mientras el temporizador no est en marcha y elRLO en la entrada S es "1".

    6.5.3 Diagrama

  • 7/29/2019 Curso St Prog1

    62/80

    s

    ST PROG1 Nro # 60

    6.5.4 Ejemplo

    Si el estado de seal de la entradaE 0.0 cambia de "0" a "1" (flancocreciente en el RLO), se activa eltemporizador T5. Si transcurre eltiempo de dos segundos y el estadode seal en la entrada E 0.0 siguesiendo "1", la salida A 4.0 ser "1".Si el estado de seal de la entradaE 0.0 cambia de "1" a "0", eltemporizador se para y la salida A4.0 ser "0". (Si el estado de sealde la entrada E 0.1 cambia de "0" a"1", el temporizador se pone a 0,tanto si estaba funcionando como sino).

  • 7/29/2019 Curso St Prog1

    63/80

    s

    ST PROG1 Nro # 61

    6.6 TEMPORIZADOR TIPO RETARDO A LA CONEXIN CON MEMORIA

    6.6.1 Smbolo

    ingls alemn

    6.6.2 Descripcin

    El temporizador contina en marcha con el valor de temporizacinindicado en la entrada TV/TW aunque el estado de seal en la entrada S seponga a "0" antes de que haya transcurrido el tiempo. El estado de seal en lasalida Q ser "1" si ha transcurrido el tiempo, independientemente del estadode seal que tenga la entrada S. El temporizador vuelve a arrancar con el valorde temporizacin indicado si el estado de seal en la entrada S cambia de "0" a"1" mientras el temporizador est en marcha.

    El temporizador se pone a 0 si la entrada de desactivacin R deltemporizador se pone a "1", independientemente del RLO en la entrada S.Entonces el estado de seal en la salida Q es "0".

    6.6.3 Diagrama

  • 7/29/2019 Curso St Prog1

    64/80

    s

    ST PROG1 Nro # 62

    6.6.4 Ejemplo

    Si el estado de seal de la entradaE 0.0 cambia de "0" a "1" (flancocreciente en el RLO), se activa eltemporizador T5. El temporizadorcontina en marcha sin que uncambio de seal de "1" a "0" en la

    entrada E 0.0 repercuta en l. Si elestado de seal de la entrada E 0.0cambia de "1" a "0" antes de quehaya transcurrido el tiempo, eltemporizador vuelve a arrancar. Lasalida A 4.0 ser "1" si hatranscurrido el tiempo (Si el estadode seal de la entrada E 0.1 cambiade "0" a "1", el temporizador sepone a "0", independientemente decul sea el RLO en S).

  • 7/29/2019 Curso St Prog1

    65/80

    s

    ST PROG1 Nro # 63

    6.7 TEMPORIZADOR TIPO RETARDO A LA DESCONEXIN

    6.7.1 Smbolo

    ingls alemn

    6.7.2 Descripcin

    El estado de seal en la salida Q ser "1" si el estado de seal en laentrada S es "1", y tambin mientras el temporizador est en marcha. Eltemporizador se para si el estado de seal en la entrada S cambia de "0" a "1"mientras el temporizador est en marcha. El temporizador slo vuelve aarrancar si el estado de seal en la entrada S vuelve a cambiar de "1" a "0".

    El temporizador se pone a 0 si la entrada de desactivacin R se pone a"1" mientras el temporizador est en marcha.

    6.7.3 Diagrama

  • 7/29/2019 Curso St Prog1

    66/80

    s

    ST PROG1 Nro # 64

    6.7.4 Ejemplo

    El temporizador arranca si el estadode seal en la entrada E 0.0 cambiade "1" a "0". A 4.0 es "1" si E 0.0 es"1" o el temporizador est enmarcha (Si el estado de seal en E

    0.1 cambia de "0" a "1", mientrasest en marcha el temporizador,ste se pone a 0).

  • 7/29/2019 Curso St Prog1

    67/80

    s

    ST PROG1 Nro # 65

    7.OPERACIONES DE CONTAJE

    7.1 CONCEPTOS

    7.1.1 rea de memoria

    Los contadores tienen reservada un rea de memoria en la CPU. Estarea de memoria reserva una palabra de 16 bits para cada contador. KOPasiste 256 contadores.

    7.1.2 Valor de contajeLos bits 0 a 9 de la palabra de contaje contienen el valor de contaje en

    cdigo binario. El valor fijado por el usuario se transfiere del acumulador alcontador al activarse ste. El valor de contaje puede estar comprendido entre 0y 999. Dentro de este margen se puede variar dicho valor utilizando lasoperaciones siguientes:

    ZAEHLER Parametrizar e incrementar/decrementar contador Z_VORW Parametrizar e incrementar contador Z_RUECK Parametrizar y decrementar contador

    ---( SZ ) Poner contador al valor inicial

    ---( ZV ) Incrementar contador ---( ZR ) Decrementar contador

    7.1.3 Configuracin binaria

    Para poner el contador a un valor determinado hay que introducir unnmero de 0 a 999, por ejemplo 127, en el siguiente formato: C# 127. C# sirvepara indicar el formato decimal codificado en binario.

    Los bits 0 a 11 del contador contienen el valor de contaje en formatoBCD (formato BCD: cada conjunto de cuatro bits contiene el cdigo binario deun valor decimal).

  • 7/29/2019 Curso St Prog1

    68/80

    s

    ST PROG1 Nro # 66

    7.2 PARAMETRIZAR E INCREMENTAR/DECREMENTAR CONTADOR

    7.2.1 Smbolo

    ingls alemn

    7.2.2 Descripcin

  • 7/29/2019 Curso St Prog1

    69/80

    s

    ST PROG1 Nro # 67

    Este contador queda inicializado con el valor de la entrada ZW cuando

    se produce un flanco ascendente en la entrada S. Si hay un 1 en la entrada R,el contador se pone a cero y el valor de contaje es 0.

    El contador incrementa en "1" si el estado de seal de la entrada ZVcambia de "0" a "1" y el valor del contador era menor que "999". El contador sedecrementa en "1" si en la entrada ZR se produce un flanco ascendente y elvalor del contador es mayor que "0".

    Al producirse un flanco ascendente en ambas entradas de contaje seejecutan ambas operaciones, y el valor de contaje no vara. Si se inicializa elcontador y el RLO de las entradas ZV/ZR = 1, el contador contar as en el

    siguiente ejemplo aunque no haya habido ningn cambio de flanco.

    El estado de seal de la salida Q ser "1" si el valor de contaje es mayorque cero, y ser "0" si el valor de contaje es igual a cero.

    7.2.3 Ejemplo

    Al cambiar la entrada E 0.2 de "0" a"1", el contador toma el valor depreseleccin de MW10. Si el estadode seal en E 0.0 cambia de "0" a"1", el valor del contador Z10incrementa en "1", a menos que elvalor de Z10 fuera "999". Si E 0.1cambia de "0" a "1", Z10decrementa en "1", a no ser que elvalor de Z10 fuera cero. La salida A4.0 ser "1" si el valor de Z10 no escero.

  • 7/29/2019 Curso St Prog1

    70/80

    s

    ST PROG1 Nro # 68

    7.3 PARAMETRIZAR E INCREMENTAR CONTADOR

    7.3.1 Smbolo

    ingls alemn

    7.3.2 Descripcin

    Este contador toma el valor predeterminado de la entrada ZW si en laentrada S hay un flanco ascendente.

    Si el estado de seal de la entrada R es "1" el contador se pone a 0, yentonces el valor de contaje es cero.

    El contador incrementa en "1" si el estado de seal en la entrada ZVcambia de "0" a "1", siempre y cuando el valor de contaje sea menor que "999".Si se inicializa el contador y el RLO de las entradas ZV/ZR = 1, el contadorcontar as en el siguiente ejemplo aunque no haya habido ningn cambio deflanco.

    El estado de seal en la salida Q ser "1" siempre que el valor de

    contaje sea mayor que cero, y ser "0" si el valor de contaje es cero.

  • 7/29/2019 Curso St Prog1

    71/80

    s

    ST PROG1 Nro # 69

    7.3.3 Ejemplo

    Al cambiar la entrada E 0.2 de "0" a

    "1", el contador toma el valorpredeterminado para MW10. Si elestado de seal en E 0.0 cambia de"0" a "1", el valor del contador Z10se incrementa en "1", a menos queel valor de Z10 fuera "999". Lasalida A 4.0 ser "1" siempre que elvalor de Z10 no sea cero.

    7.4 PARAMETRIZAR Y DECREMENTAR CONTADOR

    7.4.1 Smbolo

    ingls alemn

    7.4.2 Descripcin

  • 7/29/2019 Curso St Prog1

    72/80

    s

    ST PROG1 Nro # 70

    Este contador toma el valor predeterminado de la entrada ZW si en laentrada S hay un flanco ascendente.

    Si el estado de seal de la entrada R es "1" el contador se pone a 0, yentonces el valor de contaje es cero.El contador decrementa en "1" si el estado de seal en la entrada ZR

    cambia de "0" a "1" y el valor de contaje era mayor que cero.

    Si se inicializa el contador y el RLO de las entradas ZV/ZR = 1, elcontador contar as en el siguiente ejemplo aunque no haya habido ningncambio de flanco.

    El estado de seal en la salida Q ser "1" si el valor de contaje es mayorque cero, y ser "0" si el valor de contaje es cero.

    7.4.3 Ejemplo

    Al cambiar la entrada E 0.2 de "0" a"1", el contador toma el valor depreseleccin de MW10.Si el estado de seal en E 0.0cambia de "0" a "1", el valor delcontador Z10 decrementa en "1", amenos que el valor de Z10 fuera "0".La salida A 4.0 ser "1" siempre queel valor de Z10 no sea cero.

    7.5 PONER CONTADOR AL VALOR INICIAL

    7.5.1 Smbolo

    ingls alemn

    7.5.2 Descripcin

  • 7/29/2019 Curso St Prog1

    73/80

    s

    ST PROG1 Nro # 71

    Se ejecuta solamente en caso de que haya un flanco ascendente en elRLO. En este caso se transmite el valor predeterminado al contador indicado.

    7.5.3 Ejemplo

    El valor "100" quedarpreseleccionado para el contador Z5si en la entrada E 0.0 se produce unflanco ascendente (cambio de "0" a"1"). El valor del contador Z5 no sealtera en caso de que no seproduzca ningn flanco ascendente.

    7.6 INCREMENTAR CONTADOR

    7.6.1 Smbolo

    ingls alemn

    7.6.2 Descripcin

    Incrementa en "1" el valor del contador indicado si hay un flancoascendente en el RLO y el valor del contador es menor que "999". El valor delcontador no se altera si no hay ningn flanco ascendente, ni tampoco en casode que el el contador tenga ya el valor "999.

    7.6.3 Ejemplo

  • 7/29/2019 Curso St Prog1

    74/80

    s

    ST PROG1 Nro # 72

    Si el estado de seal de E 0.0cambia de "0" a "1" (flanco

    ascendente en el RLO), se carga elvalor predeterminado de "100" en elcontador Z10.Si el estado de seal de E 0.1cambia de "0" a "1" (flancoascendente en el RLO), se aumentaen "1" el valor de contaje delcontador Z10, a menos que el valorde contaje sea igual a "999". Elvalor del contador Z10 no se alterasi no hay ningn flanco ascendente

    en el RLO.Si el estado de seal de E 0.2

    es 1, el contador se pone a "0".

    7.7 DECREMENTAR CONTADOR

    7.7.1 Smbolo

    ingls alemn

    7.7.2 Descripcin

    Decrementa en "1" el valor del contador indicado si hay un flancoascendente en el RLO y el valor del contador es mayor que "0". El valor del

    contador no se altera si no hay ningn flanco ascendente, ni tampoco en casode que el contador tenga ya el valor "0.

    7.7.3 Ejemplo

  • 7/29/2019 Curso St Prog1

    75/80

    s

    ST PROG1 Nro # 73

    Si el estado de seal de E 0.0cambia de "0" a "1" (flanco

    ascendente en el RLO), se carga elvalor predeterminado de "100" en elcontador Z10.Si el estado de seal de E 0.1cambia de "0" a "1" (flancoascendente en el RLO), sedecrementa en "1" el valor decontaje del contador Z10, a menosque el valor de contaje sea igual a"0". El valor del contador Z10 no sealtera si no hay ningn flanco

    ascendente en el RLO.A 4.0 se conecta si el valor decontaje equivale a cero. Si el estadode seal de E 0.2 es "1", el contadorse pone a "0".

  • 7/29/2019 Curso St Prog1

    76/80

    s

    ST PROG1 Nro # 74

    8.OPERACIONES DE COMPARACIN

    8.1 LISTA DE OPERACIONES

    8.1.1 Descripcin

    Las operaciones comparan las entradas IN1 e IN2 segn los tipos decomparacin siguientes:

    == IN1 es igual a IN2 IN1 es diferente a IN2

    > IN1 es mayor que IN2< IN1 es menor que IN2>= IN1 es mayor o igual a IN2

  • 7/29/2019 Curso St Prog1

    77/80

    s

    ST PROG1 Nro # 75

    8.2 COMPARAR ENTEROS

    8.2.1 Smbolo

    8.2.2 Descripcin

    CMP ? I (Comparar enteros) puede utilizarse como un contacto normal.El cuadro puede colocarse en las mismas posiciones que puede tomar uncontacto normal. Las entradas IN1 y IN2 son comparadas atendiendo al criteriode comparacin que se haya seleccionado.

    Si la comparacin es verdadera, el RLO de la operacin es "1". El RLOse combina mediante una Y lgica con el RLO del circuito completo siempreque el elemento de comparacin est conectado en serie, y mediante una Olgica si el cuadro est conectado en paralelo.

    8.2.3 Palabra de estado

    8.2.4 Palabra de estado

    La salida A 4.0 se activa si E 0.0 YE 0.1 son 1 Y si MW0 >= MW2.

  • 7/29/2019 Curso St Prog1

    78/80

    s

    ST PROG1 Nro # 76

    8.3 COMPARAR ENTEROS DOBLES

    8.3.1 Smbolo

    8.3.2 Descripcin

    CMP ? D (Comparar enteros dobles ) puede utilizarse como un contactonormal. El cuadro puede colocarse en las mismas posiciones que puede tenerun contacto normal. Las entradas IN1 y IN2 son comparadas atendiendo alcriterio de comparacin que se haya seleccionado.

    Si la comparacin es verdadera, el RLO de la operacin es "1". El RLOse combina mediante una Y lgica con el RLO de un circuito siempre que elelemento de comparacin est conectado en serie, y mediante una O lgica siel cuadro est conectado en paralelo.

    8.3.3 Palabra de estado

    8.3.4 Ejemplo

  • 7/29/2019 Curso St Prog1

    79/80

    s

    ST PROG1 Nro # 77

    La salida A 4.0 se activa si E 0.0 YE 0.1 tienen el estado de seal 1 Y

    si MD0 >= MD4 Y si E 0.2 tiene elestado de seal 1.

    8.4 COMPARAR NMEROS DE COMA FLOTANTE

    8.4.1 Smbolo

    8.4.2 Descripcin

    CMP ? R (Comparar nmeros en coma flotante) puede utilizarse comoun contacto normal. El cuadro puede colocarse en las mismas posiciones que

    puede tomar un contacto normal. Las entradas IN1 y IN2 son comparadasatendiendo al criterio de comparacin que se haya seleccionado.

    Si la comparacin es verdadera, el RLO de la operacin es "1". El RLOse combina mediante una Y lgica con el RLO del circuito completo siempreque el elemento de comparacin est conectado en serie, y mediante una Olgica si el cuadro est conectado en paralelo.

    8.4.3 Palabra de estado

  • 7/29/2019 Curso St Prog1

    80/80

    s

    8.4.4 Ejemplo

    La salida A 4.0 se activa si E 0.0 YE 0.1 son 1 Y si MD0 >= MD4 Y si E0.2 es 1.