control industrial

Upload: jroman33

Post on 12-Jul-2015

56 views

Category:

Documents


0 download

TRANSCRIPT

Control IndustrialGua del Estudiante

Versin 1.1 en Castellano

Sobre la precisin de este texto: Se realiz un gran esfuerzo para asegurar la precisin de este texto y los experimentos, pero puede haber errores an. Si usted encuentra errores o algn tema que requiera informacin adicional, por favor infrmelo a [email protected], as podemos con-tinuar mejorando la calidad de nuestra documentacin.

GarantaParallax garantiza sus productos contra defectos en sus materiales o debidos a la fabricacin por un perodo de 90 das. Si usted descubre un defecto, Parallax segn corresponda, reparar, reemplazar o regresar el valor de la compra. Simplemente pida un nmero de autorizacin de regreso de mercadera (Return Merchandise Authorization, RMA), escriba el nmero en el exterior de la caja y envela a Parallax. Por favor incluya su nombre, nmero telefnico, direccin y una descripcin del problema. Nosotros le regresaremos su producto o el reemplazo, usando el mismo mtodo de correo que usted us para enviar el producto a Parallax.

Garanta de 14 das de regreso de dineroSi dentro de los 14 das en que usted recibi su producto, encuentra que no es conveniente para sus necesidades, puede regresarlo, recibiendo un reembolso. Parallax regresar el precio de compra del producto, excluyendo los costos de manipuleo y correo. Esto no se aplica si el producto a sido alterado o daado.

Derechos de Copia y Marcas RegistradasEsta documentacin tiene derechos de copia Copyright 1999 por Parallax, Inc. BASIC Stamp (Estampilla BASIC) es una marca registrada de Parallax, Inc. Si usted decide usar el nombre BASIC Stamp en su pgina web o en material impreso, debe agregar la aclaracin: BASIC Stamp es una marca registrada de Parallax, Inc. Otros nombres de productos son marcas registradas de sus respectivos dueos.

Desvinculacin de ResponsabilidadParallax, Inc. no es responsable de daos por consecuencias, incidentes o daos especiales que resulten de cualquier violacin de la garanta, bajo cualquier teora legal, incluyendo prdida de beneficio, tiempo, dao o reemplazo de equipo o propiedad y cualquier costo, recuperando, reprogramando o reproduciendo cualquier dato guardado o usado dentro de los productos Parallax. Parallax tampoco es responsable de cualquier dao personal, incluyendo vida o muerte, resultado del uso de cualquiera de nuestros productos. Usted tiene absoluta responsabilidad por la aplicacin que desarrolle con el BASIC Stamp.

Acceso en InternetMantenemos sistemas de Internet para su uso. Estos pueden ser usados para obtener software, comunicarse con miembros de Parallax y comunicarse con otros clientes. Las rutas de acceso a la informacin se muestran a continuacin: E-mail: Web: http://www.parallaxinc.com y http://www.stampsenclase.com

[email protected]

Lista de Discusin de BASIC Stamp en InternetMantenemos dos listas de discusin por e-mail para gente interesada en el BASIC Stamp. La lista trabaja as: mucha gente se suscribe a la lista y luego todas las preguntas y respuestas son distribuidas a todos los suscriptos. Es una forma rpida, divertida y gratis de discutir temas sobre el BASIC Stamp y obtener respuestas a preguntas tcnicas. Para suscribirse a la lista de BASIC Stamp encuentre la informacin en www.parallaxinc.com. Esta lista genera aproximadamente 40 mensajes diarios. Tambin mantenemos una lista exclusiva para educadores que usan el BASIC Stamp en el aula. Usted puede unirse a esta lista en el sitio web http://www.stampsinclass.com. Esta lista genera aproximadamente 5 mensajes diarios. Si busca una lista de discusin en castellano puede encontrarla en http://www.cursoderobotica.com.ar.

Contenido

Contenido Prefacio ........................................................................................................................................... iii Destinatarios y Guas para Profesores.......................................................................................................................... v Derechos de Copia y Reproduccin ............................................................................................................................... v Experimento 1: Diagramas de Flujo y StampPlot Lite .......................................................................... 6 Ejemplo 1: Ajuste de la Temperatura de la Ducha .......................................................................................................7 Ejemplo 2: Contador de Cinta Transportadora............................................................................................................9 Ejercicio 1: Diseo de Diagramas de Flujo...................................................................................................................13 Ejercicio 2: Circuito de LED que Titila ..........................................................................................................................13 Ejercicio 3: Datos Analgicos.........................................................................................................................................16 Ejercicio 4: Uso del StampPlot Lite ..............................................................................................................................19 Preguntas y Desafo ........................................................................................................................................................23 Experimento 2: Acondicionamiento de Seal de Entrada Digital......................................................... 25 Ejercicio 1: Interruptor Bsico......................................................................................................................................30 Ejercicio 2: Rebote de Interruptores y Rutinas Anti-Rebote ...................................................................................35 Ejercicio 3: Disparo por Flanco .....................................................................................................................................38 Ejercicio 4: Interruptor Electrnico.............................................................................................................................44 Ejercicio 5: Tacmetro ...................................................................................................................................................50 Preguntas y Desafo ........................................................................................................................................................62 Experimento 3: Acondicionamiento de la Seal de Salida Digital ........................................................ 69 Ejercicio 1: Control Secuencial .....................................................................................................................................72 Ejercicio 2: Aumentando la Potencia del BASIC Stamp.............................................................................................83 Preguntas y Desafo ........................................................................................................................................................89 Experimento 4: Control de Procesos Continuos................................................................................. 95 Ejercicio 1: Control ON-OFF de Bucle Cerrado..........................................................................................................96 Ejercicio 2: Control a Lazo Cerrado vs. Lazo Abierto..............................................................................................111 Preguntas y Desafo ......................................................................................................................................................123 Experimento 5: Control a Lazo Cerrado ...........................................................................................125 Ejercicio 1: Estableciendo un Control a Lazo Cerrado............................................................................................128 Ejercicio 2: Control de Banda Diferencial .................................................................................................................134 Preguntas y Desafo ......................................................................................................................................................140 Experimento 6: Control Proporcional-Integral-Derivativo ............................................................... 143 Ejercicio 1: Excitacin de Polarizacin ......................................................................................................................153 Ejercicio 2: Control Proporcional + Integral ............................................................................................................170 Ejercicio 3: Control Proporcional-Derivativo...........................................................................................................178 Preguntas y Desafo ......................................................................................................................................................186 Experimento 7: Control de Tiempo Real y Adquisicin de Datos ........................................................189

Pgina i

Contenido Ejercicio 1: Control de Tiempo Real...........................................................................................................................192 Preguntas y Desafo ......................................................................................................................................................199 Ejercicio 2: Temporizacin por Intervalos ................................................................................................................199 Preguntas y Desafos.....................................................................................................................................................203 Ejercicio 3: Adquisicin de Datos (Data Logging)......................................................................................................204 Preguntas y Desafos.....................................................................................................................................................219 Apndice A: Stamp Plot Lite ........................................................................................................... 221 Apndice B: Plantillas de Ventilador ................................................................................................ 231 Apndice C: Hoja de Datos del SSR.................................................................................................. 233 Apndice D: Hoja de Datos del LM34 ............................................................................................... 237 Apndice E: Hoja de Datos del LM358 .............................................................................................. 243 Apndice F: Hoja de Datos del DS1302 ............................................................................................ 249 Apndice G: Listado de Componentes y Suministros........................................................................ 255 Apndice H: Desafo de Incubadora Comercial................................................................................. 257

Pgina ii

Prefacio

PrefacioEl control de procesos industriales es un rea fascinante de la tecnologa electrnica y nada ha revolucionado esta rea, como los microcontroladores. El microcontrolador ha agregado un cierto nivel de inteligencia a la evaluacin de datos y un cierto grado de sofisticacin en las respuestas a las perturbaciones del proceso. Los microcontroladores actan como los cerebros de la maquinaria de fabricacin y los dispositivos electrnicos de consumo. El control de procesos involucra aplicar tecnologa a una operacin que transforma a la materia prima en un producto terminado. Casi todo lo que usted usa o consume, ha pasado por algn tipo de control de proceso automatizado en su produccin. Los controles de procesos automatizados mejoran la productividad y la terminacin del producto, mientras reducen los costos de produccin. Este texto intenta introducir los conceptos y caractersticas del control de procesos con microcontroladores, con experimentos prcticos sobre los siguientes temas: a) Escritura de un programa partiendo de un diagrama de flujo, para realizar un control de proceso secuencial. b) Uso de pulsadores, conteo de ciclos y procesos de E/S simples para trabajar con un sistema bajo control. c) Control de proceso continuo comenzando con control on-off, continuando con banda diferencial con mltiples niveles de accin. d) Control Proporcional Integral Derivativo (PID) de un pequeo sistema de calefaccin de escritorio. e) Control temporizado de los anteriores e introduccin a la adquisicin y almacenamiento de datos (data logging). El hardware necesario en los experimentos para simular los procesos se ha mantenido en el mnimo indispensable. Si bien el microcontrolador es el cerebro del proceso, no puede ser el msculo. Las aplicaciones reales necesitan que el microcontrolador lea y controle una gran variedad de dispositivos de entrada y salida (E/S). Se usan simples pulsadores montados en una protoboard para simular la accin de interruptores mecnicos y electromecnicos que se encuentran en la industria. Diodos emisores de luz visible (LEDs), pequeos ventiladores y resistores de baja potencia simulan guarda motores y equipamiento de alta tensin (HVAC). La informacin incluida en los experimentos le ayudar a comprender la interfaz elctrica para conectar dispositivos de E/S del mundo real al BASIC Stamp. La naturaleza fsica de los elementos en un sistema determina el modo de accin de control ms apropiado. La dinmica de un proceso incluye un estudio de la relacin entre las perturbaciones en las entradas y las correspondientes acciones en las salidas, de acuerdo a las variables medidas. Es difcil

Pgina iii

Prefacio comprender la dinmica de un proceso sin ser capaz de ver esta relacin. Para los autores, esto defini la necesidad de desarrollar una interfaz grfica para el BASIC Stamp; culminando en la creacin y distribucin del StampPlot Lite. Este software permite graficar valores analgicos y digitales y almacenar datos. StampPlot Lite es usado en casi todos los experimentos, y le ser especialmente til cuando investigue los distintos modos de control de procesos. Tambin se muestran las imgenes de las pantallas en el libro. Este libro es una segunda edicin donde hemos intentado mejorar a la primera. Algunos cambios y modificaciones incluyen: a) b) c) d) Agregado de la 7ma seccin, sobre control temporizado (basado en el tiempo). Reescritura de la seccin de control PID para demostrar y explicar mejor la teora. Agregado del circuito y teora sobre sample-and-hold (muestra y retencin) con FET y PWM. Reescritura de numerosos programas de ejemplo, incluyendo ms diagramas de flujo y explicaciones.

