Estación Ambiental utilizando Microchip PIC16C74

Descripción detalla de la creación de una estación ambiental, utilizando como base un microcontrolador microchip PIC16C74.

lunes, abril 17, 2006

7.2.1 Circuito utilizado en la implementación del sensor de Intensidad Solar

EL circuito se fundamenta en la propiedad de las Fotorresistencias al disminuir su valor nominal al aumentar la luz incidente sobre ella. Con un simple divisor de tensión podemos determinar la luz incidente. El circuito básico para este dispositivo se muestra en la fig. 9:




El circuito es un divisor de tensión que con una gran Intensidad de luz incidente sobre la Fotoresistencias en la salida al PIC dejará pasar máximo 2.5 voltios y con una menor Intensidad de luz (a medida que disminuye la luz aumenta la resistencia) el voltaje empieza a decaer hasta ser casi cero.
El circuito implementado se muestra en la fig. 10:


Figura 10

7.2 Sensor de Intensidad Solar

La energía radiante tiene tres características: matiz o tono, saturación y brillo. Las dos primeras son las que hacen referencia al aspecto cualitativo de la radiación. El tema al que se hará referencia es al brillo o a la Intensidad de luz.

La fotometría es la parte de la física que trata de la medida de la luz en su aspecto cuantitativo considerando dos factores, uno objetivo (el espectro visible) y otro subjetivo (el ojo).

La visión fotópica para iluminaciones normales o fuertes y la escotópica para iluminaciones bajas. Este hecho es debido que a iguales cantidades de flujo luminoso de distintas longitudes de onda, no se produce la misma sensación de brillo, así por ejemplo, para igual flujo radiante se obtiene una mayor sensación de brillo para el amarillo - verde que en los extremos del rojo - violeta.

Todos los cálculos realizados en televisión en color, se hacen sobre la curva de sensibilidad fotópica, a la cual se le denomina curva patrón de luminosidad. Con la ayuda de esta curva, cualquier flujo radiante puede ser evaluado en términos de su capacidad para producir brillo.

Un manantial luminoso es cualquier cuerpo que radia energía, ahora bien, no toda la energía que radia es considerada energía luminosa, que es aquella que percibimos con el sentido de la vista, sino que parte de esa energía se transforma en calor y radiaciones no visibles, así que parte de esa energía emitida por un manantial no es energía visible. Las radiaciones luminosas provienen pues del calentamiento de un determinado material a consecuencia de la cual irradia energía.
La energía luminosa radiada por una fuente en una unidad de tiempo recibe el nombre de Flujo luminoso. Su unidad es el lumen.

¿Qué es un Fotómetro?

Un fotómetro es un instrumento que nos permite medir la Intensidad de luz que hay en una escena. En la actualidad la mayoría de los fotómetros utilizan una célula fotoeléctrica, la variación de la corriente eléctrica a la que da lugar la incidencia de la luz sobre la fotocélula es recogida por un microamperímetro, en cuya escala podemos ver las lecturas pertinentes.

Células Fotoeléctricas:

Son dispositivos electrónicos cuyo principio es basado en el efecto fotoeléctrico. En su forma más simple, se compone de un ánodo y un cátodo recubierto de un material fotosensible. La luz que incide sobre el cátodo libera electrones que son atraídos hacia el ánodo, de carga positiva, originando un flujo de corriente proporcional a la intensidad de la radiación. Las células fotoeléctricas pueden estar vacías o llenas de un gas inerte a baja presión para obtener una mayor sensibilidad. Una variante de la célula fotoeléctrica, el fototubo multiplicador o fotomultiplicador, consiste en una serie de placas metálicas dispuestas de forma que la emisión fotoeléctrica se amplifica mediante una emisión eléctrica secundaria. El fototubo multiplicador es capaz de detectar radiaciones extremadamente débiles, por lo que es una herramienta esencial en el área de la investigación nuclear.

Las células fotoeléctricas se emplean en paneles solares, alarmas antirrobo, semáforos de tráfico, puertas automáticas, detección de calor, alumbrado público, cámaras fotográficas, grabación de sonido, televisión, contadores de centelleos entre muchas otras más.

