Lectura de la dirección del viento mediante una veleta: Veleta: La veleta se compone de 8 interruptores cada uno conectado a una resistencia diferente. Un imán de aleta puede cerrar dos interruptores a la vez lo que permite hasta 16 posiciones diferentes. Se trata de un simple divisor resistivo que nos da un valor de tensión diferente según la posición de la veleta. Este valor lo medimos con el ADC del microcontrolador para obtener la dirección del viento. En el siguiente figura podemos ver como está configurado el divisor resistivo de la veleta. Tan solo tenemos que añadir una resistencia de valor conocido y la alimentación para obtener los valores de tensión diferentes a la salida según la dirección del viento. Cuando el imán cierra 2 interruptores a la vez la vez el resultado es de dos resistencias en paralelo lo que nos permite tener hasta 16 direcciones diferentes. En la siguiente tabla se muestra un ejemplo de lo que obtendríamos a la salida si alimentamos el sensor con 3.3V y añadimos una resistencia R de 10K. Conexión del sensor al microcontrolador: Para leer la dirección del viento lo primeo que hacemos es configurar la velocidad de muestro, el tiempo de adquisición y el justificado del resultado del ADC del microcontrolador, seguidamente seleccionamos el canal 6 (AN6) del ADC para realizar la lectura. Iniciamos la lectura y esperamos a que finalice. Guardamos el valor y detenemos el ADC. Comprobamos el valor , determinamos la dirección del viento y enviamos los datos. Diagrama FSM : El estado inicial es el modo ‘Idle’, para iniciar la lectura de los datos de dirección del viento hay que pulsar el botón RB0. Para parar la lectura se pulsa de nuevo el botón RB0 y se vuelve al estado inicial ‘Idle’. Esquema Proteus: Para la simulación de la veleta se ha creado un circuito que simula el esquema eléctrico de la veleta que nos indica el fabricante. Se ha creado un divisor de tensión con interruptores y resistencias donde se puede seleccionar la dirección del viento cerrando o abriendo los interruptores. El divisor resistivo lo conectamos a pin analógico AN6 (RF1). Configuración del ADC del microcontrolador: Para capturar el valor de salida de la veleta utilizaremos el canal 6 del ADC. Se trata de un ADC de 12 bits de resolución (4096 niveles) con 24 canales de entrada. Nosotros utilizaremos el canal 6 (AN6) para digitalizar la señal de salida de la veleta. En la siguiente figura se puede ver el diagrama del ADC que integra el microcontrolador PIC18F87K22 Para configurarlo tenemos diferentes registros en los que podemos seleccionar diferentes parámetros de nuestro ADC
ADCON0:
ADCON1:
|
Diseño de una estación metereológica autónoma sin hilos y de bajo consumo > Proyectos > Sensores >