TEMA VIII.- MICROCONTROLADORES (IV)

TEMA VIII.- MICROCONTROLADORES (IV). I. Introducción En este tema trataremos un poco mas en profundidad como se deben conectar diversos dispositivos...
86 downloads 0 Views 376KB Size
TEMA VIII.- MICROCONTROLADORES (IV). I.

Introducción

En este tema trataremos un poco mas en profundidad como se deben conectar diversos dispositivos de entrada así como utilizar las salidas para controlar dispositivos. II. Entradas El control de procesos depende de la obtención de información de entrada, su evaluación y la ejecución de la acción correspondiente. En control industrial, la mayoría de las veces la información de entrada involucra el monitoreo de dispositivos de campo que admiten dos estados posibles. Un interruptor es un ejemplo común de dispositivo de dos estados. O está abierto o está cerrado.

Los interruptores pueden controlar una operación de tres formas. Una podría ser si conectamos directamente una carga al interruptor, como por ejemplo, cuando encendemos la luz de nuestra habitación, controlando toda la corriente y la tensión de la carga. Necesitaríamos un interruptor que fuera capaz de aguantar toda la potencia que exige la lámpara También podemos conectarlo a la entrada de un relé, como por ejemplo, el termostato es un interruptor que opera un sistema de baja tensión para controlar un relé de la calefacción o aire acondicionado., 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. Necesitamos un interruptor mas pequeños que en el caso anterior pues el interruptor debe soportar el consumo de la bobina del relé. El estado encendido / apagado (on / off) del interruptor también podría proveer una señal digital a la entrada de un controlador programable con lo que el control de potencia pasa al controlador programable y el interruptor se utiliza únicamente como orden para realizar un proceso consiguiendo que el tamaño del interruptor sea mas pequeño. ¿Cuántos interruptores usó hoy? Y, ¿qué procesos afectó con la acción de dichos interruptores? Primero podría presionar el botón “SNOOZE” de su reloj despertador. La alarma se apaga y... ¡5 minutos más para dormir!

Teleformación proyecto Medusa.

1

Luego, tropezando al entrar al baño, prende la luz. ¡Ay! Apaga rápidamente la luz porque lastima la vista. Ahora, en la cocina, prende la cafetera, presiona la tostadora de pan y programa su microondas. Abre el refrigerador y la luz se enciende. El desayuno está listo. Y, ¿quién sabe si la luz del refrigerador realmente se apaga cuando se cierra la puerta? Enciende el termostato. Calefacciona o refrigera, según su elección Enciende su TV, cambia de canal, sube el volumen. Los interruptores del frente del TV tienen la misma función que los del control remoto que se transmiten por un LED infrarrojo. Hace una llamada. Levanta el auricular y espera el tono. Presiona los botones del número de teléfono. El interruptor que el auricular normalmente mantiene presionado ahora se encuentra en la posición “descolgado”. Cada interruptor del teclado genera una combinación de tonos específica. Enciende su PC. Enciende el monitor. Clic con el mouse para revisar su e-mail. Estos son los tres más obvios. Hay muchos más interruptores detrás de escena en su PC. ¡Ha presionado más de 15 interruptores y aún no ha dejado su casa! La mayoría de los interruptores, probablemente proveen una señal digital de estado alto o bajo, que es monitoreada por un sistema de control electrónico. Es el estado de esta señal de entrada el que es evaluado para determinar el estado apropiado de las salidas involucradas. El botón "snooze" del reloj despertador no abre físicamente el circuito de la alarma. Cuando usted lo presiona, el cambio momentáneo 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 botón "start" de su microondas no conduce en realidad la corriente que alimenta el magnetrón, la luz interior y el ventilador. Sin embargo, al presionarlo se genera una entrada que hace que el microcontrolador del horno active los relés que encienden esas cargas. A menudo pensamos en los interruptores como dispositivos mecánicos que establecen e interrumpen la continuidad entre dos puntos de un circuito. En el caso de los pulsadores manuales y los interruptores mecánicos, este es exactamente el caso. Los símbolos se dibujan para representar el estado “normal” del interruptor. Estado normal se refiere al estado de reposo o Normalmente Abiertos (N.O. es la sigla en inglés). Al presionar el botón, 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.