Existen dos tipos diferentes de células fotoeléctricas:
Fotogeneradoras.- En este tipo de célula cuando incide luz sobre ella genera una pequeña corriente eléctrica, que es proporcional a la luz incidente. Los fotómetros que utilizan esta célula no llevan fuentes de voltaje.
Fotorresistentes.- Cuando la luz incide sobre este tipo de célula, varía su resistencia eléctrica, proporcionalmente a la luz incidente. Es necesaria la utilización de una fuente de voltaje que genere la corriente eléctrica necesaria.

Tipos de Celdas

Selenio (Se): Es una célula fotogeneradora. Tiene respuesta lenta y sensibilidad escasa, por lo que la célula tiene que ser bastante grande. Si el nivel de luz es bajo su exactitud es limitada. Tiene buena respuesta al verde - amarillo y a las radiaciones azules. El ángulo de medición es bastante grande.

Sulfuro de Cadmio (Cds): Es Fotorresistente. Es muy sensible y de respuesta más rápida que la de selenio. Su sensibilidad espectral es uniforme excepto hacia el azul en que es más deficiente. Puede sufrir deslumbramientos que impiden que la célula reaccione en un par de minutos. Su ángulo de medición puede ser muy pequeño.

Silicio(Si): Es parecida a la de cadmio pero tiene una sensibilidad y velocidad de respuesta mayor y una mejor respuesta en los azules. No tiene el inconveniente del deslumbramiento.

Galio–Arsénico–Fósforo: Es del tipo Fotorresistente, es mucho más sensible que las anteriores, consume poca energía y no sufre deslumbramiento.

En el presente proyecto se utilizará Fotoresistencias del tipo Silicio, que son muy comerciales en nuestro medio.

7.1.2 Circuito utilizado en la implementación del sensor de temperatura

El funcionamiento del sensor de temperatura se basa en la corriente que circula a través del circuito básico sugerido para el AD590, el cual es el representado en la figura 4. A medida que aumenta la temperatura aumenta la corriente (que según las especificaciones técnicas aumenta 1uA por grado kelvin) y esta corriente combinada con una resistencia de 1K produce una salida en milivoltios proporcional a la corriente cumpliendo la ley de ohm
V=I x R (2)
El dispositivo para medir temperaturas opera en el rango de –22° C a 100° C.

Un circuito adicional proporciona una adecuación a la entrada del PIC para que este sea capaz de detectar cambios sustanciales y dé medidas correctas.

Esta parte adicional consta de 2 fases:
Fase A:
Esta fase se encarga de hacer una resta para lograr dar en milivoltios la temperatura actual. Debido a que se pueden medir temperaturas bajo cero (hasta –22 grados centígrados), un cero representa una temperatura de –22 grados centígrados, un 22 representa cero grados centígrados, un 42 representa veinte grados centígrados, y así sucesivamente, cumpliendo la siguiente formula:
T=A-22 (3)
donde A representa la salida de la señal en la fase A, en la cual el circuito es el siguiente:




Los cálculos para los valores y la formula que rige los operacionales para implementar la resta son:

Vsalida = Rf/Ri (Ventrada 2 – Ventrada 1) (4)


Figura 6


FASE B:
Esta fase pretende aumentar la escala de la salida para que el PIC pueda darse cuenta de los cambios ocurridos; para tal efecto se programa el voltaje de referencia para la conversión A/D (análogo-digital) a 3 Voltios, para obtener un mayor rango de precisión en las conversiones.
Entonces, se tiene que un cambio representativo esta dado por la división del voltaje de referencia y el número máximo de tomas (3 / 255) = 0.01176470588235, (!); lo que quiere decir que cada aumento o disminución de 12 milivoltios, aproximadamente, representa un cambio en la conversión A/D. Con lo anterior se puede aumentar la salida de la fase A de tal forma que el PIC sea más sensible a las variaciones, por ejemplo: a 20 grados centígrados se tendría una lectura de 42 milivoltios, que seria necesario aumentarla a (42*12) 504 milivoltios para que el conversor A/D de cómo resultado 20.
El circuito para esta fase se basa en un seguidor de voltaje cuyo circuito y formula básica es la siguiente:





El circuito diseñado es el siguiente (se dan los respectivos valores de las resistencias):




La idea de programación en el PIC comienza seleccionando el puerto o PIN análogo, en este caso el RA0, se da el inicio para la conversión activando el bit GO de ADCON0, se verifica hasta que este bit sea cero(0), lo que quiere decir que haya ocurrido una conversión y luego se traslada el valor del registro ADRES a una variable representativa del proceso, en este caso TEMPERA.

