Sei sulla pagina 1di 24

INFRARROJOS

Reflexivo IS471F

Descripcin: Sensor basado en el dispositivo SHARP IS471F inmune a interferencias de luz normal. Este sensor incorpora un modulador/demodulador integrado en su carcasa y a travs de su patilla 4 controla un diodo LED de infrarrojos externo, modulando la seal que este emitir, para ser captada por el IS471F que contiene el receptor. cuando un objeto se sita enfrente del conjunto emisor/receptor parte de la luz emitida es reflejada y demodulada para activar la salida en la patilla 2 que pasar a nivel bajo si la seal captada es suficientemente fuerte. El uso de luz IR modulada tiene por objeto hacer al sensor relativamente inmune a las interferencias causadas por la luz normal de una bombilla o la luz del sol. Funcionamiento: Como puede verse en el esquema, el sensor se alimenta por sus patitas 1 y 3 y estas corresponden a Vcc y Gnd respectivamente, la patita 2 es la salida del detector y la patita 4 es la salida que modula al led emisor externo. Mediante el potencimetro P1 se varia la distancia a la que es detectado el objeto. Contra mas baja sea la resistencia de este potencimetro, mas intensa ser la luz emitida por el diodo de IR y por lo tanto mayor la distancia a la que puede detectar el objeto. El el siguiente esquema vemos el simple circuito necesario para hacer funcionar al sensor.

Usos: Creo que estos se usan para deteccin de obstculos por reflexin y deteccin de oponentes en combates de sumo. (digo creo porque aun no e probado este dispositivo y no se que sensibilidad tiene y si es adecuado para esto)

Ideas y mejoras: En el circuito anterior lo que vemos es un detector de distancia fija ajustable por un potencimetro, pero seria posible hacerlo de varias distancias o incluso un detector gradual de distancias. Para varias distancias se podra conmutar varias resistencias y as calcular la distancia del objeto haciendo pruebas antes, y creando una tabla de equivalencias. Para el detector gradual tambin seria posible controlando la corriente que le llega al diodo emisor mediante un conversor D/A y un circuito de potencia basado el algn transistor, todo esto controlado por un Controlador.
Todava no e probado nada y esto tan solo son ideas pero si alguien lo prueba y quiere compartir sus experiencias, se lo agradeceramos todos.

Reflexivo CNY70

Descripcin: El CNY70 es un pequeo dispositivo con forma de cubo y cuatro patitas que aloja en su interior un diodo emisor de infrarrojos que trabaja a una longitud de onda de 950 nm. y un fototransistor (recetor) estando ambos dispuestos en paralelo y apuntando ambos en la misma direccin, la distancia entre emisor y receptor es de 2.8 mm. y estn separados del frontal del encapsulado por 1 mm. El la siguiente figura vemos la disposicin interna del CNY70 mirando el encapsulado desde arriba, as pues tenemos el diodo emisor de infrarrojos a la izquierda y el fototransistor a la derecha.

Funcionamiento: El fototransistor conducir mas, contra mas luz reflejada del emisor capte por su base. La salida de este dispositivo es analgica y viene determinada por la cantidad de luz reflejada, as pues para tener una salida digital se podra poner un disparador Trigger Schmitt y as obtener la salida digital pero esto tiene un problema, y es que no es ajustable la sensibilidad del dispositivo y los puntos de activacin de histerisis distan algunos milivoltios uno del otro (ver explicacin en el esquema de la LDR ). Para solventar este problema muestro el siguiente circuito basado en un amplificador operacional configurado en modo comparador, en la salida del circuito obtendremos una seal cuadrada lista para su interconexin con la entrada de cualquier Controlador.

La sensibilidad del circuito es ajustable mediante la resistencia variable de 10k (aconsejo poner una resistencia multivuelta). Para comprobar y visualizar la seal de salida es posible montar un diodo led en la salida con su resistencia de polarizacin a masa, si as lo hacemos veremos que cuando el sensor detecta una superficie blanca o reflectante el led se ilumina ya que la salida del LM358 pasa a nivel alto y por lo tanto alimenta al led que tiene su nodo conectado directamente. La salida del LM358 varia de 0V para nivel lgico 0 a unos 3,3V para nivel lgico 1, con lo que puede ser llevada directamente a un disparador trigger schmitt (p.ej. 74LS14) para conformar pulsos de niveles TTL de 0 a 5V si fuese necesario. Usos: Comnmente utilizado en los robots rastreadores (Sniffers) para deteccin de lneas pintadas sobre el suelo, debido principalmente a su baja distancia de deteccin.