Teleformación proyecto Medusa.

2

Mientras que el concepto de interruptor es muy simple, parece no haber límites para los diseños físicos que encontrará en aplicaciones de control industrial. Los interruptores también pueden ser diseñados como Normalmente Cerrados (N.C.); se encuentran cerrados en reposo y sus contactos se abren cuando son activados. Como técnico, programador, o diseñador de sistemas, debe estar al tanto de la posición Normal (de reposo) de un interruptor. Los dispositivos lógicos se fabrican con diferentes procesos que hacen que operen a distintas tensiones. La hoja de datos del fabricante muestra los valores críticos para cada dispositivo. Los Valores Máximos Absolutos son las tensiones y corrientes que no deben excederse para evitar dañar o destruir al chip. Los pines de E/S del Microcontrolador no deberían exceder de 0,6 V o Vdd+0,6 V (5,6V) con respecto a Vss. La transición entre el estado lógico alto y bajo está especificada en las características de corriente continua (DC) de la hoja de datos. Una tensión de 0,2 Vdd (1 V en el Microcontrolador ) 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 transición. Depende de la temperatura y la tensión de la fuente la ubicación del punto donde ocurrirá la transición. Normalmente se producirá a 1.4 Volts. Los pines de entrada del Microcontrolador no detectan “cambios de resistencia” entre los contactos del interruptor. Estas entradas esperan niveles de tensión apropiados que representen un estado lógico alto o bajo. Idealmente, estas tensiones deberían ser +5 Volts para un nivel lógico alto (1) y 0 Volts para un nivel lógico 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 tensión de +5 Volts del Microcontrolador. Esto forma un circuito divisor de tensión en el cual el estado resistivo del interruptor se compara con el valor resistivo del resistor de referencia. Es casi imposible presionar y liberar el botón suficientemente rápido como para realizar la acción solamente una vez. El bucle del programa se ejecuta demasiado rápido. Si usted es lento, el Teleformación proyecto Medusa.

3

