Anda di halaman 1dari 34

REPUBLICA

ARGENTINA

UNIVERSIDAD NACIONAL DE ROSARIO

FACULTAD DE CIENCIAS EXACTAS, INGENIERIA Y AGRIMENSURA DEPARTAMENTO DE SISTEMAS E INFORMTICA Laboratorio de Tecnologas Digitales e Informtica Industrial

SISTEMAS DIGITALES INDUSTRIALES GUA DE TRABAJOS PRCTICOS Prctica de Laboratorio (Segunda Parte Funciones Avanzadas)

Octubre 2011

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

INDICE 1. TP 1 SUBRUTINAS e INTERRUPCIONES. 03 2. TP 2 INTERRUPCIONES TEMPORIZADAS. 05 3. TP 3 SUBRUTINAS PARAMETRIZADAS . 10

4. TP 4 SUBRUTINAS PARAMETRIZADAS e INTERRUPCIONES.12 5. TP 5 POTENCIOMETRO ANALOGICO... 23 6. TP 6 PUNTEROS..32

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 2 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

PROBLEMA 1
SUBRUTINAS E INTERRUPCIONES
El siguiente ejemplo muestra el uso de subrutinas e interrupciones. Se trata aqu de desplazar un bit de la salida QB0 (OUTPUT) hacia la derecha hacia la izquierda, a un ritmo de un desplazamiento por segundo. La direccin del desplazamiento se controla con la entrada I0.0 (Direction): si I0.0 = 1, el desplazamiento se efecta hacia la izquierda (orden ascendente de bits) si I0.0 = 0, el desplazamiento se efecta hacia la derecha (orden descendente de bits) El Timer T32 se utiliza como Base de Tiempos de 1 segundo. La interrupcin INT_0 se asigna al final de la temporizacin del Timer T32, y controla el desplazamiento del bit activo de QB0, en funcin del estado actual de I0.0. La subrutina SBR_0 es invocada en cada ciclo por el mdulo OB1 (MAIN) para recargar el valor inicial de QB0 en el caso de que detecte que su valor es 0x00 (debido a ms de 8 desplazamientos): si I0.0 = 1, QB0 se recarga con 0x01 (preparacin para desplazamiento ascendente) si I0.0 = 0, QB0 se recarga con 0x80 (preparacin para desplazamiento descendente) El programa STEP7 se muestra a continuacin:
Symbol ALWAYS START OUTPUT Direction TIME_BASE_1s TB_enable Address SM0.0 SM0.1 QB0 I0.0 T32 M0.0 Always = 1 First Scan Output byte Direction selection: ON up; OFF down Timer used as a 1-second Time Base Flag used for reloading T32 Comments

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 3 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 4 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

PROBLEMA 2
INTERRUPCIONES TEMPORIZADAS
En este ejemplo se utilizarn las interrupciones temporizadas para generar una secuencia de destellos en un bit de salida. La activacin de la entrada I0.1 reduce la frecuencia de destellos a la mitad. La activacin de la entrada I0.0 restaura de nuevo la frecuencia original de destellos. Este ejemplo explica el tratamiento general de las interrupciones temporizadas as como la modificacin de la base de tiempos. La base de tiempos en que se llama a la interrupcin temporizada mediante el nmero de evento 10 (primera interrupcin temporizada) se especifica en el byte SMB34. La base de tiempos de la interrupcin temporizada con nmero de evento 11 (segunda interrupcin temporizada 11) soportada nicamente por las CPU 214 en adelante) se especifica en el byte de marca especial SMB35. En ambos casos, la base de tiempos se fija en incrementos de 1ms. El valor mnimo admisible de la base de tiempos es 5ms. El valor mximo admisible de la base de tiempos es 255ms. El programa abarca las siguiente rutinas: Principal Inicializacin y especificacin del tiempo INT 0 Activacin de la salida Q0.0 INT 1 Reposicin de la salida Q0.0

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 5 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 6 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 7 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 8 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 9 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

