Está en la página 1de 80

s

ST-PROG1
PROGRAMACIN DE PLCs CON SIMATIC STEP7
NIVEL BSICO

Contenido del curso 1 MONTAJE Y CONEXIN 1.1 MONTAJE MECNICO 1.2 TENDIDO DE CABLES

PRINCIPIOS DE PROGRAMACIN 2.1 DEFINICIONES BSICAS 2.2 SISTEMAS DE NUMERACIN

DIRECCIONAMIENTO Y ACCESO A LA PERIFERIA 3.1 IDENTIFICACIN DE SEALES 3.2 DESIGNACIN DE ENTRADAS Y SALIDAS DIGITALES 3.3 DESIGNACIN DE SEALES INTERMEDIAS 3.4 DIRECCIONAMIENTO DE LAS TARJETAS ANALGICAS 3.5 TIPOS DE DIRECCIONAMIENTO 3.6 IMAGEN DEL PROCESO 3.7 DIRECCIONAMIENTO DE LOS MDULOS S7-300

INTRODUCCIN AL LENGUAJE DE PROGRAMACIN STEP7 4.1 FORMAS DE REPRESENTAR UN PROGRAMA EN STEP7 4.2 OPERANDOS 4.3 ESTRUCTURA DEL PROGRAMA 4.4 FORMAS DE PROGRAMACIN

OPERACIONES LGICAS CON BITs 5.1 DESCRIPCIN 5.2 CONTACTO NORMALMENTE ABIERTO 5.3 CONTACTO NORMALMENTE CERRADO 5.4 XOR O-EXLUSIVA 5.5 INVERTIR RESULTADO LGICO 5.6 BOBINA DE REL 5.7 CONECTOR 5.8 DESACTIVAR SALIDA 5.9 ACTIVAR SALIDA 5.10 ACTIVAR FLIP-FLOP
ST PROG1 Nro # i

s
5.11 5.12 5.13 5.14 5.15 5.16 DESACTIVAR FLIP-FLOP DETECTAR FLANCO DECRECIENTE DETECTAR FLANCO CRECIENTE CARGAR RLO EN REGISTRO RB DETECTAR FLANCO DE SEAL NEGATIVO DETECTAR FLANCO DE SEAL POSITIVO

OPERACIONES DE TEMPORIZACIN 6.1 DESCRIPCIN 6.2 REA DE MEMORIA Y COMPONENTES 6.3 TEMPORIZADOR TIPO IMPULSO 6.4 TEMPORIZADOR TIPO IMPULSO PROLONGADO 6.5 TEMPORIZADOR TIPO RETARDO A LA CONEXIN 6.6 TEMPORIZADOR TIPO RETARDO A LA CONEXIN CON MEMORIA 6.7 TEMPORIZADOR TIPO RETARDO A LA DESCONEXIN

OPERACIONES DE CONTAJE 7.1 CONCEPTOS 7.2 PARAMETRIZAR E INCREMENTAR/DECREMENTAR CONTADOR 7.3 PARAMETRIZAR E INCREMENTAR CONTADOR 7.4 PARAMETRIZAR Y DECREMENTAR CONTADOR 7.5 PONER CONTADOR AL VALOR INICIAL 7.6 INCREMENTAR CONTADOR 7.7 DECREMENTAR CONTADOR

OPERACIONES DE COMPARACIN 8.1 LISTA DE OPERACIONES 8.2 COMPARAR ENTEROS 8.3 COMPARAR ENTEROS DOBLES 8.4 COMPARAR NMEROS DE COMA FLOTANTE

ST PROG1 Nro # ii

s
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

ST PROG1 Nro # 1

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 un papel esencial a la hora de dar inmunidad al sistema (compatibilidad electromagntica). Por ello, durante la fase de planificacin conviene dividir las lneas en los 3 grupos siguientes Grupo de lneas 1: Lneas apantalladas para datos (para PG, OP, SINEC L1,....) Lneas analgicas apantalladas Lneas sin pantalla para tensiones continuas y alternas 60V Lneas 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 por separado; es decir, las lneas se tendern: por canaletas diferenciadas en mazos diferenciados NOTA Entre lneas de seal y cables de energa de mas 500 V debe mantenerse una separacin mnima de 10 cm. Si se tienden lneas apantalladas, su pantalla deber conectarse en una barra 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 sobre soportes metlicos. Las juntas de los portacables debern unirse galvnicamente entre s y conectarse cada 2 a 30 m con la tierra local. Para lneas de seales analgicas deben utilizarse por principio cables apantallados! Por las mismas vas de cables (trazas, bandejas, canales, tubos) pueden tenderse en comn:

ST PROG1 Nro # 2

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). Tendido de lneas fuera de edificios

1.2.1.3

Cuando deba tender una lnea entre edificios, para la transmisin de seales digitales y analgicas deber utilizarse siempre un cable con pantalla 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 rayos correspondientes. Recomendaciones para el tendido de lneas.

1.2.1.4

No tender cables de seal cerca de cables de potencia paralelos. Los cables sensibles a interferencias se tendern con una separacin mayor 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 de seal, procurar que estn separados lo menos posibles. Tender lo ms cerca posible los cables de seal y su lnea equipotencial asociada. Tender por el camino ms corto los cables de seal y lnea equipotencial. Tender lo ms cerca posible o retorcerlos los cables individuales asociados funcionalmente (lnea de ida y retorno, cable de alimentacin). Tender todas las lneas siempre muy prximas a superficies de masa.

ST PROG1 Nro # 3

s
Evitar prolongar cables o lneas por intermedio de bornes o similares. Tender por canaletas y cajas separadas los cables de potencia y cables de seal. Contactar las pantallas deforma superficial (No puntual!)!

1.2.2 Medidas contra interferencias A menudo, las medidas para suprimir interferencias slo se toman cuando ya est funcionando el PLC y est perturbada la recepcin correcta de una seal til. Con frecuencia, los gastos para tales medidas (p. ej. contactos especiales) pueden reducirse de forma considerable si ya durante la configuracin 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) solo pueden atenuarse sensiblemente a un costo elevado. Este problemas se puede resolver con frecuencia sin mas que dejar una separacin lo mayor posible entre 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 buena puesta a masa. Baja puesta a masa se entiende la interconexin galvnica de todas las piezas metlicas inactivas (VDE 0160) Bsicamente se utilizar el principio de la puesta a masa superficial. NOTA Todas las piezas metlicas inactivas y capaces de conducir debern ponerse a tierra! Instrucciones para realizar esta puesta a masa: Todas las conexiones de masa debern realizarse con baja impedancia.

ST PROG1 Nro # 4

s
Todas las piezas metlicas debern conectarse a lo largo de una gran superficie. Para establecer las conexiones utilice siempre bandas de masa especialmente anchas. Lo decisivo no es la seccin de la lnea de conexin, 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 seal El filtrado de las lneas de red y de seal constituyen una medida para reducir las interferencias propagadas por las lneas dentro del armario no debern aparecer en las lneas de alimentacin y en las lneas de seal ningn tipo de sobretensiones. Las sobretensiones se evitan tomando las medidas siguientes: Desparasitaje de lneas de red Si 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 a la entrada del armario. Al instalarlo, atender a que el filtro de red est unido a la masa del armario a lo largo de una gran superficie y con la mnima impedancia posible (las superficies de contacto debern tener brillo metlico) Condensadores de derivacin en caso de alimentacin con corriente continua Cuando un armario se conecta a una alimentacin central de 24V, en el autmata pueden aparecer interferencias inyectadas a travs de dicha alimentacin. Por ello se recomienda incorporar condensadores de derivacin en el punto de entrada en el armario de la lnea de 24 V. Los condensadores se 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 o electromagntico. Esta medida puede dividirse en: apantallamiento de equipos, apantallamiento de lneas.

ST PROG1 Nro # 5

s
p.ej. 0,6 Masa del 0,2 F

0,6 F p.ej. 0,2

0,6 F

+24 V
+24V 0V

0V