7.1.1 EL AD 590

Es un circuito integrado transductor de temperatura que produce una corriente de salida proporcional a la temperatura absoluta del ambiente. Este dispositivo actúa como un regulador de alta impedancia de corriente constante, dejando pasar 1A/°K (un micro amperio por grado Kelvin) en fuentes de voltaje comprendidas entre los 4 y 30 voltios positivos. Para más información vea apéndice AD590
Es usado frecuentemente como sensor de temperatura en aplicaciones que toman muestras de temperaturas comprendidas entre los –55° centigramos y los 150° centígrados debido a su alta linealidad entre estos márgenes.

Características Técnicas según HARRIS Semiconductor.
Corriente lineal de salida 1 A °K
Amplio Rango de Temperatura entre –55 ° C. Y 150 ° C.
Amplio rango de Voltaje entre 4 y 30 Voltios positivos
Bajo costo
Fácil calibración


7. Sensores Componentes del Dispositivo

7.1 Sensor de Temperatura

De una manera cualitativa, se puede describir la temperatura de un objeto como aquella determinada por la sensación de tibio o frío al estar en contacto con él.

Esto es fácil de demostrar cuando varios objetos se colocan juntos (los físicos lo definen como contacto térmico), los objetos calientes se enfrían mientras que los más fríos se calientan hasta un punto en el cual no ocurren más cambios, y para nuestros sentidos, todos tienen el mismo grado de calor. Cuando el cambio térmico ha parado, se dice que los objetos (los físicos los definen más rigurosamente como sistemas) están en equilibrio térmico. Entonces podemos definir la temperatura de un sistema diciendo que la temperatura es aquella cantidad que es igual para todos los sistemas cuando ellos están en equilibrio térmico.


Lo expresado es llamado Ley Cero de la Termodinámica y puede ser escrita más formalmente como:

Si tres o más sistemas están en contacto térmico entre sí y todos en equilibrio al mismo tiempo, entonces cualquier par que se tome separadamente están en equilibrio entre sí.

Ahora uno de los tres sistemas puede ser calibrado como un instrumento para medir temperatura, definiendo así un termómetro. Cuando se calibra un termómetro, este se pone en contacto con el sistema hasta que alcanza el equilibrio térmico, obteniendo así una medida cuantitativa de la temperatura del sistema. Por ejemplo, un termómetro clínico de mercurio es colocado bajo la lengua del paciente y se espera que alcance el equilibrio térmico con su boca. Se puede ver como el líquido plateado (mercurio) se expande dentro del tubo de vidrio y se puede leer en la escala del termómetro para saber la temperatura del paciente.

¿Qué es un Termómetro?

Un termómetro es un instrumento que mide la temperatura de un sistema en forma cuantitativa. Una forma fácil de hacerlo es encontrando una sustancia que tenga una propiedad que cambie de manera regular con la temperatura. La manera más "regular" es de forma lineal:

t(x)=ax+b (1)

Donde t es la temperatura y cambia con la propiedad x de la sustancia. Las constantes a y b dependen de la sustancia usada y deben ser evaluadas en dos puntos de temperatura específicos sobre la escala, por ejemplo, 32° para el punto congelamiento del agua y 212° para el punto de ebullición en la ya muy conocida escala de grados Fahrenheit.

Por ejemplo, el mercurio es líquido dentro del rango de temperaturas de -38,9°C a 356,7 °C (en la escala Celsius). Como un líquido, el mercurio se expande cuando se calienta, esta expansión es lineal y puede ser calibrada con exactitud.

En la creación de instrumentos medidores de temperatura se debe tener muy en cuenta el tipo de material utilizado o los dispositivos de sensado, ya que estos determinan la complejidad del ajuste de la medida. Existen muchos materiales y dispositivos que cambian su estado al detectar cambios de temperatura entre ellos tenemos el mercurio, aleaciones, que se dilatan; otros como los sensores de temperatura electrónicos alteran el paso de corriente o voltaje en un simple circuito. Fabricantes de estos dispositivos electrónicos están la NATIONAL con sus LM354, el LM355, y otros. La Intersil, hoy Harris, con su AD590, la DALLAS con su DS1820 que permite una comunicación I2C. De los disponibles en el mercado se escogió al AD590 por su alta linealidad, su bajo costo y su fácil manejo.