PROBLEMA 3
SUBRUTINAS PARAMETRIZADAS
Aprender a configurar una subrutina parametrizada y en base a un ejemplo poder modificar el valor del parmetro desde el Bloque de Datos. El disparo se produce desde I0.0 y cada vez que se detecta en el byte IB0 el valor 12 (I0.2 y I0.3 activados se suma 20 al valor actual preseteado del parmetro del temporizador cambindole el retardo. Se inicializa con I0.1

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 10 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 11 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

PROBLEMA 4
SUBRUTINAS PARAMETRIZADAS e INTERRUPCIONES
Disear el programa de control de un semforo que regula el trnsito de vehculos. Dicho semforo ha de regir el paso de vehculos, pero ste estar sujeto a una variacin en su temporizacin, segn el nmero de vehculos que se encuentren en cola de espera. La ruta, como se puede apreciar en el dibujo, tiene un carril con sus respectivos sensores de posicin, S1 y S2. S1 detecta el vehculo que ingresa a la zona de control de paso y S2 detecta el vehculo que egresa de dicha zona. Cuando en dicha zona se acumulan 20 o ms vehculos la temporizacin ha de ser la siguiente: a)- Verde: 30 s b)- Ambar: 5 s fijo y 3 s intermitente a 2 Hz c)- Rojo: 15 s Cuando en dicha zona se acumulan menos de 20 vehculos la temporizacin ha de ser la siguiente: a)- Verde: 20 s b)- Ambar: 5 s fijo y 3 s intermitente a 2 Hz c)- Rojo: 20 s El cambio de temporizacin solo se deber efectivizar desde el momento en que el semforo se pone en rojo hasta un instante antes de producirse el cambio a verde. Consideraciones: Hacer una subrutina para obtener la temporizacin variable de la luz roja y la verde. El incremento y decremento de vehculos se debe hacer mediante interrupciones. Armar la Tabla de Estado y en ella visualizar la variable VB0 (cantidad de coches) y de esta manera conocer en todo momento la cantidad exacta de vehculos en la zona.

R A V

S2

S1

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 12 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

SOLUCIN
1)- Se utilizar una subrutina parametrizada (SBR0) para calcular el tiempo de ambas luces (R y V) en funcin de la cantidad de vehculos ingresados. 2)- Se utilizarn dos interrupciones (INT_0 y INT_1) para atender cuando ingresa o egresa un vehculo, respectivamente. Cada una de ellas tiene asociado un evento, el evento 0 (asociado a la INT_0) se produce cuando aparece un flanco positivo en la entrada I0.0 (sensor S1, ingreso de vehculo) y el evento 2 (asociado a la INT_1) se produce cuando aparece un flanco positivo en la entrada I0.1 (sensor S2, egreso de vehculo). 3)- Se direccionarn las siguientes variables de entradas/salidas: I0.0 I0.1 Q0.0 Q0.1 Q0.2 S1 S2 ROJO AMARILLO VERDE

Creacin de Subrutinas Parametrizadas Una subrutina parametrizada tiene la propiedad de disponer de accesos a su programa y modificarle sus parmetros internos (valores de temporizadores, datos en memoria, etc). La misma utiliza el sector de memoria L (Lx.x LBx LWx LDx). Pasos a seguir para crear una nueva subrutina parametrizada: a)- Crear SBR nueva haciendo clic con el botn derecho del mouse sobre la grilla de trabajo y eligiendo Insertar subrutina. Se le puede dar un nombre simblico. Aparecer un nueva solapa abajo con el nombre simblico o con SB0, SB1, etc. b)- Dentro de dicha subrutina creada se puede observar en la parte superior una tabla de variables a definir, como ser IN, OUT, IN/OUT, TEMP, EN (habilitacin que siempre aparece por defecto). A dichas variables se les puede la dimensin (BIT, BYTE, WORD, DWORD) y a medida que se van definiendo el programa le aasignaa una direccin en la zona de variables L. b)- Una vez creada esta subrutina aparecer en el navegador y podr ser seleccionada para usarse en el programa. Su aspecto es un bloque con la entrada EN y todas las entradas y salidas que se hayan definido en la tabla en las cuales se les podrn asignar parmetros constantes o variables. Estos parmetros podrn modificarse a voluntad desde el bloque de datos, sin necesidad de hacerlo en el programa KOP con la ventaja que al cambiar un parmetro no se requiere transferir al PLC nuevamente todo el proyecto, sino solo el Bloque de datos. Interrupciones Idnticamente a como se generaron las subrutinas se hace lo propio con la interrupciones. O sea botn derecho del mouse en la grilla se acepta insertar interrupcin. Tambin se le puede dar un nombre simblico. Previamente se debe asociar cada interrupcin con un evento en el programa principal. Esto es, se debe elegir el evento (visualizarlo de la lista de eventos de interrupciones) y usar el bloque ATCH para dicha asociacin. Tener presente que en su salida ENO poner la accin ENI (fin de interrupcin) para que dicha asociacin sea efectiva. Para este ejemplo se eligieron los siguientes eventos: Evento 0 corresponde a la aparicin de flanco positivo en la entrada I0.0 (sensor S1)
LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 13 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