Agradecemos a nuestros editores Ms. Cheri Barrall y Dale Kretzer, y por supuesto a Ken Gracey y a Russ Miller de Parallax por sus revisiones y mejoras a este texto. Adems, agradecemos al Dr. Clark Radcliffe de la Michigan State University por su revisin detenida. Muchos clientes de rea educativa de Parallax nos proveyeron sus recomendaciones para esta segunda revisin. Los autores son instructores en Southern Illinois University en Carbondale en el programa de Electronic Systems Technologies y adems socios en la compaa de software SelmaWare Solutions. Visite el sitio web para encontrar ejemplos del uso de StampPlot Pro especficamente creados para los lectores de este libro. Lo invitamos a enviarnos sus comentarios. Por favor contctenos mediante nuestros sitios web y enve todos los errores que encuentre en este libro a Parallax a la direccin [email protected], as podremos corregirlos en la prxima revisin. Will Devenport y Martin Hebel Southern Illinois University, Carbondale Electronic Systems Technologies http://www.siu.edu/~imsasa/est -- y -SelmaWare Solutions http://www.selmaware.com

Pgina iv

Prefacio

Destinatarios y Guas para ProfesoresEste texto se escribi para alumnos mayores de 17 aos. No se tiene pensado realizar una Gua para los Profesores.. Resolver los experimentos y ejercicios de este libro, no representa una gran dificultad tcnica, y puede lograrse con un poco de paciencia.

Derechos de Copia y ReproduccinLos libros de Stamps en Clase tienen derecho de copia Parallax 2002. Parallax le garantiza a cada persona derechos condicionales de descargar, duplicar y distribuir este texto sin nuestro permiso. La condicin es que este texto o cualquier parte de l, no debera ser duplicada para uso comercial, resultando en gastos para el usuario, ms all del costo de la impresin. Es decir, nadie deber lucrar por la duplicacin de este texto. Preferentemente, la duplicacin no tendr costo para el estudiante. Cualquier institucin educativa que desee producir duplicados para los estudiantes, puede hacerlo sin nuestro permiso. Este texto tambin est disponible en formato impreso por Parallax. Debido a que imprimimos el texto en cantidad, el precio al cliente es a menudo menor que el de una tpica duplicacin xerogrfica. Este texto puede ser traducido a cualquier otro idioma, con el permiso previo de Parallax, Inc.

TraduccinTraducido y adaptado al castellano por Arstides A. Alvarez. Correccin y edicin de la traduccin: Ana M. Lusi y Arstides L. Alvarez. Si encuentra errores en el texto, contctese con nosotros, para poder mejorar la calidad de la documentacin en castellano. e-mail: [email protected] Sitios web en Castellano: www.stampsenclase.com www.cursoderobotica.com.ar

Pgina v

Experimento 1: Diagramas de Flujo y StampPlot Lite Un diagrama de flujo es una representacin grfica detallada que muestra la naturaleza y secuencia paso a paso de una operacin. Se puede hacer un diagrama de flujo de cualquier tarea diaria, como conducir hasta el supermercado, o ir al colegio. Cuntos pasos estn involucrados en esta simple tarea? Cuntas decisiones se toman hasta llegar al supermercado o al colegio? Se puede hacer el diagrama de flujo de una operacin formal, cocinar bizcochos por ejemplo, ya sea un proceso a pequea escala en su cocina o a gran escala en una fbrica. Y por supuesto, se puede hacer un diagrama de flujo que tenga en cuenta los pasos y decisiones necesarios para que la tarea sea llevada a cabo por una computadora o un microcontrolador. Un proceso relativamente simple normalmente es fcil de comprender y fluye en forma lgica desde el principio hasta el final. En el caso de cocinar bizcochos, los pasos involucrados son bastante simples. Una receta normalmente requiere que se mezclen los ingredientes necesarios, se armen los bizcochos y se cocinen apropiadamente. Hay que tomar varias decisiones: Estn bien mezclados los ingredientes? Est precalentado el horno? Se cocinaron los bizcochos el tiempo necesario? A medida que el proceso se vuelve ms complejo, sin embargo, es ms difcil diagramar el orden de los eventos necesarios, para llegar a un final exitoso. Un programa en un BASIC Stamp puede tener muchsimos pasos y bifurcaciones if - then. Puede ser difcil seguir el flujo del programa, si solamente observramos el cdigo. Un diagrama de flujo se construye con unos smbolos grficos especiales que representan acciones, funciones, y equipamiento usado para lograr un resultado especfico. La Tabla 1.1 muestra los smbolos y su uso. Tabla 1.1: Smbolos de Diagramas de Flujo

Experimento 1: Diagramas de Flujo y StampPlot Lite

Inicio / Fin indica el inicio y el final de un programa o proceso.

Proceso indica un paso que debe ser cumplido. Entrada / Salida indica que el proceso requiere una entrada o provee una salida.

Pgina 6 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite

Decisin indica que el proceso tiene la posibilidad de tomar distintas direcciones de acuerdo a una condicin. Normalmente, tiene la forma de una desigualdad verdadera o falsa. Lnea de flujo es usada para mostrar la direccin del flujo entre smbolos. Conector es usado para mostrar una conexin entre puntos de un mismo diagrama, o diferentes diagramas de flujo. Subrutina o subproceso indica el uso de una rutina o proceso definido.

Ejemplo 1: Ajuste de la Temperatura de la Ducha Tomemos como ejemplo el diagrama de flujo de una tarea diaria: ajustar la temperatura de una ducha. El proceso de ajustar la temperatura del agua involucra varios pasos. Primero se abren las canillas de agua fra y caliente, esperamos un rato para que se estabilice la temperatura del agua, la probamos y tomamos algunas decisiones para realizar los ajustes necesarios. Si la temperatura del agua es demasiado fra, abrimos ms la canilla de agua caliente y probamos nuevamente. Si el agua est demasiado caliente, se abre ms la del agua fra. Una vez que realizamos cada ajuste, vamos al punto donde esperamos unos segundos antes de probar nuevamente. Por supuesto no tuvimos en cuenta el caso cuando las canillas estn completamente abiertas. Se pueden agregar pasos en el proceso de ajuste de temperatura para corregir esta condicin. La Figura 1.1 muestra un diagrama de flujo de este proceso. Este ejemplo demuestra un proceso que puede ser usado para ajustar la temperatura, pero seran estos los pasos para un programa de un microcontrolador? Seguro! Las canillas podran ser ajustadas por servos, y la temperatura del agua podra determinarse con un sensor. En la mayora de los casos, un proceso simple para nosotros puede ser bastante complejo para un microcontrolador. Tome el ejemplo de dar la vuelta a la esquina conduciendo un automvil. Puede hacer una lista de las entradas que procesamos mientras realizamos el giro?

Control Industrial Versin 1.1 Pgina 7

Experimento 1: Diagramas de Flujo y StampPlot Lite

Figura 1.1: Ejemplo de la Temperatura de la Ducha

Pgina 8 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite Ejemplo 2: Contador de Cinta Transportadora Miremos un caso real y desarrollemos un diagrama de flujo para l. En una fbrica, los materiales se empacan en cajas y se envan a una de dos bahas de carga, donde aguardan los camiones. Cada camin puede transportar 100 cajas. A medida que llegan las cajas, los trabajadores las colocan en el primer camin. Cuando el camin se llena, las cajas deben ser desviadas hacia el segundo camin, mientras el camin que est cargado se retira y deja su lugar para otro vaco. Adems, en caso de emergencia o que exista un problema, debe haber una forma de detener la cinta transportadora. El aspecto fsico de esta disposicin se muestra en la Figura 1.2. El motor que mueve la cinta est rotulado como MOTOR1. El sensor que detecta el paso de las cajas est rotulado como DETECTOR1. La palanca que direcciona las cajas hacia uno y otro camin est rotulado DESVIADOR1. El botn de parada de emergencia est rotulado PARAR1. Figura 1.2: Ejemplo del Contador de Cinta Transportadora

Control Industrial Versin 1.1 Pgina 9

Experimento 1: Diagramas de Flujo y StampPlot Lite

Hagamos una lista ordenada con una descripcin breve de lo que debera ocurrir: Encender el motor de la cinta transportadora. Contar las cajas a medida que pasan. Cuando hayan pasado 100 cajas, mover el desviador a la posicin opuesta. Cuando se presione el botn de emergencia, detener la cinta.

Ahora que conocemos los pasos bsicos involucrados, desarrollemos un diagrama de flujo para el proceso. Comencemos mirando el diagrama de flujo de la Figura 1.3. Observe la ubicacin del recuadro de E/S que controla el botn de parada de emergencia, PARAR1. el botn se revisa en cada ciclo. Qu sucedera si lo hubisemos puesto despus del recuadro de decisin que controla si se contaron 100 cajas? Cunto tiempo pasara desde que se presiona el botn hasta que se detuviese la cinta? Este diagrama de flujo describe todo lo que nuestro programa debe hacer? Definitivamente no, pero es un buen comienzo determinar el flujo general del proceso. Observe el recuadro de Proceso "Contar cajas con DETECTOR1". Cmo se realiza esto exactamente? Necesitaramos desarrollar un diagrama de flujo para describir solamente esta rutina. Si un proceso necesita ms detalle, podramos reemplazar el recuadro de Proceso con uno de Sub-Proceso como se muestra en la Figura 1.4.

Figura 1.4: Recuadro de Sub-proceso

Qu tan complicado es contar las cajas que pasan por el detector? Si DETECTOR1 se activa yendo a nivel bajo, contamos cuando baja? Cuando el detector permanece en nivel bajo, cmo evitamos que cuente nuevamente, la prxima vez que el programa pasa por ese punto? Qu sucede si la caja vibra sobre la cinta transportadora, a medida que atraviesa el haz de nuestro detector? Cmo evitamos contar varias veces la misma caja? Las respuestas pueden no ser tan simples como parece. Incluso cuando se realiza una tarea tan simple como contar las cajas que pasan, muchas variables deben ser tenidas en cuenta.

Pgina 10 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite

Figura 1.3: Diagrama de Flujo de la Cinta Transportadora

Control Industrial Versin 1.1 Pgina 11

Experimento 1: Diagramas de Flujo y StampPlot Lite

Otra consideracin es la salida de nuestro detector. Podemos medir directamente la salida usando una de las entradas del BASIC Stamp, o se necesita algn circuito para acondicionar la seal primero? Consideremos ahora una salida en nuestro ejemplo de la cinta transportadora. Cmo encenderemos el motor? Es muy dudoso que la salida de 5 Volts, con escasos miliamperes del BASIC Stamp sea capaz de alimentar directamente un motor con suficiente potencia para mover una cinta transportadora. Cmo acondicionaremos una salida del BASIC Stamp para controlar una carga de mayor corriente y tensin? Estos temas se irn desarrollando a medida que trabaje en los captulos de este manual. Lo que nos parece simple de hacer como humanos, puede requerir algunos algoritmos sofisticados si queremos realizarlo con un microcontrolador. Usaremos los componentes electrnicos disponibles, un mdulo BASIC Stamp, y la Plaqueta de Educacin, para simular algunos procesos de control industrial complejos.