Esquema de Principio

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 se contactarn a distancias suficientes (p. ej. 50mm). Las puertas deben unirse a la masa del armario a travs de conexiones suplementarias; 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 de reas electrnicas sensibles mediante chapas. Dichas chapas se atornillarn en varios puntos a la masa del armario, minimizando la impedancia. Las tensiones perturbadoras inyectadas en el PLC a travs de las lneas de seal y de alimentacin se derivan en el punto central de tierra(carril normalizado). El punto central de tierra deber unirse con un conductor de cobre lo ms corto posible y con una seccin 10 mm2 con el conductor de proteccin PE (carril de tierra).

ST PROG1 Nro # 6

s
1.2.3.2 Apantallamiento de lneas Generalmente las lneas apantalladas se contactarn con el potencial del armario siempre en ambos extremos. Solo as es posible suprimir adecuadamente todas las frecuencias interferentes inyectadas. Contacte la pantalla en la pantalla en la barra colectora de pantallas; la pantalla deber continuar acompaando al cable hasta la tarjeta (pero no se contactar en esta). NOTA En caso de fluctuaciones en el potencial de tierra, a travs de la pantalla contactada en ambos extremos puede circular una corriente de equilibrio. Para evitarlo, una con una lnea equipotencial los componentes interconectados. En los PLCs SIMATIC, las corrientes perturbadoras que circulan por las pantallas de cables se derivan a tierra a travs de la barra de pantalla y la lnea equipotencial. Para evitar que estas corrientes derivadas constituyan por si otra fuente perturbadora, procurar que circulen adecuadamente por un conductor de baja 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 lneas equipotencial. 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 atacadas directamente por salidas SIMATIC (p. Ej. Bobinas de contactores y rels) debern llevar elementos supresores (p. Ej. Elementos RC). Supresin en bobinas de c.c.
con diodo con diodo Zener

Supresin en bobinas de c.a.


con varistor con elemento RC

Fig. 1-2 Supresin de bobinas


ST PROG1 Nro # 7

s
1.2.4.2 Blindajes de inductancias Conviene separar del resto del armario usando chapas las reas del mismo 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 cargas electrotsticas conviene usar cajas o armarios metlicos que tengan una buena conexin galvnica con el punto de puesta a tierra en el lugar de emplazamiento. Si desea instalar su PLC dentro de una caja, utilice preferentemente cajas de fundicin o de chapa. Las cajas de plstico debern tener siempre una superficie metalizada. Las puertas o tapas de las cajas debern estar unidas con el cuerpo de la 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 las directrices para la proteccin de componentes y mdulos sensibles a las cargas electrostticas. 1.2.5 Medidas de seguridad Al proyectar instalaciones con PLCs lo mismo que ocurre con mandos de 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 los valores materiales. Al retornar la tensin de red tras un corte, o rearmar el dispositivo de PARADA 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 EMERGENCIA y de interruptores de disposicin de seguridad. Estos dispositivos de proteccin deben influir directamente sobre la parte de potencia de los actuadores. Al accionar los dispositivos de PARADA DE EMERGENCIA deber alcanzarse 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 en mquinas herramientas)
ST PROG1 Nro # 8

s
En cambio, los actuadores y accionamientos cuya desconexin pueda poner en peligro a personas e instalaciones (p. Ej., dispositivos de fijacin de piezas) no debern poderse desconectar desde el dispositivo de PARADA DE EMERGENCIA. La actuacin del dispositivo de PARADA DE EMERGENCIA debe ser detectada por el PLC, y evaluada por el programa de mando. Proteccin contra contactos indirectos

1.2.5.1

Las piezas conductoras accesibles no debern quedar sometidas a una tensin peligrosa en caso de defecto. Por ello debern incluirse en una medida de 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 en caso de defecto de aislamiento se unen elctricamente de forma perfecta con el conductor de proteccin (PE). La resistencia mxima admisible entre el terminal del conductor de proteccin y la pieza a proteger es de 0,5 .

ST PROG1 Nro # 9

s
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 un cambio continuo de la amplitud de la seal. Los humanos, por ejemplo, registran la informacin ptica, acstica y sensorial esencialmente en la forma de seales analgicas. En la ingeniera de procesos, la seal 420 mA es transmitida en una forma puramente analgica. Una corriente proporcional al valor medido fluye entre 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 los dispositivos presentes en el circuito. 2.1.1.2 Seales digitales

Una seal digital no cambia continuamente si no que es transmitida en paquetes discretos. No es inmediatamente interpretable, en cambio, necesita ser primero decodificada por el receptor. Hay muchas maneras por las cuales una seal digital puede ser transmitida: como pulsos elctricos que saltan entre dos o ms niveles de voltaje o como cdigo Morse. Incluso las seales de humo o los golpes de un tambor pueden ser clasificadas como una seal digital. 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 estar conectadas o desconectadas. Este tipo de seales que solo pueden tomar dos estados definidos se les conoce como seales binarias. En este sentido, las seales digitales de entrada y salida del PLC descritas hasta ahora, son seales 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
ST PROG1 Nro # 10

s
entre los estados fsicos de las seales de entrada/salida y los estados de seal 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 valor de 1 cuando se detecta el 100% del voltaje en el canal de entrada. El estado de seal es 0 cuando existe el 0% del voltaje. El 0% y 100% del voltaje se determinan segn criterios de tolerancia.
Exite tensin +24V 1L+ Estado de No existe Tensin Seal 0v "1" "0" Estado de 1L Seal 0 1 2L+ "0" Lampara Apagada "1" Estado de Seal Lampara Encendida 2L-

# Fuente de Alimentacion

CPU

Entradas

Salidas

No Existe Tensin Desconexin Existe Conexin Tensin

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% del voltaje que se maneja y no respecto a un nivel de voltaje determinado. Ver Fig. 2-2.

CASO :

VOLTAJE

+230V

+115V

+24V

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

0V

0V

0V

Fig. 2-2 Seal binaria 2.1.2.2 Tipos de contactos y su estado de seal

ST PROG1 Nro # 11

s
Hemos visto que el PLC asocia el estado de seal 0 a las entradas donde 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 estos unos y ceros la situacin fsica que los produce. Por ejemplo, tener una entrada con estado de seal 1 puede ser el resultado de dos situaciones fsicas distintas. Analicemos la Tabla 2-1. Vemos que un estado de seal 1 lo produce un contacto normalmente abierto accionado, o un contacto normalmente cerrado no accionado. De la misma manera, el estado de seal 0 lo produce un contacto normalmente abierto no accionado o un contacto normalmente cerrado accionado. Es claro entonces que el PLC no puede determinar a partir del estado, el tipo de contacto asociado a la entrada. TIPO DE CONTACTO ESTADO DEL CONTACTO ACCIONADO NO ACCIONADO ACCIONADO NO ACCIONADO TENSIN DE ENTRADA EXISTE NO EXISTE ESTADO DE SEAL A LA ENTRADA 1 0

Contacto NO (normalmente abierto)

Contacto NC (normalmente cerrado)

NO EXISTE EXISTE

0 1

Tabla 2-1 Tipos de contacto y su estado de seal Esta situacin debe tomarse muy en cuenta, sobre todo en el momento de la programacin. El que elabora el programa de control debe tener muy claro lo que representan los unos y ceros que se manejan; especialmente cuando 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 diagrama adjunto. BIT
7

Estado de seal 0 1
6 5 4 3 2 1 0

BYTE

Longitud = 8 bits

ST PROG1 Nro # 12

s
15 8 7 0

WORD Byte alto (MSB) 2.1.2.1 Bit Byte bajo (LSB)

Longitud = 16 bits

El bit es la unidad de informacin ms pequea. Solo puede tomar los valores 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 de derecha a izquierda tomando como nmero de bit de 0 al 7. En un byte se puede 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. Los bits 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 contar balones. El estado actual del contador es 11, indicado en un visualizador. Cuantos balones hay? ) ) ) La solucin que usted probablemente ha seleccionado es la alternativa a), porque los usuarios estn usando la representacin de los valores numricos en el sistema decimal. El sistema decimal es solo de muchos sistemas de numeracin existentes. El procesador de un Controlador Programable puede procesar solamente los estados de seal 0 y 1. Esto requiere un sistema de numeracin que usa solo estos dgitos. El sistema binario usa slo 0 y 1. En este sistema de numeracin, la secuencia de dgitos 11 es la representacin para la solucin b) (3 en sistema decimal).

ST PROG1 Nro # 13