Ideas y mejoras: Mas que una idea esto es un descuido que tuve al montar el circuito en una protoboard y asi comprob que quitando la resistencia de polarizacin de 10k que tiene conectada el fototransistor a su emisor hacemos que el circuito se vuelva mucho mas sensible (e inestable tambin jeje). Con un buen ajuste de la resistencia variable e conseguido detectar superficies reflectantes a una distancia de unos 5 cm. tambin al pasar la mano por enfrente del sensor se activaba la salida. Supongo que habr una manera menos inestable de hacer esto as que ya sabis... a cacharrear y haber que sale jejeje

Reflexivo GP2Dxx

Descripcin: El sensor GP2DXX de sharp es un dispositivo de reflexin por infrarrojos con medidor de distancia proporcional al ngulo de recepcin del haz de luz que incide en un sensor lineal integrado, dependiendo del modelo utilizado, la salida puede ser analgica, digital o booleana.

Funcionamiento: El dispositivo emite luz infrarroja por medio de un led emisor de IR, esta luz pasa a travs de una lente que concentra los rayos de luz formando un nico rayo lo mas concentrado posible para as mejorar la directividad del sensor, la luz va recta hacia delante y cuando encuentra un obstculo reflectante rebota y retorna con cierto ngulo de inclinacin dependiendo de la distancia, la luz que retorna es concentrada por otra lente y as todos los rayos de luz inciden en un nico punto del sensor de luz infrarroja que contiene en la parte receptora del dispositivo. Este sensor es un CCD lineal y dependiendo del ngulo de recepcin de la luz incidir esta en un punto u otro del sensor pudiendo de esta manera obtener un valor lineal y proporcional al ngulo de recepcin del haz de luz.

Dependiendo del modelo elegido leeremos de una manera u otra la salida de este con lo cul tendremos que remitirnos al datasheet del modelo elegido para ver su funcionamiento interno. y y y En los modelos analgicos la salida es un voltaje proporcional a la distancia medida. En los modelos digitales la lectura ser de 8 bits serie con reloj externo. En los modelos Booleanos la salida ser de 1 bit y este marcara el paso por la zona de histresis del sensor con lo cual solo tendremos una medicin de una distancia fija.

Datasheets GP2D-02 GP2D-05 GP2D-12 GP2D-15 GP2D-120

Rango de medida 10 a 80 cm. 10 a 80 cm.(adj, micro pot.) 10 a 80 cm adj. a 24cm de fabrica 4 a 30 cm.

Tipo de salida Digital 8 bits Lgica 1 bit Analgica (0-3V) Lgica 1 bit Analgica (0-3V)

Usos: Debido a su gran rango de medida este sensor es adecuado para detectar obstculos reflectantes como paredes, usado en robots de exploradores para los de laberintos entre otros.

Ideas y mejoras: Debido a su gran directividad se puede montar un sensor GPD2 en un servo y as tener un radar de IR cubriendo de esta manera un radio de 180 aprox.

Descripcin de uso del GP2D02: Este sensor proporciona una salida en serie digital con un valor de un byte proporcional al ngulo de recepcin del haz de luz, este valor no es lineal a la distancia medida as que hay que usar un calculo para saber la medida de distancia en centmetros. En el ejemplo mostrado mas abajo se usa otro mtodo, que es simplemente una tabla de conversin de valores conocidos.

En la fotografa siguiente vemos la disposicin de pines en el conector de salida del GP2D02: 1.-GND 2.-Vin 3.-Vcc 4.-Vout

El dispositivo se alimenta poniendo a +5V el pin VCC y GND a 0V(masa). El pin Vout es la salida de datos en serie con lgica positiva y niveles TTL. Vin es la entrada con la que comandaremos el funcionamiento del sensor, hay que tener muy en cuenta una caracterstica de este pin y es que la salida es a drenador abierto y esta prohibido poner esta entrada a una salida TTL o CMOS ya que esto provocara la destruccin de la entrada, solo acepta niveles bajos y por lo tanto para acoplarla a la salida de un microcontrolador es necesario poner un diodo (p.ej.: 1N4148) tal como se muestra a continuacin:

Una vez tenemos conectado el sensor nos queda mandarle hacer una captura y leer el resultado, para conseguir esto hay que seguir unos sencillos pasos:

1. La entrada Vin en reposo a de ser nivel lgico alto con lo que el


diodo bloqueara este estado y solo cuando se ponga un nivel lgico bajo ser cuando el sensor reciba la orden, sabido esto, indicamos al sensor que inicie una captura poniendo a nivel lgico bajo el pin Vin y mantendremos el estado bajo un tiempo de 70mS, transcurridos los cuales volveremos a poner Vin a nivel lgico alto. Ahora el sensor ya tiene el dato listo para ser transmitido y como el bus de salida es serie tenemos que sincronizar para saber cuando salen los bits, el sensor lo consigue poniendo cada bit en Vout por cada flanco de bajada de la seal Vin.

2. Espera de 0,2mS o menos para iniciar el primer flanco de bajada. 3. Poner Vin a nivel lgico bajo con lo cual iniciamos el primer flanco
de bajada de la seal y el sensor nos responde poniendo el bit de mayor peso "MSB" en Vout. 4. Leer el bit de Vout y almacenarlo debidamente para completar el byte correspondiente al dato de salida. 5. Poner Vin a nivel lgico alto. 6. Repetir 7 veces ms, los pasos de 3 a 5 teniendo en cuenta que hay que tardar un mnimo de 1mS para leer los 8 bits con lo que si lo hacemos muy rpido el sensor no responder debidamente. 7. Una vez ledos los 8 bits tenemos que esperar un mnimo de 1,5mS o mas para poder ordenar al sensor otra captura de distancia.

Se puede acelerar la medida comprobando cuando pasa a nivel alto la seal Vout mientras se mantiene a nivel bajo Vin en los 70mS de inicio de medicin aunque recomiendo esperar los 70mS.

Medidor de distancias con PIC16F876 y LCD 2x16:

Nota: Como puede verse en el esquema no esta puesto el circuito oscilador de 4 MHz necesario para que funcione el montaje, no olvidarse de ponerlo! (cristal de 4MHz y condensadores de 27pF)

Programa en ensamblador para medidor Gp2d02:

GP2D02.asm

Descargar

El programa usa una tabla de conversin calibrada para usar con una cartulina blanca como objeto distante para la medicin y muestra en el LCD la distancia en centmetros continuamente, para otros objetos de diferente color se puede modificar la tabla fcilmente.

MECANICOS

Bumper

Descripcin: El bumper es un conmutador de 2 posiciones con muelle de retorno a la posicin de reposo y con una palanca de accionamiento mas o menos larga segn el modelo elegido. Funcionamiento: En estado de reposo la patita comn (C) y la de reposo (R) estn en contacto permanente hasta que la presin aplicada a la palanca del bumper hace saltar la pequea pletina acerada interior y entonces el contacto pasa de la posicin de reposo a la de activo (A), se puede escuchar cuando el bumper cambia de estado, porque se oye un pequeo clic, esto sucede casi al final del recorrido de la palanca. Usos: Se usan para deteccin de obstculos por contacto directo. No son adecuados para robots de alta velocidad ya que cuando detectan el obstculo ya estn encima y no da tiempo a frenar el robot. Ideas y mejoras: Pocas mejoras puede tener un dispositivo tan simple pero una buena idea seria utilizar un multiplexor para poner mas bumpers de control en nuestro robot y usar el mnimo de lneas de control.

MAGNETICOS

ULTRASONIDOS

Bsico

Descripcin: Los ultrasonidos son vibraciones del aire de la misma naturaleza que el sonido audible pero de una frecuencia mas elevada que parte de 20 000 Hz hasta 5.108 Hz. no audibles estos por el odo humano. Se alcanzan longitudes de onda que se aproximan a la luz visible. Funcionamiento: Para producirlos se utilizan las propiedades piezoelctricas del cuarzo. Usos: Se utilizan en la obtencin de emulsiones fotogrficas de grano muy fino, en sondeos acsticos (deteccin de fisuras, mediciones, etc.. ), como bactericidas y como limpiadores de superficies entre otros. mas informacin en cuanto pruebe a fondo...

Luz

LDR