Pgina 12 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite

EjerciciosEjercicio 1: Diseo de Diagramas de Flujo Dibuje un diagrama de flujo que encienda un calentador por debajo de 100 grados y lo apague por encima de 120 grados. Ejercicio 2: Circuito de LED que Titila Usaremos un circuito simple para demostrar el proceso de un diagrama de flujo y armaremos el programa que cumpla la tarea. Deber armar el circuito que se muestra en la Figura 1.5. Se necesitarn los siguientes componentes para este experimento: (1) LED, verde (2) resistores 220-Ohm (1) resistor 10K-Ohm (1) pulsador (1) potencimetro multivueltas de 10K-Ohm (1) capacitor 1 uF (varios) cables de interconexin Figura 1.5: Ejercicio 2, Esquema del Circuito para LEDs que Titilan

Control Industrial Versin 1.1 Pgina 13

Experimento 1: Diagramas de Flujo y StampPlot Lite El circuito que est armando consta de un pulsador como dispositivo de entrada y un LED como dispositivo de salida. Este es el proceso que queremos realizar: mientras el pulsador (PB1) est presionado, hacer titilar el LED (LED1) cinco veces en 10 segundos. El diagrama de flujo de nuestro proceso se muestra en la Figura 1.6. Veamos algunos detalles del diagrama de flujo. Nuestro bucle principal es bastante simple. En el recuadro Inicializar Variables, definiremos todas las variables necesarias y fijaremos sus valores de salida iniciales (LED apagado), luego entra en un bucle hasta que se presione PB1, en ese caso llama a la subrutina, titilar_led1. Nuestra subrutina no comienza con "Inicio, sino con el nombre del proceso, de forma que podamos identificarla. El diagrama de flujo describe un proceso que se repetir cinco veces, encendiendo y apagando nuestro LED durante un segundo cada vez. Ahora que tenemos un diagrama de flujo que describa el proceso, cmo hacemos el programa en PBASIC? Podemos sensar PB1 usando la instruccin in. Tenemos dos formas de llamar a nuestra subrutina. Si la condicin es verdadera (1), podemos saltar a nuestra subrutina directamente usando la instruccin if-then. Esta podra tratarse igual que otra instruccin PBASIC llamada goto. Una vez ejecutada la subrutina, necesitaramos saltar con goto hacia el bucle principal. O, si la condicin es falsa (0), podramos saltar hacia la rutina principal desde el if-then, y usar un comando gosub para saltar a la subrutina cuando la condicin sea verdadera. Luego Figura 1.6: Ejercicio 2. Diagrama de Flujo del LED que Titila

Pgina 14 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite podemos usar return al terminar de ejecutarla. En nuestra subrutina titilar_led1, necesitamos un bucle que se repita cinco veces. Las opciones para llevar a cabo esta tarea pueden incluir el uso de una variable que incrementaremos en cada repeticin, o el uso de la instruccin for-next que hara todo el trabajo por nosotros. El diagrama de flujo describe los pasos generales involucrados en la realizacin del proceso. Se puede usar cualquier cdigo siempre y cuando se complete exactamente el proceso descripto. El mismo diagrama de flujo puede ser usado con muchos lenguajes o sistemas y hasta incluso con humanos. El Programa 1.1 es una forma de escribir el cdigo para nuestro proceso del LED titilante. Ingrese el programa en el BASIC Stamp Editor, descrguelo en el BASIC Stamp, y presione el pulsador del circuito que construy. Si todo funciona correctamente, el LED titilar cinco veces despus de presionar el pulsador.'Programa 1.1, cnt var pb1 var led1 con input pb1 output led1 low led1 Ejemplo de LED que titila byte 'Una variable para contar in1 'PB1 est en P1 4 'LED1 est en P4 'Configura a P1 como entrada 'Configura a P4 como salida 'Apaga el LED

bucle: if pbl = 0 then bucle 'No se presion? Regresa al inicio gosub titilar_led1 'Si se presion, ejecuta la subrutina goto bucle 'Despus de regresar, salta al inicio titilar_led1: for cnt = 1 to 5 high led1 pause 1000 low led1 pause 1000 next return 'Subrutina para hacer titilar al LED Configura el bucle para 5 repeticiones 'Enciende el LED Espera un segundo Apaga el LED Espera un segundo Repite el bucle hasta terminar las 5 repeticiones Regresa a la instruccin siguiente de donde fue llamada la subrutina

Desafo de Programacin Haga el diagrama de flujo y el programa para un proceso donde el LED deba titilar 4 veces por segundo, mientras el pulsador NO est presionado.

Control Industrial Versin 1.1 Pgina 15

Experimento 1: Diagramas de Flujo y StampPlot Lite

Ejercicio 3: Datos Analgicos En muchos casos un proceso involucra el anlisis y la respuesta a datos analgicos. Los datos digitales involucran dos posibilidades: encendido y apagado (1 y 0). Esto se puede comparar a los interruptores comunes de las luces de nuestras casas. La luz est encendida o apagada. Los datos analgicos, por el contrario, involucran un rango continuo de valores. Algunos ejemplos incluyen la regulacin de la temperatura del agua que sale por la ducha o la temperatura de la calefaccin. Hay varios mtodos para ingresar datos analgicos en un microcontrolador, tales como usar un conversor analgico-digital (A/D) que convierte los valores analgicos en digitales, para que puedan ser procesados numricamente. Otro mtodo usado por el BASIC Stamp es una red resistor/capacitor (RC) para medir el tiempo de carga o descarga de un capacitor. Variando el valor de la resistencia, podemos modificar y medir el tiempo que necesita el capacitor para descargarse. En este experimento, la resistencia se modifica manualmente ajustando un resistor variable. Pero el dispositivo podra ser ms sofisticado, como un fotorresistor que cambia su resistencia en funcin de la iluminacin, o un sensor de temperatura. Volveremos a tratar datos analgicos en secciones posteriores, pero ahora realicemos un simple experimento de control de proceso usando un valor analgico. Agregue la red RC que se muestra en la Figura 1.7 al circuito del experimento anterior. Figura 1.7: Esquema del circuito de Datos Analgicos agregado en el Ejercicio 3

Pgina 16 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite

Referencia Rpida de Comandos PBASIC: RCTimeRCTIME pin, estado, resultvariable

.

Pin es el pin de E/S conectado a la red RC. Estado es la tensin de entrada de ese pin. Resultvariable es una variable normalmente de tamao word que almacena el resultado del comando.

El comando PBASIC que usaremos para leer el valor analgico del potencimetro es rctime. Un segmento de cdigo tpico para leer el potencimetro es el siguiente:high 7 pause 10 rctime 7, 1, pot

Para leer el potencimetro, la rutina debe realizar los siguientes pasos: +5 V (HIGH=ALTO) se aplican a ambos terminales del capacitor para descargarlo. El BASIC Stamp realiza una pausa suficientemente larga para asegurarse que el capacitor est completamente descargado. Cuando se ejecuta rctime, el Pin 7 se vuelve una entrada. El Pin 7 leer inicialmente un estado alto (1) debido a que el capacitor descargado se comporta como un corto circuito. A medida que el capacitor se descarga a travs del resistor, cae la tensin del Pin 7. Cuando la tensin en Pin 7 llega a 1.4 V (cayendo), el estado de la entrada pasa a ser bajo (0), deteniendo el proceso y almacenando un valor en pot proporcional al tiempo requerido para cargar el capacitor.

A mayor resistencia, mayor tiempo necesitar el capacitor para cargarse; por lo tanto, mayor ser el valor de pot. De esta forma, podemos adquirir un valor analgico de un dispositivo de entrada simple. Escribamos un programa de control de proceso que use este tipo de entrada. Nuestro proceso monitorear la temperatura para encender un calentador a menos de 100 grados y lo apagar a ms de 120 grados. El potencimetro representar un sensor de temperatura y el LED indicar el comportamiento del supuesto calentador. Usaremos la ventana debug para mostrar nuestra temperatura y el estado del calentador. El valor mximo del potencimetro, con esta combinacin de resistor y capacitor, puede llegar a 5000, as que lo dividiremos por 30 para obtener un rango ms razonable.

Control Industrial Versin 1.1 Pgina 17

Experimento 1: Diagramas de Flujo y StampPlot Lite

Ingrese y ejecute el Programa 1.2. Controle los valores de la ventana debug mientras ajusta el potencimetro y observe especialmente qu ocurre cuando el valor sube por encima de 120 o cae por debajo de 100.'Programa 1.2, LED1 VAR RC CON Temp VAR OUTPUT 4 LED1 = 1 Principal: GOSUB LeeTemp GOSUB ControlaTemp PAUSE 250 GOTO Principal LeeTemp HIGH RC PAUSE 10 RCTIME RC, 1, Temp Temp = Temp/30 DEBUG "Temp = ",dec Temp, CR RETURN ControlaTemp: 'Si Temp > 100, o el calentador est encendido, 'controla si debera estar apagado IF (Temp > 100) OR (LED1 = 1) THEN ControlaApagado LED1 = 1 'Sino, enciende el calentador y muestra DEBUG "Calentador Encendido",CR Calentador simple OUT4 7 WORD 'LED1 est en P4 'Red RC en Pin 7 'Temp es una variable para almacenar resultados 'configura el LED como salida 'Inicia encendido

'Lee el potencimetro como temperatura 'Controla el valor de la temperatura

'Lee el potencimetro

'Ajusta el valor y 'lo almacena como Temp

ControlaApagado: 'Si Temp < 120 o el calentador est apagado, listo IF (Temp < 120) OR (LED1 = 0) THEN Listo LED1 = 0 'sino, lo apaga y muestra DEBUG "Calentador Apagado", CR Listo: RETURN

Desafo de Programacin Modifique el proceso (diagrama de flujo y programa) para que el LED indique el ciclo de trabajo de un aire acondicionado entre 70 y 75 grados (Fahrenheit).

Pgina 18 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite Ejercicio 4: Uso del StampPlot Lite Si bien la ventana debug es muy til para obtener datos e informacin del BASIC Stamp, puede ser difcil visualizar la informacin sin revisarla cuidadosamente. La temperatura est aumentando o disminuyendo? Qu tan rpido est cambiando? En qu momento cambi la salida? Alrededor de qu temperatura se repite el ciclo? Bienvenido al StampPlot Lite! StampPlot Lite (SPL) fue desarrollado especficamente para este libro. SPL acepta datos desde el BS2 de la misma forma que la ventana debug, solamente que SPL interpreta los datos y realiza una de cuatro acciones dependiendo de la estructura de los datos: Un valor se dibuja en una escala analgica en tiempo real. Un valor binario que comienza con % se dibuja como trazo binario en tiempo real. Cadenas que comienzan con ! se interpretan como instrucciones de control y configuracin para controlar el SPL. Cualquier otra cadena se muestra como mensaje en la parte superior del SPL.