jueves, abril 13, 2006

6.1.3.2 DESCRIPCIÓN DEL PROCESO VERIFICAR COMUNICACION


6.1.3.3 DESCRIPCIÓN DEL PROCESO TOMAR DATOS


6.1.3.1 DESCRIPCIÓN DEL PROCESO REVISAR TECLADO


6.1.3.1

6.1.3 DIAGRAMA DE FLUJO DEL PROGRAMA EN EL PIC


6.1.3

jueves, marzo 03, 2005

6.1.2 Diagrama Esquemático

miércoles, marzo 02, 2005

6.1 DESCRIPCIÓN DEL PROYECTO EN EL PIC

6.1.1 Comportamiento del Circuito
El circuito debe ser capaz de medir cambios de temperatura ambiente, velocidad del viento, dirección del viento, intensidad solar y el nivel de precipitación atmosférica. Para lograr esto se cuenta con los siguientes sensores: AD590 (Temperatura), Fotorresistencias (Intensidad Solar y Dirección del Viento), Emisor – Receptor de Infrarrojos (Velocidad del Viento) y Emisor – Receptor de ultrasonido (Precipitación atmosférica); y los cuales podemos clasificar de acuerdo al tipo de conexión en el PIC de la siguiente manera:

  • Análogos : AD590, Fotoresistencias.
  • Digitales : Emisor – Receptor de Infrarrojos, Emisor – Receptor de Ultrasonido.

lunes, febrero 28, 2005

6. METODOLOGÍA Y BITACORA DEL PROYECTO EN EL PIC

“La práctica es la que determina el dominio sobre una materia”, es el caso de los proyectos que tienen que ver con los microcontroladores ya que la información teórica es difícil de asimilar “de un tirón”. Se hace necesario escudriñar en errores y en suposiciones que no funcionan. En este discurrir se avanza en ese conocimiento y funcionan las cosas de acuerdo a lo que se quiere.
En este proyecto se construye un circuito propio hecho a la medida de nuestra estación meteorológica para medir variables ambientales y en el cual se debe tener en cuenta:

  • Plantear el comportamiento del circuito
  • Diseñar el diagrama esquemático
  • Elaborar un diagrama de flujo
  • Codificar el diagrama de flujo con las herramientas desarrolladas para este fin
  • Utilizar el simulador para hacer seguimiento y verificar que las cosas funcionan bien
  • Trasladar el código fuente al microprocesador
  • Hacer las pruebas necesarias
  • Armar por separado cada sensor verificarlo, calibrarlo, y ensayarlo para luego acoplarlo al sistema maestro
  • Realizar prototipos para hacer pruebas y verificar que todo el conjunto funcione correctamente
  • Construir el circuito impreso y ensamblar las componentes definitivamente.

sábado, febrero 26, 2005

5. DESCRIPCIÓN DEL PROYECTO

5.1 METODOLOGÍA Y BITACORA DEL PROYECTO
En los proyectos que constan de hardware y de software es importante asignar funciones, distribuir cargas y dividir el trabajo de los integrantes, después de analizar el problema se decidió trabajar de la siguiente manera:
El software: Debería permitir configurar el dispositivo (PIC) tanto en la hora del reloj real como en el de toma de datos de las variables ambientales expuestas anteriormente, debe tener un control que permita que el dispositivo tome muestras y las envié cada determinado tiempo al PC, realizar un reset lógico al dispositivo, leer los últimos datos, enviar los datos almacenados en la memoria EEPROM y que permita también borrarla, además de generar archivos planos con la información obtenida de la memoria para realizar los reportes con la ayuda de hojas de calculo.
La aplicación debe ser capaz de guardar y recuperar los cambios hechos por el usuario en el sistema en cualquier momento, como es el cambio de escala de la velocidad del viento o la escala de la temperatura.
El programa podrá ser abierto y cerrado en cualquier momento sin que el dispositivo se altere, entre en conflicto o se bloquee.
El usuario en cualquier momento podrá ver la configuración del dispositivo y modificarla.
El Hardware: O PIC estará en capacidad de tomar muestras en los intervalos de tiempo establecidos por el usuario de las variables ambientales antes expuestas, de establecer comunicación con la aplicación para enviar y recibir caracteres de control ya sea para enviar información, recibir configuración, borrar memoria, tomar datos y enviar, enviar los últimos datos.
El hardware tiene un sistema de reloj interno que permite ajustar un reloj calendario a la hora actual y la cual se mostrará en hora militar.

