Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Control Con Microprocesadores PDF
Control Con Microprocesadores PDF
OBJETIVOS: Disear sistemas de control basados en microcontroladores Construir sistemas de control basados en microcontroladores Integrar el conocimiento de Hardware y Software para resolver problemas prcticos
CONTENIDO: Sistemas basados en microcontroladores Microcontrolador en modo extendido Perifricos de entrada/salida Circuitos de barrido de displays, displays LCD Tcnica de barrido y decodificacin de teclados Interfaz de comunicacin serial RS-232, 485 Comunicacin Serial Sincrnica, USART, SPI, IIC Tratamiento de seales anlogas y digitales Tcnicas de conversin A/D y D/A Comparador Analgico Tcnicas de Control digital Modulacin senoidal de ancho de pulso Controlador PID Circuitos auxiliares, (fuentes, protecciones, tipos de resets, alimentacin y respaldo de memoria)
Nelson Sotomayor
1.
INTRODUCCIN
Los microcontroladores constituyen la parte inteligente de gran cantidad de sistemas tales como: Control de procesos automticos, de mquinas, herramientas, aparatos de maniobra, de posicin, de velocidad, etc. Sistemas de alarmas de todo tipo: Indicadores y control de nivel, regulacin de caudal, apertura automtica de dispositivos, etc. Controladores de perifricos como impresoras, mdem, teclados, unidades de disco, etc. Equipos de sonido y televisores, donde son tratadas las seales de audio y video. Sistemas industriales para contar elementos, generacin de bases de tiempo, etc.
Como se puede apreciar hay un nmero infinito de aplicaciones en las que se puede incluir a un microcontrolador. Prcticamente lo que se pueda imaginar se puede implementar con un mayor o menor grado de dificultad.
Pero hay que tomar en cuenta que los microcontroladores son dispositivos muy sensibles por lo que al utilizarlos se debera colocar a la par circuitos auxiliares que mejoren su desempeo y lo hagan menos sensible a perturbaciones externas.
Los microcontroladores para comunicarse con el mundo exterior tienen puertos de entrada/salida a los cuales se puede conectar distintos perifricos, en algunos casos directamente (PICS; ATMEGA) y en otros usando elementos adicionales como latchs o buffers que permiten hacer a esos perifricos
LATCH (74LS373)
BUFFER (74LS244)
MUX (74LS138)
Nelson Sotomayor
En microcontroladores que tienen bus de datos y bus de direcciones es necesario el uso de latch, buffer y decodificador de direcciones para colocar perifricos al mismo.
En microcontroladores que tienen salidas de corriente alta como los PICS o los ATMEGA los perifricos pueden ser conectados directamente
Si se necesita manejar con un microcontrolador un nmero de perifricos mayor al nmero de entradas y salidas que tiene el microcontrolador se tiene dos caminos a seguir; Cambiar de microcontrolador por uno que tenga un nmero mayor de entradas/salidas o utilizar el mismo esquema que se utiliza en microcontroladores que tienen bus de datos y bus de direcciones.
Nelson Sotomayor
2. DISPLAYS DE 7 SEGMENTOS Si lo que se desea es mostrar nmeros una alternativa es utilizar displays de siete segmentos, donde cada dgito estar formado por el encendido adecuado de los leds que forman cada segmento o un cristal lquido en el caso de LCDs.
Esta constituido por siete leds, puede ser nodo comn o ctodo comn, algunos displays un punto a la derecha y/o a la izquierda o dos puntos.
Para usar el display de nodo comn se debe conectar este terminal al voltaje positivo garantizando la corriente adecuada y controlando el encendido de los segmentos por un estado lgico bajo en los terminales del ctodo de cada diodo. En los displays de ctodo comn, se pone este terminal a la referencia o tierra y se controla con niveles lgicos altos a los terminales del nodo de cada segmento, asegurndose siempre un flujo de corriente adecuado. Para limitar la corriente es necesario conectar una resistencia. Como interfaz para manejar estos displays, existen los decodificadores de BCD a siete segmentos, con los cuales se utiliza menos lneas de control para el encendido del display, por lo que con un bus de 8 bits se podra manejar dos display al mismo tiempo. Si se desea utilizar ms de dos displays, se puede utilizar la tcnica de barrido secuencial o usar chips especializados que manejan y controlan mltiples dgitos.
En este tipo de displays solo se puede mostrar nmeros y ciertos caracteres por lo que no son muy tiles si se quiere mostrar mucha informacin. Otra alternativa para mostrar nmeros es utilizar LCDs de siete segmentos que son fciles de manejar al igual que la de los leds. Tienen la ventaja de consumir menos corriente, pero la desventaja de tener un menor ngulo de visibilidad por lo que necesitan de luz externa o adicional para poder ver la informacin, lo que no sucede con los leds. Por lo tanto la seleccin depender de la aplicacin particular y las condiciones de trabajo.
Nelson Sotomayor
3.1 Barrido Secuencial Se coloca todos los segmentos en paralelo, y una resistencia en serie con cada segmento comn Se habilita un ctodo a la vez a una velocidad lo suficientemente alta como para que el ojo humano no distinga el barrido, pero no tan alta como para que el display no responda. Normalmente se trabaja entre 300Hz y 2KHz.
Irms = I
6
Nelson Sotomayor
Teniendo como dato la Irms, se calcula la corriente pico y con ese valor utilizando la ley de ohm se calcula el valor de la resistencia que se coloca en serie con cada segmento.
3.2 DRIVER ICM7211, ICM7212 Son dispositivos de 40 pines que permiten manejar 4 displays de 7 segmentos, con entrada BCD. Las salidas tienen retencin. Tiene dos presentaciones para ingreso de datos, una que utiliza un multiplexor BCD, y otro con interfaz para microcontrolador.
7211 maneja displays tipo LCD 7212 maneja displays tipo LED
En estos dispositivos un oscilador interno enciende uno a uno los dgitos en secuencia, de manera que cada display estar encendido 1/4 del tiempo. El chip tiene la ventaja de garantizar la corriente necesaria a cada display.
Para escribir un valor en el display se debe escoger el dgito con el data address, escribir un dato en ID0-ID7 y dar un pulso en bajo en WRITE, este pulso debe ser de por lo menos 200 nanosegundos de ancho y el dato debe mantenerse por lo menos 100 nseg despus de que WRITE regreso a un nivel alto. Una accin de escritura con el microcontrolador cumple satisfactoriamente con este requisito [1].
Nelson Sotomayor
Este tipo de display tiene ciertas ventajas al compararlos con los de 7 segmentos, ya que en ellos se puede presentar mayor informacin ya que en estos displays, se pueden ver caracteres numricos, alfabticos y otros
Cada segmento del LCD tiene componentes orgnicos que actan de acuerdo con el voltaje aplicado. Los de imagen positiva, los ms comunes, opacan el segmento cuando tiene un voltaje aplicado y son transparentes cuando no existe el voltaje y los de imagen negativa, se opacan cuando no tiene aplicado el voltaje y son transparentes cuando existe voltaje en sus terminales
Nelson Sotomayor
Es un display LCD que puede mostrar caracteres alfanumricos formados con una matriz de puntos. Se los conoce por el nmero de caracteres por fila y el nmero de filas. (ejemplo: LCD 16x2). Este tipo de displays puede trabajar con un bus de datos de 8 bits o de 4 bits
Nelson Sotomayor
Pin Smbolo Nivel 1 2 3 4 5 VSS VDD VEE RS R/W ------------H/L H/L GND
Funcin
Fuente de polarizacin Contraste Seal seleccin de registro Seleccin lectura / escritura. Escritura R: Lectura, W:
6 7 8 9 10 11 12 13 14 15 16
E DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 nodo Ctodo
H/L H/L H/L H/L H/L H/L H/L H/L H/L ---------
Seal de habilitacin Lnea bus de datos a 4 bits Lnea bus de datos a 4 bits Lnea bus de datos a 4 bits Lnea bus de datos a 4 bits Lnea bus de datos Lnea bus de datos Lnea bus de datos Lnea bus de datos Terminal nodo del led Terminal ctodo del led / Sin conexin para operacin / Sin conexin para operacin / Sin conexin para operacin / Sin conexin para operacin
Para ajustar el contraste se utiliza el potencimetro P de 10 K , por recomendacin del fabricante [3] (Figura 4.3).
10
Nelson Sotomayor
Para que la luz de fondo se encienda debe circular una corriente de aproximadamente 33mA a travs del led, por lo que se recomienda usar una resistencia R de 150 .
Para poder utilizar el LCD, este debe ser inicializado. Normalmente este proceso se debe hacer como parte de la inicializacin del microcontrolador que se utilice.
Tabla 4.2 Secuencia de inicializacin, tomado de [2]
11
Nelson Sotomayor
5. TCNICAS DE BARRIDO Y DECODIFICACIN DE TECLADOS El teclado ms bsico puede ser implementado usando pulsadores, la ventaja de este tipo de teclado radica en su fcil implementacin, pero se necesita un pin del microcontrolador por cada tecla, por lo que se lo debera usar nicamente en sistemas microproceados que necesiten un nmero reducido de teclas
Los pulsadores inevitablemente generan rebotes cuando son utilizados, la cantidad de estos depende del tamao del mismo. Por esta razn junto a un pulsador se debe utilizar un circuito eliminador de rebotes.
12
Nelson Sotomayor
Para contrarrestar los efectos indeseables de los rebotes se tiene 2 tcnicas, la eliminacin por hardware y la eliminacin por software. Para eliminar rebotes por hardware se aade al circuito un retardo de tiempo usando una red RC, o una red RC y un inversor con histresis como se aprecia en la Figura 5.3.
Figura 5.3
Para eliminar rebotes por software se aade retardos justo en el momento de detectar el primer flanco de bajada. Al terminar el retardo se lee el estado del pin.
Si se desea un nmero mayor de teclas usando pulsadores es necesario utilizar una tcnica de decodificacin en hardware.
Para
usar
un
nmero
mayor
de
pulsadores
con
pocas
lneas
del
microcontrolador se utiliza el circuito de la Figura 5.4, como se puede apreciar al presionar una tecla se tiene en la entrada del microcontrolador (pines A, B, C) un nmero correspondiente a la posicin de la tecla presionada. El nmero de teclas que se puede colocar viene dado por la siguiente expresin:
13
Nelson Sotomayor
Nmero de teclas = 2 n 1
Donde: n = nmero de lneas del microcontrolador
5.3 DECODIFICADOR DE TECLADO (74C922) Existe en el mercado decodificadores que sirven de interfaz entre el teclado y el microprocesador, un ejemplo es el CI 74C922 para 16 teclas y 74C923 para 20 teclas.
Estos integrados tienen su propio circuito de bsqueda a la frecuencia determinada por capacitores externos o seal de reloj que se le coloque, tiene resistencias de pull-up internas y permite identificar la tecla presionada. En este caso cada tecla no necesita una lnea dedicada y se puede detectar 16 teclas con 4 lneas
14
Nelson Sotomayor
Transforma automticamente el cdigo de la tecla presionada en un nmero de 4 bits (0000 - 1111). El chip tiene 4 entradas para X1.X4 y 4 salidas Y1..Y4 que se conectan a las X1..X4 y Y1..Y4 del teclado matricial y 4 salidas de datos A,B,C,D que identifican la tecla presionada.
Tiene su propio circuito de deteccin, incluyendo resistencias de pull up para las filas. Pero necesita aadir un capacitor externo a la entrada OSC para la frecuencia de bsqueda o utilizar un reloj externo con este propsito.
Se sabe que existe una tecla presionada por que la salida DA (data available) se pone en alto cuando esto ocurre y puede ser utilizada como seal de interrupcin. Se debe poner adems un capacitor para eliminacin de rebotes en KBM, dimensionado de acuerdo al periodo de rebote, por ejemplo un capacitor de 1 microfaradio, ignora los rebotes de hasta 10 milisegundos
15
Nelson Sotomayor
6. COMUNICACIN SERIAL Para comunicarse entre dispositivos se utiliza comunicacin sincrnica o asincrnica.
En la transmisin sincrnica los datos se envan uno a continuacin del otro desde la lnea TXD a la RXD. Tanto el transmisor como el receptor son sincronizados con una lnea adicional que transmite los pulsos de reloj.
En la transmisin asincrnica no se emplea una seal de reloj, pero para que los dispositivos se entiendan se encapsulan los datos con un bit de inicio y uno o dos bits de parada, y se tiene un acuerdo en la velocidad de transferencia de los datos.
Al transmitir los datos estos deben estar referidos a tierra del TX y RX. Y se los puede enviar de manera diferencial o balanceada, en cuyo caso las tierras del TX y RX no estn unidas y se enva dos lneas de datos (de manera diferencial)
16
Nelson Sotomayor
o de manera desbalanceada cuando las tierras de ambos se unen y se coloca una sola lnea de datos.
Sea cual sea el medio que se utilice balanceado o desbalanceado y el tipo de comunicacin sincrnico o asincrnico, la comunicacin general puede ser realizada de 3 maneras:
Simplex: Cuando se realiza una comunicacin unidireccional Duplex (Full duplex): Comunicacin bidereccional al mismo tiempo Half Duplex: Comunicacin bidireccional pero no al mismo tiempo. (Maestro esclavo).
Este estndar fue diseado en los 60s para comunicar un equipo Terminal de datos o DTE (Data Terminal Equipment, PC) y un equipo de comunicacin de datos o DCE (Data Communication Equipment, modem).
Antes de realizar cualquier comunicacin por el puerto RS232 se debe fijar el protocolo a seguir, es decir especificar nmero de bits de inicio, paridad, nmero de bits de datos, bits de parada, adems de la velocidad.
El estndar RS232 trabaja con voltajes de +/- 15V con lgica invertida, es decir un 1L se representa con un voltaje comprendido entre -3V y -15V, mientras que un OL esta comprendido entre 3V y 15V. Los voltajes ms utilizados son +/- 12V.
El estado de reposo de los drivers es 1L es decir -12V. El voltaje umbral es +/- 5V.
17
Nelson Sotomayor
Dependiendo de la velocidad de comunicacin se puede transmitir hasta una distancia de 50 pies (15 metros).
Tabla 6.1 Especificaciones elctricas, tomado de [5]
Parmetros Driver Output Voltage Open Circuit Driver Output Voltage Loaded Driver Output Resistance Power Off Slew Rate Maximum Load Capacitance Receiver Input Resistance Receiver Input Threshold: Output = Mark Output = Space -3 3 3 3k < RL < 7 k -2V<V<2V 4 5 Condiciones Min Max Units 25 15 300 30 2500 7 V/S pF k V V V
18
Nelson Sotomayor
Tabla 6.2
Distribucin de pines
TxD.- Lnea por la que se envan los datos RxD.- Lnea por la que se recibe los datos DTR.- Lnea por la que el PC indica al modem que esta activo para comunicarse DSR.- Lnea por la que el modem indica al PC que esta activo para establecer comunicacin RTS.- con esta lnea el PC indica al modem que esta preparado para transmitir datos CTS.- tras un RTS, el modem pone en 1L esta lnea tan pronto este preparado para recibir datos SG.- seal de tierra
19
Nelson Sotomayor
El puerto serial de los microcontroladores trabaja con niveles TTL con lgica normal es decir 0L = 0V y 1L = 5V, por lo que si se quiere comunicarlo con un PC es necesario utilizar circuitos que cambien los niveles TTL a 232 y viceversa. Para ello se utilizan interfaces con tierras unidas o aislados.
20
Nelson Sotomayor
6.1.2 INTERFAZ RS485 Utiliza una lnea balanceada con una impedancia caracterstica de 120 ohms, con lo que se mejora la velocidad y las distancias mximas de comunicacin.
En este interfaz se puede colocar varios transmisores y receptores (hasta 32), en una configuracin maestro esclavo (half duplex). Trabaja con +/- 5V con lgica invertida: 0L = +5V; 1L = -5V
21
Nelson Sotomayor
22
Nelson Sotomayor
23
Nelson Sotomayor
6.3.1 USART El puerto Serial universal sincrnico y asincrnico para recepcin y transmisin, es el dispositivo ms flexible para comunicacin serial. Sus caractersticas son:
Operacin full duplex Operacin sincrnica o asincrnica Operacin como maestro o esclavo en operacin sincrnica Baud rate de alta resolucin
6.3.2 SPI (Serial periferical interface) Este interfaz permite comunicar a alta velocidad de manera sincrnica al microcontrolador con otros dispositivos compatibles. Sus caractersticas son:
Comunicacin a 3 hilos, lnea de Tx, Rx y seal de reloj Comunicacin full duplex Permite el trabajo como maestro o como esclavo
Es este tipo de comunicacin serial, el dispositivo que enva datos en el bus se define como un trasmisor y el dispositivo que recibe datos es el receptor. El dispositivo que controla el bus se llama maestro, los dispositivos que son controlados por un maestro son referidos como esclavos. El bus puede ser controlado por un dispositivo maestro el cual genera la seal de reloj, controla el acceso al bus y genera las condiciones de inicio y parada. Una tpica configuracin usando el protocolo I2C se muestra en la Figura 6.9.
24
Nelson Sotomayor
La transferencia de datos es posible solo cuando el bus no este ocupado. Durante la transferencia, la lnea de datos debe permanecer estable mientras la lnea de reloj este en alto, los cambios en la lnea de datos mientras que la lnea de reloj este en alto son interpretados como condicin de inicio o condicin de parada como se puede apreciar en la Figura 6.10.
Utiliza dos lneas SDA de datos y SCL de reloj Cada dispositivo conectado al bus tiene un cdigo de direccin seleccionable o fijo. El bus permite la conexin de varios maestros ya que cuenta con detector de colisiones Los datos y direcciones se transmiten en palabras de 8 bits Los bits de datos sobre el bus se transfieren a un velocidad de 100Kbps
25
Nelson Sotomayor
La capacidad mxima en el bus es de 400 pF, por lo que el nmero de dispositivos conectados a el no debe superarla
6.3.3.2 Bus no ocupado Se da esta condicin cuando las lneas de datos y reloj permanecen en alto.
6.3.3.3 Inicio de la transferencia de datos La condicin de inicio est definida cuando existe un cambio en el estado de la lnea de datos, de alto a bajo, mientras el reloj esta en alto.
6.3.3.4 Parada de la transferencia de datos La condicin de parada es definida cuando hay un cambio en el estado de la lnea de datos, de bajo a alto, mientras que la lnea de reloj esta en alto.
6.3.3.5 Dato vlido El estado de la lnea de datos representa un dato vlido cuando, despus de la condicin de inicio, la lnea de datos permanece estable durante el periodo en alto de la seal de reloj. El dato debe ser cambiado durante el periodo en bajo de la seal de reloj. Hay un pulso de reloj por bit o dato.
26
Nelson Sotomayor
Cada dato transferido es inicializado con la condicin de inicio y finalizado con la condicin de parada. El nmero de bytes de datos transferidos entre las condiciones de inicio y parada no es limitado y est determinado por el dispositivo maestro.
Dentro de las especificaciones del bus de 2 cables, son definidos, un modo regular (100 KHz) y un modo rpido (400 KHz),
6.3.3.6 Acknowledge Despus de la recepcin de cada byte, el dispositivo que recibe debe generar un acknowledge. El dispositivo maestro debe generar un pulso extra de reloj asociado con este bit.
6.3.3.7 Formato
6.3.3.8 Especificaciones elctricas El bus IIC permite comunicarse a dispositivos fabricados con diferentes tecnologas y diferentes voltajes de alimentacin ya que tiene salidas a colector abierto. Para conexiones con niveles de entrada fijos y alimentacin de 5V se definen los siguientes valores:
27
Nelson Sotomayor
V1L = 1.5 V (mximo voltaje de entrada a nivel 0L) V1H = 3 V (mnimo voltaje de entrada a nivel 1L) Para dispositivos que trabajan con un rango variado de voltajes de alimentacin se definen los siguientes valores:
V1L = 0.3Vdd (mximo voltaje de entrada a nivel 0L) V1H = 0.7Vdd (mnimo voltaje de entrada a nivel 1L) La corriente de entrada mxima a 0L es de -10uA mientras que para 1L es de 10uA. Los dispositivos con niveles fijos de entrada pueden alimentarse desde diferentes fuentes de alimentacin. Las resistencias de pull-up deben conectarse a una fuente de 5V +/- 10%
Figura 6.13 Dispositivos con diferentes niveles de voltaje conectados al bus IIC
Para adquirir seales del medio e ingresarlas a un sistema microprocesado se debe utilizar sensores. Un sensor es un elemento que responde variando sus condiciones fsicas ante ciertas condiciones, otros trminos utilizados son detector o transductor. Un sensor puede responder de muchas maneras, pero para ser adaptados a un sistema microprocesado, necesita tener una respuesta de tipo elctrica, como voltaje, corriente o resistencia, entonces es fcil tener un circuito electrnico de 28
Nelson Sotomayor
acoplamiento. Los sensores son utilizados para monitorear y detectar medidas como temperatura, luz, velocidad, humedad, etc.
Que propiedad se desea medir (temperatura) Que rango de entradas se necesita medir (20 -120 grados C) Que resolucin es necesaria (0.5 grados C) Que rapidez de respuesta se necesita (no es crtico para este caso) Que tipo de salida se necesita (digital, analgica, voltaje, corriente, etc.) Que tipo de fuente se dispone para el sensor (12V o 5V).
En algunas ocasiones se necesita detectar la presencia o ausencia de cierta propiedad por lo que es suficiente con un sensor que acte como switch. Se deber hacer el circuito de acondicionamiento de acuerdo con el sensor utilizado garantizando que los niveles de voltaje definan 0L o 1L de forma clara, para ingresarlos al microcontrolador, aunque lo ms recomendable es utilizar un latch para retener la informacin mientras el microcontrolador lee la informacin.
Los sensores on-off tienen solo dos estados (1L o 0L) esto facilita su acoplamiento a un circuito digital. Sin embargo muchas veces se necesita llevar registros continuos de la seal, donde se tendr por ejemplo variaciones de voltaje de 0-10 voltios. En este caso la seal analgica debe ser digitalizada, con este propsito se utiliza conversores anlogo / digitales (A/D).
Rango del voltaje de entrada (0V-5V, 0V-10V, +/-5V) Resolucin (7 bits, 8 bits, 9 bits, etc.)
29
Nelson Sotomayor
Ejemplo: Si en un rango de 0 a 35 grados se desea tener una medida mnima de 0.1 grados, se puede obtener el nmero de valores diferentes: #T = 35/0.1 = 350, por lo que la resolucin del conversor debera ser de 9 bits (512 valores)
Figura 7.1 Tcnica de conversin A/D rampa simple, diagrama circuital y de tiempo
Cerrar el S, de esta manera el Vc = 0V Abrir el S y arrancar un timer interno del uC, es decir arrancar la conversin, con lo cual Vc sube de manera lineal. Esperar a que el Vin y el Vc se igualen, esperando que la salida del comparador cambie de estado, en cuyo caso se debe detener el timer obtenindose Tc.
30
Nelson Sotomayor
ic = C
Vc = I
t C
Vc (t =Tc ) = Vin =
I Tc C
Figura 7.2 Tcnica de conversin A/D rampa doble, diagrama circuital y de tiempo
Si S1 ON:
I=
Vin CV CV , de donde: = = R Tc t
R * C * V = Vin * Tc
Si S2 ON:
I=
Vin = Vref
Td Tc
31
Nelson Sotomayor
Debido a que el voltaje en los puertos no siempre es estable es necesario intercalar comparadores y luego acondicionar la seal para conseguir el voltaje adecuado a la salida. Por ejemplo si se desea que el voltaje mximo a la salida sea 5V en un puerto de 8 bits se tendra: 1L= 5/255 = 20mV El voltaje de salida viene dado por la siguiente expresin:
En los puertos se debe colocar las resistencias adecuadas para que den la ganancia mostrada en la expresin anterior.
Tabla 7.1 Valor de resistencias Puerto Px.7 Px.6 Px.5 Px.4 Px.3 Px.2 Px.1 Px.0 Resistencia R/128 R/64 R/32 R/16 R/8 R/4 R/2 R
32
Nelson Sotomayor
7.4.2 PWM En esta tcnica se debe generar una seal PWM por uno de los pines del uC y luego dicha seal filtrarla para obtener el valor DC de la misma. Se utiliza normalmente un filtro pasa bajos, que puede ser activo o pasivo.
Si se esta trabajando con microcontroladores que tengan internamente los conversores A/D y D/A es recomendable utilizar esos dispositivos, si no se dispone de conversor D/A se recomienda utilizar la tcnica de conversin D/A tipo PWM
7.5 COMPARADOR ANALGICO, ATMEGA16 [9] El comparador analgico compara los voltajes que ingresan por el pin positivo AIN0 y el pin negativo AIN1. Cuando el voltaje de la entrada positiva es mayor que el voltaje de la entrada negativa, la salida del comparador analgico, ACO se pone 1L. La salida del comparador analgico puede disparar al Timer1 en el modo de captura, o activar la bandera propia del comparador.
33
Nelson Sotomayor
Los registros que se utilizan con el comparador analgico son los siguientes:
De este registro el bit de inters es el 3, llamado Analog Comparator Multiplexer Enable (ACME), cuando este bit esta en 1L y el conversor A/D esta apagado (ADEN=0 en ADCSRA), el multiplexer del conversor A/D controla el acceso a la entrada negativa del comparador. Si ACME=0L AIN1 se conecta a la entrada negativa del comparador.
Bit 7 ACD: Analog Comparator Disable, cuando este bit se pone en alto, el comparador analgico se apaga.
Bit 6 ACBG: Analog Comparator Bandgap Select, cuando este bit esta en alto el voltaje de referencia interno se conecta a la entrada positiva, si esta en cero la entrada AIN0 se conecta a la entrada positiva del comparador
34
Nelson Sotomayor
Bit 5 ACO: Analog Comparator Output, la salida del comparador analgico esta sincronizada directamente con este bit. La sincronizacin introduce un retardo de 1-2 ciclos de reloj
Bit 4 ACI: Analog Comparator Interrupt Flag, este bit es la bandera del comparador analgico
Bit 3 ACIE: Analog Comparator Interrupt Enable, permite habilitar la interrupcin del comparador analgico
Bit 2 ACIC: Analog Comparator Input Capture Enable, cuando este bit se pone en alto se habilita el disparo del timer1 en modo captura a travs del comparador analgico
Bits 1, 0 ACIS1, ACIS0: Analog Comparator Interrupt Mode Select, estos bits permiten seleccionar la fuente de interrupcin del comparador analgico.
35
Nelson Sotomayor
7.5.3 Voltaje de referencia interno Este voltaje es utilizado por el detector de bajo voltaje y puede ser utilizado como referencia para el comparador analgico o el conversor A/D. El voltaje de 2.56V es generado internamente por el Bandgap referente.
8. TCNICAS DE CONTROL 8.1 CONTROL ON-OFF Es la regulacin ms simple y econmica, se utiliza en aplicaciones que puedan admitir una oscilacin continua entre dos lmites, pero sera necesario que la evolucin del proceso sea lento. Muchos reguladores incorporan esta regulacin bsica y en ocasiones se combinan con otro tipo de controladores utilizndolos cuando el error es grande y cambiando de forma automtica a otro controlador cuando el error se aproxima a cero.
36
Nelson Sotomayor
Para evitar un nmero excesivo de conmutaciones se incluye un laso de histresis. La histresis es como una oposicin a experimentar cualquier cambio, cosa que normalmente sera un efecto perjudicial para ciertas aplicaciones por lo que se debe escoger adecuadamente las aplicaciones en las cuales este controlador funcionaria adecuadamente. Su respuesta es de tipo todo o nada, de forma que se conecta cuando la variable regulada ha descendido hasta un valor por debajo de la variable de consigna y solo se desconecta cuando dicha variable supera el lmite superior de la variable de consigna.
8.2 CONTROL DIFUSO Otro tipo de control que esta ganada terreno en lo ltimos aos es el control por lgica difusa. Se trata de un control que se basa en la experiencia adquirida para actuar como la hara una persona, es decir en base a reglas empricas. Es un control que se puede utilizar en procesos no lineales que son difciles de modelar. El problema que tiene radica en que el programador no tenga la suficiente experiencia, es decir no conozca a la perfeccin como evoluciona la variable a 37
Nelson Sotomayor
regular. Para este caso se puede programar el control con lgica difusa con la ayuda de una red neuronal, que es un sistema complejo de aprendizaje, es decir, la red neuronal aprendera del sistema lo suficiente como para informar al control difuso cuales son las reglas a usar en cada momento para obtener un buen control.
8.3 SISTEMAS SCADA Son la solucin ms utilizada para resolver problemas de supervisin de una planta, incluyendo las intervenciones que sean necesarias en caso de incidencias que deban ser resueltas por los usuarios. Los programas de supervisin, control y adquisicin de datos (SCADA), estn sustituyendo a los paneles antiguos de supervisin por las ventajas que tienen con respecto a ellos como son el uso de imgenes en la pantalla de un ordenador que puede disear el propio usuario y es de relativamente fcil reconfiguracin. Estos sistemas adems pueden realizar otras funciones como:
Gestin de seales de alarma y ejecucin de acciones consecuentes, que pueden ir desde un simple aviso hasta la modificacin del proceso o su parada automtica.
Control de la planta por manipulacin de los parmetros que utilizan los controladores digitales subordinados que normalmente se encuentran en una red de comunicacin.
Recopilar informacin histrica del proceso Presentar pantallas de ayuda a los usuarios Funciones de seguridad
8.4 SISTEMAS DE CONTROL DISTRIBUIDO (SDC) Son un conjunto de controladores y un computador central enlazados por un canal de comunicacin muy rpido. Estos sistemas de control utilizan un
controlador para cada uno de los lazos de regulacin y han sustituido un basto sistema de comunicaciones por un nico canal muy rpido. Las ventajas de este tipo de sistema son:
38
Nelson Sotomayor
Desarrollo de sistemas a base de mdulos (en hardware y software) que facilitan los cambios, el aislamiento y localizacin de averas. Gran cantidad de controladores seleccionables por mens Redundancia de equipos Gran capacidad de comunicaciones, gracias a la constante desarrollo de este campo Fcil mantenimiento
8. 5 CONTROLADOR Proporcional, integral, derivativo (PID) Es el algoritmo de control ms utilizado a pesar de que existen muchos mtodos que pueden dar un control de mayor calidad en ciertas situaciones donde el PID no responde la perfeccin. En la mayora de los casos el PID da buenos resultados y tal vez es por esta razn que es muy utilizado a pesar de existir otros reguladores tericamente mejores.
Sea cual sea la tcnica de control, el error de regulacin es la base a partir de la cual acta el PID, por lo que mientras ms precisa sea la medida mejor se puede controlar la variable en cuestin. Por esta razn es muy importante, utilizar los sensores adecuados, la forma de transmitir los datos y tomar en cuenta las fuentes de interferencia desde la concepcin del diseo.
Un regulador PID toma en cuenta el error, la derivada del error y la integral del error. La accin de control se calcula multiplicando los tres valores por una constante (Kp, Ki y Kd) y sumando los resultados. Las constantes Kp, Ki y Kd definen el comportamiento del sistema.
39
Nelson Sotomayor
La accin proporcional hace que el regulador responda rpidamente cuando el error es grande, pero a pesar de esto esta accin no es suficiente ya que:
Muchas veces la variable aumenta o disminuye si no existe una accin que la mantenga. Cuando la variable se acerca al punto de consigna la accin proporcional disminuye y no vence la tendencia de la misma, haciendo que alcance un reposo antes de lo previsto manteniendo el error constante.
Aunque la accin proporcional disminuye rpidamente el error, no se debe usar esta hasta conseguir un error muy pequeo ya que la variable regulada se acercara muy rpido al punto de consigna por lo que se pasara de ella.
La accin integral responde al error cuando este se anula, gracias al error que existi en le tiempo pasado algo as como una memoria histrica que tenga en cuenta la evolucin del error.
La accin derivativa contrarresta la inercia del proceso, frenndolo cuando evoluciona demasiado rpido y acelerndolo en caso contrario, es decir es la visin del futuro que se anticipa a lo podra ocurrir.
40
Nelson Sotomayor
Frecuentemente, la accin derivativa no es usada. Muchos controladores industriales slo tienen la accin PI y que en otros, la accin derivativa se pone en off. Se puede mostrar que un control PI es adecuado para procesos donde la dinmica del sistema es esencialmente de primer orden (control de nivel de un solo tanque, tanques de mezclado, reactores perfectamente agitados, etc) [11].
Un caso tpico de la accin derivativa, introducida para mejorar la respuesta, es cuando la dinmica del proceso est caracterizada por constantes de tiempo que difieren en magnitud. La accin derivativa puede dar buenos resultados para aumentar la velocidad de respuesta. El control de temperatura es un caso tpico. La accin derivativa es tambin beneficiosa cuando se requiere un control ms fino para un sistema de alto orden. La dinmica de alto orden limitara la cantidad de ganancia proporcional para un buen control. Con la accin derivativa, se mejora el amortiguamiento ya que se puede utilizar una ganancia proporcional ms alta y elevar la velocidad de la respuesta transitoria [11].
U [n ] = U [n 1] + E [n ]
Donde: U E Kp Ki Kd seal de control error = setp - realimentacin constante proporcional constante integral constante derivativa
Si se desea utilizar una versin simplificada del algoritmo de control PID se puede utilizar la siguiente expresin:
41
Nelson Sotomayor
Donde: errori = sumatorio del error errord = error anterior error actual
Con esta expresin hay que tener cuidado ya que la parte integral podra desbordarse por lo que es recomendable utilizarla cuando el error es pequeo, es decir partir de un control PD hasta conseguir disminuir el error y luego activar la accin integral.
42
Nelson Sotomayor
No existe lmite de complejidad del algoritmo, cosa que era comn en los sistemas analgicos Facilidad de ajuste y cambio. Ya que un cambio en control analgico implica en el mejor de los casos un cambio de componentes ya que en ocasiones se necesita cambiar todo el controlador
Exactitud y estabilidad en el clculo ya que no existen muchas fuentes de error. Uso del controlador con otros fines (alarmas, almacenamiento de datos, administracin etc.) Costo vs nmero de lasos. Tendencia al control distribuido o jerrquico
43
Nelson Sotomayor
9. CIRCUITOS AUXILIARES 9.1 FUENTES La fuente que alimenta a un sistema microprocesado debe tener las protecciones adecuadas para evitar que la interferencia pueda afectar al microcontrolador.
El filtro adems de atenuar los efectos indeseables del ruido y la interferencia, al tener capacitares almacena voltaje, el cual da al microcontrolador un tiempo de autonoma adicional despus que se pierde la energa primaria.
Para regular el voltaje se puede utilizar el LM7805, el cual soporta un voltaje de entrada mnimo 7V y mximo 25V. En la Figura 9.3 se observa la distribucin de pines del regulador, donde E es la entrada de la fuente de alimentacin, T tierra y S la salida regulada. El rango de temperatura esta entre 0 C y 125 C , para una corriente de salida de 1A, por lo que es aconsejable colocar un disipador de calor para evitar que este se queme [12]. El ndice de error en la tensin de salida es de +/- 0,25 V,
44
Nelson Sotomayor
por lo que el regulador LM7805 podr tener un voltaje de salida entre 4,75 V y 5,25 V, rango que es aceptable para el funcionamiento de un sistema microprocesado.
9.2 TIPOS DE RESET El reset tiene la funcin de llevar al PC a la posicin 0H de memoria de programa. En algunos microcontroladores existen varios eventos que pueden hacer que el microcontrolador genere un pulso de reset, entre ellas se encuentran:
POR, genera un pulso de reset al alimentar al microcontrolador BOR, genera un pulso de reset si el voltaje de alimentacin es menor al mnimo voltaje recomendado por el fabricante WDT reset, es un contador interno que genera un pulso de reset cuando se desborda, por lo que debe ser constantemente reiniciado PWT, genera un pulso de reset durante un tiempo de aprox. 75ms despus de alimentar al microcontrolador
45
Nelson Sotomayor
Reset manual, genera un pulso de reset cada vez que el usuario del sistema presione el pulsador
En el Atmega16, para determinar la fuente del reset se tiene el registro MCU control and status:
Bit 4 JTRF: JTAG Reset Flag, este bit se pone en alto cuando se genera un reset por el Puerto JTAG, se recupera cuando se genera un POR o escribiendo 0L en el flag Bit 3 WDRF: Watchdog Reset Flag, este bit se pone en alto cuando se genera un reset por WDT, se recupera cuando se genera un POR o escribiendo 0L en el flag Bit 2 BORF: Brown-out Reset Flag, este bit se pone en alto cuando se genera un reset por BOR, se recupera cuando se genera un POR o escribiendo 0L en el flag Bit 1 EXTRF: External Reset Flag, este bit se pone en alto cuando se genera un reset externo, se recupera cuando se genera un POR o escribiendo 0L en el flag Bit 0 PORF: Power-on Reset Flag, este bit se pone en alto cuando se genera un reset por POR, se recupera nicamente escribiendo 0L en el flag
Todo sistema microprocesado debe tener POR y WDT reset, los otros tipos de reset se deben seleccionar de acuerdo a las necesidades de la aplicacin. En microcontroladores que no tienen internamente estos tipos de reset, estos se deben implementar de manera externa.
46
Nelson Sotomayor
9.3 RESPALDO DE ALIMENTACION Para garantizar la autonoma de un sistema microprocesado en algunas aplicaciones es necesario que este tenga un sistema de alimentacin de respaldo, la misma que debera ser conectada cuando la alimentacin primaria se ha perdido. Para que el microcontrolador sepa cuando se perdi la
alimentacin primaria es necesario monitorear la fuente de alimentacin primaria sea esta de alterna o de continua.
Cuando la fuente de alimentacin primaria es de alterna se suele utilizar un circuito monitor de red que esta constituido por un detector de cruce por cero a nivel de hardware y un programa en el microcontrolador que verifica que los
47
Nelson Sotomayor
pulsos del cruce por cero lleguen a intervalos de tiempo preestablecidos en funcin de la red de alimentacin.
Si la fuente primaria es de continua se debe revisar el nivel de voltaje de la misma, lo ms comn es utilizar un comparador de voltaje, que
Si los pulsos del cruce por cero no llegan de acuerdo a lo establecido o el nivel de voltaje de la fuente es menor que un nivel mnimo, el microcontrolador debe realizar la conmutacin a fuente auxiliar y monitorear dicha fuente. Si el nivel de voltaje de la fuente auxiliar baja del nivel mnimo, el microcontrolador debe ejecutar las rutinas necesarias para respaldo de datos en memoria no voltil.
48
Nelson Sotomayor
En la Figura 9.7 se puede ver un circuito de conmutacin de fuente en la que el microcontrolador no interviene, en este caso es til el monitor de red para que el microcontrolador sepa que esta trabajando con batera auxiliar.
En la Figura 9.9 se puede ver el circuito de conmutacin de fuente, donde el microcontrolador es el que realiza la conmutacin en funcin de la informacin obtenida por el monitor de red.
Cuando un sistema microprocesado tiene datos que son importantes para el desarrollo del mismo, estos deberan ser almacenados en un tipo de memoria no voltil en el momento en que se pierde la alimentacin primaria y auxiliar.
Dentro de las memorias no voltiles se tienen: NVRAM, EEPROM y FLASH a las cuales un microcontrolador puede acceder con facilidad. Estas memorias podran estar incluidas en el mismo empaquetado del microcontrolador o ser externas a el. Si estn incluidas se accede a ellas por medio de subrutinas especializadas que proporciona el fabricante o utilizando instrucciones de un lenguaje de alto nivel. Si son externas la mejor alternativa es el uso de
49
Nelson Sotomayor
Four
digit
display
Decoders/drivers,
[2] Densitron, Dot matrix LCD character modules, Septiembre 1998 [3] Optrex Corporation, LCD Module Specification DMC20481NY-LY-ABE, 1999 [4] National Semiconductors, MM54C922 / MM74C922 16-Key Encoder MM54C923 / MM74C923 20-Key Encoder, Julio 1993
[5] Dallas semiconductor, Selecting and Using RS-232, RS-422, and RS-485 Serial Data Standards, Diciembre 2009, http://pdfserv.maximic.com/en/an/AN723.pdf [6] Maxim Integrated Products, Data sheet, +5V-Powered, Multichannel RS-232 Drivers/Receivers MAX220 MAX249, USA 1997 [7] Microchip Technology Inc., AN976, Using the MSSP module to interface I2C Serial EEPROMs with PIC16 Devices, 2005. [8] Dallas Semiconductor, DS1307/DS1308 64 x 8 Serial Real Time Clock, 2001. [9] Atmel corporation, 8-bit Microcontroller with 16K Bytes In-System Programmable Flash, Atmega16, 2007 [10] David Hiriart, Manual Tcnico, Sistema monitor de nubes diurno, Universidad Autnoma de Mxico, Mxico DF [11] Amstegui M, Apuntes de control PID, Universidad Mayor de San Andrs, La Paz Bolivia, Enero 2001 [12] Fairchild Semiconductor, MC78XX/LM78XX/MC78XXA 3-Terminal 1A Positive Voltage Regulator, 2001, www.fairchildsemi.com
50
Nelson Sotomayor