La regla principal del SPL es que cada lnea debe terminar con un retorno de carro (13 o CR). Por favor revise el Apndice A para una explicacin ms profunda del StampPlot Lite. Si an no ha instalado StampPlot Lite, descrguelo de http://www.stampsenclase.com, e instlelo en su computadora. Haga doble clic en el botn setup e instlelo en el directorio que usted elija. Miremos nuevamente el Programa 1.2, nuestro calentador simple, pero esta vez usando StampPlot Lite para poder visualizar mejor el proceso. El Programa 1.2 ha sido reescrito como Programa 1.3, para utilizar el StampPlot Lite (las lneas en negrita estn agregadas / modificadas del programa 1.2).'Programa 1.3; Calentador simple usando StampPlot Lite 'Configura StampPlot Lite PAUSE 500 DEBUG "!SPAN 50,150",CR 'Configura amplitud (span) 50-150 DEBUG "!TMAX 60",CR 'Configura para 60 segundos DEBUG "!PNTS 500",CR '500 puntos de datos por grfico DEBUG "!TITL Control de Calentador Simple ",CR 'Ttulo del formulario DEBUG "!SHFT ON",CR 'Permite que el grfico se desplace DEBUG "!TSMP ON",CR DEBUG "!PLOT ON",CR 'Comienza a dibujar DEBUG "!RSET",CR 'Reinicia (borra) el grfico LED1 RC Temp VAR CON VAR OUT4 7 WORD 'LED1 est en P4 'Red RC en Pin 7 'Temp es una variable para almacenar resultados

Control Industrial Versin 1.1 Pgina 19

Experimento 1: Diagramas de Flujo y StampPlot Lite

OUTPUT 4 LED1 = 1 Principal: GOSUB LeeTemp GOSUB ControlaTemp PAUSE 250 GOTO Principal LeeTemp HIGH RC PAUSE 10 RCTIME RC, 1, Temp Temp = Temp/30 DEBUG DEC Temp, CR DEBUG IBIN LED1,CR RETURN ControlaTemp:

'configura el LED como salida 'Inicia encendido

'Lee el potencimetro como temperatura 'Controla el valor de la temperatura

'Lee el potencimetro

'Ajusta el valor y 'lo almacena como Temp 'Enva el valor de la temperatura 'Enva el estado del LED

'Si Temp > 100, o el calentador est encendido, 'controla si debera estar apagado IF (Temp > 100) OR (LED1 = 1) THEN ControlaApagado LED1 = 1 'Sino, enciende el calentador y muestra DEBUG "Calentador Encendido",CR DEBUG "!USRS Calentador Encendido",CR 'Actualiza la barra de estado del SPL

ControlaApagado: 'Si Temp < 120 o el calentador est apagado, listo IF (Temp < 120) OR (LED1 = 0) THEN Listo LED1 = 0 'sino, lo apaga y muestra DEBUG "Calentador Apagado", CR DEBUG "!USRS Calentador apagado",CR 'Actualiza la barra de estado del SPL Listo: RETURN

Descargue el programa en su BASIC Stamp y siga estas instrucciones para usar el StampPlot Lite. Ejecute su StampPlot Lite usando el botn de Inicio de Windows y siguiendo la siguiente secuencia Programas/StampPlot/StampPlot Lite. Escriba y descargue el Programa 1.3 en su BASIC Stamp. Cierre la ventana azul de debug del editor del BASIC Stamp. Seleccione el puerto COM apropiado en el StampPlot Lite y haga clic en 'Connect.'

Reinicie el BASIC Stamp presionando el botn Reset de la Plaqueta de Educacin. Ahora est listo para usar este software nico.

Pgina 20 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite

En este punto debera ver como se dibujan los datos en la pantalla. Ajuste el potencimetro de 10K-Ohm con sus dedos o un destornillador pequeo. La lnea analgica muestra el valor del potencimetro. El trazo digital de la parte superior muestra el estado del LED indicador. La Figura 1.8 es un ejemplo del grfico que se obtuvo con este mismo circuito. Figura 1.8: Grfico del StampPlot Lite para el Ejercicio 4Calentador encendido

Observe la relacin entre el valor analgico y la conmutacin de la salida digital. Use los controles del StampPlot Lite para familiarizarse con sus funciones y caractersticas. Analice el Programa 1.3 y observe los ajustes de configuracin y los datos enviados al software utilitario. Vea el Apndice A si tiene problemas para entender el funcionamiento del StampPlot Lite. Desafo de Programacin Modifique el desafo del aire acondicionado del Ejercicio 2, para que use el StampPlot Lite. Configure su programa para transmitir datos aproximadamente cada 0,5 segundos. Calcule la cantidad de puntos de datos necesarios para llenar la pantalla en un tiempo mximo de 60 segundos. Ejectelo y vea si funciona. Ahora por diversin! Escriba y descargue el siguiente programa. El potencimetro simula una ducha de un solo grifo (mezcladora). Ajuste la temperatura de la ducha para obtener 110 Fahrenheit constantes. Vea qu tan rpido puede

Control Industrial Versin 1.1 Pgina 21

Experimento 1: Diagramas de Flujo y StampPlot Lite estabilizar la temperatura en ese valor. Presione el botn Reset de la Plaqueta de Educacin e intntelo nuevamente.'PROGRAMA 1.4: PuntoAjuste TempAct Dif Temp Ajuste la ducha VAR BYTE VAR BYTE VAR BYTE VAR WORD

RC CON 7 LED1 CON 4 PuntoAjuste = 110 PAUSE 500 DEBUG "!RSET",CR,"!SPAN 0,200",CR,"!TMAX 30",CR,"!PLOT ON",CR DEBUG "!TSMP ON",CR,"!MAXS",CR,"!PNTS 100",13 DEBUG "!USRS Ajuste la temperatura a ",DEC PuntoAjuste,CR Principal: HIGH RC PAUSE 10 RCTIME RC,1,Temp Temp = Temp/ 30 IF Temp > TempAct THEN MasAlta IF Temp < TempAct THEN MasBaja GOTO Display MasAlta: DIF = Temp - TempAct/5 TempAct = TempAct + Dif GOTO Display MasBaja: Dif = TempAct - Temp/5 TempAct = TempAct - Dif Display: LOW LED1 DEBUG DEC TempAct,CR IF TempAct PuntoAjuste THEN SkipBeep DEBUG "AJUSTADA!",CR,"!BELL",CR HIGH LED1 SkipBeep: PAUSE 250 GOTO Principal

Pgina 22 Control Industrial Versin 1.1

Experimento 1: Diagramas de Flujo y StampPlot Lite

Preguntas y Desafo

1. Mencione una actividad humana cotidiana que involucre una decisin. Liste los pasos necesarios para llevar a cabo ese proceso y las decisiones que deben tomarse. 2. Desarrolle un diagrama de flujo simple para el proceso de la Pregunta 1. 3. Mencione un ejemplo de un proceso electrnico en su hogar o escuela (tal como el control de un horno microondas, un reloj despertador, etc.). Desarrolle un diagrama de flujo simple que describa el proceso. 4. Desarrolle el diagrama de flujo y el cdigo para los siguientes procesos: El potencimetro simula un sensor de temperatura. Si la temperatura excede 100 grados Fahrenheit, enciende la alarma (LED). La alarma no se apaga hasta que se presiona el botn. 5. Modifique el programa de la Pregunta 4 de forma que use StampPlot Lite para mostrar la temperatura, el bit de alarma y el estado de la alarma.

Control Industrial Versin 1.1 Pgina 23

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Experimento 2: Acondicionamiento de Seal de Entrada Digital

El control de procesos depende de la obtencin de informacin de entrada, su evaluacin y la ejecucin de la accin correspondiente. En control industrial, la mayora de las veces la informacin de entrada involucra el monitoreo de dispositivos de campo que admiten dos estados posibles. Un interruptor es un ejemplo comn de dispositivo de dos estados. O est abierto o est cerrado.

Los interruptores pueden controlar una operacin de tres formas. Una podra ser si conectamos directamente una carga al interruptor, controlando toda la corriente y la tensin de la carga. Tambin podemos conectarlo a la entrada de un rel. En este caso, el interruptor controla con poca potencia el circuito de entrada del rel, mientras que la potencia es controlada por el circuito de salida. El estado encendido / apagado (on/off) del interruptor tambin podra proveer una seal digital a la entrada de un controlador programable. Cuntos interruptores us hoy? Y, qu procesos afect con la accin de dichos interruptores? La tabla 2.1 lista unas pocas posibilidades, comenzando por el principio del da: Tabla 2.1: Interruptores que podra haber usado al principio del da. Estado del InterruptorPrimero podra presionar el botn SNOOZE de su reloj despertador. Luego, tropezando al entrar al bao, prende la luz. Ahora, en la cocina, prende la cafetera, presiona la tostadora de pan y programa su microondas. Abre el refrigerador y la luz se enciende. Enciende el termostato. Enciende su TV, cambia de canal, sube el volumen.

ResultadoLa alarma se apaga y... 5 minutos ms para dormir!

Ay! Apaga rpidamente la luz porque lastima la vista. El desayuno est listo. Y, quin sabe si la luz del refrigerador realmente se apaga cuando se cierra la puerta? Calefacciona o refrigera, segn su eleccin Los interruptores del frente del TV tienen la misma funcin que los del control remoto que se transmiten por un LED infrarrojo. Hace una llamada. Levanta el auricular y espera el tono. El interruptor que el auricular normalmente mantiene Presiona los botones del nmero de telfono. presionado ahora se encuentra en la posicin descolgado. Cada interruptor del teclado genera una combinacin de tonos especfica. Enciende su PC. Enciende el monitor. Clic con el mouse Estos son los tres ms obvios. Hay muchos ms para revisar su e-mail. interruptores detrs de escena en su PC. Ha presionado ms de 15 interruptores y an no ha dejado su casa!

Algunos de los interruptores listados en la Tabla 2.1 tienen control directo de la continuidad elctrica de las cargas involucradas. Por ejemplo, el interruptor de la luz del bao controla el flujo real de la corriente que

Control Industrial Versin 1.1 Pgina 25