Descripcin: La LDR (Light Dependent Resistor) o resistencia dependiente de la luz, como su propio nombre indica es una resistencia que varia su valor en funcin de la luz que incide sobre su superficie. Contra mas sea la intensidad de luz que incida en la superficie de la LDR menor ser su resistencia y contra menos luz incida mayor ser la resistencia. La forma externa puede variar de la mostrada en esta foto ya que este modelo en concreto no es muy comn pero la funcin es la misma. Funcionamiento: Para hacernos un medidor de luz ambiental o una fotoclula que encienda un determinado proceso en ausencia o presencia de luz podremos hacerlo de dos maneras, usando un amplificador operacional para detectar y ajustar la sensibilidad y punto en que se dispara la salida como en el caso del CNY70 mostrado mas arriba o bien hacerlo como se muestra en el siguiente circuito, que es en base a un disparador trigger schmitt TTL que conformara una seal totalmente compatible TTL para ser aplicada a un microcontrolador o puerta lgica compatible.

El circuito consta de un divisor de tensin formado por la LDR, una resistencia y un disparador trigger schmitt inversor modelo 74LS14. Como la LDR varia en funcin de la luz, la seal de salida del divisor tambin lo har y cuando pase el umbral de disparo del trigger schmitt este cambiara el estado de su salida segn corresponda. Los umbrales de disparo para el 74LS14 son de 0,9 y 1,7 voltios, esto quiere decir que cuando la seal en la entrada del disparador supere los 1,7 voltios se tomara como un 1 lgico en la entrada y la salida al ser inversa tomara el nivel lgico bajo o 0 voltios, si el voltaje de entrada baja por debajo de 0,9 voltios se tomara como un 0 lgico en la entrada con lo que la salida tomara un nivel lgico 1. El problema que se comentaba en la explicacin del CNY70 radica en la distancia en voltios entre el umbral de disparo alto y bajo, que es de 0,8 voltios entonces imaginemos que si la luz recibida en el sensor va incrementando hasta llegar a los 1,7 voltios y rebosarlos este ser el punto de activacin pero no se desactivara al volver a pasar por este punto, ya que la salida del circuito no se desactivara hasta que no se baje por debajo del umbral de 0,9 voltios, esto hay que tenerlo muy en cuenta ya que para algunos casos donde los niveles a detectar sean muy distantes como por ejemplo detectar niveles de todo o nada o luz y oscuridad puede dar igual pero si lo que se quiere es activar algn circuito en un determinado nivel de luz y desactivarlo justo cuando ese nivel ya no exista, entonces el circuito ya no es valido y ser mejor usar el circuito basado en amplificador operacional en modo comparador de tensiones. Nota: El circuito integrado 74LS14 dispone en su interior de 6 puertas inversoras trigger schmitt, as que hay que tener especial cuidado en no dejar ninguna entrada no usada al aire, esto es sin conexin alguna ya que la puerta empezara a oscilar y podra causar la destruccin de dicha puerta, para que esto no suceda hay que conectar todas las entradas a un nivel lgico estable, normalmente a GND. las salidas se dejaran como es lgico al aire ya que tendrn el nivel lgico inverso que en su entrada. Usos: Las LDR se usan para detectar niveles de luz ambiente o seguimiento de luces o linternas, as pues podemos crear un seguidor de luz con varias LDR dispuestas alrededor del robot y hacer que este siga una luz directa que le enfoque, tambin pueden usarse para encender los focos o luces de balizamiento del robot en ausencia de luz. Ideas y mejoras: Una mejora es sustituir la resistencia fija del divisor de tensin por una variable de valor adecuado, para poder ajustar el umbral de disparo.

Temperatura

LM35

Descripcin: El LM35 es un sensor de temperatura con una precisin calibrada de 1C y un rango que abarca desde -55 a +150C. El sensor se presenta en diferentes encapsulados pero el mas comn es el to-92 de igual forma que un tpico transistor con 3 patas, dos de ellas para alimentarlo y la tercera nos entrega un valor de tensin proporcional a la temperatura medida por el dispositivo. Con el LM35 sobre la mesa las patillas hacia nosotros y las letras del encapsulado hacia arriba tenemos que de izquierda a derecha los pines son: VCC - Vout - GND. La salida es lineal y equivale a 10mV/C por lo tanto: y y y +1500mV = 150C +250mV = 25C -550mV = -55C