Evento 2 corresponde a la aparicin de flanco positivo en la entrada I0.1 (sensor S2) A continuacin el diagrama Ladder (KOP) de la solucin propuesta:

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 14 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 15 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 16 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 17 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 18 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 19 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 20 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 21 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 22 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

PROBLEMA 5
POTENCIOMETRO ANALOGICO
Este ejemplo muestra la utilizacin de los potencimetros analgicos del SIMATIC CPU 215 y 222. Las posiciones de los potencimetros se convierten en valores digitales entre 0 y 255 y se almacenan en dos bytes de marca especiales, SMB28 y SMB29, para los potencimetros 0 y 1, respectivamente. Para ajustar el posicionamiento se requiere un pequeo destornillador. Este ejemplo de aplicacin muestra tres maneras de utilizacin de un Potencimetro analgico para ajustar un valor predefinido de temporizador. Veremos tres opciones en un mismo programa. La opcin 1 muestra la utilizacin de un POT analgico como ajustador de precisin de un temporizador. El ajuste basto se realiza mediante la compensacin incluida en el programa (en este caso 200 ms.). Posteriormente, puede utilizarse el POT para ajustar el valor con mayor precisin a un valor predefinido deseado. Despus de cada ciclo del temporizador, se ejecutan las instrucciones de SBR1, se carga en AC1 el valor de POT 0 (almacenado en SMB 28) y se divide entre 2, aadindose la compensacin de 200 ms. Al volver al programa principal, el contaje de los ciclos de temporizador en AC2 se incrementa e indica en el byte de salida. En la opcin 2, los valores de POT para 100 ciclos consecutivos se totalizan y promedian en AC3. Si el valor queda por debajo de la banda de proteccin inferior, memorizada la VW14, o por encima de la banda de proteccin superior, en VW16 (ambos se definen originalmente en el primer ciclo), el nuevo valor se graba en VW12 y, a continuacin, se copia en VW14, VW16 y VW18. A continuacin, se establecen nuevos valores para VW14 y VW16, estando fijado cada lmite a 3 ms de la media memorizada en VW12, mientras que el valor medio de POT en VW18 se transfiere de nuevo al programa principal para su carga en el Temporizador T34. Una vez ms, se realiza el cmputo de los ciclos de temporizador y se visualiza el nmero de ciclos con el byte de marca de salida. En la opcin 3, el valor predefinido (PV) se carga directamente en el temporizador. Como siempre, se realiza el contaje creciente de los ciclos y se visualiza con el byte de marca de salida.

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 23 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 24 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 25 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 26 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 27 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 28 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 29 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 30 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 31 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

PROBLEMA 6
DIRECCIONAMIENTO INDIRECTO - MANEJO DE PUNTEROS
Aprender a definir un puntero a una direccin de memoria y operar con l

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 32 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 33 de 34

SISTEMAS DIGITALES INDUSTRIALES

Gua de Trabajo Prctico N1- Funciones Bsicas

LABORATORIO DE TECNOLOGAS DIGITALES E INFORMTICA INDUSTRIAL - DSI - FCEIA U.N.R

Pgina 34 de 34

Anda mungkin juga menyukai