Experimento 2: Acondicionamiento de Seal de Entrada Digital circula por las lmparas. El termostato es un ejemplo de un interruptor que opera un sistema de baja tensin para controlar un rel de la calefaccin o aire acondicionado. La mayora de los interruptores de la Tabla 2.1, probablemente proveen una seal digital de estado alto o bajo, que es monitoreada por un sistema de control electrnico. Es el estado de esta seal de entrada el que es evaluado para determinar el estado apropiado de las salidas involucradas. El botn "snooze" del reloj despertador no abre fsicamente el circuito de la alarma. Cuando usted lo presiona, el cambio momentneo de estado es reconocido por un circuito programable. Como resultado, el programa le ordena a la salida que se apague y agregue cinco minutos a la hora programada en la alarma. El botn "start" de su microondas no conduce en realidad la corriente que alimenta el magnetrn, la luz interior y el ventilador. Sin embargo, al presionarlo se genera una entrada que hace que el microcontrolador del horno active los rels que encienden esas cargas. A menudo pensamos en los interruptores como dispositivos mecnicos que establecen e interrumpen la continuidad entre dos puntos de un circuito. En el caso de los pulsadores manuales y los interruptores mecnicos mostrados en la Figura 2.1, este es exactamente el caso. Figura 2.1: Varios Pulsadores Manuales e Interruptores Mecnicos

La Tabla 2.2 muestra la representacin esquemtica de varios interruptores industriales. Los smbolos se dibujan para representar el estado normal del interruptor. Estado normal se refiere al estado de reposo o

Pgina 26 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital sin activar del interruptor. Los pulsadores que estn en el kit de componentes para este libro son Normalmente Abiertos (N.O. es la sigla en ingls). Al presionar el botn, se produce un corto circuito entre los contactos. La resistencia va desde el valor de circuito abierto que es cercano a infinito, a un valor muy cercano a cero. Tabla 2.2: Representacin Esquemtica de Varios Interruptores Industriales

Pulsador

Lmite Mecnico

Interruptor Proximidad

de

Rel

NormalNormalmente Abierto Normalormalmente Cerrado

Mientras que el concepto de interruptor es muy simple, parece no haber lmites para los diseos fsicos que encontrar en aplicaciones de control industrial. Los interruptores tambin pueden ser diseados como Normalmente Cerrados (N.C.); se encuentran cerrados en reposo y sus contactos se abren cuando son activados. Como tcnico, programador, o diseador de sistemas, debe estar al tanto de la posicin Normal (de reposo) de un interruptor.

Control Industrial Versin 1.1 Pgina 27

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Figura 2.2: Esquemas de Interruptores Pulsadores

Figure 2.2a

Figure 2.2b

Entrada Digital (TTL, CMOS, ECL, etc.)? Los dispositivos lgicos se fabrican con diferentes procesos que hacen que operen a distintas tensiones. La hoja de datos del fabricante muestra los valores crticos para cada dispositivo. Los Valores Mximos Absolutos son las tensiones y corrientes que no deben excederse para evitar daar o destruir al chip. Los pines de E/S del BASIC Stamp II no deberan exceder de 0,6 V o Vdd+0,6 V (5,6V) con respecto a Vss. La transicin entre el estado lgico alto y bajo est especificada en las caractersticas de corriente continua (DC) de la hoja de datos. Una tensin de 0,2 Vdd (1 V en el BASIC Stamp II) se considera como un cero, y una de 0,45 Vdd (2,25 V) o superior, garantizar un estado alto. Hay un rea gris entre estas dos tensiones donde se producir la transicin. Depende de la temperatura y la tensin de la fuente la ubicacin del punto donde ocurrir la transicin. Normalmente se producir a 1.4 Volts.

Los pines de entrada del BASIC Stamp no detectan cambios de resistencia entre los contactos del interruptor. Estas entradas esperan niveles de tensin apropiados que representen un estado lgico alto o bajo. Idealmente, estas tensiones deberan ser +5 Volts para un nivel lgico alto (1) y 0 Volts para un nivel lgico bajo (0). Para convertir los dos estados resistivos del interruptor en entradas aceptables, se debe colocar en serie con un resistor conectado a la fuente de tensin de +5 Volts del BASIC Stamp. Esto forma un circuito divisor de tensin en el cual el estado resistivo del interruptor se compara con el valor resistivo del resistor de referencia. La Figura 2.2 muestra las dos posibilidades para nuestro simple interruptor pulsador N.O. (normalmente abierto). La Figura 2.2a entregar +5 Volts en el pin de entrada cuando es presionado. Cuando el interruptor est abierto, no tiene continuidad; por lo que no circula corriente a travs del resistor de 10K y el pin de entrada queda conectado a masa.

Pgina 28 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Resistor de Referencia: El resistor fijo de 10K-Ohm en las Figuras 2.2a y 2.2b es necesario para obtener niveles lgicos variables. Est conectado en serie con el interruptor. Su valor debe ser mucho mayor que la resistencia del interruptor cerrado y mucho menor que la resistencia del interruptor abierto. Cuando el interruptor est abierto en la Figura 2.2a, el resistor no recibe tensin y el punto de entrada es llevado a masa. En la Figura 2.2b, el circuito abierto hace que la entrada quede fijada a +5 Volts. Debe tener en cuenta estos resistores (pull-up y pull-down) siempre que trabaje con interruptores mecnicos o electrnicos.

En la Figura 2.2b, al cerrar el interruptor se pone a masa el pin de entrada. Cero Volts es un nivel lgico bajo. Cuando el interruptor se abre, no hay cada de tensin sobre el resistor de 10K-Ohm y la tensin en la entrada es +5, un nivel lgico alto. Los circuitos son esencialmente iguales, aunque los resultados obtenidos al operar sobre el interruptor son exactamente opuestos. Desde el punto de vista de la programacin, es importante saber qu configuracin se est utilizando.

Control Industrial Versin 1.1 Pgina 29

Experimento 2: Acondicionamiento de Seal de Entrada Digital

EjerciciosEjercicio 1: Interruptor Bsico Para comenzar una investigacin sobre la programacin de pulsadores, conecte dos como se muestra en la Figura 2.2 en la protoboard de la Plaqueta de Educacin. Conecte la configuracin de activo alto (Figura 2.2a) en el Pin 1 de E/S y la salida de la configuracin activo bajo (Figura 2.2b) al Pin 2. Observe cul es cual. Como se dijo anteriormente, esto es importante. La Figura 2.3 muestra la fotografa de cmo podra quedar montado este circuito en la Plaqueta de Educacin. Figura 2.3: Fotografa del Montaje del Circuito de la Figura 2.2

Pgina 30 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital El siguiente programa est escrito para usar el StampPlot Lite para mostrar el estado de los interruptores. El procedimiento ser el mismo que para el Experimento 1, Diagrama de Flujo y StampPlot Lite. Primero, escriba el Programa 2.1. Puede omitir del programa todos los comentarios que comienzan con un apstrofe ().'Programa. 2.1: Deteccin del Estado de un Pulsador con StampPlot Lite ' Ttulo para ventana StampPlot ' Configura P1 como entrada ' Configura P2 como entrada

DEBUG "!TITL Prueba de Pulsadores",CR INPUT 1 INPUT 2 PB1 VAR IN1 PB2 VAR IN2

Bucle: PAUSE 100 ' Reduce velocidad del bucle DEBUG IBIN PB1, BIN PB2, CR ' Grafica el estado digital DEBUG DEC 0, CR ' Enva un 0 para lograr desplaz. de pantalla IF (PB1 = 1) and (PB2 = 0) THEN Ambos ' Verifica ambos botones IF PB1 = 1 THEN PB1_on ' Verifica si PB1 (activo alto) est presionado IF PB2 = 0 THEN PB2_on ' Verifica si PB2 (activo bajo) est presionado DEBUG "!USRS Estados normales - Ninguno presionado", CR ' Informa que ninguno est presionado GOTO Bucle PB1_on: DEBUG "!USRS Entrada 1 en nivel alto GOTO Bucle PB2_on: DEBUG "!USRS Entrada 2 en nivel bajo GOTO Bucle ' Informa que PB1 est presionado - PB1 est presionado ", CR

' Informa que PB2 est presionado - PB2 est presionado ", CR

Ambos: ' Reporta que ambos estn presionados DEBUG "!USRS PB1 alto y PB2 bajo - Ambos presionados", CR DEBUG "!BELL", CR ' Emite sonido. GOTO Bucle

Control Industrial Versin 1.1 Pgina 31

Experimento 2: Acondicionamiento de Seal de Entrada Digital Ejecute el programa. DEBUG mostrar el estado de los interruptores y el valor digital de las entradas. Cierre la ventana de DEBUG y ejecute StampPlot Lite. Seleccione el puerto COM apropiado y seleccione las casillas de Connect y Plot Data. Presione el botn Reset de la Plaqueta de Educacin y los trazos de In1 e In2 deberan comenzar a notarse en la pantalla. Su ventana debera verse similar a la de la Figura 2.4. Presione los pulsadores para familiarizarse con su sistema. Luego observaremos cmo funciona el programa. Figura 2.4: Pantalla Tpica de StampPlot Controlando el estado de Pulsadores

El propsito de este programa es ejecutar cierto cdigo de acuerdo al estado (presionado o no) de los pulsadores. Este ejercicio simple introduce varias consideraciones a tener en cuenta cuando se trabaja con entradas digitales, se programan varias instrucciones if-then o se usan algunos operadores lgicos de if-then, PBASIC. Primero, in1 e in2 simplemente contienen el valor lgico de los pines de entrada: +5 V = 1 lgico y 0 V = 0 lgico. El pulsador activo alto PB1 entrega un 1 si est presionado. El pulsador activo bajo PB2 entrega un 0 cuando est presionado. El programa controla el estado lgico de las entradas; como programador, debe comprender como se relaciona esto con la condicin de presionado o no presionado de los botones. Esto es evidente en la primer lnea del programa donde se emplea un operador lgico AND.

Pgina 32 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Cuando considera las configuraciones de los botones, tiene sentido lgico que si In1 entrega un estado alto e In2 un estado bajo, entonces ambos botones estn presionados. Las acciones de los controladores industriales a menudo dependen del estado de muchos interruptores y contactos. Una revisin de los operadores lgicos de PBASIC, incluyendo AND, OR, XOR y NOT, puede ser conveniente para cumplir estos requerimientos usando un BASIC Stamp. Otro aspecto a observar en el Programa 2.1 es el flujo del programa. Las estructuras IF-THEN verifican una condicin y si esta condicin se cumple, entonces la ejecucin del programa salta hacia la etiqueta. En este caso, la rutina a la que salta simplemente imprime el estado de los interruptores en el StampPlot Lite. En aplicaciones industriales, esta porcin del programa podra causar una accin de salida apropiada. Dado que la ltima lnea de cada subrutina es GOTO Bucle, la ejecucin del programa salta al principio del bucle principal y cualquier parte de cdigo que se encuentre por debajo de la instruccin IF-THEN que caus la bifurcacin se ignora. El diagrama de flujo de la Figura 2.5 muestra como se ejecuta el programa. Figura 2.5: Diagrama de Flujo del Programa 2.1