s
Los nmeros binarios necesitan mas espacios que sus equivalentes decimales, esto los hace difciles de usar. Es difcil recordar nmeros largos que consisten de ceros y unos. La dificultad para leer y convertir nmeros binarios motiva el uso de un sistema hexadecimal. En este sistema, 11 representa la solucin c) (17 en sistema decimal) 2.2.2 Caractersticas de un sistema de numeracin Actualmente todos los sistemas de numeracin tienen la misma estructura que el sistema decimal. Ellos pueden ser descritos usando tres caractersticas bsicas: Los dgitos La base o raz Los pesos

La contribucin de cada uno de lo dgitos a todo el nmero depende de la posicin de estos dentro del nmero. Cada posicin tiene cierto peso que es igual a la potencia de la base escogida. El valor del nmero es obtenido al multiplicar cada dgito por el peso de su posicin y sumando los resultados. La tabla 2-2 muestra las caractersticas y un ejemplo para los sistemas binario y decimal. Estos sistemas sern usados posteriormente durante el aprendizaje del lenguaje STEP 7. CARACTERSTICA SISTEMA BINARIO Dgitos 0,1 Base Pesos 2 20 =1, 21 =2, 22 =4, 23 =8, .. 1102 0x1=0 1x2=1 1x4=4 1102 = 0 + 2 + 4 = 5 SISTEMA HEXADECIMAL 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, CDH 13 x 1 = 13 12 x 16 = 192 CDH = 13 + 192 = 205

Ejemplo

Tabla 2-2 Caractersticas de los sistemas binario y hexadecimal 2.2.3 El cdigo BCD Los PLCs solamente pueden procesar nmeros en representacin binaria. Estos son difciles de usar por los usuarios y por lo tanto no son
ST PROG1 Nro # 14

s
prcticos para el ingreso o salida de valores numricos de un PLC. El uso de nmeros 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 el cual los nmeros decimales han sido convertidos en un nmero binario, de modo que el PLC pueda procesarlo fcilmente. Los dgitos individuales del nmero decimal estn codificados en cuatro bits (dgitos binarios). Esta representacin con cuatro bits aparece por que el mayo dgito decimal, el 9, requiere como mnimo esta cantidad de dgitos en su representacin binaria (10012). La tabla 2-3 muestra la representacin de diversos nmeros en los sistemas de numeracin vistos. DECIMAL 0 1 2 3 4 55 6 7 8 9 10 11 12 13 14 15 16 126 127 128 510 511 512 BINARIO 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000 111 1110 111 1111 1 0000 0000 1 1111 1110 1 1111 1111 10 0000 0000 HEXADECIMAL 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 7E 7F 80 1FE 1FF 200 BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0001 0000 0001 0001 0001 0010 0001 0111 0001 0100 0001 0101 0001 0110 0001 0010 0110 0001 0010 0111 0001 0010 1000 0101 0001 0000 0101 0001 0001 0101 0001 0010

Tabla 2-3 Nmeros en diferentes representaciones

ST PROG1 Nro # 15

s
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. As mismo, al ejecutarse el programa contenido en la memoria se generan una serie 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 es necesario darles un nombre o designacin. Cada vez que se hace referencia a una seal, se hace a travs de este nombre o designacin. La designacin de las seales puede hacerse considerando una nica seal (1 bit) o un grupo de ellas (byte o palabra). Veamos como se lleva a cabo esta designacin en cada caso.

3.2 DESIGNACIN DE ENTRADAS Y SALIDAS DIGITALES Las seales de entrada y salida llegan y salen fsicamente de los bornes de conexin de las tarjetas de entrada y salida (Fig. 3-1).

+24V

E3.6 E3.4 E3.2 E3.0 E3.7 E3.5 E3.3 E3.1 EJEMPLOS: EMISORES E AB 7 0 6 0 5 1 4 0 3 1 2 1 1 0 0 0 TIPO DE SEAL BYTE 3 13.5 BYTE 4 DIRECCION No DEL BIT EW 0.3 5 2 INPUT BIT OUPUT BYTE INPUT WORD

ESTADO DE SEAL "1"

Fig. 3-1 Designacin de entradas y salidas

ST PROG1 Nro # 16

s
Para efectos de identificacin, todas las seales que manejan las tarjetas 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 por cada uno de sus 8 bits. Cualquier seal en las tarjetas queda definida mediante el nmero del grupo al que pertenecen (nmero byte) y el nmero de elemento en el grupo (nmero bit). A esta informacin se le conoce como direccin de la seal. 3.2.1 Designacin de seales bit La designacin de seales bit(una nica seal) se hace como sigue: E A Se da distintivo del tipo de seal: Entrada Salida Luego se indica la direccin de la seal, separando con un punto el nmero byte y el nmero bit:

No. Byte No. Bit As por ejemplo, la designacin de la seal que llega a una tarjeta de entrada, 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 al distintivo del tipo de seal, el tipo de grupo de que se trata: B para grupos byte (8 elementos) y W para grupos palabra (en Ingls Word, 16 elementos). Esto es: EB AB EW AW Entrada Byte Salida Byte Entrada Word 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.

ST PROG1 Nro # 17

s
As, por ejemplo: Al grupo de las 8 seales de salida pertenecientes al byte 5 se le designa: AB 5 Tipo de seal Nmero de byte

A la palabra que contiene los bytes 2 y 3 de entrada se le designa: EW 2 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 que sirven para guardar resultados intermedios en la lgica de control. Estas seales hacen las veces de los rels auxiliares en control convencional. Las marcas, as las llamaremos en adelante, son seales internas, no entran ni salen del PLC. Por tanto, no es posible asociarles el borne de conexin de alguna tarjeta. Estas seales se encuentran en una regin especial de la memoria del CPU. Reservada especialmente para ellas. La designacin de las marcas se hace en forma similar a la designacin de entradas y salidas, con la diferencia de que estas seales no llegan ni salen de bornes de conexin, sino de localidades de memoria, y su distintivo de seal es M(marca).

3.4 DIRECCIONES DE LAS TARJETAS ANALGICAS Para cada canal de una tarjeta analgica son precisos dos bytes (una palabra). Por ello, la direccin de un canal analgico est representada por el nmero de byte alto.

ST PROG1 Nro # 18

s
3.5 TIPOS DE DIRECCIONAMIENTO Cada una de las seales de las tarjetas de entrada y salida tienen una direccin. Como lo mencionramos anteriormente, las seales que maneja una tarjeta 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 el nmero 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 seal depende 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, (se enchufen o no tarjetas en el puesto). Se reservan 4 direcciones bytes por puesto considerando que las tarjetas que manejan mayor nmero de seales son aquellas de 32 puntos (4 bytes). En el caso de insertar una tarjeta de 16 puntos, las 2 ltimas direcciones bytes que le corresponden al puesto de enchufe se pierden. As por ejemplo las seales que maneja la tarjeta en el puesto 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 as sucesivamente. 3.5.2 Direccionamiento variable La direccin de una seal puede ser independiente de la posicin o puesto de enchufe de la tarjeta a la que pertenece. As por ejemplo es posible hacer que los bytes 0, 1, 2 y 3no correspondan a la tarjeta enchufada en el puesto 0, sino que correspondan a la tarjeta ubicada en el puesto de enchufe 3; A este tipo de direccionamiento se le conoce como direccionamiento variable. El direccionamiento variable es posible nicamente insertando una tarjeta IM (Interface Module) en el ltimo puesto de enchufe del bastidor. Las direcciones byte de inicio deseadas para cada uno de los puestos de enchufe se fijan ajustando los micro-switchs (DIL) que tiene la tarjeta IM en la parte lateral.

ST PROG1 Nro # 19

s
3.6 IMAGEN DEL PROCESO Antes de comenzar la elaboracin propiamente del programa, y una vez que se ha iniciado la vigilancia del tiempo de ciclo, se realiza la carga de la Imagen de Proceso de las Entradas. Esto consiste en vaciar el estado de todas las seales de entrada procedentes de las tarjetas, en una regin de la memoria, especialmente destinada para ello, conocida como PAE (imagen de proceso de entrada). Ver fig. 3-2. Durante la elaboracin del programa, todas las consultas a los estados de 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 Proceso de Salidas (PAA). Al finalizar el programa despus de la ltima instruccin, se transmiten los estados de seal contenidos en la PAA a las tarjetas de salida. Hasta entonces se actualiza fsicamente el estado de conexin y desconexin de las salidas.