Funcionamiento: Para hacernos un termmetro lo nico que necesitamos es un voltmetro bien calibrado y en la escala correcta para que nos muestre el voltaje equivalente a temperatura. El LM35 funciona en el rango de alimentacin comprendido entre 4 y 30 voltios. Podemos conectarlo a un conversor Analgico/Digital y tratar la medida digitalmente, almacenarla o procesarla con un Controlador o similar. Usos: El sensor de temperatura puede usarse para compensar un dispositivo de medida sensible a la temperatura ambiente, refrigerar partes delicadas del robot o bien para loggear temperaturas en el transcurso de un trayecto de exploracin.

Circuito de prueba: El siguiente montaje es un medidor de temperatura de 4 canales usando un PIC16F876 y un LCD para mostrar los datos aunque se puede modificar fcilmente el programa para obtener los datos de temperatura y calcular con ellos lo que fuese necesario. Para una medida real con el conversor del Analgico/Digital se ha dispuesto

un generador de tensin de referencia ajustable modelo LM336 externo al pic, con lo cual la medida de temperatura ser simple y fiable. El rango de medidas que soporta este montaje es solo de temperaturas positivas y abarca desde 0 a +150C. En el LCD se muestran los 4 canales T1=RA0, T2=RA1, T3=RA2, T4=RA5.

Nota: Como puede verse en el esquema no esta puesto el circuito oscilador de 4 MHz necesario para que funcione el montaje, no olvidarse de ponerlo! (cristal de 4MHz y condensadores de 27pF). Tampoco olvidar poner condensadores de desacoplo de 100nF entre las patillas de alimentacin de cada integrado lo mas cerca posible de estas para evitar interferencias por la lnea de alimentacin que son muy criticas usando el conversor A/D del pic.

Ajuste: Hay un nico ajuste que es necesario hacer correctamente y es referente a la tensin de referencia para el conversor A/D, lo haremos quitando el Controlador PIC de su zcalo y midiendo entre el pin nmero 5 correspondiente a "RA3 +Vref" y GND, entonces ajustaremos por medio de la resistencia variable multivuelta (recomiendo multivuelta y no normal por precisin de ajuste) para que en el polmetro nos marque exactamente 2,56 V con lo cual se consigue que con una precisin de conversin A/D de 8 bits cada 10mV represente un incremento en el byte de salida del conversor y por lo tanto lo podamos representar de manera sencilla sin hacer clculos complejos. Programa en ensamblador para termmetro 4 canales:

X-Temp_LM35.asm

Descargar

HUMEDAD

SHT11

Descripcin: El SHT11 de la casa www.sensirion.com es un sensor integrado de humedad calibrado en fbrica con salida digital mediante un bus serie sincrono y protocolo especifico. El dispositivo tambin dispone de un sensor de Temperatura integrado para compensar la medida de humedad dependiendo de la temperatura, en casos extremos. Cuenta tambin en su interior con un calefactor para evitar condensacin en el interior de la cpsula de medida para condiciones de niebla o similar donde existe condensacin. Funcionamiento: El SHT11 se puede alimentar con un rango de tensin continua comprendido entre 2,4 a 5V y es necesario proveer lo mas cerca posible del chip un condensador de desacoplo de 100nF entre GND y VCC. En la imagen puede observarse una pequea PCB (Printed Circuit Board) realizada al efecto para albergar al SHT11 y su condensador de desacoplo, ya que el sensor se presenta en encapsulado para montaje superficial LCC (Lead Chip Carrier) y es difcil de quitar una vez soldado, as que mejor trabajar con pines mas standard como un SIL de 4 pines. Como puede verse en el datasheet del SHT11, el chip dispone de 10 pines aunque solo se usan 4 de ellos y los dems se debern soldar en pads al aire, simplemente para la sujecin del integrado. El pin DATA corresponde a la salida/entrada de datos para comandar y leer el sensor y es un pin triestado por lo que necesita de una resistencia de polarizacin a Vcc (push-up). SCK se utiliza para sincronizar la transmisin y no dispone de frecuencia mnima.

Transmission Start: Para comunicarse con el SHT11 lo primero que hay que hacer es mandar una secuencia de Inicio de Transmisin "Transmission Start". Esta consiste en poner a cero lgico la lnea de datos mientras SCK esta a uno, seguidamente se genera un pulso bajo en SCK mientras la lnea DATA sigue a cero y para finalizar se pone a 1 DATA mientras SCK esta a 1, seguidamente se baja a cero tambin SCK y finaliza la secuencia dejando la lnea de datos y Clock en los estados lgicos por defecto, DATA en estado alto y SCK en estado bajo.