Control Industrial Versin 1.1 Pgina 33

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Si se presionan ambos botones, la comprobacin (PB1 = 1) and (PB2 = 0) es verdadera. La ejecucin del programa se dirigira a la etiqueta Ambos La condicin Ambos Presionados se mostrara en la barra Ambos. User Status Bar del SPL y su computadora emitira un sonido. Luego, el programa salta de regreso a Bucle y verifica nuevamente los interruptores. Mientras ambos botones permanezcan presionados, el resultado de esta verificacin ser verdadero y se repetir la misma parte del programa. Si se deja uno o ambos botones sin presionar, las siguientes tres lneas de cdigo realizarn una verificacin de condiciones similares. Al presionar PB1 se hace verdadera la condicin PB1 = 1, la ejecucin salta a la etiqueta PB1, regresando luego al principio del bucle; en ese caso PB2 = 0 nunca se verificara. Esto es bueno o malo? En realidad no importa. Pero hay que tener en cuenta, que comprender el funcionamiento de mltiples instrucciones IFTHEN, puede ser una herramienta muy til para aplicaciones de programacin. Olvidarse de esto puede dar como resultado errores frustrantes y no muy fciles de corregir en su programa. Por ejemplo, que pasara en nuestro programa, si la verificacin de ambos botones presionados IF (PB1 = 1) AND (PB2 = 0) THEN Ambos se colocara a continuacin de las verificaciones individuales de cada botn? Desafo Rpido Mientras ejecuta el programa, intente reproducir el estado de los botones mostrado en la pantalla de la Figura 2.4.

Pgina 34 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Ejercicio 2 Rebote de Interruptores y Rutinas Anti-Rebote En el ejercicio anterior, se emple el nivel de estado estable del interruptor. La rutina informaba el estado del interruptor una vez por cada pasada del bucle. Qu sucede si se desea presionar rpidamente un botn para lograr que algo suceda solamente una vez? Hay dos problemas que deberemos enfrentar. El primero es: Qu tan rpido puede presionar y soltar un botn? Debe hacerlo en menos tiempo de lo que tarda en ejecutarse un ciclo de programa. El segundo problema es lidiar con el rebote del interruptor. Llamamos rebote del interruptor a la tendencia que tienen estos dispositivos a realizar varias acciones rpidas de encendido / apagado, en el instante que se activan o desactivan. El siguiente programa demostrar la dificultad asociada a realizar esta tarea. Se agregarn dos diodos emisores de luz como indicadores de salida en los pines Pin 4 y Pin 5. Conecte los LEDs como en la Figura 2.6. Figura 2.6: Circuitos de LED Activo Alto a ser agregados al Circuito del Ejercicio 1

Ingrese y ejecute el programa de acuerdo al procedimiento para emplear el StampPlot Lite. El estado de los pulsadores y los LEDs se mostrar en la pantalla. Cuando PB1 es presionado, los LEDs parpadearn. Puede ser usted lo suficientemente rpido como para hacerlos titilar solamente una vez? Intntelo.

Control Industrial Versin 1.1 Pgina 35

Experimento 2: Acondicionamiento de Seal de Entrada Digital

'Programa 2.2 Sin Anti Rebote PAUSE DEBUG DEBUG DEBUG 500 "!TITL Desafo de Velocidad",CR "!TMAX 25", CR "!PNTS 300", CR

' Ttulo para ventana StampPlot ' Configura tiempo de grfico (segundos) ' Configura cantidad de puntos ' ' ' ' ' ' Configura P1 como entrada Configura P2 como entrada LED Verde Inicializa encendido LED Rojo Inicializa apagado

INPUT 1 INPUT 2 OUTPUT 4 Out4 = 1 OUTPUT 5 Out5 = 0 Bucle: DEBUG IBIN In1, BIN In4, BIN In5, CR DEBUG DEC 0, CR IF In1 = 1 THEN Titila GOTO Bucle Titila: TOGGLE 4 TOGGLE 5 GOTO Bucle

' ' ' '

Dibuja el estado digital. Enva un 0 para desplazar grfico Controla el interruptor Agregar pause 5 si StampPlot se cuelga

' Invierte el estado de los pines

Si StampPlot Lite no responde a los datos que enva el BASIC Stamp, debera agregar una pequea pausa en la rutina Bucle:. Una PAUSE 2 o PAUSE 5 (incluso hasta 10 en computadoras muy lentas) aliviar los problemas que pueda encontrar en la transmisin de datos. Es casi imposible presionar y liberar el botn suficientemente rpido como para realizar la accin solamente una vez. Esto se muestra en la Figura 2.7. El bucle del programa se ejecuta demasiado rpido. Si usted es lento, el programa tiene la oportunidad de ejecutarse varias veces mientras el interruptor se encuentra presionado. Agregue a esto varios milisegundos de rebote y podra obtener muchos pulsos cada vez que presione el botn. Figura 2.7: La Respuesta Lenta y el Rebote Pueden Ser un Problema

Pgina 36 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital Reducir ms la velocidad de ejecucin del programa puede ayudar a remediar el problema. (Si el programa anterior no trabaj correctamente con StampPlot Lite, una disminucin en la velocidad de ejecucin permitir mejorar la transmisin serial de datos). Agregue una pausa de 250 milisegundos a la rutina Titila:. El interruptor tiene ahora 250 milisegundos para asentarse luego de ser presionado, para despus retornar a su posicin abierta. Incluya en su programa PAUSE 250 para incrementar el tiempo del bucle y cancelar el rebote del interruptor.'Programa 2.3 (modifique este segmento del programa 2-2 para que se vea como abajo) Titila: ' Invierte el estado de los pines TOGGLE 4 TOGGLE 5 PAUSE 250 ' Agregada para mejorar tiempo de establecimiento GOTO Bucle

Figura 2.8: Agregar una Pausa Hace el Desafo Mucho Ms Fcil

Otorgando este tiempo de establecimiento, es mucho ms fcil lograr que Titila: se ejecute una sola vez, al presionar rpidamente el botn. Esta tcnica elimina el rebote del interruptor y le da tiempo suficiente para liberarlo antes del siguiente ciclo de programa. La PAUSE debe ser suficientemente larga para evitar estos inconvenientes. Sin embargo, si la PAUSE es demasiado larga, se podra presionar el botn sin que el microcontrolador lo note.

Control Industrial Versin 1.1 Pgina 37

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Ejercicio 3 Disparo por Flanco Las rutinas de conteo presentan problemas adicionales en la programacin de entradas digitales. El Ejercicio 2 us el comando PAUSE para eliminar el rebote del interruptor, tcnica que no se puede emplear en aplicaciones industriales tales como la cuenta de productos que se desplazan por una cinta transportadora. No solamente se trata de que el interruptor posee un rebote inherente a su construccin, sino que el producto a contar en s mismo puede tener forma irregular, tambalearse, o detenerse durante algn tiempo mientras activa el interruptor. Podra haber solamente un producto, pero el interruptor podra abrirse y cerrarse varias veces. Adems, si el producto permanece en contacto con el interruptor durante varios ciclos del bucle, el programa debera registrarlo una sola vez y no continuamente como en el Programa 2.2. El Programa 2.4 usa una variable bandera para crear un programa que responde a las transiciones iniciales de estado bajo a alto del interruptor. Una vez que se detecta este flanco ascendente en la entrada digital, Titilar: se ejecutar. Luego se activar la bandera para evitar otras ejecuciones hasta que el producto haya liberado el interruptor, regresando nuevamente al estado bajo. Ingrese el Programa 2.4.' Programa 2.4: Deteccin del Flanco del Interruptor ' Cuenta y muestra la cantidad de pulsos en PB1. ' La cuenta se reinicia presionando PB2. PAUSE DEBUG DEBUG DEBUG DEBUG DEBUG 500 "!TITL Activacin por Flanco",CR "!TMAX 50",CR "!PNTS 300",CR "!AMAX 20",CR "!MAXR",CR

' ' ' '

' Ttulo para la ventana StampPlot Configura tiempo de grfico (segundos) Configura cantidad de puntos de datos Configura eje vertical (cantidad) Reinicia al alcanzar el mximo

INPUT 1 INPUT 2 PB1 VAR In1 PB2 VAR In2 Band1 VAR bit Band2 VAR bit Contar VAR word Band1 = 0 Band2 = 0 Contar = 0 Bucle: PAUSE DEBUG DEBUG DEBUG

' bandera para PB1 ' bandera para PB2 ' variable tipo word para contar ' limpia banderas y contador

50 "!USRS Total = ",DEC Contar, CR DEC Contar, CR IBIN PB1, BIN PB2,CR

' Muestra valor contador ' Muestra el mismo valor como trazo analgico ' Grafica estado digital. ' Si se presion, cuenta y muestra ' Sino, reinicia bandera en 0

IF PB1 = 1 THEN Cuenta Band1 = 0

Pgina 38 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada DigitalIF In2 = 0 THEN Borra Band2 = 0 GOTO Bucle Cuenta: IF (PB1 = 0) OR (Band1 = 1) THEN Bucle Contar = Contar +1 Band1 = 1 GOTO Bucle Borra: IF(In2 = 1) OR (Band2 = 1) THEN Bucle ' Si PB2 es presionado, pone contador en 0

' ' ' '

Si deja de estar presionado O la bandera est activa, saltea Incrementa la cuenta Una vez contado, pone bandera en 1

' Si no est presionado O la bandera ' est activa, saltea Contar = 0 ' Pone contador en 0 Band2 = 1 ' Evita que se borre nuevamente DEBUG "Cuenta reiniciada. Total = ", DEC Contar, CR GOTO Bucle

Cuando PB1 es presionado, el programa salta a la rutina Cuenta. Observe que la primer lnea de esta rutina verifica si el interruptor est abierto o la bandera Band1 est activada. Ninguna es verdadera en la primer pasada por el programa. Por lo tanto, Contar es incrementada, Band1 es puesta en 1 y el programa regresa a Bucle. Si PB1 an sigue presionado, Cuenta se ejecuta nuevamente. Esta vez, sin embargo, con Band1 activada, la instruccin IF-THEN enva el programa de regreso a Bucle sin incrementar Contar nuevamente. Sin importar cuanto tiempo est presionado el botn, solamente se contar una unidad por cada vez que se lo presione. Aunque en este caso solamente est incrementando el valor de la variable Contar, este programa podra ser parte de una rutina llamada por una aplicacin industrial. La Figura 2.9 muestra como se vera este programa funcionando con SPL.

Control Industrial Versin 1.1 Pgina 39

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Figura 2.9: Programa 2.4 en SPL Contador de Flancos

Desafo de Programacin 1: Estacionamiento. Use los LEDs de los Pines 4 y 5, junto con los dos pulsadores, para simular un estacionamiento de automotores. Suponga que el estacionamiento puede ubicar 24 autos. El pulsado PB1 contar los autos a medida que ingresen al estacionamiento. El pulsador PB2 contar los autos a medida que salen. Escriba un programa que determine la cantidad total de autos estacionados, aumentando la cuenta con PB1 y disminuyndola con PB2. Mantenga el LED verde encendido mientras haya lugar libre en el estacionamiento. Encienda el LED rojo cuando el estacionamiento est lleno. Muestre continuamente cuntos espacios de estacionamiento hay disponibles en la ventana User Status (!USRS). Tambin muestre continuamente la cantidad de autos estacionados. Desafo Adicional de StampPlot Lite Mantenga un registro de la cantidad de veces que el estacionamiento pas de Hay lugar a Lleno (vea el Apndice A y el archivo de ayuda de StampPlot Lite para obtener informacin sobre el uso de la opcin Save Data to File--Guardar Datos en Archivo).