ESTADOS DE SEAL DE LAS ENTRADAS ESTADOS DE SEAL DE LAS SALIDAS ENTRADAS SALIDAS EF00 H PAE EF7FH EF80H PAA IPE = IMAGEN DE PROCESO DE ENTRADAS IPS = IMAGEN DE PROCESO DE SALIDAS DIRECCION ABSOLUTA DIRECCIONES DE BYTE RELATIVAS EFFFH 127 127 0 0

Fig. 3-2 Imgenes de proceso

ST PROG1 Nro # 20

s
3.7 DIRECCIONAMIENTO DE LOS MDULOS S7-300 3.7.1 Asignacin de direcciones en funcin del puesto de enchufe

N puesto IM

10

11

N puesto IM

10

11

N puesto IM

10

11

N puesto

10

11

ST PROG1 Nro # 21

s
3.7.2 Correspondencia y direcciones para fila 0

2 3 N puesto Direccin digital Direccin analgica

4 0 256

5 4 272

6 8 288

7 12 304

8 16 320

9 20 336

10 24 352

11 28 368

3.7.3 Correspondencia y direcciones para fila 1

3 N puesto Direccin digital Direccin analgica

4 32 384

5 36 400

6 40 416

7 44 432

8 48 448

9 52 464

10 56 480

11 60 496

3.7.4 Correspondencia y direcciones para fila 2

3 N puesto Direccin digital Direccin analgica

4 64 512

5 68 528

6 72 544

7 76 560

8 80 576

9 84 592

10 88 608

11 92 624

ST PROG1 Nro # 22

s
3.7.5 Correspondencia y direcciones para fila 3

3 N puesto Direccin digital Direccin analgica

4 96 640

5 100 656

6 104 672

7 108 688

8 112 704

9 116 720

10 120 736

11 124 752

ST PROG1 Nro # 23

s
4.INTRODUCCIN AL LENGUAJE DE PROGRAMACIN STEP 7

El STEP 7 es un lenguaje de programacin con el que se generan las funciones de automatizacin que sern ejecutadas por los PLCs SIMATIC S7. Estas funciones as generadas constituyen el programa de usuario, en el se encuentran las instrucciones precisas Cmo el PLC debe mandar o regular una instalacin. STEP 7 es el software para configurar y programar los sistemas de automatizacin SIMATIC S7-300/400 y SIMATIC M7 300/400, as como 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 la representacin 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 diversas instrucciones equivalen en gran medida a los pasos en los que la CPU ejecuta el programa. Una instruccin representa en AWL tiene la siguiente estructura.
Operacin Qu es lo que se desea realizar? Operando Con quien realizamos la operacin?

002: U

0.1
Parmetro Diferencia operandos con el mismo identificador

Identificador Qu tipo de operando es? Direccin Indica la posicin relativa de una instruccin dentro de un mdulo

ST PROG1 Nro # 24

s
Esquema de funciones (FUP) Es un lenguaje de programacin grfico que utiliza los cuadros de lgebra booleana para representar la lgica. En FUP se utilizan smbolos normalizados para representar las operaciones. El smbolo dentro 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 con smbolos elctricos. KOP permite observar fcilmente el sentido de la circulacin de la corriente a travs de contactos, elementos complejos y bobinas. La Fig 4-1 muestra un ejemplo de estas dos ltimas representaciones. Opcionalmente para programar los sistemas de automatizacin SIMATIC S7-300/400 se dispone de los siguientes lenguajes suministrables opcionalmente: SCL para S7 Es un lenguaje textual de alto nivel conforme a la norma DIN EN 611313. Contiene estructuras similares a las de los lenguajes de programacin Pascal y C. Por lo tanto, S7 SCL, es adecuado sobre todo para los usuarios ya acostumbrados a trabajar con lenguajes de alto nivel. S7 SCL se puede emplear para programar funciones frecuentes o muy complejas. GRAPH para S7 Es 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 todo acciones para controlar las salidas. El paso de una etapa a otra se controla mediante condiciones de transicin. HI GRAPH para S7 Es un lenguaje de programacin que permite describir cmodamente los procesos asincrnicos y no secuenciales en forma de grafos de estado. A tal efecto, la instalacin se divide en unidades funcionales que pueden adoptar diversos estados. Las unidades funcionales se pueden sincronizar mediante el intercambio de mensajes. CFC para S7 y M7 Es un lenguaje de programacin para interconectar grficamente las funciones existentes. Estas ltimas abarcan una amplia gama que incluye desde combinaciones lgicas sencillas hasta regulaciones y controles complejos. Se dispone de un gran nmero de funciones en forma de bloques contenidos en una librera. La programacin se
ST PROG1 Nro # 25

s
lleva a cabo copiando lo bloques en un plano y contactndose entre s mediante lneas FUP Esquema de Funciones
E 1.0 E 1.1 E 1.2 E 1.3

KOP Esquema de Contactos


E 1.0 E 1.1 E 1.2 A 4.0

& 1 &
E13 A4.0 E14

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

AWL AWL

FUP

KOP

Fig. 4-2 Compatibilidad entre las formas de representacin

ST PROG1 Nro # 26

s
4.2 OPERANDOS La tabla 4-1 muestra los operandos disponibles en STEP 7: OPERANDO E A M D T Z P B# D# L# P# S5T# T# TOD# C# Entradas Salidas Marcas Datos Temporizadores Contadores Periferia Constante, 2 4 bytes Constante de fecha IEC Constante entera (32 bits) Constante puntero TIPO FUNCIN Interfases del proceso al PLC Interfases del PLC al proceso Memoria para resultados binarios intermedios Memoria para resultado digitales intermedios Memorias para la realizacin de temporizaciones Memorias para la realizacin de contadores Interfase del proceso al PLC Valor numrico fijo Valor numrico fijo Valor numrico fijo Valor numrico fijo

Constante de tiempo S5 (16 bits) Valor numrico fijo Constante de tiempo (16/32 bits) Valor numrico fijo Constante de hora IEC (32 bits) Valor numrico fijo Constante de contador (16/32 Valor numrico fijo bits) Constante binaria (16/32 bits) Valor numrico fijo Constante hexadecimal (16/32 Valor numrico fijo bits) Mdulos de programa Auxiliares para estructurar programa

2# 16# OB,FC, FB, DB

el

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 de usuario. El programa del sistema es la suma de todas las instrucciones y declaraciones involucradas en la ejecucin de las funciones internas; como el respaldo de datos en caso de falla de tensin, la organizacin de diversas funciones anidadas en cada bloque y otros. El programa del sistema se

ST PROG1 Nro # 27

s
encuentra almacenado en una PROM no voltil y en una EPROM. El usuario no tiene acceso a este programa. El programa de usuario es la suma de todas las instrucciones y declaraciones para procesar las seales que controlarn la mquina o proceso. Este programa es estructurado y est subdividido en varias secciones llamadas bloques. Los Bloques de organizacin forman la interfase entre el programa de usuario y el programa del sistema. Este llama a estos bloques cuando ocurre cierto evento. Tambin estn disponibles bloques de funciones estndar para aplicaciones generales. A pesar de que estos bloques son parte del programa del sistema, pueden ser llamados por el programa de usuario. La Fig. 4-3 resume lo explicado anteriormente

Integrado en la CPU Funciones especiales integradas Programa Del Sistema Programa De Usuario

Bloque de Funciones estndar

Bloques de organizacin

En mdulo de memoria usuario

Fig. 4.-3 Programas en la CPU

ST PROG1 Nro # 28

s
4.4 FORMAS DE PROGRAMACIN Al momento de realizar el programa que gobernar determinada mquina o secuencia podemos escoger entre dos formas para estructurar un programa STEP 7: 4.4.1 Programacin lineal. Programacin estructurada.

Programacin lineal

Este tipo de estructura es usado cuando se tienen tareas simples de automatizacin, 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 de Organizacin 1, ms conocido como OB1. Este mdulo se procesa cclicamente, 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 y consiste en dividir el programa global en secciones (mdulos) que realizan tareas 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:

ST PROG1 Nro # 29

FB FC OB BLOQUES DE PROCESAMIIENTO

FB BLOQUE DE FUNCIONES FC FUNCIONES OB BLOQUE DE ORGANIZACIN

PROGRAMA DE APLICACIN
DB BLOQUES DE ALMACENAMIENTO DB BLOQUE DE DATOS

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. Esto permite anidar hasta 32 niveles en mdulos de programa, funcionales y de paso. Si el anidado supera los 32 niveles el PLC pasa a STOP generando el siguiente mensaje de error: "Desbordamiento en pila de mdulos STUEB".

ST PROG1 Nro # 30

s
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 la interfase entre el sistema operativo (programa del sistema) y el programa de mando (programa de usuario). Cada uno de los distintos bloques de organizacin se hace cargo de una determinada tarea parcial. Cada bloque de organizacin puede crear un programa estructurado, creando funciones (FC) y bloques de funcin (FB) y llamndolas en el rea de instrucciones. Al llamar a un bloque tiene que asignar datos a los parmetros declarados. En el caso ms sencillo de programacin usted necesitar bloques de organizacin 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 caso de producirse un error. Otros ofrecen funciones operativas (del mismo modo que los mdulos funcionales 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 mando estructurado. Adems pone de relieve la importancia de los mdulos de organizacin. 4.4.5 Funciones (FC)

Una funcin (FC) es un bloque lgico sin memoria. Tras la ejecucin de la FC, los parmetros de salida contienen los valores de la funcin que se han calculado. En este caso, es el usuario quien decide cmo y dnde se utilizarn y guardarn los parmetros actuales despus de llamar una FC. La FC contiene un programa, que se ejecuta siempre cuando la FC es llamada por otro bloque lgico. Las funciones se pueden utilizar para: Devolver un valor de funcin al bloque invocante (ej.: funciones matemticas) Ejecutar una funcin tecnolgica (ej.: control individual con combinacin binaria)
ST PROG1 Nro # 31

s
OB100/101

OB1

FC1

FC11

FB2

FC200

Programa del sistema

Programa de mando

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

FC ELECCION DE FORMA DE OPERACION

FC 10 OPERACION MANUAL

FC 45 TAREA PRINCIPAL

FC OPERACION AUTOMATICA

FC 250 PARO ESCALONADO FC 37 SUPERVICION

ST PROG1 Nro # 32

s
Fig. 4-5 Funcionamiento de los mdulos de programa Los mdulos de programa se activan con las llamadas CALL y CC. Estas operaciones pueden programarse en todos los tipos de mdulos, excepto en los 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, as como las variables estticas, se memorizan en el DB de instancia. Las variables temporales se memorizan en la pila de datos locales. Los datos memorizados en el DB de instancia, no se pierden al concluir el tratamiento del FB. Los datos memorizados en la pila de datos locales se pierden al concluir el tratamiento del FB.

FB1

FC 3 "MULTIPLICAR"

FB4

FB3

FC 80 "REGULACION"

FB11

Fig. 4-6 Funcionamiento de los mdulos funcionales Entre sus principales particularidades tenemos: Son parametrizables; es decir al llamar al mdulo podemos transferirles parmetros actuales. Disponen de funciones complementarias que no pueden ser programadas en otros mdulos. Solamente pueden ser representados en AWL.

ST PROG1 Nro # 33

s
4.4.7 Mdulos de datos (DB) Aqu se guardan los datos que sern procesados durante la ejecucin del programa. Los bloques de datos guardan los datos del programa de usuario. Se distinguen entre bloques de datos globales y bloques de datos de instancia. Bloque de datos de instancia define la llamada de un bloque de funcin, que transfiere parmetros, est asignado un bloque de datos de instancia. En el DB de instancia estn depositados los parmetros actuales y los datos estticos del FB. Las variables declaradas en el FB determinan la estructura del bloque de datos de instancia. La instancia 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 de usuario, es decir, dichos bloques contienen datos variables con los cuales puede trabajar el programa de usuario. Los bloques de datos globales contienen datos de usuario utilizables desde otros bloques. El tamao de los DBs puede variar.

OB1

FC1 DB255 DB4 DB0 DW0 DW1 DW2 DW3 DW4

FC17 DW255 TDW255

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,.)
ST PROG1 Nro # 34

s
4.4.7.1 Caracteres alfanumricos (mensajes) Programacin de mdulos de datos

El primer paso consiste en asignar un nmero al mdulo que deber estar 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 con ceros. Un mdulo de datos permite almacenar hasta 2042 palabras de datos. Estos mdulos tambin pueden crearse o borrarse desde el programa de mando. 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 a otro mdulo de datos. Al retornar al mdulo primario, es nuevamente vlido el DB que tena dicha propiedad antes de la llamada. En todos los OBs los DBs utilizados por el programa de usuario deben abrirse con la instruccin AUF (or OPN) DB n.

FC 20 DB Vlido FC7

DB vlido

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


ST PROG1 Nro # 35

s
5.OPERACIONES LGICAS CON BITs

5.1 DESCRIPCIN Las operaciones lgicas con bits interpretan los estados de seal 1 y 0, y los combinan de acuerdo con la lgica de Boole. Estas combinaciones producen un 1 un 0 como resultado y se denominan resultado lgico (RLO). Las operaciones lgicas con bits permiten ejecutar las ms diversas funciones. 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 o negativo para ejecutar las siguientes funciones:

Palabra de estado

ST PROG1 Nro # 36

s
Es un registro de la memoria de la CPU que contiene 16 bits que pueden direccionarse en el operando de las operaciones lgicas con bits y con palabras. Solo nos sern de utilidad los 9 primeros bits, estando reservados el uso de los 7 ltimos. A continuacin pasaremos a describir cada bit:

BIT 0 (ER): 0 indica que la siguiente lnea se ejecuta como nueva consulta (inhibida). En este estado la consulta se almacena directamente 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 es 0. BIT 4 (OV): bit de desbordamiento. Se activa (1) por una operacin aritmtica 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 con OV e indica que previamente se ha producido un error. Solo puede cambiar a cero con la instruccin de salto, una operacin de llamada a mdulo, o porque se ha alcanzado el fin del mdulo. BITS 6 (A0) y 7 (A1): cdigos de condicin. Dan informacin sobre los resultados 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 una operacin de palabras como resultado binario e integrarlo en la cadena de combinaciones lgicas binarias.

5.2 CONTACTO NORMALMENTE ABIERTO 5.2.1 Smbolo <operando>

---| |---

ST PROG1 Nro # 37

s
5.2.2 Descripcin Se cierra si el valor del bit consultado, que se almacena en el <operando> indicado, es "1". Si el contacto est cerrado, la corriente fluye a travs del contacto y el resultado lgico (RLO) es "1". De lo contrario, si el estado de seal en el <operando> indicado es "0", el contacto est abierto. Si el contacto est abierto no hay flujo de corriente y el resultado lgico de la operacin (RLO) es "0". 5.2.3 Palabra de estado

5.2.4 Ejemplo La corriente puede fluir si: el estado en 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 <operando>

---| / |---

5.3.2 Descripcin Se abre si el valor del bit consultado, que se almacena en el <operando> indicado, es "0". Si el contacto est cerrado, la corriente fluye a travs del contacto y el resultado lgico (RLO) es "1". De lo contrario, si el estado de seal en el <operando> indicado es "1", el contacto est abierto. Si el contacto est abierto no hay flujo de corriente y el resultado lgico de la operacin (RLO) es "0".
ST PROG1 Nro # 38

s
5.3.3 Palabra de estado

5.3.4 Ejemplo La corriente puede fluir si:el estado en 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 es distinto. 5.4.3 Ejemplo

ST PROG1 Nro # 39