jueves, febrero 24, 2005

4.6 Descripción de los componentes de un PIC

OSCI. La entrada de reloj en el pin OSCI se divide internamente por cuatro para generar cuatro señales de reloj no superpuestas, necesarias para controlar las operaciones de búsqueda, de codificación y ejecución de las instrucciones del programa.
Memoria de programas. Se puede direccionar hasta 4k palabras de 14 bits de la memoria ROM, dispuesta en dos bancos, que almacenan los programas. Para programas más largos se deben utilizar dispositivos con mayor memoria; esta se puede direccionar seleccionando 1 de 2 paginas de 2k palabras cada una. La secuencia de las instrucciones está controlada por el registro contador de programa (PC). El cual se incrementa, al ejecutar una instrucción, para ejecutar el programa grabado en la ROM. Las palabras de la memoria de programa pasan al registro de instrucciones, el cual las comunica al decodificador de instrucciones para que, a su vez, inicie la ejecución de la instrucción. El programa puede soportar direccionamientos en modo directo, indirecto y relativo. El contador de programa (PC) está conectado también a dos registros de stack o pila que permiten soportar ocho niveles consecutivos de llamada a una subrutina.
Bus de datos. Este bus de 8 bits es una vía central que intercomunica los siguientes elementos: el conjunto de registros de la memoria RAM. Los puertos de entrada / salida (I/O), el registro de estado (STATUS), la unidad lógica - aritmética (ALU), el registro de selección FSR (que permite direccionamiento indirecto), los registros de preescalamiento de los temporizadores (TMR0, TMR1, TMR2) y el registro de trabajo (W).
Organización de los registros. Los registros especiales y las posiciones de memoria, están organizadas en un conjunto o arreglo general. Hay 192 registros de RAM direccionables directamente en un sistema de dos bancos de memoria con 96 bytes cada uno. El conjunto de registros está dividido en dos grupos funcionales: los registros operacionales y los de propósito general. Los primeros incluyen el registro contador de reloj (RTCC), el contador de programa (PC), el registro de estados (STATUS), los de entrada/salida (I/O) y el registro de selección (FSR). El direccionamiento directo está soportado mediante instrucciones especiales que cargan los datos de la memoria RAM y en el registro de trabajo W o viceversa. Los datos pueden direccionarse de manera indirecta por medio del registro selector FSR (no hay necesidad de definir el banco de memoria, el FSR “alcanza “ ambos bancos) y están disponibles para el usuario.
Unidad aritmética y lógica (ALU). La Unidad aritmética y lógica de 8 bits contiene un solo registro temporal de trabajo y las funciones lógicas necesaria para ejecutar operaciones aritméticas, operaciones de álgebra de Boole entre el registro de trabajo y cualquier otro registro.
Registros de entrada y salida. Los puertos de entrada y salida, Puerto A, B, C, D, E pueden escribirse y leerse bajo el control del programa, como cualquier otro registro. Sin embargo las instrucciones de lectura, leen siempre el estado del pin de entrada/salida sin importar como esté definido el pin, situación a tener en cuenta cuando se operan en forma bidireccional. Los registros de control de I/O (A, B, C, D, E) se actualizan con valor de 1 en el respectivo registro TRIS para definir un pin como salida ó 0 para definirlo como entrada.
Opciones de oscilador. Hay cuatro tipos de oscilador en la familia de microcontroladores PIC: el XT, el HS o de alta velocidad y potencia, el LP o de baja velocidad y potencia y el RC o de oscilador excitado por una red de resistencias y condensadores, para aplicaciones que no requieren una alta precisión en tiempos. Los XT, HS y LP requieren un cristal cerámico para establecer la oscilación.
Conjunto de instrucciones. Son todas las órdenes o comandos que el PIC puede interpretar y ejecutar; éstas se clasifican en orientadas al byte, orientadas al bit y operaciones literales y de control. Cada instrucción es una palabra de 14 bits dividida en un código de operación, el cual específica la orden a ejecutar y uno o más operandos sobre los que se actúa.
Para más información vea el apéndice A sobre el PIC16C74.

4.5 Diagrama de Bloques