Pgina 40 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Comando BUTTON: Rutina Anti Rebote de PBASIC Eliminar el rebote de los interruptores es una tarea comn en programacin. Parallax desarroll dentro del juego de instrucciones PBASIC2 un comando especfico para trabajar con la deteccin de seal de entrada digital. El comando se llama button. La sintaxis del comando se muestra en el cuadro siguiente. Referencia Rpida de Comandos PBASIC: BUTTONBUTTON pin, estadoactivo,retardo,repetir,bytevariable,estadosalto, direccin

Pin: (0-15) Nmero de pin de la entrada. Estadoactivo: (0 or 1) Especifica el estado lgico que ocurre al activar el interruptor. Retardo: (0-255) Especifica el tiempo de establecimiento del interruptor. Nota: 0 y 255 son casos especiales. Si retardo es 0, Button no elimina el rebote ni ejecuta autorepeticin. Si es 255, Button elimina el rebote pero no ejecuta autorepeticin. Repetir: (0-255) Especifica la cantidad de ciclos por repeticin. Bytevariable: Nombre de una variable tipo byte que sirve como espacio de trabajo para la instruccin BUTTON. Estadosalto: Estado del pin en el que se pretende que salte. Direccin: Etiqueta a la que saltar el programa cuando se cumplan las condiciones.

Para probar esta funcin con nuestra rutina, cargue y ejecute el Programa 2.5.' Programa 2.5: Uso de BUTTON con StampPlot ' Use BUTTON para contar y mostrar la cantidad de veces que se presiona PB1. ' Reinicie la cuenta total con PB2. PAUSE DEBUG DEBUG DEBUG DEBUG DEBUG 500 "!TITL Uso de BUTTON",CR "!TMAX 50",CR "!PNTS 300",CR "!AMAX 20",CR "!MAXR",CR byte byte

' ' ' ' ' ' ' ' '

Ttulo de ventana StampPlot Configura tiempo de grfico (segundos) Configura cantidad de puntos Configura eje vertical Reinicia cuando llega a mxima cant. De puntos Espacio Se debe Espacio Se debe de trabajo limpiar la de trabajo limpiar la para BUTTON variable al para BUTTON variable al de PB1 inicio de PB2 inicio

EspTrabajo1 VAR EspTrabajo1 = 0 EspTrabajo2 VAR EspTrabajo2 = 0 Contar VAR word Contar = 0 Bucle: PAUSE 50

' Variable para almacenar la cuenta

Control Industrial Versin 1.1 Pgina 41

Experimento 2: Acondicionamiento de Seal de Entrada DigitalBUTTON 1,1,255,0,EspTrabajo1,1,Cuenta BUTTON 2,0,255,0,EspTrabajo2,1,Borra ' Deteccin flanco sin rebote de PB1 ' Deteccin flanco sin rebote de PB2

DEBUG "!USRS Total = ", DEC Contar, CR ' Muestra el total en el recuadro Status DEBUG DEC Contar, CR ' Muestra el valor del contador con trazo analgico DEBUG IBIN In1, BIN In2, CR ' Grafica el estado digital. GOTO Bucle Cuenta: Contar = Contar +1 GOTO Bucle

' Incrementa Contar

Borra: Contar = 0 ' Reinicia la cuenta a 0 DEBUG "Cuenta reiniciada. Total = ", DEC Contar, CR ' Muestra mensaje en el recuadro Text GOTO Bucle

Revise la documentacin sobre el comando BUTTON en el BASIC Stamp Programming Manual Versin 1.9 (en Ingls). Este es un comando muy til para aplicaciones industriales. Experimente cambiando el tiempo de retardo de 50 a 100 y a 200. Vea si puede presionar el botn ms de una vez, por cada vez que se ejecute una instruccin Cuenta. Cul es el riesgo de permitir demasiado tiempo de establecimiento en aplicaciones de alta velocidad? Guarde este programa; ser modificado ligeramente en el siguiente desafo de programacin. Fuentes de Entrada Digital Electrnicas Es muy comn que las entradas digitales provengan de las salidas de otros circuitos electrnicos. Estas entradas pueden provenir de una variedad de fuentes electrnicas, incluyendo detectores de proximidad capacitivos o inductivos, optocuplas o interruptores pticos, circuitos de acondicionamiento de seal de sensores, compuertas lgicas y salidas de otros microcontroladores, microprocesadores, o sistemas de control lgico programables.

Pgina 42 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital Hay varias cosas a considerar cuando conecta estas fuentes a un BASIC Stamp. Primero: Son elctricamente compatibles? 1. La tensin de la fuente de seal est dentro de los lmites de entrada del BASIC Stamp? 2. La referencia de masa del circuito es la misma que la del BASIC Stamp? 3. Es necesario aislar un circuito ante la eventual falla elctrica del otro? La Figura 2.10 muestra varias posibilidades de interconexin elctrica que podra necesitar. Una vez que se obtiene una seal compatible, aparece la siguiente interrogante, El programa est en condiciones de responder a la seal? 1. El rebote del interruptor representa un problema? 2. Qu tan rpidos son los datos? Cul es su frecuencia? Cul es el tiempo del pulso mnimo? 3. La accin se debe tomar en el nivel de estado estable de los datos o en su flanco ascendente o descendente? Las tcnicas vistas para tratar con el rebote y los disparos por flanco de los pulsadores manuales, tambin son vlidas para los interruptores electrnicos.

Control Industrial Versin 1.1 Pgina 43

Experimento 2: Acondicionamiento de Seal de Entrada Digital Figura 2.10: Interfaz de Electrnica de Entrada al BASIC Stamp

(a) Las salidas de circuitos TTL y CMOS alimentadas desde una fuente de +5 Volt pueden ser aplicadas directamente a los pines de entrada del BASIC Stamp. Si los dos sistemas estn alimentados desde los mismos 5 Volts, perfecto. Sino al menos las masas deben ser comunes (conectadas juntas). (b) Los dispositivos de baja tensin (+3 V) pueden ser conectados usando un 74HCT03 u otra compuerta de colector abierto similar con un resistor de pull-up a la fuente de +5 Volt del BASIC Stamp. Alimente el chip con su fuente de baja tensin y una las masas. (c) Las seales digitales de alta tensin pueden conectarse mediante un buffer 74HC4050 o un inversor 74HC4049 alimentado con +5 Volts. Estos dispositivos pueden manejar con seguridad entradas de hasta 15 Volts. Nuevamente, las masas deben ser comunes. (d) Una configuracin de amplificador operacional trabajando como comparador con referencia puede establecer una salida Alta / baja de acuerdo a si la entrada analgica est por encima o debajo de una tensin de referencia. El LM358 es un amplificador operacional cuya salida puede ir desde masa hasta cerca de Vdd con una alimentacin simple de +5 Volt. Lo usaremos en la prxima aplicacin. (e) Se puede usar una optocupla para conectar diferentes niveles de tensin al BASIC Stamp. El resistor del LED limita la corriente a un nivel seguro, mientras que permite un nivel de luz suficiente para saturar el fototransistor. El circuito de entrada puede ser aislado totalmente de la fuente de alimentacin del fototransistor del BASIC Stamp. Esta aislamiento provee proteccin efectiva de cada circuito, en el caso que el otro falle.

Ejercicio 4: Interruptor Electrnico

Pgina 44 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital Los interruptores electrnicos que proveen deteccin sin contacto son muy populares en aplicaciones industriales. Activacin sin contacto fsico significa que no hay que usar contactos elctricos ni partes mviles. El pulsador que usamos anteriormente servira en una aplicacin donde se lo presionara varios miles de veces. Sin embargo, en algn momento su resorte se gastar, o sus contactos de desgastarn u oxidarn, hasta el punto que deje de ser conveniente usarlo. Los interruptores elctricos industriales utilizan uno de tres principios. Los interruptores de proximidad inductivos miden el cambio en el rendimiento de un oscilador, cuando objetos de metal se acercan. A menudo los objetos de metal absorben energa mediante corrientes parsitas, lo que hace que el oscilador se detenga. Los interruptores de proximidad capacitivos miden un incremento en la capacidad cuando se les acerca cualquier tipo de material. Cuando el incremento es suficientemente grande, causa que el oscilador interno comience a oscilar. El circuito se dispara y el estado de la salida cambia. Los interruptores pticos detectan la presencia o ausencia de un angosto haz de luz, a menudo en el rango infrarrojo. En interruptores pticos reflectivos, el haz de luz podra reflejarse en un objeto mvil hacia el sensor ptico del interruptor. Otros interruptores pticos se configuran de forma que un objeto bloquee el haz de luz que va desde la fuente de luz hasta el receptor. La salida de un interruptor electrnico es una seal de dos estados. Su etapa final puede ser cualquiera de las mostradas en la Figura 2.10. Como tcnico y desarrollador de aplicaciones, debe considerar la naturaleza de este circuito de seal y condicionarlo para la entrada digital del microcontrolador. La hoja de datos del fabricante le dar informacin sobre la tensin de operacin del interruptor y conexiones de cargas tpicas.

Interruptor de Proximidad? Los interruptores de proximidad detectan la presencia de un objeto, sin contacto fsico. Los interruptores de la figura representan las tres principales categoras: Inductivo, Capacitivo y ptico

Aunque puede tomar el pin de entrada digital del BASIC Stamp como una carga, el interruptor electrnico puede necesitar un resistor de referencia como se emple en la Figura 2.2. Normalmente, la salida del interruptor de proximidad estar muy cerca de 0 Volts en un estado y muy cerca de la tensin de fuente en el otro. Siempre es una buena idea medir la tensin de los estados del interruptor con un voltmetro, antes de conectarlo a un microcontrolador desprotegido. Si las tensiones de salida no estn dentro de los lmites compatibles con el BASIC Stamp, necesitar usar alguno de los circuitos mostrados en la Figura 2.10 como interfaz apropiada.

Control Industrial Versin 1.1 Pgina 45

Experimento 2: Acondicionamiento de Seal de Entrada Digital