s
La salida A 4.0 es "1" si (E 0.0 es 0 Y 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 <operando>

---| 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 <operando>

---(

ST PROG1 Nro # 40

s
5.6.2 Descripcin Opera como una bobina en un esquema de circuitos. Si la corriente fluye hasta la bobina (RLO = 1), el bit en el <operando> se pone a "1". Si no fluye corriente hasta la bobina (RLO = 0), el bit en el <operando> se pone a "0". Una bobina de salida slo puede colocarse dentro de un esquema de contactos en el extremo derecho de un circuito. Como mximo puede haber 16 salidas mltiples. Se puede crear una salida negada anteponiendo a la bobina de salida la operacin ---|NOT|--- (invertir el resultado lgico). 5.6.3 Palabra de estado

5.6.4 Ejemplo (el estado de la entrada E 0.0 Y E 0.1 es "1") O el estado de la entrada E 0.2 es "0". La salida A 4.1 es "1"si: (el estado de la entrada E 0.0 Y E 0.1 es "1" O el estado de la entrada E 0.2 es "0") Y el estado de la entrada E 0.3 es "1".

La salida A 4.0 es "1" si:

5.7 CONECTOR 5.7.1 Smbolo <operando>

---( # )---

5.7.2 Descripcin Es un elemento intercalado que cumple una funcin de asignacin; el conector almacena el RLO actual (el estado de seal del flujo de corriente) en el <operando> que se haya especificado. Este elemento de asignacin memoriza la combinacin lgica de bits de la ltima rama abierta que est antes que l. Si se conecta en serie con otros elementos, la operacin ---( # )--se inserta igual que un contacto. El elemento ---( # )--- nunca debe conectarse
ST PROG1 Nro # 41

s
a una barra de alimentacin, ni colocarse directamente detrs de una rama, y tampoco debe emplearse como final de una rama. Se puede crear la negacin del elemento ---( # )--- anteponindole el elemento ---|NOT|--- (invertir el resultado lgico). 5.7.3 Palabra de estado

5.7.4 Ejemplo

5.8 DESACTIVAR SALIDA 5.8.1 Smbolo <operando>

---( R )

5.8.2 Descripcin Slo se ejecuta si el RLO de las operaciones anteriores es "1" (flujo de corriente en la bobina). Si fluye corriente a la bobina (RLO es "1"), el <operando> indicado del elemento se pone a "0". Un RLO de "0" (= no hay flujo de corriente en la bobina) no tiene efecto alguno, de forma que el estado de seal del operando indicado del elemento no vara. El <operando> tambin

ST PROG1 Nro # 42

s
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 estado en la entrada E 0.2 es "0". El temporizador T1 slo se pone a 0 si: el estado de seal en la entrada E 0.3 es "1". El contador Z1 slo se pone a 0 si: el estado de seal en la entrada E 0.3 es "1".

5.9 ACTIVAR SALIDA 5.9.1 Smbolo <operando>

---( S )

5.9.2 Descripcin Slo se ejecuta si el RLO de las operaciones anteriores es "1" (flujo de corriente en la bobina). Si el RLO es "1", el <operando> indicado del elemento se pone a "1". Un RLO = 0 no tiene efecto alguno, de forma que el estado de seal actual del operando indicado del elemento no se altera.

ST PROG1 Nro # 43

s
5.9.3 Palabra de estado

5.9.4 Ejemplo (el estado en la entrada E 0.0 Y en E 0.1 es "1") O el estado en la entrada E 0.2 es "1". Si el RLO es "0", el estado de seal de la salida A 4.0 no vara. La salida A 4.0 slo se pone a "1" si: 5.10 ACTIVAR FLIP-FLOP DE DESACTIVACIN 5.10.1 Smbolo <operando>

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 el estado en la entrada S es "1", se activa el flip-flop. Si el RLO es "1" en ambas entradas, la operacin Desactivar flip-flop de activacin ejecuta en el <operando> indicado primero la operacin Desactivar y seguidamente la operacin Activar, de modo que la direccin permanece activada para el resto del ciclo de programa. Las operaciones S (Activar) y R (Desactivar) slo se ejecutan si el RLO es 1. Si el RLO es 0 estas operaciones no se ven afectadas y el operando indicado no vara.

ST PROG1 Nro # 44

s
5.10.3 Palabra de estado

5.10.4 Ejemplo es 0 y en E 0.1 es 1, se activa la marca M 0.0 y la salida A 4.0 es "1". Si ambos estados de seal son "0", no cambia nada. Si ambos estados de seal son "1" domina la operacin Activar, debido al orden en que estn dispuestas las operaciones. M 0.0 se activa y la salida A 4.0 es "1".

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

5.11

DESACTIVAR FLIP-FLOP DE DESACTIVACIN

5.11.1 Smbolo <operando>

5.11.2 Descripcin Se activa si el estado en la entrada S es "1" y si el estado de la entrada R es "0". De no ser as, cuando el estado en la entrada S es "0" y el estado de la entrada R es "1", se desactiva el flip-flop. Si el RLO es "1" en ambas entradas, la operacin Desactivar flip-flop de activacin ejecuta en el <operando> indicado primero la operacin Activar y seguidamente la operacin Desactivar, de modo que la direccin permanece desactivada para el resto del ciclo de programa.
ST PROG1 Nro # 45

s
5.11.3 Palabra de estado

5.11.4 Ejemplo en la entrada E 0.0 es 0 y en E 0.1 es 1, se desactiva la marca M 0.0 y la salida A 4.0 es "0". Si ambos estados de seal son "0", no cambia nada. Si ambos estados de seal son "1", domina la operacin Desactivar debido al orden en que estn dispuestas las operaciones. M 0.0 se desactiva y la salida A 4.0 es "0".

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

5.12

DETECTAR FLANCO DECRECIENTE

5.12.1 Smbolo <operando>

---( N )

5.12.2 Descripcin Detecta un cambio del estado de seal en el operando de "1" a "0", e indica este cambio tras la operacin con RLO = 1. El estado de seal del RLO se compara con el estado de seal del operando, es decir, con la marca de flancos. Si el estado de seal del operando es "1" y el RLO anterior a la operacin es "0", el RLO posterior a la operacin ser "1" (impulso); en todos los otros casos ser "0". El RLO anterior a la operacin se almacena en el operando. 5.12.3 Palabra de estado

ST PROG1 Nro # 46

5.12.4 Ejemplo La marca de flancos M 0.0 almacena el estado de seal del RLO de la combinacin de bits en su conjunto. Si el estado de seal del RLO cambia de "1" a "0" se ejecuta el salto a la meta CAS1.

5.13

DETECTAR FLANCO CRECIENTE

5.13.1 Smbolo <operando>

---( P )

5.13.2 Descripcin Detecta un cambio del estado de seal en el operando, de "0" a "1", e indica este cambio tras la operacin mediante RLO = 1. El estado de seal actual del RLO se compara con el estado de seal del operando, es decir, con la marca de flancos. Si el estado de seal del operando es "0" y el RLO anterior a la operacin es "1", el RLO detrs de la operacin ser "1" (impulso); en todos 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

ST PROG1 Nro # 47

s
La marca de flancos M 0.0 almacena el estado del RLO de toda la combinacin de bits. Si el estado de seal del RLO cambia de "0" a "1", se ejecuta el salto a la meta CAS1.

5.14

CARGAR RESULTADO LGICO (RLO) EN EL REGISTRO RB

5.14.1 Smbolo <operando>

---( SAVE )
5.14.2 Descripcin Almacena el RLO en el bit del resultado binario (RB) de la palabra de estado. 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 estado del bit RB. El uso de SAVE con una consulta del bit RB en el mismo bloque o en bloques subordinados no es recomendable, puesto que el bit RB puede ser modificado por numerosas operaciones intercaladas. La operacin SAVE resulta especialmente til antes de salir de un bloque, puesto que con ella la salida ENO (bit RB) se pone al valor del bit RLO, lo cual permite aadir un tratamiento de error a continuacin del bloque.

5.14.3 Palabra de estado

5.14.4 Ejemplo El estado del segmento (= RLO) se almacena en el bit RB.

ST PROG1 Nro # 48

s
5.15 DETECTAR FLANCO DE SEAL NEGATIVO 5.15.1 Smbolo

5.15.2 Descripcin Compara el estado de seal de <Operando1> con el estado de seal de la consulta anterior, que esta almacenada en el <Operando2>. Si el estado actual del RLO es "0" y el estado anterior era "1" (deteccin de un flanco decreciente), 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 en E 0.2 es "1") Y E 0.3 tiene un flanco decreciente Y el estado en E 0.4 es "1". 5.16 DETECTAR FLANCO DE SEAL POSITIVO

5.16.1 Smbolo

ST PROG1 Nro # 49

5.16.2 Descripcin Compara el estado de seal de <Operando1> con el estado de seal de la consulta anterior que est almacenado en <Operando2>. Si el estado actual del RLO es "1" y el estado anterior era "0" (Deteccin de un flanco creciente), la salida 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 en E 0.2 es "1") Y E 0.3 tiene un flanco creciente Y el estado en E 0.4 es "1".

ST PROG1 Nro # 50

s
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 de temporizador. 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 de temporizacin dado en el intervalo indicado por la base de tiempo hasta alcanzar el valor 0. 6.2.2 Valor de temporizacin Los bits 0 a 9 de la palabra de temporizacin contienen el valor de temporizacin en cdigo binario. Este valor indica un nmero de unidades. La actualizacin decrementa el valor de temporizacin en una unidad y en el
ST PROG1 Nro # 51

s
intervalo indicado por la base de tiempo hasta alcanzar el valor 0. El valor de temporizacin se puede cargar en los formatos binario, hexadecimal o decimal codificado en binario (BCD). El rea de temporizacin va de 0 a 9 990 segundos. Para cargar un valor de temporizacin redefinido, se observarn las siguientes reglas sintcticas. El valor de temporizacin se puede cargar en cualesquiera de los siguientes 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 esa base de tiempo. El valor de temporizacin mximo que puede introducirse es de 9 900 segundos 2H_46M_30S. Ejemplos: S5TIME#4S --> 4 segundos s5t#2h_15m --> 2 horas y 15 minutos S5T#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 de tiempo en cdigo binario. La base de tiempo define el intervalo en que se decrementa en una unidad el valor de temporizacin. La base de tiempo ms pequea es 10 ms, la ms grande 10 s.

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

ST PROG1 Nro # 52

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

6.2.4 Configuracin binaria Cuando se dispara un temporizador, el contenido de la palabra de temporizacin 1 se utiliza como valor de temporizacin. Los bits 0 a 11 de la palabra de temporizacin almacenan el valor de temporizacin en formato decimal codificado en binario (formato BCD: cada grupo de cuatro bits contiene el cdigo binario de un valor decimal). Los bits 12 a 13 almacenan la base de tiempo en cdigo binario. La figura muestra el contenido de la palabra de temporizacin cargado con 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 indica el valor de temporizacin en formato binario. La salida DEZ indica la base de tiempo y el valor de temporizacin en formato decimal codificado en binario (BCD). 6.2.6 Tipos de temporizadores

ST PROG1 Nro # 53

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

ST PROG1 Nro # 54

s
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 entrada S sea "1", pero como mximo durante el tiempo indicado por el valor de temporizacin 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 S cambia de "1" a "0" antes de transcurrir el intervalo de tiempo, el temporizador se 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 del temporizador se pone a "1" mientras funciona el temporizador. El valor de temporizacin actual y la base de tiempo tambin se ponen a 0. Un "1" en la entrada R del temporizador no tiene efecto alguno si el temporizador no est en marcha. El valor de temporizacin actual queda depositado en las salidas BI/DUAL y BCD/DEZ. El valor de temporizacin actual equivale al valor inicial de TV/TW menos el valor de temporizacin que ha transcurrido desde el arranque del temporizador. 6.3.3 Diagrama
ST PROG1 Nro # 55

6.3.4 Ejemplo Si el estado de seal de la entrada E 0.0 cambia de "0" a "1" (flanco creciente en el RLO), se activa el temporizador T5. El temporizador contina en marcha con el valor de temporizacin indicado de 2 segundos (2 s) mientras la entrada E 0.0 sea 1. Si el estado de seal de la entrada E 0.0 cambia de "1" a "0" antes de transcurrir el tiempo, el temporizador se para. La salida A 4.0 es "1" mientras est en marcha el temporizador, y "0" si el tiempo ha transcurrido o si el temporizador fue puesto a 0.

ST PROG1 Nro # 56

s
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 se ponga a "0" antes de haber transcurrido el intervalo de tiempo. El estado de seal en la salida Q es "1" mientras el temporizador est en marcha. El temporizador vuelve a arrancar con el valor de temporizacin predeterminado si el estado de seal en la entrada S cambia de "0" a "1" mientras est en marcha el temporizador. El temporizador se pone a 0 si la entrada de desactivacin R del temporizador se pone a "1" mientras el temporizador est funcionando. El valor de temporizacin actual y la base de tiempo se ponen a 0. 6.4.3 Diagrama

ST PROG1 Nro # 57

6.4.4 Ejemplo creciente en el RLO), se activa el temporizador T5. El temporizador contina en marcha con el valor de temporizacin indicado de dos segundos sin ser afectado por un flanco decreciente en la entrada S. Si el estado de seal de la entrada E 0.0 cambia de "0" a "1" antes de transcurrir el tiempo, el temporizador vuelve a arrancar. Si el estado de seal de la entrada E 0.1 cambia de "0" a "1" mientras el temporizador est en marcha, ste se pone a 0. La salida A 4.0 es "1" mientras est en marcha el temporizador. Si el estado de seal de la entrada E 0.0 cambia de "0" a "1" (flanco

ST PROG1 Nro # 58

s
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 temporizacin indicado en la entrada TV/TW mientras el estado de seal en la entrada S sea positivo. El estado de seal en la salida Q ser "1" si el tiempo ha transcurrido sin que se produjeran errores y si el estado de seal en la entrada S es "1". Si el estado de seal en la entrada S cambia de "1" a "0" mientras est en marcha el temporizador, ste se para. En este caso, el estado de seal en la salida Q ser "0". El temporizador se pone a 0 si la entrada de desactivacin R del temporizador se pone a "1" mientras funciona el temporizador. El valor de temporizacin y la base de tiempo se ponen a 0. Entonces el estado de seal en la salida Q es "0". El temporizador tambin se pone a 0 si en la entrada de desactivacin R el valor es "1", mientras el temporizador no est en marcha y el RLO en la entrada S es "1". 6.5.3 Diagrama

ST PROG1 Nro # 59

6.5.4 Ejemplo Si el estado de seal de la entrada E 0.0 cambia de "0" a "1" (flanco creciente en el RLO), se activa el temporizador T5. Si transcurre el tiempo de dos segundos y el estado de seal en la entrada E 0.0 sigue siendo "1", la salida A 4.0 ser "1". Si el estado de seal de la entrada E 0.0 cambia de "1" a "0", el temporizador se para y la salida A 4.0 ser "0". (Si el estado de seal de la entrada E 0.1 cambia de "0" a "1", el temporizador se pone a 0, tanto si estaba funcionando como si no).

ST PROG1 Nro # 60

s
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 temporizacin indicado en la entrada TV/TW aunque el estado de seal en la entrada S se ponga a "0" antes de que haya transcurrido el tiempo. El estado de seal en la salida Q ser "1" si ha transcurrido el tiempo, independientemente del estado de seal que tenga la entrada S. El temporizador vuelve a arrancar con el valor de 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 del temporizador 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

ST PROG1 Nro # 61

6.6.4 Ejemplo Si el estado de seal de la entrada E 0.0 cambia de "0" a "1" (flanco creciente en el RLO), se activa el temporizador T5. El temporizador contina en marcha sin que un cambio de seal de "1" a "0" en la entrada E 0.0 repercuta en l. Si el estado de seal de la entrada E 0.0 cambia de "1" a "0" antes de que haya transcurrido el tiempo, el temporizador vuelve a arrancar. La salida A 4.0 ser "1" si ha transcurrido el tiempo (Si el estado de seal de la entrada E 0.1 cambia de "0" a "1", el temporizador se pone a "0", independientemente de cul sea el RLO en S).

ST PROG1 Nro # 62

s
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 la entrada S es "1", y tambin mientras el temporizador est en marcha. El temporizador 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 a arrancar 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

ST PROG1 Nro # 63

6.7.4 Ejemplo El temporizador arranca si el estado de seal en la entrada E 0.0 cambia de "1" a "0". A 4.0 es "1" si E 0.0 es "1" o el temporizador est en marcha (Si el estado de seal en E 0.1 cambia de "0" a "1", mientras est en marcha el temporizador, ste se pone a 0).

ST PROG1 Nro # 64

s
7.OPERACIONES DE CONTAJE

7.1 CONCEPTOS 7.1.1 rea de memoria Los contadores tienen reservada un rea de memoria en la CPU. Esta rea de memoria reserva una palabra de 16 bits para cada contador. KOP asiste 256 contadores. 7.1.2 Valor de contaje Los 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 al contador al activarse ste. El valor de contaje puede estar comprendido entre 0 y 999. Dentro de este margen se puede variar dicho valor utilizando las operaciones 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 un nmero de 0 a 999, por ejemplo 127, en el siguiente formato: C# 127. C# sirve para indicar el formato decimal codificado en binario. Los bits 0 a 11 del contador contienen el valor de contaje en formato BCD (formato BCD: cada conjunto de cuatro bits contiene el cdigo binario de un valor decimal).

ST PROG1 Nro # 65

7.2 PARAMETRIZAR E INCREMENTAR/DECREMENTAR CONTADOR 7.2.1 Smbolo ingls alemn

7.2.2 Descripcin
ST PROG1 Nro # 66

s
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 ZV cambia de "0" a "1" y el valor del contador era menor que "999". El contador se decrementa en "1" si en la entrada ZR se produce un flanco ascendente y el valor del contador es mayor que "0". Al producirse un flanco ascendente en ambas entradas de contaje se ejecutan ambas operaciones, y el valor de contaje no vara. Si se inicializa el contador 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 mayor que 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 de preseleccin de MW10. Si el estado de seal en E 0.0 cambia de "0" a "1", el valor del contador Z10 incrementa en "1", a menos que el valor de Z10 fuera "999". Si E 0.1 cambia de "0" a "1", Z10 decrementa en "1", a no ser que el valor de Z10 fuera cero. La salida A 4.0 ser "1" si el valor de Z10 no es cero.

ST PROG1 Nro # 67

s
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 la entrada S hay un flanco ascendente. Si el estado de seal de la entrada R es "1" el contador se pone a 0, y entonces el valor de contaje es cero. El contador incrementa en "1" si el estado de seal en la entrada ZV cambia 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 contador contar as en el siguiente ejemplo aunque no haya habido ningn cambio de flanco. 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.
ST PROG1 Nro # 68

s
7.3.3 Ejemplo Al cambiar la entrada E 0.2 de "0" a "1", el contador toma el valor predeterminado para MW10. Si el estado de seal en E 0.0 cambia de "0" a "1", el valor del contador Z10 se incrementa en "1", a menos que el valor de Z10 fuera "999". La salida A 4.0 ser "1" siempre que el valor de Z10 no sea cero.

7.4 PARAMETRIZAR Y DECREMENTAR CONTADOR 7.4.1 Smbolo ingls alemn

7.4.2 Descripcin

ST PROG1 Nro # 69

s
Este contador toma el valor predeterminado de la entrada ZW si en la entrada S hay un flanco ascendente. Si el estado de seal de la entrada R es "1" el contador se pone a 0, y entonces 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, el contador contar as en el siguiente ejemplo aunque no haya habido ningn cambio de flanco. El estado de seal en la salida Q ser "1" si el valor de contaje es mayor que 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 de preseleccin de MW10. Si el estado de seal en E 0.0 cambia de "0" a "1", el valor del contador Z10 decrementa en "1", a menos que el valor de Z10 fuera "0". La salida A 4.0 ser "1" siempre que el valor de Z10 no sea cero.

7.5 PONER CONTADOR AL VALOR INICIAL 7.5.1 Smbolo ingls alemn

7.5.2 Descripcin

ST PROG1 Nro # 70

s
Se ejecuta solamente en caso de que haya un flanco ascendente en el RLO. En este caso se transmite el valor predeterminado al contador indicado. 7.5.3 Ejemplo El valor "100" quedar preseleccionado para el contador Z5 si en la entrada E 0.0 se produce un flanco ascendente (cambio de "0" a "1"). El valor del contador Z5 no se altera en caso de que no se produzca 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 flanco ascendente en el RLO y el valor del contador es menor que "999". El valor del contador no se altera si no hay ningn flanco ascendente, ni tampoco en caso de que el el contador tenga ya el valor "999. 7.6.3 Ejemplo

ST PROG1 Nro # 71

s
Si el estado de seal de E 0.0 cambia de "0" a "1" (flanco ascendente en el RLO), se carga el valor predeterminado de "100" en el contador Z10. Si el estado de seal de E 0.1 cambia de "0" a "1" (flanco ascendente en el RLO), se aumenta en "1" el valor de contaje del contador Z10, a menos que el valor de contaje sea igual a "999". El valor del contador Z10 no se altera si 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 flanco ascendente 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 caso de que el contador tenga ya el valor "0. 7.7.3 Ejemplo

ST PROG1 Nro # 72

s
Si el estado de seal de E 0.0 cambia de "0" a "1" (flanco ascendente en el RLO), se carga el valor predeterminado de "100" en el contador Z10. Si el estado de seal de E 0.1 cambia de "0" a "1" (flanco ascendente en el RLO), se decrementa en "1" el valor de contaje del contador Z10, a menos que el valor de contaje sea igual a "0". El valor del contador Z10 no se altera si no hay ningn flanco ascendente en el RLO. A 4.0 se conecta si el valor de contaje equivale a cero. Si el estado de seal de E 0.2 es "1", el contador se pone a "0".

ST PROG1 Nro # 73

s
8.OPERACIONES DE COMPARACIN

8.1 LISTA DE OPERACIONES 8.1.1 Descripcin Las operaciones comparan las entradas IN1 e IN2 segn los tipos de comparacin 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 <= IN1 es menor o igual a IN2 Si la comparacin es verdadera, el RLO de la operacin es "1". El RLO se combina mediante una Y lgica con el RLO del circuito completo siempre que el elemento de comparacin est conectado en serie, y mediante una O lgica si el cuadro est conectado en paralelo. Se dispone de las operaciones de comparacin siguientes: CMP ? I Comparar enteros (16 Bit) CMP ? D Comparar enteros dobles (32 Bit) CMP ? R Comparar nmeros en coma flotante

ST PROG1 Nro # 74

s
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 un contacto normal. Las entradas IN1 y IN2 son comparadas atendiendo al criterio de comparacin que se haya seleccionado. Si la comparacin es verdadera, el RLO de la operacin es "1". El RLO se combina mediante una Y lgica con el RLO del circuito completo siempre que el elemento de comparacin est conectado en serie, y mediante una O lgica 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 Y E 0.1 son 1 Y si MW0 >= MW2.

ST PROG1 Nro # 75

s
8.3 COMPARAR ENTEROS DOBLES 8.3.1 Smbolo

8.3.2 Descripcin CMP ? D (Comparar enteros dobles ) puede utilizarse como un contacto normal. El cuadro puede colocarse en las mismas posiciones que puede tener un contacto normal. Las entradas IN1 y IN2 son comparadas atendiendo al criterio de comparacin que se haya seleccionado. Si la comparacin es verdadera, el RLO de la operacin es "1". El RLO se combina mediante una Y lgica con el RLO de un circuito siempre que el elemento de comparacin est conectado en serie, y mediante una O lgica si el cuadro est conectado en paralelo. 8.3.3 Palabra de estado

8.3.4 Ejemplo

ST PROG1 Nro # 76

s
La salida A 4.0 se activa si E 0.0 Y E 0.1 tienen el estado de seal 1 Y si MD0 >= MD4 Y si E 0.2 tiene el estado 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 como un contacto normal. El cuadro puede colocarse en las mismas posiciones que puede tomar un contacto normal. Las entradas IN1 y IN2 son comparadas atendiendo al criterio de comparacin que se haya seleccionado. Si la comparacin es verdadera, el RLO de la operacin es "1". El RLO se combina mediante una Y lgica con el RLO del circuito completo siempre que el elemento de comparacin est conectado en serie, y mediante una O lgica si el cuadro est conectado en paralelo. 8.4.3 Palabra de estado

ST PROG1 Nro # 77

s
8.4.4 Ejemplo La salida A 4.0 se activa si E 0.0 Y E 0.1 son 1 Y si MD0 >= MD4 Y si E 0.2 es 1.

ST PROG1 Nro # 78

También podría gustarte