programa tiene la oportunidad de ejecutarse varias veces mientras el interruptor se encuentra presionado. Agregue a esto varios milisegundos de rebote y podría obtener muchos pulsos cada vez que presione el botón. Es muy común que las entradas digitales provengan de las salidas de otros circuitos electrónicos. Estas entradas pueden provenir de una variedad de fuentes electrónicas, incluyendo detectores de proximidad capacitivos o inductivos, optoacopladores o interruptores ópticos, circuitos de acondicionamiento de señal de sensores, compuertas lógicas y salidas de otros microcontroladores, microprocesadores, o sistemas de control lógico programables. (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 Microcontrolador. Si los dos sistemas están alimentados desde los mismos 5 Volts, perfecto. Sino al menos las masas deben ser comunes (conectadas juntas). (b) Los dispositivos de baja tensión (+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 Microcontrolador. Alimente el chip con su fuente de baja tensión y una las masas.

(c) Las señales digitales de alta tensión 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) Un a configuración de amplificador operacional trabajando como comparador con referencia puede establecer una salida Alta / baja de acuerdo a si la entrada analógica está por Teleformación proyecto Medusa.

4

encima o debajo de una tensión de referencia. El LM358 es un amplificador operacional cuya salida puede ir desde masa hasta cerca de Vdd con una alimentación simple de +5 Volt.

(e) Se puede usar un optoacoplador para conectar diferentes niveles de tensión al Microcontrolador. 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 alimentación del fototransistor del Microcontrolador. Este aislamiento provee protección efectiva de cada circuito, en el caso que el otro falle.

III. Salidas

Diodo LED. (Diodo emisor de luz) Light Emitting Diode. (Diodo Emisor de Luz). Es un tipo especial de diodo semiconductor, que cuando es conectado a un circuito electrónico con un resistor limitador de corriente, emite luz visible. Los LED usan muy poca energía y son ideales para ser conectados a dispositivos tales como el microcontrolador Los LEDs son formas especiales de lámparas que por varias razones

son

fácilmente

conectadas

a

dispositivos

microcontroladores. Hay dos cosas muy importantes de recordar cuando conecta LEDs al microcontrolador. La primera es que siempre se debe asegurar que haya una resistencia conectada, como muestra la figura. El resistor debe tener un valor de 470-680 ohms, ¼ wats. para tensiones de 5-6V , para otras tensiones se puede calcular el valor aproximado de la resistencia (en Kilo ohmios) por la fórmula R≤

V KΩ donde V es la tensión que se va aplicar al diodo LED. 10

Segundo, esté seguro que la polaridad del LED es la correcta. Hay una zona lisa en un costado del LED que debería ser conectada con el negativo del circuito. Si la polaridad es invertida, el LED no trabaja. El lado liso también suele tener la pata más corta del LED.

Transistores

Teleformación proyecto Medusa.

5

La capacidad de tensión y/o corriente de salida puede ser incrementada agregando un transistor de salida (Driver). Tanto el transistor bipolar como el transistor MOSFET pueden ser efectivos cuando las cargas necesitan más potencia de la que las salidas del microcontrolador pueden entregar. Entender cada uno de estos circuitos será importante en futuras aplicaciones industriales.

Consideremos el diseño del transistor bipolar para alimentar una lámpara de 12W. Los valores del circuito deberían calcularse de forma que una salida en estado alto (+5V) del Microcontrolador lleve a Q1 a la saturación, sin tomar más corriente que la que el Microcontrolador puede entregar. Los valores de los componentes de los circuitos surgen de los requerimientos de corriente y tensión de la carga. El proceso para determinar los valores mínimos de estos componentes es así: Dado que Q1 actúa independiente del microcontrolador, la tensión de fuente de la carga es de 12V y no está limitada a la fuente de +5 Volts del Microcontrolador. Como se usan fuentes separadas deben unirse las masas. Cuando Q1 se lleva a la saturación, virtualmente toda la tensión de la fuente caerá sobre la carga y la corriente será igual a PotCarga/ VFuente (12 / 12 = 1Amp). La máxima capacidad de corriente de colector de Q1 debe ser mayor que la corriente de la carga. La corriente de base de Q1 para mantener la corriente de colector puede ser calculada dividiendo la corriente de carga por el “beta” de Q1. IB = IC/βQ1. Se debe elegir un transistor que cumpla y preferiblemente exceda estos requerimientos mínimos. Exceder los valores mínimos por un 50 o 100% o más, sería lo mejor. Una vez elegido el transistor, se puede determinar el valor del resistor limitador de base. Este valor debe permitir una Teleformación proyecto Medusa.

6

corriente mayor que la definida por IC/bQ1, aunque menor que el límite de 20 mA del Microcontrolador. La caída de tensión sobre Rlimit es igual a los +5 V de salida del Microcontrolador menos la caída en la juntura PN de Q1 , por lo que el cálculo de la resistencia de base queda definida por la fórmula: R Limit =

5V − 0.7 Ib

Otras características que favorecen la selección del transistor son: que es muy común, barato, y que puede controlar la corriente sin necesitar disipador. Este resistor de 1K-Ohm permite una corriente de base de unos 5 mA, suficiente para lograr la saturación.

El MOSFET se lleva a la saturación aplicando tensión a la compuerta (gate). Los 5 Volts positivos provenientes de la salida

del

microcontrolador

son

suficientes para colocar al MOSFET en el estado “ON”. Cuando el dispositivo está

completamente

saturado,

su

resistencia de estado ON (rson) es normalmente Aplicando

un

menor estado

de

1

bajo

Ohm. en

la

compuerta (0 V) lleva el dispositivo al corte. En este estado prácticamente no hay circulación de corriente y el MOSFET actúa como un interruptor abierto. No obstante situamos en serie una resistencia para proteger el micro en caso de corto circuito en la puerta del MOSFET El MOSFET de potencia es muy fácil de alimentar con un Microcontrolador. Una capa de óxido de metal (MOS) entre la fuente (source) y la compuerta (gate) funciona como un muy buen aislante. La extremadamente alta impedancia de entrada provista por esta capa MOS implica que no se necesita corriente por la compuerta para controlar este dispositivo. Dado que no se necesita corriente para gobernar la compuerta, una simple salida de un Microcontrolador puede controlar múltiples MOSFETs. Con un disipador adecuado, el BS170 puede manejar corrientes de carga de hasta 5 Amps. Estas características hacen que los MOSFET de potencia sean muy fáciles de utilizar en aplicaciones industriales, tales como activación de relés, solenoides y pequeños motores de Teleformación proyecto Medusa.

7

CC. Debería tenerse en cuenta que este tipo de cargas son inductivas. Cuando se desconecta puede

la

producir

carga, una

su

inductancia

tensión

inversa

transitoria que puede dañar el MOSFET. Un diodo D1 en antiparalelo provee protección al transistor cuando controla cargas inductivas como ésta. Este diodo no es necesario para el pequeño motor sin escobillas que usamos en nuestros experimentos Nota: Los MOSFET de potencia, al igual que sus primos CMOS, son susceptibles a daños por descargas de tensión estática y transitorios de tensión inversa. Debe tenerse cuidado cuando se maneja e instala el dispositivo. Tómelo por el encapsulado, evitando tocar sus patitas y verifique que todos los instrumentos estén conectados apropiadamente a masa. Es conveniente mostrar otros sistemas de interfaz que pueden serle de utilidad como diseñador. (a) El optoacoplador puede ser usado como interfaz para diferentes tensiones, aislando eléctricamente la salida del microcontrolador. (b) Puede usarse como interfaz para dispositivos HCMOS o CMOS de la serie 4000. El 74HC4050 puede usarse a bajas tensiones, como interfaz para lógica de +3 Volts. (c) Hay una gran cantidad de integrados de potencia periféricos. El driver 75452 puede absorber una corriente de hasta 300 mA. Su salida de colector abierto permite usarlo con tensiones de hasta 30 Volts. (d) La compuerta 74LS26 (NAND) que pertenece a la familia de compuertas de colector abierto. Con el resistor de pull-up de 10KOhm referenciado a la siguiente etapa del circuito, el Microcontrolador puede ser conectado a circuitos CMOS de mayor tensión.

IV. Control Industrial

El control industrial es uno de los campos donde más se ha desarrollado el uso de microcontroladores pues ha permitido simplificar todo el sistema de automatización reduciendo el costo de material de contactores, cableado, etc con la consiguiente reducción del coste final de la instalación. Para ver un ejemplo claro de un proceso podemos exponer el siguiente enunciado.

Teleformación proyecto Medusa.

8

Disponemos de una bomba de calor (Máquina enfriadora o de calefacción) que deseamos automatizar para que realice el siguiente proceso: -

La máquina se pondrá en marcha de forma automática al pulsar sobre un interruptor Pm que se situará en la entrada 0 del microcontrolador.

-

Disponemos de un sensor análogico de temperatura que nos permite un rango de medidas de 0 – 40º C. Este sensor tiene una resolución de 8bits y su tensión de trabajo es de 5V. Este sensor se conecta a la entrada analógica 0 del microcontrolador.

-

Cuando la temperatura sea inferior a los 18ºC se deberá poner en marcha la máquina como calefactor por lo que se activará la salida 1 del micro.

-

Cuando la temperatura sea superior a los 24ºC se deberá poner en marcha la máquina como enfriadora por lo que se activará la salida 0 del micro.

-

Cuando la temperatura esté comprendida entre 18º y 24º la máquina quedará parada.

Empecemos colocando todas las piezas necesarias en nuestro micro. Hemos situado el interruptor Pm en la entrada

cero

y

sensor

el de

temperatura analógico en la patilla correspondiente. Observar que hemos utilizado el micro de 28 pins que dispone de

4

entradas

analógicas. Para proteger las salidas del micro no atacamos la máquina directamente sino a través de un acoplamiento a base de transistor MOSFET que a su vez controla un relé que es el que realmente controla la máquina, una contacto para producir calor y otro para producir frio. Importante: Teleformación proyecto Medusa.

9

Aclaremos el funcionamiento del acoplamiento Sensor temperatura-Microcontrolador: Nuestro sensor tiene un rango de 0-40ºC con una resolución de 8bits ( 28 = 255

) y

alimentación de 5V. ¿Qué quiere decir esto? Pues que el sensor es capaz de medir temperaturas comprendidas entre 0 y 40ºC, que se alimenta a 5 V y que la escala 0-40º C la divide en 255 partes de forma tal que para cada temperatura el sensor la traduce en un número de acuerdo a la siguiente relación. 40ºC ________________ 255 1ºC _________________ X, luego X = 255 / 40 = 6.375 partes/ºC X = 6.375 partes/ºC ¿Qué valor se corresponde con 18ºC? Pues X = 18 x 6.375 = 114.75 que como trabajamos con enteros se redondea por 114. ¿Qué valor se corresponde con 24ºC? Pues X = 24 x 6.375 = 53 . Es decir, que cuando el sensor mida una temperatura de 24º C al microcontrolador le llegará el número 153 y cuando mida 18ºC le hará llegar un 114.

Este es el proceso que podemos aplicar a cualquier tipo de sensor analógico recordando que los tres parámetros que necesitamos conocer son: Rango o alcance de la medida, Resolución en nº de bits y tensión de trabajo.

La primera parte de la solución del ejercicio no necesita mucha explicación pues únicamente debemos detectar si hemos activado el interruptor de marcha.

Mientras no se pulse el interruptor de entrada, las salidas se desactivan y se realiza este bucle hasta que se active el interruptor.

A continuación damos la orden de leer el sensor para ver que temperatura está leyendo. Para incluir este comando picamos en la barra de herramientas de microcontroladores en el icono

, arrastramos a la zona de trabajo, lo situamos a continuación en el diagrama de

flujo, picamos sobre él y la ventana que se abre es la siguiente:

Teleformación proyecto Medusa.

10

Vemos que con este comando el valor numérico que el sensor nos traduce de acuerdo a lo comentado anteriormente se almacena en una variable con la que podemos hacer cualquier operación.

Ahora que ya tenemos el valor del sensor convertido en un variable que el microcontrolador puede entender, podemos continuar con el proceso que nos pedía que si la temperatura era inferior a 18ºC (114) pusiera en marcha la calefacción (Salida 1) y si el valor es superior a 24ºC (153) pusiera en marcha el aire acondicionado (Salida 0). Haremos estas dos preguntas y decidiremos en cada caso la acción correspondiente

Teleformación proyecto Medusa.

11

Si la temperatura es inferior a 18ºC (x153) y en caso afirmativo activamos la salida 0 para dar frio y desactivamos la salida 1 (en nuestro caso hemos resuelto esto con los comando switch on y switch off en vez de utilizar outputs para que reforzar el uso de ambos comandos). En caso de que no sea mayor de 24 pues entonces es que está entre 18º y 24º por lo que paramos la máquina (Outputs = 0).

Teleformación proyecto Medusa.

12

Al final del esquema hemos colocado el monitor de BASIC para que podamos relacionar las órdenes en BASIC. -

Symbol Pm= pin0 Las entradas del microcontrolador internamente se denominan Pin0, Pin1,…. Pin7 por eso el símbolo Pm lo asocia al Pin0 pues lo hemos conectado en la entrada 0

-

Symbol x = b0 . Asocia nuestra variable al registro interno b0

-

Symbol Output0 = 0 Las salidas del microcontrolador internamente se denominan 0, 1,…. 7 por eso el símbolo Output0 lo asocia a la salida 0

-

Let pins = %00000010 , la orden “let pins” es la equivalente a outputs.

-

Switch on se traduce por la orden “high” (activar )

-

Switch off se traduce por la orden “low” (activar )

-

ReadADC 0, x , es decir , Leer una variable analógica convertirla en decimal y almacenarla en una variable, esto se corresponde con el comando X = Sensor

Teleformación proyecto Medusa.

13