El ejercicio siguiente se enfoca en el diseo y montaje de un interruptor ptico. Usaremos este interruptor para contar y detectar objetos. Luego el interruptor se usar como tacmetro, para determinar las RPM. En la Figura 2.11, el diodo emisor de luz infrarroja (LED) y el fototransistor infrarrojo forman un par emisor / detector acoplado. La luz emitida por el LED causar una corriente en el colector del fototransistor. Un aumento en la corriente de colector lleva al fototransistor hacia la saturacin (masa). Si se evita que la luz llegue al fototransistor, este se va hacia el corte y la tensin de colector aumenta positivamente. Estas condiciones de luz y oscuridad normalmente no generarn una seal TTL vlida en el colector del transistor. Si aplicamos esta seal a la entrada de un comparador con referencia, podremos establecer un punto de ajuste entre las dos condiciones. La salida del comparador ser una seal lgica compatible con TTL. Su nivel de salida depende de qu lado del punto de ajuste, se encuentra la salida del fototransistor. El amplificador operacional LM358 es una buena eleccin para esta aplicacin. Puede operar con una fuente simple de +5 Volt y sus tensiones de salida son casi iguales a las tensiones de la fuente de alimentacin +5 y masa. Construya cuidadosamente el circuito de la Figura 2.11 en la protoboard. Montar los componentes cerca de un extremo como se muestra en el diagrama, nos permitir agregar ms componentes en los prximos ejercicios. Haga un doblez de 90o en las patas del LED y del fototransistor para que queden paralelos a la mesa. El fototransistor y el LED deberan ponerse apuntando hacia fuera del borde de la protoboard. El LED en la Figura 2.11 emite continuamente un haz de luz infrarroja. Con el LED y el fototransistor lado a lado, hay poca o ninguna luz entrando al fototransistor debido a que no hay nada reflectivo frente a l. Si un objeto se aproxima al par, parte de la luz del LED se reflejar hacia el fototransistor. Cuando la luz lo alcanza, la corriente de colector fluir y su tensin caer. Con esta configuracin, la reflexin proveniente de un objeto que pasa por delante del par, ser detectada por el fototransistor. La cantidad de luz reflejada hacia el sensor depende de la reflectividad ptica del objeto y de la geometra del haz de luz. En nuestro caso intentaremos determinar la presencia de un objeto blanco y plano. Con el emisor y el detector montados lado a lado, intentar la deteccin del objeto a una distancia de dos o tres centmetros. Debe medir un par de tensiones para calibrar la presencia de un objeto. Coloque un voltmetro entre el emisor y el colector del fototransistor. Mida la tensin cuando no hay ningn objeto frente al sensor. Anote este valor en la Tabla 2.3. Luego, acerque y aleje del par un trozo de papel blanco, mientras observa la variacin de tensin. A medida que el papel se acerca al par IR, la luz reflejada incrementa la corriente de colector y lleva al transistor hacia la saturacin (bajo). Anote la lectura de tensin con el papel a unos dos centmetros de los sensores, en la Tabla 2.3. La diferencia entre estas mediciones puede ser bastante pequea, como 0,5 V, pero esto ser suficiente para disparar el amplificador operacional. Esta seal se aplica en la entrada inversora del LM358. El potencimetro proveer la tensin de referencia en la entrada no inversora. Esta referencia ser un valor intermedio entre las lecturas de la Tabla 2.3.

Pgina 46 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital

Figura 2.11a y b: Dibujo y Esquema Elctrico del Interruptor Reflectivo

Control Industrial Versin 1.1 Pgina 47

Experimento 2: Acondicionamiento de Seal de Entrada Digital Ajuste el potencimetro para proveer la tensin de referencia apropiada, que es el punto medio entre ambas mediciones. Al verificar la salida del LM358 se debera encontrar una seal compatible con el BASIC Stamp. La salida debera estar baja sin anteponer el objeto y alta al colocar un objeto blanco frente al par emisor / detector. Mida estas dos tensiones a la salida del LM358 anotando los valores en la Tabla 2.3. Si la seal de salida es compatible, aplquela al Pin 3 del BASIC Stamp. Detectar la luz reflejada por un objeto es lo que llamamos deteccin reflectiva. Tabla 2.3: Valores de Tensin del Fototransistor y el LM358 Condicin Sin objeto sin reflexin Con objeto reflexin total Tensin de Referencia Tensin en el Fototransistor Tensin de Salida del LM358

Esta habilidad de obtener una conmutacin dependiendo de la luz recibida es muy til para aplicaciones industriales tales como conteo de productos, control de cintas transportadoras, medicin de RPM, etc. El siguiente ejercicio demostrar una operacin de conteo. Usted deber ayudar, sin embargo, usando su imaginacin. Supongamos que se estn transfiriendo botellas de leche por una cinta transportadora, desde el sector de llenado al de empaque. Corte una tira de papel blanco para representar una botella de leche. Pasarla por delante de nuestro interruptor representa una botella desplazndose por la cinta transportadora. Solamente se necesita una pequea modificacin al programa anterior para probar nuestro nuevo interruptor. Si tiene cargado el Programa 2.5, simplemente modifique la instruccin button cambiando el identificador de entrada de Pin 1 a 3. La lnea modificada se vera as:' Programa 2.6 (modificacin del Programa 2.5 para trabajar con el interruptor reflectivo) BUTTON 3,1,255,0,EspTrabajo1,1,Cuenta ' Deteccin de disparo por flanco sin rebote del interruptor ptico

Desafo de Programacin 2: Empacadora de Botellas de Leche Revea el Experimento 1 y considere la disposicin de cinta transportadora de la Figura 1.2. Asumiremos que el controlador est contando botellas blancas de leche. Nuestro interruptor reflectivo podra reemplazar el interruptor Detector1 de la figura original. El pulsador activo alto PB1 podra encender y apagar el motor. El LED de P4 puede encenderse para indicar que el motor est encendido. El LED de P5 controla la compuerta de desvo. En estado alto la compuerta est hacia la derecha y en estado bajo, a la izquierda.

Pgina 48 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital Su desafo es encender el motor con PB1 y contar botellas a medida que pasan. Cada seis botellas, TOGGLE (invierta) la posicin de la compuerta que se indica encendiendo o apagando el LED en P4. Despus de haber enviado 4 paquetes de seis botellas a cada lado, apague el motor. El proceso podra reiniciarse presionando el botn Reset. Vea la Figura 2.12 para comprender como trabaja el diagrama de flujo. Figura 2.12: Diagrama de Flujo de la Empacadora de Botellas de Leche

Control Industrial Versin 1.1 Pgina 49

Experimento 2: Acondicionamiento de Seal de Entrada Digital Ejercicio 5: Tacmetro Monitorear y controlar la velocidad de giro es importante en muchas aplicaciones industriales. Un tacmetro mide la cantidad de rotaciones de un eje en una unidad de tiempo. La medicin normalmente es expresada en revoluciones por minuto (RPM). Un interruptor ptico reflectivo puede abrirse y cerrarse suficientemente rpido como para poder contar franjas negras pintadas en el eje de un motor. Contar la cantidad de activaciones durante una cantidad conocida de tiempo provee suficiente informacin para calcular las RPM. La Figura 2.13 muestra cinco ejemplos de discos codificadores que podran colocarse en el extremo del eje de un motor. Si el interruptor ptico se enfrenta al disco rotativo, generar pulsos a medida que pasen frente a l los distintos sectores. La cantidad de segmentos blancos (o negros) representa la cantidad de pulsos del interruptor por giro completo del eje. El primer disco codificador tiene un segmento blanco y otro negro. En cada giro el segmento blanco estar frente al interruptor la mitad del tiempo, generando un estado alto durante la mitad de la rotacin. Durante la otra mitad de la rotacin, el segmento negro estar frente al disco, absorbiendo la luz infrarroja sin reflejar nada, por lo que el interruptor estar en estado bajo. Por cada revolucin se completa un ciclo de alto-bajo. El juego de instrucciones del PBASIC2 nos provee de un comando til llamado COUNT que puede ser usado para contar la cantidad de transiciones que ocurren en una entrada digital durante cierto intervalo de tiempo. Su sintaxis se muestra a continuacin. Referencia Rpida de Comandos PBASIC: COUNTCOUNT pin, perodo, variable

Pin: (0-15) Identificador de pin de entrada. Perodo:(0-65535) Especifica el tiempo en ms durante el que contar. Variable: Variable en la que se almacenar esa cantidad.

El siguiente ejercicio usa la instruccin COUNT, el interruptor ptico y los discos codificadores para obtener datos sobre velocidad. Comencemos cortando el primer disco codificador. Coloque cinta adhesiva en la parte trasera del disco, para pegarlo al centro de la hlice del ventilador (puede recortar los discos codificadores del tamao necesario del Apndice B de este libro). El ventilador es de 12 V. Su velocidad cambia con tensiones que varan desde 12 V hasta aproximadamente 3,5 V. Esta es la cada de tensin del circuito de control del motor sin escobillas. Pruebe su ventilador conectndolo directamente primero a Vdd (+5 Volts) y luego a +Vin (tensin sin regular). Busque en su plaqueta el rtulo Vin, para tener acceso a la tensin de entrada sin regular. Debe respetar la polaridad en los motores sin escobillas. El cable rojo es el positivo (+V) y el negro va conectado a masa Vss. El ventilador debera colocarse de forma que el disco codificador apunte hacia el par IR.

Pgina 50 Control Industrial Versin 1.1

Experimento 2: Acondicionamiento de Seal de Entrada Digital Figura 2.13: Discos Codificadores para Interruptor ptico Reflectivo (versiones para recortar en el Apndice B)

Control Industrial Versin 1.1 Pgina 51

Experimento 2: Acondicionamiento de Seal de Entrada Digital

El primer disco codificador tiene un sector negro y uno blanco. A medida que rota, el interruptor ptico debera activarse y desactivarse una vez por cada vuelta o revolucin. Ingrese el Programa 2.7 de Prueba de Tacmetro.' Programa 2.7 Prueba de Tacmetro con el StampPlot ' Inicializa parmetros de interfaz grfica. ' (Tambin pueden configurarse o modificarse en la ventana del SPL) DEBUG "!AMAX 8000",CR ' Escala Completa RPM DEBUG "!AMIN 0",CR ' Escala mnima RPM DEBUG "!TMAX 100",CR ' Eje de tiempo mximo DEBUG "!TMIN 0",CR ' Eje de tiempo mnimo DEBUG "!AMUL 1",CR ' Multiplicador de escala analgica DEBUG "!PNTS 600",CR ' Dibuja 600 puntos de datos DEBUG "!PLOT ON",CR ' Enciende el graficador DEBUG "!RSET",CR ' Reinicia la pantalla Contar VAR word RPM VAR word Contar = 0 Bucle: COUNT 3,1000, Contar RPM = Contar * 60 ' Variable para llevar la cuenta ' Variable para RPM calculadas ' Limpia Contar

' Contar los pulsos del pin 3 por 1 segundo ' Ajusta escala de RPM

DEBUG DEC RPM, CR ' Enva el valor de RPM a graficador y barra de estado DEBUG "!USRS RPM actuales ", DEC RPM, CR GOTO Bucle

A medida que la hlice gira, los pulsos generados por el interruptor ptico se contarn durante 1000 milisegundos (un segundo). Con una duracin de la rutina Contar de un segundo, y producindose un ciclo por cada rotacin, obtenemos directamente la velocidad de rotacin de la hlice en ciclos por segundo. Pero normalmente, la vel