Lo siguiente ser mandar un comando de los siguientes que acepta: Comando Cdigo binario 0000x Reservado 00011 Medida de Temperatura 00101 Medida de Humedad 00111 Leer el registro de estado interno 00110 Escribir el registro de estado interno 0101x-1110x Reservado 11110 Generar un Reset al software interno, reponiendo a los valores por defecto el registro de estado. Hay que esperar 11mS al menos despues de mandar este comando.

El protocolo de transmisin de comandos esta basado en un byte completo o lo que es lo mismo 8 bits, como los comandos son de 5 bits tan solo el resto de bits a la izquierda siempre sern 0. Por lo que se mandaran primero los 3 ceros seguido del comando para completar el byte. El SHT11 indicar una recepcin valida con un pulso de ACK en la lnea de datos que es bidireccional (no lo olvidemos) y lo har en el siguiente pulso de CLK despus de haber completado los 8 bits del comando, por lo tanto acto seguido despus de enviar el comando hay que configurar como entrada el puerto del microcontrolador conectado a DATA del SHT11 y generar una seal de CLOCK para que el sensor nos mande su respuesta ACK y lo har poniendo la lnea a nivel bajo ya que como se dijo mas arriba la lnea de datos esta polarizada a VCC por lo tanto siempre hay un 1 lgico en ella y lo que hace el SHT11 es forzar a 0 lgico con su salida a colector abierto. Secuencia de medida: Suponiendo que ya sabemos mandar un comando y por ejemplo hemos mandando un comando "00000101" correspondiente a "Medida de Humedad", una vez recibido el ACK desde el sensor hay que esperar a que este complete la adquisicin y nos entregue su medida, esto suele tardar unos 55mS para una resolucin de salida de 12bits o bien, unos 11mS para una resolucin de 8 bits. Como este tiempo de adquisicin no es muy exacto y puede variar dependiendo de la alimentacin del sensor, y por lo tanto de su oscilador interno. Para evitar esperas innecesarias el sensor genera un pulso bajo en la lnea de datos y as se sabe que lo siguiente ya sern datos validos, esto se hace comprobando la lnea de datos cada x tiempo hasta que esta pase a nivel bajo. Si es nivel alto aun no a acabado y cuando recibamos un nivel bajo ser la indicacin de adquisicin completada y pasaremos a leer la medida del sensor. Ahora se generan 8 pulsos de reloj en la lnea CLK y se guarda el estado de cada bit que nos retornara el sensor. La trama que retorna el sensor se compone de 3 bytes, el primero corresponde a MSB el segundo a LSB y el tercero es el CRC-8 Checksum para comprobar que el dato a llegado correcto, pero lo podemos ignorar generando NACK despus de la llegada del segundo byte (LSB). Como puede observarse el dato de la medida se compone de 2 bytes aunque como mucho el dato valido ser de 12 bits de

resolucin, pero aunque configuremos el sensor para una resolucin de 8 bits.. siempre leeremos 2 bytes ignorando el MSB en este caso. Despues de cada 8 bits recibidos el microcontrolador a de generar un ACK para que el sensor sepa que ya a recibido los datos. Esto se hace generando un flanco de subida en CLK mientras DATA esta a nivel bajo. Despus de esto se continua con la lectura de otro byte. Para acabar la trama se genera desde el microcontrolador un NACK (NoACK) esto es lo mismo que el ACK pero en vez de mantener la linea DATA a nivel bajo la tendremos que poner a 1 generando mientras esto pasa un flanco de subida en CLK igual que antes.

El sensor admite unas dos adquisiciones o medidas por segundo por lo que no se debe forzar la lectura con refrescos superiores a este, y ni que decir que una medida de este tipo no necesita un refresco tan elevado.. lo normal seria una medida cada 5 o 10 segundos o mas incluso.

Usos: Este sensor de humedad/temperatura puede ser usado en estaciones meteorolgicas porttiles, y en un robot explorador puede servir para generar grficos de humedad en los sitios por donde pasa as como tambin evitar funcionar o tomar las medidas adecuadas en situaciones de climatologa extrema.

Circuito de prueba: El siguiente montaje es un medidor de humedad relativa (sin compensacin de temperatura) el cual utiliza un sensor integrado SHT11, un pic16F876 y un LCD microcontrolado. La medida se muestra por pantalla representando un porcentaje de humedad relativa y se actualiza cada 2 segundos. El esquema para el montaje es el siguiente:

Nota: No se ha realizado el circuito impreso debido a la sencillez del montaje, que puede hacerse en protoboard sin problemas.

DESCARGAS
Programa de prueba: Rutina para sensor: Codigo programa: X-Higrometer.asm SHT11.inc X-Higrometer.hex X-Higrometer.zip

Aceleracin / Inclinacin

MXD7202GL
Descripcin: El sensor de aceleracin lineal de dos ejes modelo MXD7202GL de memsic esta fabricado para medir aceleracin lineal en sus dos ejes hasta un fondo de escala de 2g (2 veces la fuerza de la gravedad). Debido a la capacidad de poder medir la fuerza de la gravedad terrestre lo usaremos tambin como inclinmetro de estado slido. Este sensor se presenta en encapsulado LCC8, esta compensado internamente en temperatura y no le afectan las fluctuaciones en la alimentacin. La salida del sensor es un pulso digital de ancho variable a una frecuencia fija de 100Hz.

Funcionamiento: Este sensor no tiene partes mviles para medir la aceleracin y es por eso que es capaz de sobrevivir a choques de mas de 50g En vez de partes mviles, este sensor se basa en el efecto de conveccin de calor, creando una burbuja de calor mediante un filamento dentro de la cavidad del encapsulado que esta rellena de un gas inerte. Los captadores estn dispuestos alrededor de este filamento y captan el calor de la burbuja que esta en el centro, al acelerar hacia cualquier lado, esta burbuja de calor se desplaza hacia el lado contrario al movimiento y los captadores miden la diferencia de calor para de este modo crear una salida proporcional a la aceleracin detectada. En la figura adjunta se muestra el encapsulado visto desde arriba y puede observarse la disposicin de pines as como tambin los ejes de medicin correspondientes. Pin Nombre Descripcin 1 NC 2 TP Conectar a GND 3 COM 4 Yout 5 Xout 6 NC 7 NC 8 Vdd Comun Salida Duty Cycle Eje Y Salida Duty Cycle Eje X 2.75 a 5.25 V

Teora de operacin para medir inclinacin: Como se ha dicho, este sensor es capaz de medir la fuerza de la gravedad terrestre si se coloca uno de sus ejes perpendiculares a la superficie de la tierra. Pero la medida de aceleracin no ser lineal, ya que ser en funcin

del seno del ngulo al que se ponga el sensor con respecto a la superficie de la tierra. En el siguiente grfico puede verse la seal obtenida con respecto a la inclinacin de 0 a 180.

Los valores de PWM que da el sensor para el mximo y mnimo son los siguientes: +1g = 6,25mS -1g = 3,75mS Por lo tanto tenemos un rango total de 6,25 - 3,75 = 2,5mS esto quiere decir que el ancho de impulso de la seal que nos dar el sensor variara un mximo de 2,5mS aprox. si lo tumbamos de un lado a otro, debido a la aceleracin de 1g provocada por la fuerza de la gravedad terrestre. Cuando la aceleracin es nula 0g podemos leer un duty cycle del 50% que corresponde a 5mS. Con esto ya tenemos definidos los valores para -90, 0 y +90 que sern los siguientes: -90 = 3,75ms 0 = 5ms +90 = 6,25ms

Ahora nos faltan todos los dems... para medir aceleracin seria dividir el rango total en la precisin que queramos obtener ya que es una medida

lineal cuando se trata de aceleracin, pero para medir inclinacin tendremos que hacer uso de la trigonometra para obtener el valor correcto porque la aceleracin medida en el acelermetro depende de la inclinacin con respecto al eje del sensor y por tanto ser en funcin del seno de dicha inclinacin. y lo haremos como sigue.. Entre el valor mnimo y el valor mximo queremos sacar 180 valores intermedios que correspondern a cada uno de los grados de arco relativos a la inclinacin que queremos obtener y teniendo en cuenta que el valor obtenido surge en relacin al seno del ngulo, tendremos que diferenciar entre sectores de 90 o cuadrantes. Si el valor ledo es menor de 5mS, en este caso estamos en el rango de 0 a 90 y si el valor fuese mayor de 5mS estaramos en el rango de 90 a 180, primer y segundo cuadrante respectivamente. Para linealizar la salida y conseguir un valor de inclinacin real se usaran las siguientes formulas. De 0 a 90 se usar la siguiente frmula:

y de 90 a 180 se usar esta otra:

Un ejemplo practico: Imaginemos que leemos un ancho de impulso de 4,12mS. Como es menor de 5mS usaremos la primera formula, 4,12 - 3,75 = 370S / 1,25mS = 0,296 mS 1 - 0,296 = 0,704 Ahora ya tenemos el coseno del ngulo y tan solo tenemos que hacer la operacin inversa, el arco coseno y obtendremos el ngulo para dicho coseno. ArCos( 0,704 ) = 45,25 = 45

Por lo tanto un valor de 4,12mS corresponder a un ngulo de inclinacin real de 45

Circuito y programa de medicin: Como el MXD7202GL dispone de salidas digitales PWM con lo cual podemos conectarlo directamente a cualquier puerto de entrada de un microcontrolador. El circuito simplemente es un pic16F876 con un max232 conectado a la USART para comunicarse con el PC por medio del bus serie RS232. El programa contenido en el pic se dispara a cada flanco de subida de la seal y cuenta pequeos intervalos incrementando en cada uno de ellos el contador TMR1 hasta el flanco de bajada de la seal, para saber el ancho del impulso de la seal PWM y luego pasa los datos del contador de 16bits al PC por medio de la USART para que el PC calcule y analice las muestras.

Nota: En el esquema anterior falta la alimentacin del pic y del max232, el oscilador del pic y el circuito de reset, as como tambin los condensadores de desacoplo de 100nF para cada integrado.

El cdigo fuente para grabar en el pic es el siguiente: Cdigo fuente

X-TILT.rar

Software de anlisis: El programa creado al efecto para anlisis de datos procedentes del acelermetro captura los datos procedentes del circuito de muestreo y recibe 4 bytes que son los 16 bits de cada timer de conteo de ancho de impulso. La ventana del programa esta dividida en dos grandes displays, el de arriba corresponde a los datos para el eje X y el de abajo para el eje Y. Dentro de cada una de esas ventanas tenemos una disposicin idntica de controles y visualizadores para ambos ejes. La primera parte situada arriba a la derecha, consta de dos medidores de aguja lineales, el medidor de arriba es directamente el valor del timer expresado en cuentas y su valor directo puede verse justo debajo adems del valor de duty cicle correspondiente expresado en segundos. Justo debajo esta el medidor lineal de media y puede ajustarse mediante un scroll horizontal situado al lado que indica cuantas muestras son necesarias para calcular la media, contra mas muestras pongamos mas estable ser la medida pero mas lento ser el refresco al necesitar esperar mas muestras. En la parte inferior podemos ver un grafico que se va pintando al ritmo que entran datos, en este grafico podemos ver la seal en tiempo real (lnea negra) y la media calculada (lnea amarilla), este grafico es muy til para analizar la seal y ver como afecta la aceleracin lineal a la inclinacin. Como podemos observar a cada lado del grafico tenemos varios scrolls, estos son para el ajuste de fondo de escala tanto en tiempo como en "g" medidos y el scroll vertical de la derecha es simplemente para desplazarse por el grafico de arriba a abajo. La parte mas compleja en cuanto a clculos se refiere es la pantalla situada arriba a la izquierda que muestra un reloj analgico de forma angular. Este medidor muestra la inclinacin calculada respecto a la aceleracin de la gravedad terrestre.

Instalable Windows

X-InclinoLab.rar

Software libre de ejemplo: Este software es una aplicacin de ejemplo en la cual se reciben los datos por puerto serie y se calcula en tiempo real los valores medios de inclinacin para presentarlos por pantalla. Existen unos scroll deslizantes con los cuales podemos ajustar cuantas capturas son necesarias para calcular la media de la seal medida, para evitar oscilaciones debidas a aceleraciones rapidas. Adems es capaz de mover un objeto 3d en relacin a la inclinacin real en la que se coloca el sensor de entrada, con lo cual podemos mover el objeto 3d en el pc moviendo el sensor en el mundo real.

Instalable Windows

X-ACTILT3D.rar X-ACTILT3Dsource.rar

Cdigo fuente VB6

Video demostracion:

Potrebbero piacerti anche